码迷,mamicode.com
首页 > 其他好文 > 详细

课堂作业02--架构漫谈笔记

时间:2017-03-03 20:36:13      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:建筑   nes   一般来说   调整   存储设备   总结   变化   表达   串行   

  《架构漫谈》讲述了架构产生的原因以及怎样做架构。产生的原因:必须由人执行的工作、每个人的能力有限、每个人的时间有限、人对目标系统有更高的要求、目标系统的复杂性使得单个人完成这个系统。简单说就是所有人按照每个人所擅长的进行分工,最后共同完成一件事情,这个过程就形成了社会架构。

  作者通过人类建筑学的发展,向我们介绍了架构的基本含义:1.根据要解决的问题,对目标系统的基本边界进行界定,2.并对目标系统按照某个原则的进行切分。切分的原则,要便于不同的角色,对切分出来的部分,并行或串行开展工作,一般并行才能减少时间。3.并对切分出来的部分,设立沟通机制。4.根据3,使得这些部分之间能够进行有机的联系,合并组装成为一个整体,完成目标系统的所有工作。这不仅是建筑行业的构架,也是我们软件行业开发的基本架构。

  架构师应该是第一个发现系统问题的。准确识别问题后,还是会有一些问题需要调整,也就是架构的切分。一般来说,架构切分的导火线是人的负载太重。因为维护自己的利益是每个人的本性,所以所有的切分调整,都是对相关人的利益调整。如果不能正确处理系统切分问题,将可能导致严重的后果,因此作者给出了切分的原则:1.必须在连续的时间内发现的一个活动,不能切分。2.切分出来的部分的负责人,对这个部分的权利和义务必须是对等的。3.切分出来的部分,不应该超出一个自然人的负载。4.切分是内部活动,内部无论怎么切,对整个系统的外部应该是透明的

  软件架构过程可以明确地拆分为两个不同的责任:其一,表达业务逻辑的代码,很多人把这部分叫做Domain Logic,或者叫Domain Model。这部分实际是来源于生活的,必须保持和现实生活中的切分一致,并非人为的抽象而成。其二,对用户提供访问并保存业务逻辑运行结果的代码。计算机的状态保存有一个缺陷,本机保留业务运行结果有很大的问题,一般都在外存储设备上保存,也便于扩展。众所周知,service的代码是最复杂的,需要服务于三方,为了把这三方的变化对service的影响降到最低,对于service进一步的拆分为三个部分,他们分别是Service、Glue Code、Business,让每一个部分都能够独立的变化,这样这三方的变化就不会产生连锁响应,降低成本。这就是软件架构的本质思想,由于我还为进行过项目的架构的使用,对架构如何在项目中实现还不是很明白。

  我认为架构是对于几年以上自己对于软件的总结和经验。

课堂作业02--架构漫谈笔记

标签:建筑   nes   一般来说   调整   存储设备   总结   变化   表达   串行   

原文地址:http://www.cnblogs.com/dotacai/p/6498208.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!