您的位置:首页 > 编程语言 > C语言/C++

对象、组件、服务,逐步建立的开发方法

2007-06-02 04:57 330 查看
面向对象是90年前后兴起的编程方法,后来进化为组件方式,03开始国外的不少公司开始推进SOA的方法,这里不作名词解释,就是说一下我所理解的对象、组件和服务。

很早就看到国外所谓的面向对象编程,国内也很多人都在学习面向对象编程,究竟什么是面向对象,个人觉得每个人理解的方式和方法 都是不同的。C语言不是面向对象的语言,但不代表C不能按照面向对象的方法编程,C++是面向对象的,但是很多程序员写的程序并不是面向对象,所以不是用面向对象的语言就能够编写出面向对象的程序,关键是写程序的人。

后来陆续开始面向组件的编程,有了COM、DCOM、CORBA等等方法,于是有很多程序员开始学习组件编写,写了很多不是组件的组件,不理解为什么要面向对象,为什么要把程序写成组件,就不可能掌握组件的编程原则,那肯定是写不好程序的。

SOA是什么,网络上一堆的材料不用我来描述,但是怎么把系统规划符合SOA,这才有可能设计好SOA。

下面我说一下自己的理解,不一定对,希望方家指教。我觉得很重要的一点是程序不是编写完成发布了就结束了的,更多的是要在程序的整个生命周期内维护好,维护期的需求变化造成的代码量远比初期编写的时候的代码量大,所以程序的开发完成只是生命的开始,所以怎么让这个生命活得更长,更健康是我们在一开始编写的时候采用的方法有很大的关系。

面向对象是基于代码重用的需要,我刚开始写程序的时候,书上就说要写成函数,各种各样的函数支持程序的工作,负责完成一个简单的功能,后来就发现函数的重用还不能解决代码不断修改的需要,于是修改了函数的入口参数,函数越来越多后代码就变得很凌乱。面向对象就能够在更高的层次上解决函数方式编码的问题。把一个form作成对象,对象内部即便是凌乱的,也不会对外部代码产生影响。

组件是基于功能的编程方法,或者可以说规划组件是系统设计的一个重要步骤,怎么把一个需求拆分成多个组件,每个组件再按照面向对象的方法编程。组件的编程实现方法也是软件工程越来越大,多个程序员协同完成一个任务的有效方法。

随着系统规模的不断扩大,一个系统的实现需要更多的人参与,单纯用组件的方法来规划系统已经不合适了,编程工具的使用1-3个程序员就可以完成一个组件的代码,组件之间的调用也越来越复杂,服务的模式即SOA模式就是解决组件间的关系问题,把系统拆分为不同的服务,各个服务间的接口在一开始就进行规划,服务内部包含各种组件,有可能一个组件在二个不同的服务内工作,但是其归属首先是归属到各个服务中。SOA的方法首先是方法论上的进步,尤其是系统设计上的问题,回过头看几年前作的东西,如果能够一开始就用服务的概念来规划,系统的生命期会更长。

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐