在学习架构的时候,我确实不知道到底一个架构师做了哪些内容,就算是完成了自己的工作了。显然架构师是提出如何解决问题的思路和方法的具体部署的,尽管他不一定去具体的编码工作,但至少他知道这是可行的,并且是最好的解决问题的方案。

架构主要分类:功能架构,控制架构,技术架构。

先说技术架构:实际上就是这样的,选择怎样的编程环境或者软件做支撑,好能够最快最好的的高质量的完成这个任务。很明显,这个任务需要对编程语言和各种中间件或者软件非常的了解。

控制架构:这个问题是从软件的健壮性和方便维护性上进行的决策。比如数据控制,业务逻辑控制,展示控制等等。数据控制是在软件编程环境中实现的,业务逻辑控制也是,展示控制也是。这就给人一个问题把他们分开不是很好嘛?

功能架构:是从软件的可用性上考量的。分层的,分模块的,分结构的。这些都是功能架构要解决的问题。

实际上编制一个软件的实质是:在一定的软件编制环境下,这里有个决策问题,决策的就是环境的选择,和使用哪些为完成工作而体现的好的特性。在能够方便维护和代码重用的情况下,考虑效率满足,这个就是控制架构的部分。完成需要的各项功能。