<wbr id="juant"></wbr>
  • <wbr id="juant"></wbr>
    更多課程 選擇中心


    Python培訓

    400-111-8989

    Python面向對象與面向對象編程有什么區別?

    • 發布:Python培訓
    • 來源:Python常見問題
    • 時間:2021-03-01 11:52

    面向對象(Object Oriented)是程序開發領域中的重要思想,這種思想模擬了人類認識客觀世界的邏輯,是當前計算機軟件工程學的主流方法;類是面向對象的實現手段。Python在設計之初就已經是一門面向對象語言,了解面向對象編程思想對于學習Python開發至關重要。

    提到面向對象,自然會想到面向過程。面向過程編程的基本思想是:分析解決問題的步驟,使用函數實現步驟相應的功能,按照步驟的先后順序依次調用函數。前面章節中所展示的程序都以面向過程的方式實現,面向過程只考慮如何解決當前問題,它著眼于問題本身。

    面向對象編程的著眼之處在于角色以及角色之間的聯系。使用面向對象編程思想解決問題時,開發人員首先會從問題之中提煉出問題涉及的角色,將不同角色各自的特征和關系進行封裝,以角色為主體,通過描述角色的行為去描述解決問題的過程。

    下面以五子棋游戲為例說明面向過程和面向對象編程的區別。

    1、基于面向過程編程的問題分析

    基于面向過程思想分析五子棋游戲,游戲開始后黑子一方先落棋,棋子落在棋盤后棋盤產生變化,棋盤更新并判斷輸贏:若本輪落棋的一方勝利則輸出結果并結束游戲,否則白子一方落棋、棋盤更新、判斷輸贏,如此往復,直至分出勝負。

    2、基于面向對象編程的問題模擬

    基于面向對象編程思想考慮問題時需首先分析問題中存在的角色。五子棋游戲中的角色分為兩個:玩家和棋盤。不同的角色負責不同的功能,例如:

    (1) 玩家角色負責控制棋子落下的位置;

    (2) 棋盤角色負責保存棋盤狀況、繪制畫面、判斷輸贏。

    角色之間互相獨立,但相互協作,游戲的流程不再由單一的功能函數實現,而是通過調用與角色相關的方法來完成。

    面向對象保證了功能的統一性,基于面向對象實現的代碼更容易維護,比如,現在要加入悔棋的功能,如果使用面向過程開發,改動會涉及到游戲的整個流程,輸入、判斷、顯示這一系列步驟都需要修改,這顯然非常麻煩;但若使用面向對象開發,由于棋盤狀況由棋盤角色保存,只需要為棋盤角色添加回溯功能即可。相較而言,在面向對象程序中功能擴充時改動波及的范圍更小。

    免責聲明:內容來源于公開網絡,若涉及侵權聯系盡快刪除!

    預約申請免費試聽課

    填寫下面表單即可預約申請免費試聽!怕錢不夠?可就業掙錢后再付學費! 怕學不會?助教全程陪讀,隨時解惑!擔心就業?一地學習,可全國推薦就業!

    上一篇:Python爬蟲可以的應用
    下一篇:2021年為什么學習Python開發

    Python培訓班線上線下哪種靠譜

    python線上培訓班學費一般多少

    Python線下培訓班有哪些

    一篇文章帶你了解python和c語言的區別

    • 掃碼領取資料

      回復關鍵字:視頻資料

      免費領取 達內課程視頻學習資料

    • 視頻學習QQ群

      添加QQ群:1143617948

      免費領取達內課程視頻學習資料

    Copyright ? 2021 Tedu.cn All Rights Reserved 京ICP備08000853號-56 京公網安備 11010802029508號 達內時代科技集團有限公司 版權所有

    選擇城市和中心
    黑龍江省

    吉林省

    河北省

    湖南省

    貴州省

    云南省

    廣西省

    海南省

    天天日天天射天天干天天伊|奇米电影|奇米网_奇米首页|奇米首页 百度 好搜 搜狗
    <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>