java洁癖_如何平衡代码洁癖和项目进度?
就自己的代码来说,首先,实现功能。
用简单,直接的方式,实现功能。不过度设计,不纠结细节,不太担心重用。务必保证可读性,代码要简单,一目了然。
其次,边写边重构。推进项目时,新功能能用旧代码,能抽象,就考虑重构,减少复制粘贴。随着新功能的实现,现有代码的结构也日趋合理。
新手容易犯的错误是,设计时脑子里想了一百种可能,就真写了个能做一百种事情的框架出来,而最后只在里面写了一个实现。
更好的做法是,想到一百种可能,但依然用简单直接的方式写,只要写出来的实现,不扼杀那些可能就好。当某些可能变成需求时,再考虑重用性。
简单的东西写复杂,是很简单的事。反之,就很复杂了。
对别人的代码,首先,有没有人用。
没人用的代码,不必优化。结构再美,没人用,也是废话。
其次,有没有人能负责。有人能负起责任,能维护,能搞定问题,即使自己看其代码风格不爽,也不必太过纠结。跑的好好的代码,你改了,以后就是你的问题。要分清哪些是个人喜好,哪些是代码缺陷。
最后,是否影响项目进度。烂代码,最终会影响进度。一旦发现,项目leader,要有魄力去分析设计,要求重写,甚至换人重写。他自己写的 code,自己看不懂,一个 bug 找好几天,别人都等他。很大可能,就是代码烂,又不舍得重写,只加不改。
这种代码,就不能留它。
java洁癖_如何平衡代码洁癖和项目进度?相关推荐
- java郑渊洁游戏_童话大王郑渊洁:要让孩子感觉爸爸妈妈比游戏好玩
"因为前面出的书我已经把钱赚够了,我不再需要钱了,我现在有这个经济实力和他们(盗版者)抗衡了!"言语中,记者感受到了这位"反盗版形象大使"对这种"战斗 ...
- java 文件下载示例_文件下载示例代码(JAVA)
后台代码 public void exportFile() { File file = new File("模板地址"); FileInputStream fin = null; ...
- java注释里加_如何在代码中添加注释
什么是代码注释,如何在代码中添加注释,相信每一位了解编程的人并不陌生.注释里往往有很多有趣的脑洞和「真心话」.今天我们一起去看看那些6到飞起,被玩坏了的幽默注释吧. 信息量太大的注释系列-- 1.你造 ...
- java 魔鬼数字_什么是代码中的魔鬼数字,如何解决?
魔鬼数字的定义:在代码中没有具体含义的数字.字符串. 魔鬼数字主要影响了代码可读性,读者看到的数字无法理解其含义,从而难以理解程序的意图.当程序中出现的魔鬼数字过多时,代码的可维护性将会急剧下降,代码 ...
- java 双向链表例子_双向链表(示例代码)
/*** 双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱. * 所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点. * 这也 ...
- 代码洁癖的春天!Java 效率工具之 Lombok
点击上方"搜云库技术团队",选择"设为星标" 回复"1024"或"面试题"获取学习资料 还在编写无聊枯燥又难以维护的PO ...
- 四种代码洁癖类型,程序员看了直呼内行
很多程序员在写代码的时候 都有自己的独特的习惯 比较典型的就是"代码洁癖" 他二哥收集了一些代码洁癖症状 分了四个类型 来看看有没有你对应的吧 看到大家都如此极致的追求, 他二哥实 ...
- 【代码洁癖症】第1回-简单工厂模式
[代码洁癖症]第1回-简单工厂模式 序言 在一个宁静的午后,我有幸拜读了程杰大鸟的<大话设计模式> 觉得这是一本不可多得的好书 奈何里面都是C++代码写的示例,对于学Java的同学不是很友 ...
- 代码洁癖症的我,学习 Lint 学到心态爆炸
本文由 GitCode8 授权投稿 原文链接:https://juejin.im/post/5d307615f265da1b6b1d0dd9 前言 以前对下面的问题,我的态度是,不报错就是没问题,报错 ...
最新文章
- .net连接mysql数据_.net连接MYSQL数据库的方法及示例!
- MySQL 5.5 服务器变量详解(二)
- shell脚本_查找无效网址
- iOS开发UI篇—核心动画简介
- 在Linux上配置Telnet服务
- Linux基础维护——笔记
- .net随笔-vb.net 剪粘板(1)
- 协议(Protocol)与委托代理(Delegate)
- 第十讲:Obj-C Blocks 应用
- CentOS7添加自定义系统服务
- 站长seo经过的阶段
- java 变量 类之间调用_java内部类与其他类变量之间的调用方式
- 天翼云高可用虚拟IP(HAVIP)实践
- 经典软件体系结构风格(一)
- 北航MOOC系统Android客户端NABC
- 【无标题】Ubuntu安装linaro工具链问题
- 医疗检测产品设计规范有哪些?
- ​红旗首款奢华纯电动SUV车型上市;一起教育登陆纳斯达克;恒隆与凯悦在昆明打造君悦酒店 | 美通企业周刊...
- java语言相比于c,【多选题】Java 语言相比于C,C++的不同之处在于:( )
A. 不支持指针 B. Java...
- ES6——let-const的变量声明以及模板字符串
热门文章
- 医学图像分割知识点总结
- 为什么要用转型?转型的意义?
- 跨交换机VLAN的配置实验
- ~/Telerik.Web.UI.WebResource.axd' is missing in web.config
- vue 后台翻译_vue国际化 自动百度翻译,优先本地语言库
- 华为OD机试真题 Python 实现【模拟商场优惠打折II】【2023 Q1 | 100分】
- java中的math.abs_java – Math.abs(a – b)的更快实现 – Math.abs(c – d)?
- jenkin设置定时构建及时区修改
- OA项目异常信息——Internl Server Error
- c语言刷题(牛客网)