你的项目应该如何分层?

本文探讨了应用分层的重要性,指出控制器、服务和数据访问对象(DAO)的职责混淆可能导致代码难以维护。文章介绍了阿里巴巴的分层规范,并提出了一种优化的分层模型,包括轻业务逻辑的接口层、业务层、可复用逻辑层(Manager)和数据库访问层。强调每个层的领域模型和职责,以减少对象转换和提高代码复用性。最后,作者指出良好的分层有助于代码的清晰性和可维护性。
摘要由CSDN通过智能技术生成

1.背景

说起应用分层,大部分人都会认为这个不是很简单嘛 就controller,service, mapper三层。看起来简单,很多人其实并没有把他们职责划分开,在很多代码中,controller做的逻辑比service还多,service往往当成透传了,这其实是很多人开发代码都没有注意到的地方,反正功能也能用,至于放哪无所谓呗。这样往往造成后面代码无法复用,层级关系混乱,对后续代码的维护非常麻烦。

的确在这些人眼中分层只是一个形式,前辈们的代码这么写的,其他项目代码这么写的,那么我也这么跟着写。但是在真正的团队开发中每个人的习惯都不同,写出来的代码必然带着自己的标签,有的人习惯controller写大量的业务逻辑,有的人习惯在service中之间调用远程服务,这样就导致了每个人的开发代码风格完全不同,后续其他人修改的时候,一看,我靠这个人写的代码和我平常的习惯完全不同,修改的时候到底是按着自己以前的习惯改,还是跟着前辈们走,这又是个艰难的选择,选择一旦有偏差,你的后辈又维护你的代码的时候,恐怕就要骂人了。

所以一个好的应用分层需要具备以下几点:

  • 方便后续代码进行维护扩展。
  • 分层的效果需要让整个团队都接受
  • 各个层职责边界清晰

2.如何进行分层

2.1阿里规范

在阿里的编码规范中约束的分层如下:

 

 

 

 

开放接口层:可直接封装 Service 方

### 回答1: LabVIEW项目分层设计是指将整个项目按照层次结构进行划分,将不同的功能层分隔开来,使得我们可以更好地管理和维护项目,提高项目的可扩展性、可维护性和可重用性。 通常我们可以将LabVIEW项目分为三个层次:上层、中层和底层。上层主要负责项目的展示和控制,中层实现项目的逻辑功能,底层提供底层硬件的驱动和控制。 在实际项目中,我们可以根据项目的需求,将底层进一步分类,例如将底层分为电源模块驱动层、外设模块驱动层等。 另外,在项目分层设计时,还需要注意以下几点: 1. 每个层次都应该有清晰的接口定义和规范,使得每个层次之间的交互变得简单明了。 2. 各层次之间应该遵循职责分离的原则,确保各层次之间的功能独立。 3. 应该采用模块化和面向对象的编程思想,使得每个模块之间的互动更加清晰,易于调试和维护。 4. 应该遵循标准的命名规范和编程规范,方便后续维护和升级。 总之,LabVIEW项目分层设计是一种有效的设计思想,可以提高项目的质量和可维护性,使得开发人员可以更加专注于业务逻辑的实现,减少重复工作,提高开发效率。 ### 回答2: LabVIEW是NI公司推出的一款图形化编程软件,该软件使用G语言进行编程,具有数据流编程和事件驱动编程的特点。在使用LabVIEW进行项目开发时,采用分层设计可以更好地提高项目的可维护性和可扩展性,提高开发效率。 LabVIEW项目分层设计包括三个层次:界面层、业务逻辑层和数据层。界面层是用户与程序交互的界面,它负责显示数据和接收用户输入。业务逻辑层是程序的核心部分,它包括所有的功能模块,处理用户输入,执行相应的功能,产生输出结果。数据层是持久化数据的存储层,它负责数据的读取和保存。 在实际的项目开发中,根据项目的不同需求,可以再将业务逻辑层进行细分,例如可以将数据处理、网络通信、控制等不同的功能模块分别放在不同的模块中实现。 采用分层设计可以实现良好的代码复用和隔离性,不同层次的代码可以在无需了解其它层次实现的情况下进行开发和修改。同时,采用分层设计还能减少程序之间的耦合度,提高程序的可维护性和可扩展性。 总之,LabVIEW项目分层设计是一种重要的设计模式,它能够更好地提高项目开发效率和代码的可维护性和可扩展性。在实际项目开发中,开发人员应该按照分层设计的原则进行开发,并严格遵守开发规范和代码风格。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值