面向对象与结构化方法在软件工程中的应用探讨

2 下载量 141 浏览量 更新于2024-08-29 收藏 169KB PDF 举报
"本文主要探讨了作者对面向对象方法和结构化方法的理解,以及它们在软件工程中的应用。作者强调了先进的分析和设计方法对于技术管理的重要性,并通过个人经验分享了在非规范软件工程环境中应用UML的挑战。文中提到了UML在不同阶段的局限性,以及在具体项目中,面向对象方法和结构化方法在功能需求分析上的相似之处。" 面向对象方法和结构化方法是两种重要的软件开发范型,各自有着独特的理论基础和实践应用。面向对象方法(Object-Oriented Methodology,OOM)着重于将现实世界的问题抽象为对象,通过对象之间的交互来解决问题,强调封装、继承和多态三大特性。结构化方法(Structured Methodology)则注重自顶向下、逐步求精的设计原则,通过分解系统为一系列功能模块来实现。 在软件工程的各个阶段,如需求分析、系统设计、编码和测试,这两种方法都有其适用性。然而,面向对象方法更加符合现代软件开发的需求,因为它能更好地处理复杂性和变化。UML(统一建模语言)是面向对象分析和设计的一种标准化表示工具,它提供了丰富的图表类型,如用例图、类图、序列图等,帮助开发者更好地理解和表达系统模型。 作者指出,在不规范的软件工程环境下,UML可能仅被用于部分阶段,例如类设计。当软件过程不规范时,直接从功能需求转向编码成为常态,这限制了UML的全面应用。在实际工作中,结构化方法和面向对象方法在功能需求分析阶段的区别并不明显,都需进行模块划分,只是面向对象更倾向于从用例出发,而结构化方法更关注功能模块。 在项目实施过程中,作者使用J2EE技术开发数据库管理应用,他采用面向对象的方法,从对象到数据库表,再到方法设计,而老宋则采取了传统的结构化方法,从数据库表到模块接口设计。尽管最终设计结果相似,但编程阶段都使用了面向对象编程(JAVA),显示了面向对象方法在实际开发中的优势,即能够自然地映射到编程语言的特性。 总结来说,面向对象方法和结构化方法各有优缺点,适用于不同的项目和环境。良好的软件工程环境和规范的过程对于发挥这些方法的最大效益至关重要。同时,随着技术的发展,面向对象方法在许多方面显示出了更强的适应性和灵活性,但理解并灵活运用各种方法仍然是软件工程师必备的技能。