Python編程思想__面向對象&面向過程

        面向對象&面向過程

什麼是面向過程?java

            自上而下順序執行,逐步求精;
            其程序結構是按功能劃分爲若干個基本模塊,這些模塊造成一個樹狀結構;
            各模塊之間的關係儘量簡單,在功能上相對獨立;
            每一模塊內部均是由順序、選擇和循環三種基本結構組成;
            其模塊化實現的具體方法是使用子程序。編程

            程序流程在寫程序時就已決定。模塊化

什麼是面向對象?函數

            把數據及對數據的操做方法放在一塊兒,做爲一個相互依存的總體——對象。
            對同類對象抽象出其共性,造成類。
            類中的大多數數據,只能用本類的方法進行處理。
            類經過一個簡單的外部接口與外界發生關係,對象與對象之間經過消息進行通訊佈局

            程序流程由用戶在使用中決定。spa

理解面向對象設計

    面向對象是相對面向過程而言
    面向對象和麪向過程都是一種編程思想
面向過程
    1. 強調的是功能行爲
    2. 關注的是解決問題須要哪些步驟 
面向對象
    1. 將功能封裝進對象,強調具有了功能的對象 指針

    2.關注的是解決問題須要哪些對象 對象

                

            理解面向對象-把大象裝進冰箱
blog

面向對象:

把一我的當作一個對象,

這我的 能夠打開冰箱,能夠把大象裝進冰箱,能夠關冰箱

面向對象更加符合人的思考習慣,從執行者變成了指揮者

 

面向過程和麪向對象

面向過程:
      就是分析出解決問題所須要的步驟,而後用函數把這些步驟一步一步實現,使用的時候一個一個依次調用就能夠了。
面向對象: 

      是把構成問題的事務分解成各個對象,每一個對象都有本身獨立的屬性和行爲, 對象能夠將整個問題事務進行分工, 不一樣的對象作不一樣的事情, 這種面向對象的編程思想因爲更加貼近實際生活, 因此被計算機語言普遍應用。 

面向過程和麪向對象-設計五子棋遊戲

 面向過程的設計思路: 

    分析問題的步驟:

開始遊戲 --> 黑子先走 --> 繪製畫面 --> 判斷輸贏 --> 輪到白子 --> 繪製畫面 --> 判斷輸贏 --> 返回步驟2到七、最後輸出輸贏的結果。把上面每一個步驟用分別的函數來實現,問題就解決了.

 面向對象的設計則是:
                從另外的思路來解決問題: 整個五子棋能夠分爲 一、黑白雙方(這兩方的行爲是如出一轍的),二、棋盤系統(負責繪製畫面),三、規則系統(負責斷定諸如犯規、輸贏等).  第一類對象(玩家對象)負責接受用戶輸入,並告知第二類對象(棋盤對象)棋子佈局的變化,棋盤對象接收到了棋子的變化就要負責在屏幕上面顯示出這種變化,同時利用第三類對象(規則系統)來對棋局進行斷定.

面向過程和麪向對象-設計五子棋遊戲

                兩種不一樣的思路均可以實現相同的功能, 可是面向對象的實現方式更加貼近人類生活 (好比: 公司的各個部門, 學校的各個院校等). 在程序的編程中咱們把項目中的每一個不一樣的個體當作總體功能的每個對象, 對象中再包含其屬性和方法, 讓對象對其屬性和方法進行封裝, 這樣也更加利於後期擴展和維護. 如今幾乎全部的語言都支持面向對象的編程思想.

面向過程的語言:  C語言等. 

面向對象的語言:  C++, java, C#,   OC, JS, Swift等. 
    
    面向對象的基本特徵

            面向對象編程(OOP)的3個基本特徵是:封裝、繼承、多態
                 封裝:將屬性和方法(數據和功能)封裝在一塊兒;  
                 繼承:繼承是指這樣一種能力:它可使用現有類的功能,並在無需從新編寫原來的類的狀況下對這些功能進行擴展。
                 多態:容許讓父類的指針分別指向不一樣的子類, 調用不一樣子類的同一個方法,  會有不一樣的執行效果 

           

面向對象的屬性和方法

    對象的組成

        屬性(對象的屬性) ——變量:狀態、靜態的
        方法(對象的行爲) ——函數:過程、動態的


  好比: 
     Animal(動物)是一個類,咱們
能夠具體到一隻狗跟一隻羊,而狗跟
羊就是具體的對象,他們有顏色屬性,
能夠寫,能夠跑等行爲.

面向對象-小狗吃食

示例:  小狗吃食(聞一聞smell、舔一舔lick、咬一咬bite)
         分別採用面向過程和麪向對象來分析

面向過程 :  先聞一聞, 而後再舔一舔, 最後再咬一咬 (注重過程)  面向對象 :  小狗是一個對象, 它能夠聞一聞食物, 能夠舔一舔食物, 能夠咬一咬食物. (不注重過程, 注重對象)  

相關文章
相關標籤/搜索