ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 软件架构设计:怎样定义软件架构

软件架构设计:怎样定义软件架构

原创 Linux操作系统 作者:ITPUB_PMSpace 时间:2008-01-17 23:23:09 0 删除 编辑
软件架构的目的就是怎样组织软件的各个部分,以及每个部分之间的信息沟通和协作等等。
     软件架构定义的工作贯穿软件过程的每个部分。
     在商业模型订立的时候,定义商业应用架构,或者叫做应用方案架构。为了解决这种方案提出的产品,即产品架构。每个产品的实现,必须定义的架构是软件的实现架构。
      作为一般软件工程师,讨论的是实现级别的架构。实现级别的软件架构主要是对于不同应用环境下的几个软件架构的式样。再者为了描述这些架构的几种工具、语言等等。
      什么是式样呢?我们常常讨论的设计模式就是一种模式J2EE的核心设计模式和其他机构提出的设计模式就是这样类型的架构式样。
      还有其他级别的软件架构吗?回答是肯定的。J2EE的软件架构它提供了异构平台、分布式网络计算的软件架构体系。 .Net的软件体系架构是分布式网络计算的软件架构体系。他们是规范级别的软件架构。如果我们不是开发weblogic这样的系统级别的软件,我们不用关心,否则必须考虑这些规范性质的软件架构体系。注意分析这些架构体系,就可以明白其中的软件思想和精华。本人曾经参与的开源组织,就指导他们用这种思想实现开源产品的。
       还有其他层次的软件架构吗?回答还是肯定的。当然这不是我们一般工程师平时可以运用到的。不过掌握了他,就可以全面了解软件架构是什么东西了。就像我们平时可能不会写编译器一样,我们懂得了编译原理,就更加明白软件一样。这一级别的软件架构是最高级别的概念。他定义一种软件架构定义的规则,定义工具和沟通语言。当然它来提供了一些基本的式样。
      .Net也好J2EE也好,必须清楚明白现代软件理论,尤其首先必须明白现代面向对象的软件理论。java很好的体现了现代面向对象的软件理论。C#也是一个面向对象的软件理论。但是它不是纯粹的面向对象的东西。他保留了结构化语言的一些有点和前期的面向对象的东西。较java而言,他增强了科学运算的能力。但是如果不明白这点,软件工程师就会被这些误导,而走不出结构化软件体系思想。当然也就走不进现代面向对象的软件理论体系和现代软件理论体系。
      我建议大家认证学习设计模式和揣摩设计模式。但是每一个人学习这的道德结果是不一样的。也许你很冲动,设计模式如此强大!那么我告诉你,你入门了,但是你必须很快冷静下来,学到最后你一点冲动也没有了,你就成熟了,到了那天你不再说适用什么模式的时候,你就大成了。应用金庸大侠的意思,无书胜有术,有书则无术。
 
    这里是个人学习软件架构的一点心得,望各位指教

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12639375/viewspace-150467/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-01-04

  • 博文量
    188
  • 访问量
    375177