前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我的编程格言

我的编程格言

作者头像
韩伟
发布2021-08-05 10:36:41
4100
发布2021-08-05 10:36:41
举报
  • 任何程序员都能写出机器能理解的代码,但只有好的程序员才能写出人能理解的代码。
  • 改善性能是写程序里面最幸福的部分,在糟糕的代码结构里面修改功能则是最痛苦的经历。程序员不能仅仅把最幸福的部分认为是技术,而因为厌恶痛苦的经历而认为解决这一类问题不算技术。
  • 落后的软件开发效率,和无穷的需求变化之间的矛盾,是软件开发中的核心矛盾;改进软件开发效率的技术,是技术的最高体现。
  • 敏捷开发的价值,在于不断通过开发原型代码,把需求明确的描述出来,是一种开发者和需求方之间的沟通方式
  • 单元测试,以及自动化测试用例,是使用代码的方式,把软件需求描述下来的手段。如果测试代码还在,就算实现代码全部丢失,都可以很快的重写出来。
  • 面向对象对比面向过程的优胜之处,在于名词化的概念,比动词化的描述,更便于人类理解。
  • 软件项目是无法预算其开发时间的,如果一个需求没有开发过,那么无人可以完全预计过程中的问题,如果一个需求已经开发过,那么直接拷贝代码过来用即可,所以尝试通过各种努力,想严格衡量预估一个软件的开发时间,是没有意义的。
  • 70% 的线上事故,是和运维操作有关,因此在开发程序的时候,必须要考虑运维的特性。越复杂的运维需求,导致越高的事故率。
  • 游戏程序的基本特点,是对延迟的苛刻要求,以及对数据准确性的不苛刻要求。这一特点,正是游戏程序优化的基本出发点。
  • 除了剔除那些错误的、不必要的浪费之后,软件系统性能提高的最常用手段有两个,其一是缓存,其二是分布;缓存就是时空转换,以时间、空间中富裕的一种去弥补紧缺的另外一种;分布就是增加多个硬件一起解决问题,核心是如何分配以及最后结合这些工作任务。
  • 不要重复代码,是代码优化的最基本原则,也是最难达成的原则。并不是一模一样的代码才是重复代码,类似的、相同模式的、类似结构的代码,也是重复代码。
  • 开闭原则是应对需求变更的最基本手段。
  • 没有耦合就没有功能,不要妄想写出没有耦合的代码。而是要在需求变化的边界上减少耦合。
  • 越是通用的代码,功能就越少;越是功能强大的代码,通用性就越差。单靠一份代码,是无法做到既强大又通用的,但是一个分层结构的代码库,是可以做到的。
  • 设计模式,是利用面向对象的语言特性,去解决一系列常见问题的典型方法。也是学习前人如何设计代码结构的经验知识。
  • 不要迷信配置文件、非代码化的操作,这些东西最后可能都不如一门完整的编程脚本更能解决问题,因为需求变化会导致精心设计的非代码描述,失去表达能力
  • 数据结构加算法等于程序,这个描述现在来看并不完整。需要被程序处理的数据,同样是一个程序的重要组成部分。所以不要试图把数据严格的和代码划分开来,这种划分有时候反而造成了更多不必要的代码。
  • 运维操作,也同样需要用现代软件开发的工具武装起来,需要版本管理工具,需要缺陷跟踪工具,等等。
  • 不要以为 GUI 就一定比命令行易用;不要以为配置一定比编程简单。
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-07-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 韩大 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
项目管理
CODING 项目管理(CODING Project Management,CODING-PM)工具包含迭代管理、需求管理、任务管理、缺陷管理、文件/wiki 等功能,适用于研发团队进行项目管理或敏捷开发实践。结合敏捷研发理念,帮助您对产品进行迭代规划,让每个迭代中的需求、任务、缺陷无障碍沟通流转, 让项目开发过程风险可控,达到可持续性快速迭代。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档