工程结构和模块不断地从JAVA的单体应用中分离。单体应用结构只有一个项目结构,有一个项目文件包。刚开学习计算机JAVA编程的时候,JAVA项目分为JAVAEE和JAVASE. 标准的JAVA类库jdk 是基础的JAVA开发工具箱,没有绑定任何商业开发的工具包。企业级别的开发标准是JAVAEE. JAVAME 是移动嵌入式设备的缩减版本开发包。工程project在学习JAVASE 开发的时候是没有这么清楚的概念。
JAVASE 是Java开发工具箱的基础类库标准版本。类库的标准版本包括了Java程序设计语言的通用API集合接口和常用类。通向企业的开发包版本是jdk1.6。高内聚低耦合,配置编程,解耦的一种实现方式。程序的耦合度意味着程序与程序之间藕断丝连,相互影响的程度很高。程序设计的某个地方出错对整个可运行的应用程序影响太大,就是程序之间耦合度过高。
解耦这个词汇在2017年使用Java spring框架开发项目后台接口的时候从有经验的软件工程师咨询过来。很多初级Java应用开发工程师对spring的配置文件xml的配置很是不能很好的理解。知道一个控制器或者是业务逻辑层面编写好之后是要在spring context 容器中配置之后项目才能正确运行。没有spring的项目也是需要配置servlet容器。Java service page 在jdk1.6 版本发布之后,面向web服务和PC浏览器页面的一个企业级的开发版本。容器的原始基于servlet容器。后来在servlet容器的基础之上打包封装,增加组件插件。比较典型的Java web 开发框架是Struts1和Struts2. 很多重用的接口需要封装,灵活性可变性比较高的部分抽取出来线程配置化的变量。Java的源代码文件编译成功之后发布到web服务器的文件类型是字节码文件,不能在线编辑该文件。Xml文件和properties文件是程序应用发布之后部署使用配置可编辑的接口。
程序解耦在一个小部件失效之后可以灵活替换。Java程序分层解耦,通过依赖dependency 注入DI(dependency injection) 调用服务组合。封装是高内聚的具体实现。Ecapsulaiton 封装方法块成为独立的供外部调用函数单元。函数单元或者是方法单元内聚,可读性,可行性,可维护性,可扩展性需要得到保证。
Java项目的单体应用JavaSE 是函数式编程。代码的管理需要得到很高的重视。应用程序编程项目的代码编程过程中管理不好会变得很复杂很乱,增加程序出错的可能性。编写程序源代码的过程时间很短,现在有智能的集成开发环境IDE 的协助下,编码拼写错误可以有效避免。项目源代码分包存放,分层编写。应用程序文件包后来在开发中也是多项目制。每一层的开发都可以打包成项目jar包,通过Maven项目构建相互引用。Maven 专业程度很高的构建Java项目,无论是远程仓库还是私有仓库,基于网络分布式存储构建打包Java项目。项目与项目之间可以相互调用引用。
使用组合可以实现高内聚低耦合。计算机的资源或者是可以携带的资源有限,性能方面是最重要的指标。继承inheritance 逻辑空间和物理空间都在重复利用。继承需要使用得当,父类对子类或者是父亲接口对它衍生出来的接口影响很大。