`
bmqnc
  • 浏览: 129173 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

代码之丑4的思考

阅读更多
这篇文章说的其实是重复造成代码的code smell,这点深有体会,现在的项目中之前的程序员很多地方都是拷贝黏贴,造成大量的重复,这样其实坏处很多:

1.代码code smell加重,代码显得冗余啰嗦,为以后的代码阅读和维护人员造成不便。这一点正如郑老师讲的。

2.代码膨胀(记得看过云风的blog,他说大话的核心代码只有10w(?)左右),现在很多项目本身不是特别大,但代码却非常多,这里面很多因素造成的。一是很多程序员本身素质确实有待提高,二是出现很多很官僚化的做法就是经常问你代码写了多少,包括公司内部的考核和应聘的面试,虽然代码量是考核程序员的一种手段,但肯定不是唯一的手段,而且不是关键的手段,代码质量也应该在考虑之列,而且是重点考虑的。如果都鼓励程序员以代码量来衡量,造成的后果肯定是代码质量下降。

3.代码可重用性降低,可维护性降低(多处拷贝,改动一个地方需要代码搜索很多地方)。
分享到:
评论

相关推荐

    腾讯低代码引擎建设思考和实战

    腾讯低代码引擎建设思考和实战

    简单代码c#实现Rc4加密以及解密

    这段c#代码极为简练,以非常简单的方法来实现RC4加密。 本代码在.net 4.5 以及mono 3.2.6测试成功

    代码之谜(持续更新)1

    4. 代码之谜(二)- 语句与表达式 代码之谜(二)讨论了语句与表达式的区别和联系。该篇博客旨在让读者更好地理解代码中的语句和表达式。 5. 代码之谜(三)- 运算符 代码之谜(三)讨论了运算符的概念和应用。该...

    数千个MT4 EA交易系统源代码

    数千个EA交易系统源代码 Metatrader4用 EAJK_sinkhro.mq4 EAJPYretz20.mq4 LAS VEGAS TUNNEL.mq4 ....

    C#代码生成器

    4. 企业级应用:在大型项目中,大量的重复代码可以通过代码生成器自动化生成,提高开发速度和代码一致性。 5. 代码重构:在代码优化阶段,代码生成器可以帮助生成新的、更优化的代码,以替换原有的代码。 总的来说...

    软著代码整理工具,可以实现一键提取文件中的代码并且自动删去空行和注释,便于进行软著申请

    4. **格式化代码**:虽然这不是必需的,但一些高级的软著代码整理工具可能还提供代码格式化的功能,如统一缩进、排序导入等,使得代码更具可读性,更易于审核。 5. **兼容性与适配性**:对于不同的编程语言和项目...

    统计代码行数的Eclipse插件

    4. 查看结果:统计结果通常会在一个弹出窗口或者Eclipse的输出视图中显示,列出了不同类型的代码行数,比如总行数、注释行数、空行数以及实际代码行数。 5. 分析与优化:根据统计结果,开发者可以判断代码是否有...

    用51单片机实现G代码翻译

    4. **运动控制**:利用51单片机的I/O口驱动步进电机或伺服电机,实现机床的精确移动。这需要精确的脉冲控制和速度调节。 5. **错误处理**:设置适当的错误检测机制,如语法检查和范围验证,以确保输入的G代码正确...

    反编译完全版EX4-MQL 4.0.509.5,可反编译加密程序

    标题提到的"反编译完全版EX4-MQL 4.0.509.5"是一款专门针对MQL4编译后文件(.ex4)的工具,用于将这些编译后的二进制代码还原为源代码(.mq4),以便于理解和修改。 1. MQL4语言:MQL4是MetaQuotes Language 4的...

    C++项目源代码(适合新手练手及参考)

    3. **分析注释**:注释是理解代码的关键,它解释了代码背后的思考过程。 4. **动手实践**:尝试修改和运行代码,理解各种变化对程序的影响。 5. **总结归纳**:将学习到的知识点整理成笔记,方便日后查阅。 最后,...

    修改代码的艺术.pdf。part16

    修改代码的艺术.pdf。 扫描版 非文字版,有点大

    Python动态满屏心形代码(turtle)

    # Python使用turtle库绘制动态满屏爱心 1. 用画笔的三个形状组合出一颗爱心; 2. 将爱心封装成类; 3. 定义爱心的移动和移动到某点的...4. 定义爱心的移动速度和颜色与大小相关; 5. 实现有层次感的满屏动态爱心特效。

    网页爱心表白代码大全

    这些代码可以被用来创建富有创意且个性化的表白页面,为你的爱情增添一份特别的惊喜。这份资源包含了10个不同的效果,每个效果都有其独特的设计和互动体验,使用者可以根据个人喜好选择或参考,甚至可以进一步定制,...

    JavaWeb程序设计源代码

    4. **EL**:EL是JSP 2.0引入的表达式语言,简化了在JSP页面中获取和设置JavaBean属性的操作。源代码中EL的使用可以让你看到如何高效地访问和更新服务器端的数据。 5. **MVC框架**:Spring MVC和Struts是常见的...

    Flex4 权威代码指南(清晰中文版)pdf+目录+含源代码

    《Flex4 权威代码指南》(中文版)PDF清晰版,含code源代码  本书是Adobe公司的官方教程,手把手教你贯通Flex4开发,是Flex技术入门首选。本书以课程的形式逐步讲解了如何用Flex 4开发一个完整的网上杂货商店应用...

    DXF转G代码源程序

    4. **生成G代码**:根据路径规划结果,生成相应的G代码指令。例如,G00代表快速定位,G01代表直线插补,G02/G03代表顺时针/逆时针圆弧插补,G02/G03后的I、J、K参数用于指定圆心相对起点的增量坐标。 5. **优化G...

    自主研发的软著申请代码文档整理输出工具

    可在软著申请时使用的代码文档整理输出工具,可选择多个特定目录,设置多类型文件,指定选择生成代码文档,可操作性很好,并且在生成word代码文档时,过滤了所有空白行和注释,过滤的注释类型涵盖mysql、java、php、...

    电子签章系统源代码

    签章是指电子签章系统的核心功能之一,包括电子签章、数字签章、电子证书等。签章是指在电子文档、电子表格等电子文件上添加电子签名、数字签名、电子证书等,以确保电子文件的真实性和完整性。 4. 部分内容: ...

    C语言游戏代码大全

    4. 矿井逃生: 矿井逃生游戏通常涉及迷宫生成、路径寻找算法(如深度优先搜索或广度优先搜索)以及碰撞检测。玩家需要找到一条从起点到终点的路径,同时避开障碍物。这需要对数据结构和算法有较深的理解。 5. 超级...

    STM32F4 ADC采样FFT运算测试代码

    模拟信号经过ADC采样后变成数字信号,数字信号可以进行FFT运算,在频域中更容易分析信号的特征。此代码用STM32F407的ADC-DMA模式采集4096个点的数据,利用DSP库里的FFT算法进行快速傅里叶变换,经实测可以使用。

Global site tag (gtag.js) - Google Analytics