学习-代码简洁之道笔记

取名:

  1. 名副其实, 起名字不要模糊,要见名知义, 比如 int d 可写成 int day
  2. 避免误导, 比如使用xxlist去定义一个非list对象的名字,
  3. 做有意义的区分, 不要使用 int xxlist1, int xxlist2, 或者叫info
    Date,这种意思相近的名字变量,则对阅读者来说会造成困扰
  4. 使用读得出来的名字, 不要用随机的字母去拼合, 比如 getcurrentDay() , 而不是 daygetcurrent之类的
  5. 使用可以搜索的名字, 名字长度与作用域大小对应 , 比如使用变量e来定义某个全局对象, 则会加大搜索难度,
  6. 避免使用编码, 比如类型命名:“int phoneInt=123", 无意义的前缀命名:”int i_Phong = 123"
  7. 避免思维映射, 比如单字母变量名, 比如通常我们会认为 i j k 等,会习惯性认为是循环所用的常量,所以避免使用这种名字,去定义非循环的变量
  8. 类名应使用名词或名词短语,而非动词
  9. 方法名应是动词或动词短语, 如 postPayment(), deletePage()
  10. 属性访问器应依照标准加上 get,set,is 如string name = employee.getName(), customer.setName(“xx”); if(paycheck.isPosted());
  11. 不要用有内涵的名字, 应 言到意到
  12. 别用双关语, 如add用于增加 ,又用于 连接, 应该改用 add 与 insert或append
  13. 可使用计算机科学中的专业术语命名
  14. 不要添加没用的语境, 比如应用名为(Gas Station Deluxe), 不要给其中的类都添加GSD前缀, 会导致IDE工具无法更好地给出提示
  15. 精准是命名的要点,如果短名字就可以很清晰的表达,则不用长名字, 否则用长名字
  16. 使用有意义的语境, 比如类中使用三个变量
Class Guessxx(){
	private string number;
	private string verb;
	private string modifier;
	public void createPlu(int count){
		if(count==0){
			number=0;verb=0;modifer=0;
		}else if(count==1){
			number=2;verb=2;modifer =3;
		}....
	}
}

可优化为:

Class Guessxx(){
	private string number;
	private string verb;
	private string modifier;
	public void createPlu(int count){
		if(count==0){
			becomeOne();
		}else if(count==1){
			becomeTwo();
		}....
	}
	public void becomeOne(){
		number=2;verb=2;modifer =3;
	}
	public void becomeTwo(){
		number=0;verb=0;modifer=0;
	}
}

函数:

  1. 内容短小
  2. 一个函数只做一件事,做好这件事
  3. if,else,while语句,其中的代码块应只有一行,且为一个函数调用语句
  4. 每个函数一个抽象层级, 比如 较上层 getHtml(), 较中层 PathParser.render(pagetPath), 较低层 .append("\n"),
  5. 自顶向下
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值