• 首页
  • 产品与方案
  • 众成服务
  • 走进众成
  • 新闻中心
  • 企业文化
  • 联系我们
  • 解决方案
  • 众成软件
  • 维护支持
  • 运维服务
  • 技术交流
  • 公司介绍
  • 荣誉资质
  • 合作伙伴
  • 招贤纳士
  • 公司新闻
  • 业界动态
  • 文化建设
  • 企业文化
  • 荣誉榜

首页 > 产品与方案 > 众成软件

众成软件

Mvc分层个人理解

 作者:杨宇   文章来源:软件二部    点击数:  更新时间:2017-08-21 15:29:58

    工作之后,有幸接触到了php、java和Android。前两者都是网页系统,后者是安卓应用,发现它们在代码分层都有相同的特点,以下是我对代码分层的理解。

PHP:

用得最多的便是thinkphp框架,文件架构通常三个:

Controller 存放控制器文件,负责中心调控,调用model与view;

View 存放视图文件,前端代码存储区域;

Model 存放数据文件,负责与数据库打交道;

JAVA:

Java接触的项目文件架构通常是:

Web 存放控制器文件,实现逻辑控制,负责中心调控,调用service和view层;

View 存放视图文件,前端代码存储区域;

Service 实现业务逻辑,负责调用Dao层;

Dao 负责与数据库打交道;

Entity 负责创建数据类型;

Android:

安卓接触到的项目架构是:

Activity 负责中心调控,调用presenter和view;

Model 负责与数据库打交道,内含entity和api等;

Presenter 类似java的service层;

View 存放视图文件;

实际上还有许多的文件夹,比如dialog、adapter等辅助用的,个人认为,以上四类是主要的。

在我的理解中,文件架构的区分,仅仅是为了让程序员能够分工,同时开展工作,不然前端必须等后端完成接口之类的,效率实在太低。而所有的分类,其实都是有一个中间控制层,在不同的语言中,文件夹名可能不同,但都是负责中心调控,从数据库读数据搬运到前端,起到一个搬运工的工作,而前端则是负责展示。区别是搬运数据的过程,是否分得更多。

Php中没有对数据的分类,使用数据并不需要创建和释放,自然就少了像java的entity层。这让我想起程序员内功——《重构》,分层无非是为了增加代码的可读性,在适当牺牲效率的前提下进行。当语言越学越多,当项目接触得越来越多,慢慢地发现,他们的共同性也越来越多,也许这是设计师,人类思维共同性造成的,也许是大自然的本质特征,就像细胞放到最大和宇宙缩到最小,才会发现两者惊人地相似。

下载此文档:mvc分层个人理解(杨宇)   类型:docx,   大小:15 KB
  • 地址:温州市车站大道大诚商厦E幢四楼 | 电话:0577-88891333 | 技术服务电话:4008515159 | 传真:0577-88363999
  • 邮箱:jucher@jucher.com | 浙ICP备05000620号-1
  • Copyright © 2009-2019 JUCHER CORPORATION CO., LTD All Rights Reserve