本帖最后由 xnwxq 于 2009-8-29 09:20 编辑
大家好,今天我想和做技术的同志们一起讨论一下“为何没有《硬件工程》,而《软件工程》却存在?”
大家都知道市场上存在不同作者不同出版社出版印发的《软件工程》书籍,但是没有看到过《硬件工程》此类的书籍(至少我是没有看过这样的书)。
问题就来了.......
部分内容来自网名为:Lzhdim的工程师
对于硬件而言,其实已经实现了统一的架构,使用统一的外接独立的硬件设备来运行,即定义好了接口,所有外设都往上面靠拢。
而软件业内一直没有形成一套统一的架构,软件只形成了一套设计的理论,设计的模式,没有形成一套统一的系统。但是在实际情况中,往往很多系统都是在做重复的工作,即不同的企业,不同的业务领域,一再的重复着相同的应用系统设计开发。为什么软件业不能形成一套固定的架构呢。
硬件有硬件的特点,软件有软件的好处。硬件离开软件是没有意义的,没有存在的价值。
从硬件的角度出发,硬件的架构设计,其更多的是考虑元器件的特性,依赖于元器件的更新换代来发展,而且同样依赖于组织定义的硬件接口规范。硬件的基础是元器件工艺,焊接工艺。然后是接口间的连接,通信,接口的规范。再有运行速度的提高,通讯速度的提高,存储容量的提高。硬件架构的设计,还要考虑热功耗,成本,复杂度等等。还有重要的一点,硬件的架构掌握在少数企业中,比如Intel这些领跑者了,而接口的规范,却掌握在一些临时联合起来的企业,比如惠普,索尼之流。
根据硬件的理论,只要提高了依赖基础对象,那么就能提高、促进更快的发展。软件的基础,按照以前的说法,就是算法+数据结构,面向过程,面向数据的开发方法。现今已逐步转变为面向对象,面向方法,面向服务的编程模式了。从这点出发分析,限制软件发展的不是编程语言,而是设计方法。不同的设计者,不同的水平,设计出来的系统就不同,架构也就不同。软件架构的设计,也要考虑成本,复杂度,稳定性,可靠性,重用性等等。软件的架构掌握在少数大型的软件企业,比如微软等,还有开源社区的辛勤的架构设计劳动者们。软件的接口规范,往往依赖于实际应用中的系统业务。
为何具有统一架构的硬件设计却没有《硬件工程》的书籍,而没有统一架构的软件设计却有《软件工程》的书籍?
大家可以就你所知道的有关硬件和软件的好思想都在这里各抒己见! |