杂谈

141 阅读1分钟

1.如何应对不断变化的需求?

  • 预判变化的部分,写出易于扩展的代码以保证工作量降到最低、新功能实现起来简单、易于长期维护。
  • 行为参数化 -- 将易变的行为代码当作参数传递到相应的方法中
  • 编写类似的代码之后,尝试将其抽象化。

2.开源软件学习

  • BootDo :gitee.com/lcg0124/boo…
    BootDo是在SpringBoot基础上搭建的一个Java基础开发平台,MyBatis为数据访问层,ApacheShiro为权限授权层,Ehcahe对常用数据进行缓存。
  1. 模拟调用json数据
  1. 门户网站
  1. bootstrap 样式网站

命名

  • 对于集合来说,最好使用名词的复数形式来描述其内容, 而不是使用名词的单数形式来描述.
// 不好的:
List<DateTime> holidayDateList;
Map<Employee, Role> employeeRoleHashMap;
 
// 改进:
List<DateTime> holidays;
Map<Employee, Role> employeeRoles;
  • 方法名不需要描述它的参数及参数的类型
// 不好的:
mergeTableCells(List<TableCell> cells)
sortEventsUsingComparator(List<Event> events,
    Comparator<Event> comparator)
 
// 改进:
merge(List<TableCell> cells)
sort(List<Event> events, Comparator<Event> comparator)