若是本文帮助到你,本人不胜荣幸,若是浪费了你的时间,本人深感抱歉。 但愿用最简单的大白话来帮助那些像我同样的人。若是有什么错误,请必定指出,以避免误导你们、也误导我。 本文来自:www.jianshu.com/users/320f9… 感谢您的关注。html
五一去了北戴河,五一的北戴河真是 轮滑的天堂。前端
由于最近公司让学PHP,好久没有更新文章了。内心真是有点过意不去呀。 学了两个星期左右的PHP,三天熟悉语法,而后跟着项目边作边学,直接上框架,用的Laveral。两周时间,作完了练手项目:设备管理系统。而后接下来进行正式项目升级,负责Android,参与Web。android
咱们公司每周每一个组进行一次讲座分享,上周是咱们组,我是主讲,分享的是框架方面的。由于是很早很早之前就想写写这个,趁这个机会恰好分享一下。git
可是!!!!! 接触了后台以后,发现后台的框架设计跟前端的区别真大挺大的。 侧重点好像就不太同样。 因此最后的Web端框架,只是分享一个连接,我以为写的很不错。github
每一个模块底下都附了连接来源,感兴趣的能够直接去看看。 这是我作的PPT,转为图片贴上,作简单说明。架构
如同右边第一张图,将零碎的积木进行有序的重组,使其不断的完善,也就是架构存在的意义。框架
下面两个是好的架构师应该具有的条件。 右边那张图,“抽象思惟”和“透过问题看本质” 应该是架构师最顶层的能力,即便你拥有其他的全部能力,可是缺乏这两个最顶层的能力,写出来的东西,仍然可能会产生,咱们接下来要看的东西。(接下往下看吧。)模块化
参考连接:在首席架构师眼里,架构的本质是……组件化
总结一句话:在你写代码的时候,你的脑子里会有一个完整的逻辑模型。你要尽量的将你脑中的逻辑模型平滑的转化为你写的代码,让你过了一段时间以后、或者另一我的 看到你的代码(或者根据注释),可以尽量的重现出你当时写代码时脑海中的逻辑模型。网站
参考连接:为何我看不懂你的代码
这个主要讲的是MVP里面的M,由于V和P划分的比较开。 在实际写代码的过程当中M每每的至关复杂的。 这一块实际上是有不少方面能够研究的,最近比较流行的一篇文章: 完美的安卓 model 层架构
参考连接:App架构之组件化理解
大谷歌的一张图,在Google出的几个 Android MVP 的案例中,这个是其中一个。结构很是清晰。
这里借用了EventBus的图, 感受张图的 MVP 逻辑也挺清晰的,包括M层的封装。 这里提到了如何正确使用开源项目,也是属于model层的内容。
参考连接:如何正确使用开源项目?
原本还想斗胆讨论Web端的架构,想一想真是太天真了。 Web架构水太深,能够点进连接了解一下。
看完以后应该是能够总结出一些东西的:任何架构都不是一开始就很完善的,都是随着公司的发展,业务逻辑的发展,随着客户的需求,当前项目没法知足需求,才开始扩展。你不可能从第一步就把第十步的状况都考虑到,那你的项目写完都不知道要写何时去了。 因此在写项目的时候,用最简单的办法去处理当前项目的需求,把当前的每个小功能尽量的写的灵活利于扩展就能够了。切勿创建太过复杂的逻辑模型,由于你真的不肯定,之后的项目会朝着什么方向发展。你肯定你留着所谓的强大的逻辑模型,真的可以用得上吗? 固然这个是Web,相比Web来讲,移动端的结构还真是比较简单一点。
参考连接:大型网站系统架构的演化
看到了一篇讲MVP的文章,感受很是不错。对MVP缺点、优势的分析,跟个人想法是一致的。 在这里跟你们分享:使用MVP模式重构代码 www.jianshu.com/p/7c4e310da…
看到不错的关于 Android 架构的文章之后都收集一下放到这。 Android架构思考(模块化、多进程)