只会一点java

java持续学习者,每月一篇博客。罗列出技术栈,慢慢完善,持续学习,总有一天,你会追上甚至超越曾经的大神。
  博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

软件架构(一)概览

Posted on 2022-08-17 08:43  只会一点java  阅读(261)  评论(0编辑  收藏  举报

系列目录

软件架构(一)概览

软件架构(二)编程语言的历史

软件架构(三)名词解释:架构、设计、风格、模式

软件架构(四)单体架构(Monolithic Architecture)

软件架构(五)分层架构

软件架构(六)MVC架构历史

 

引子

做架构匆匆忙忙有几年后,忽然反思,自己对架构这一职位掌控到什么程度了?特整理出相关系列文章。从2个步骤来剖析架构:

  • 1.整理学习软件架构历史。正所谓...以史为鉴,可以知兴替。(2022.7-10月)
  • 2.理论结合实践,阐述工作中遇到的架构问题和解决方案。(2022.9-无穷大)

一翻网上冲浪后,找到几篇不错的文章。特地整理出来。

一、软件架构编年史系列

二、时间线

下面是我在阅读所有这些主题的文章和书籍之后总结的一条软件开发发展的粗略的时间线。我找到的关于确切时间的参考资料都作为链接加入了时间线,拿不准的时间我都加上了“~”,表示“大约”是这个时间。我们还可以在维基百科的编程范式主页上找到大量相关的内容。

这里列出的大多数话题都将在这个系列中谈及。

  • 20 世纪 50 年代
    • 非结构化编程
    • ~1951 – 汇编
  • 20 世纪 60 年代
    • 结构化编程
    • 分层: 用户界面、业务逻辑数据存储都在一层
    • ~1958 – Algol
  • 20 世纪 70 年代
    • 过程式/函数式编程
    • ~1970 – Pascal
    • ~1972 – C
    • 1979MVC 模式(Model-View-Controller)
  • 20 世纪 80 年代
    • 面向对象编程 (但其思想在 20 世纪 60 年代晚期已经第一次提出)
    • 分层: 两层,第一层是用户界面,第二层是业务逻辑和数据存储
    • ~1980 – C++
    • CORBA – 通用物件请求代理架构(尽管1991年才推出第一个稳定版,但最早使用可以追溯到 20 世纪 80 年代)
    • ~1986 – Erlang
    • ~1987 – Perl
    • 1987 – PAC 即 HMVC 模式(Hierarchical Model-View-Controller)
    • 1988LSP(里氏替换原则) (~SOLID)
  • 20 世纪 90 年代
    • 分层: 三层,第一层是用户界面,第二层是业务逻辑(以及浏览器作为客户端时的用户界面展现逻辑),第三层是数据存储
    • ~1991 – 消息总线
    • ~1991 – Python
    • 1992EBI 架构(Entity-Boundary-Interactor) 即 EBC 或 EIC
    • ~1993 – Ruby                                                                                                                                                                                                                                                                                                                                        
    • ~1995 – Delphi, Java, Javascript, PHP
    • 1996MVP 模式(Model-View-Presenter)
    • 1996OCP, ISP, DIP (~SOLID), REP, CRP, CCP, ADP
    • 1997 – SDP, SAP
    • ~1997面向方面编程
    • ~1997 – Web 服务
    • ~1997ESB – 企业服务总线 (尽管创造该术语的书籍2004年才出版,但这个概念早已被使用)
  • 21 世纪 00 年代
    • 2002SRP (~SOLID)
    • 2003领域驱动设计
    • 2005MVVM 模式(Model-View-ViewModel)
    • 2005端口和适配器架构即六边形架构
    • 2006? – CQRS 与 ES (命令查询职责分离与事件溯源)
    • 2008洋葱架构
    • 2009微服务(Netflix)
  • 21 世纪 10 年代
    • 2010DCI 架构(Data-Context-Interaction)
    • 2012整洁架构
    • 2014 – C4 模型

=============参考===================

原文:https://herbertograca.com/2017/07/03/the-software-architecture-chronicles/

译文:https://www.jianshu.com/p/b477b2cc6cfa