《代码整洁之道之程序员的职业素养》-专业主义

  • 专业主义有很深的含义,它不但象征着荣誉和骄傲,而且明确意味着责任和义务
  • 担当责任,“为了按时交付软件,没测例行程序,测试例行程序需要几个小时,当时必须交付软件,因为故障修复部分都不涉及例行程序不分的编码,所以我也担心没有什么不妥”, 因为这个做法,导致了数据丢失,客户疯狂投诉,(这是程序员经常犯的错误)
  • 没有人能写出完美的软件,但这并不表示你不用对不完美负责
  • 所谓专业人士,就是能对自己犯下的错误负责的人,哪怕那些错误实际上在所难免
  • 失误率不可能等于零,但你有责任让他无限趋近于零
  • 发布软件时,你应该确保QA找不出任何问题
  • 什么样的代码是有缺陷的?那些你没有把握的代码都是!
  • 你写的每一行代码都需要测试,这不是在建议,是在要求
  • 最好先写测试,再写要测试的代码
  • “童子军训练守则”,对每个模块,每检入一次代码,就要让那让比上次检出时变得更为简洁。每次读代码,都别忘了进行点滴的修改
  • 参考美国一周工作40小时的标准,你应该计划每周工作60小时。前40小时时给雇主的,后20小时时给自己的,在这剩余的20小时里,你应该看书、练习、学习,活着做其他能提升职业能力的事情,那20小时是为自己的,它将会让你成为更有价值的专业人士
  • 每个专业软件开发人员必须精通的事项:
    • 设计模式。必须能描述GOF书中的24种模式,同时还要有POSA书中的多数模式的实战经验
    • 设计原则。必须了解SOLID原则,而且要深刻理解组建设计原则
    • 方法。必须理解XP、Scrum、精益、看板、瀑布、结构化分析及结构化设计
    • 实践。必须掌握测试驱动开发、面向对象设计、结构化编程、持续集成和结对编程
    • 工件。 必须了解如何使用UML图、DFD图、结构图、petri网络图、状态迁移图标、流程图和决策表
  • 坚持学习,不懂就学,不要畏难
  • 专业人士会视辅导新人为己任,他们不会放任未经辅导的新手恣意妄为
  • 每位专业软件开发人员都有义务了解自己开发的解决方案所对应的业务领域
  • 每次开发系统,都应该站在雇主的角度来思考,确保开发的功能真正能满足雇主的需要

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/595990.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

文件摆渡系统如何实现网络隔离后的数据交换、业务流转?

近年来全球网络安全威胁态势的加速严峻,使得企业对于网络安全有了前所未有的关注高度。即便没有行业性的强制要求,但在严峻的安全态势之下,企业的网络安全体系建设正从“以合规为导向”转变到“以风险为导向”,从原来的“保护安全…

鸿蒙系列--动态共享包的依赖与使用

一、前言 HarmonyOS的共享包相当于Android的Library,在HarmonyOS中,给开发者提供了两种共享包,HAR(Harmony Archive)静态共享包,和HSP(Harmony Shared Package)动态共享包 区别&…

js的btoa 和 atob之Base64编码和解码

以下内容摘录自 作者:JSON_NULL 链接:https://www.jianshu.com/p/b2c6dc5fad0a btoa 方法 btoa 是 Binary To ASCII 的简写,意思就是把二进制数据编码转换成Base64编码的ASCII字符串。且btoa(str) 方法是浏览器中的一个全局(顶级)方法。 ato…

Python从入门到网络爬虫(函数详解)

前言 函数是变成语言中最常见的语法,函数的本质就是功能的封装。使用函数可以大大提高编程效率与程序的可读性。函数是能够实现特定功能的计算机代码而已,他是一种特定的代码组结构。 函数的作用 1.提升代码的重复利用率,避免重复开发相同代…

【排序算法】删除有序数组中的重复项 II

删除有序数组中的重复项 II 给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使得出现次数超过两次的元素只出现两次 ,返回删除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空…

js——json对象相互转化——js基础积累

js——json对象相互转化——js基础积累 需求场景解决步骤1:定义一个变量接收此字段,方便处理解决步骤2: { 外面的双引号要去掉解决步骤3:使用正则去除参数中的\\解决步骤4:如果此参数必须以{开头,以}结尾解…

一文快速了解超声功率放大器基础知识

超声功率放大器是一种电子设备,用于放大超声信号的能量。它在多个领域中发挥重要作用,包括医疗、工业、科学研究等。超声功率放大器通过将输入信号的能量放大到所需的级别,以便更好地驱动其他设备或实现特定的应用。下面就给大家介绍一下超声…

C++ 多态向上转型详解

文章目录 1 . 前言2 . 多态3 . 向上转型4 . 总结 【极客技术传送门】 : https://blog.csdn.net/Engineer_LU/article/details/135149485 1 . 前言 此篇博文详解C的多态向上转型平台 : Qt 2 . 多态 【Q】什么是多态? 【A】解释如下 : 通俗来说,就是多种形态,具体…

计算机创新协会冬令营——暴力枚举题目03

经过昨天两道题目的洗礼今天应该是更加的手到擒来吧。接招! 题目 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) …

2024,这将是量子计算的真正挑战

2023年,一项项量子计算纪录被打破。 谷歌量子AI团队证明了将多个量子比特分组合成为一个逻辑量子比特的纠错方法可以提供更低的容错率。以往的纠错研究随着比特数的增加,错误率会提高,都是“越纠越错”,而这次谷歌首次实现了“越纠…

Python Pillow(PIL)库的用法介绍

在Python编程中,图像处理是一个非常重要的应用领域。Pillow(Python Imaging Library,也被称为PIL)是一个强大的库,用于处理图像,包括图像的读取、编辑、保存等操作。本文将详细介绍Pillow库的用法。 一、安…

2024.1.3C语言补录 宏函数

在C语言中,宏函数可以使用预处理器指令 #define 来定义。宏函数与常规函数类似,但它们在预处理阶段进行替换,而不是在运行时。 定义:#define 宏名称(参数列表) 宏体 其中: #define 是预处理器指令,用于定义宏。宏名…

Python入门-实战练习-基于函数

1.编写函数 实现计算列表中元素的最大值 需求: 随机产生10个元素,存储到列表中,编写函数获取这个列表中元素的最大值 (不能使用内置函数 max()) def get_max(lst):xlst[0] # x存储的是元素的最大值# 遍历for i in range(1,len(lst)):if ls…

【springboot+mybatis实现CURD模版项目-Jesus】

springbootmybatis实现CURD模版项目-Jesus STEP 1 项目创建 1.1 新建Spring Initializr项目   1.2 选择需要的依赖 springboot有2.7.2直接选272STEP 2 配置更改 2.1更改maven配置   2.2 检查项目配置jdk、sdk、jre版本一致   2.3 检查pom文件,Maven-Reload pr…

Go语言中的乐观锁与悲观锁

改变一个数值的三个步骤 把想修改的数值从某个地方取出来将取出来的数值修改为期望值把修改后的数值保存到原来的地方 问题 如果在做第2步时,有另一个过程(进程或线程)对同一个数值进行同样的操作(取值、修改)&…

grep笔记240103

常用选项:: -i:忽略大小写进行匹配。 -v:反向匹配,只打印不匹配的行。 -n:显示匹配行的行号。 -r:递归查找子目录中的文件。 -l:只打印匹配的文件名。 -c:只打印匹配的行…

11-2 RHEL8配置YUM软件仓库及安装拼音输入法

配置本地YUM源 一、虚拟机关机>>虚拟机设置>>CD/DVD,关联ISO镜像文件,勾选“启动时连接”,点确定 二、开启虚拟机, 使用root用户登录。用df -h 命令可以看到光驱已经正常连接了。如果看不到/dev/sr0,需…

探索 Vue 实例方法的魅力:提升 Vue 开发技能(下)

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

Unity 关于点击不同物品移动并触发不同事件

关于点击不同物品触发不同事件 可以实现在界面中点击不同的物体,移动到物品附近位置,然后触发对应的事件。 首先建立一个公共管理的类: public class InteractionObject : MonoBehaviour {private NavMeshAgent PlayerAgent;private bool …