小议 Java 语言。
Java 开发中的常见问题
Java 标准、规范,是面向对象编程的代表,Class、Object、Interface、Abstract、Public、Private、Override 等关键词显式清晰,一旦使用就不会混淆,在学习其他编程语言的时候还可以参考互通。
另外,由于 Java 的流行和开放性,围绕 Java 语言形成了最为广泛的开发平台,不仅有 Spring 这样开源生态社区,在 Java 平台之上还衍生出了很多轻量级的编程语言,比如 Scala、Groovy、Clojure、Kotlin,这些语言都可以运行在 JVM 之上,形成了非常有生命力的生态环境。
Java 编程最常犯的错误:
- 如何正确地将数组转化为列表;
- 如何判断一个数组是否包含一个值;
- 如何在一个循环中删除一个列表中的元素;
- 什么时候用哈希表(
HashTable),什么时候用哈希映射(HashMap); - 不要在集合中使用原始类型;
- 如何正确设定访问级别;
ArrayList与LinkedList的对比;- 可变与不可变;
JUnit中@Before和@After行为的顺序;SPI中参数如何设定;API不要返回空值。
在用 Java 开发的过程中,从架构和规范的角度需要注意以下问题:
-
不要重复造轮子,也不要搬太多不同型号的轮子来用。
Java语言有非常成熟的技术社区,在Java的生态里有很多相关的库、插件和工具,大部分是成熟技术。如何确保大家使用统一的库和工具呢?有很多途径,比如指定编程规划,或是使用工具完成某个服务的初始化,自动配置公司常用的库,或者通过统一的代码审核,让一些资深程序员把关等等。
-
深入了解依赖注入,选择一个好框架。
稍具规模的
Java代码库,都会有复杂的类和对象之间的相关性和依赖性。确保所有工程师理解并使用一个统一的依赖注入框架会让很多代码的风格保持一致,避免类的初始化过于复杂。 -
所有项目使用统一的文件夹结构。
代码文件怎么组织:库放哪里,工具类
Utils文件夹放哪里,哪些做成单独的Service文件夹,哪些是Client文件夹,分别又有哪些类。这个需要早期的工程师或者资深工程师统一协调,保证代码库的整体结构自顶而下都结构清晰,不同项目里的文件结构也尽可能遵循同样的组织方式。 -
规范所有项目的 API,保持统一的风格和模式。
-
规范开发环境,提供合适的工具。
定义一些标准的格式文件,做成编辑器插件,要求每个开发者使用统一的格式定义。