• 架构之美随笔六(读完正本书的认识)


      本书围绕5个主题领域来组织本书的内容:概述、企业应用、系统、最终用户应用和编程语言。让最优秀的设计师和架构师来描述他们选择的软件架构,剥开架构的各层,展示他们如何让软件做到实现功能、可靠、易用、高效率、可维护、可移植和优雅。个人感觉这本书就如同汇集了各个电视频道充斥的各类股评专家(当然是顶尖级的)的析股法则大全。而什么是成熟的架构师呢?简单来说,就是能够取各家之所长,因地制宜,形成适合自己设计场景的架构设计规律法则。

      这系列更像比较文学的IT版,并没有设计模式之深邃伟岸,但其经验仍极为难得,并不可多见,通读一遍,无论对扩展见识,还是增加架构经验,都有不少好处,值得一读。
     印象最为深刻是Emacs和FaceBook两章,一讲可扩展客户端的设计,一讲大型网站的内部架构,都是现在热门话题,参考意义很大。.架构是所构建系统的计划,确保由此得到期望的特性,同时也是所构建系统的描述。

       架构师首先关注的不是系统功能。比如 让你开发一个web应用。你首先向确认的不是页面布局和导航之类的。而是下面的问题。
       1).想发布在Windows服务器上还是LAMP上。
       2).谁提供主机的托管,有什么技术限制?
       3).想支持多少并发用户?
       4).应用需要怎样的安全性?有需要保护数据吗?运用在公网还是私网上。
     

      成功架构师的两项关键实践:让利益相关人参与以及同时关注功能和品质。利益相关人和他们的关注点包括:

      投资人:他们想知道项目能否在给定的资源下和进度约束下完成。

      架构师、开发人员、和测试人员:他们考虑的是最初的构建和以后的维护与演进。

      项目经理:组织团队,指定迭代计划。

      市场人员:通过品质特点实现与竞争者的差异化。

      用户,包括系统管理员:安装、部署、准备。

      技术支持人员:关注帮助平台电话呼入的数目和复杂性。

      系统的关键关注点:

      功能性:产品向它的用户提供哪些功能。

      可变性:软件将来需要哪些改变?哪些改变将来不太可能发生。

      性能:产品将达到怎么样的性能?

      容量:多少用户将并发使用该系统?该系统将为用户保存多少数据?

      生态系统:该系统将于其他系统进行哪些交互?

      模块化:如何将开发任务分解为模块,特别是这些模块可以独立的开发,并且能够容易满足彼此的需要?

      可构建性:如何将软件构建为一组组件,并能独立实现和验证这些组件?

      产品化:如果产品将以几种变体的形式存在,如何开发一个产品线,如何保持共性,以怎样的步骤开发?

      安全性:产品是否需要用户认证,数据的安全性如何保证,如何抵挡攻击?

      总而言之,这本书对于我们初识架构的人来说,算得上是涉猎。书中大部分内容还是读的有点晦涩。主要是还没有真正认识和接触架构的原因吧,但也不能说没有收获,通过对大型项目的分析为我们的架构提供了参考。

  • 相关阅读:
    Android开发 listitem中采用倒计时
    fresco中设置占位/加载失败的图片 无效
    启动 angular-phonecat 项目时出现这玩意 。('The header content contains invalid characters');
    对于在Android Studio 的 build.gradle 中的默认applicationId 要不要写呢?
    Android-Cannot merge new index 66195 into a non-jumbo instruction的解决办法
    在eclipse 导入简单的Android studio 简单项目
    对于android浏览器的一些看法
    Error:Cause: org/gradle/api/publication/maven/internal/DefaultMavenFactory Android
    android 判断点击的位置是不是在指定的view上
    android studio(AS) Duplicate files copied in APK META-INF/NOTICE.txt
  • 原文地址:https://www.cnblogs.com/Againzg/p/6405147.html
Copyright © 2020-2023  润新知