目前軟件開發的兩種開發方法:結構化開發方法和面向對象開發方法.
- 一. 結構化開發方法:
1.主張按照功能來分析系統需求,也稱為面向功能程序設計
2.結構化程序設計首先采用結構化分析方法(Structrued Analysis SA)對系統進行需求分析,然后使用結構化設計(Structrued Design SD)方法對系統進行概要設計,詳細設計,最后采用結構化編程(Structrued Program SP)的方式來實現系統
3.最小程序單元是"函數",每個函數完成一個功能.
- 二. 面向對象開發方法:
1.從現實世界中的客觀存在事物出發來構造軟件系統,并在系統構造中盡可能地運用人類的自然思維方式,強調以現實世界中的客觀存在為中心,來思考問題,認識問題,并根據事物的本質特點,將它們抽象為系統中的類,作為系統的基本構造單元.
2.使用類,對象,繼承,封裝,消息等基本概念來進行程序設計.
3.區別于"基于對象".基于對象也使用了對象,但無法利用現有的對象去產生新的對象,也就是說不能繼承.比如javascript
4.面向對象的三個基本特征:
封裝:
將對象的實現細節隱藏起來,在通過公用的方法來暴露該對象的功能.java提供private,protected和public三個訪問控制修飾符實現良好的封裝
繼承:
提供了extends來讓子類繼承父類.繼承是實線軟件復用的重要手段.
多態:
使用繼承關系來實現復用時,子類對象可以直接賦給父類變量.
5.java中的類主要有兩種結構關系:
a 一般-特殊:繼承關系,如人-男人,是一種"is a"的關系
b 整體-部分:組合關系,如人-胳膊,是一種"has a"的關系