程序员必知

一. 编程命名

1. 驼峰命令法(Camel): 第一个单词首字母小写,其余首字母大写,例如myFirstNamemyLastName

2. 帕斯卡命名法(Pascal): 又叫大骆驼命名法, 每个单词首字母都大写。如UserNameGetOrderDetail

3.匈牙利命名法(Hungarian):变量名=属性+类型+对象描述,如fn_searchbtn_loginhWnd(Windows对象句柄)

4.下划线命名法(UnderScore): 多见于javascript和数据库表等,如user_nametask_server_group


二. 抽象三原则

1. DRY(Don’t repeat yourself) : 不要重复自己

  • 多次遇到同样的问题,就应该抽象出一个通用方法,而不是重复同样的代码。

2. YAGNI(You aren’t gonna need it) : 你不会需要它

  • 除了最核心的功能,其他功能一概不要部署,尽可能快、尽可能简单地让软件运行起来。即不要为了抽象而抽象,不要让代码一开始就变成华而不实的空中楼阁。

3. Rule Of Three 三次原则

  • 第一次用到某个功能时,你写一个特定的解决方法;
  • 第二次又用到的时候,你拷贝上一次的代码;
  • 第三次出现的时候,你才着手"抽象化",写出通用的解决方法。

总结: 该抽象的时候一定要抽象,不该抽象的时候就不要抽象,事不过三,三次或以上的重复代码再做抽象化。


三. 码农定律

1. 墨菲定律 怕什么来什么,防止一切坏的可能性。

2. 布鲁克定律 不要因为项目延期而增加人手。

3. 霍夫施塔特定律 项目实际完成时间总要比预期时间长。

4. 康威定律 软件的结构反应来开发软件的组织结构。

5. 波斯托定律 自由输入,保守输出。

6. 二八法则 即帕累托法则,80%的bug来自20%的代码,20%的不合理性导致来80%的复杂性。

7. 彼得法则 在一个等级制度中,每个人都倾向于晋升到他无法胜任的职位。

8. 林纳斯定律 如果有足够多的眼睛,所有bug都将无处遁形。

9. 克努特优化法则 过早的优化是万恶之源。

10. 真香定律 一方面批判,另 一方面却又想得的技术。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值