前言
對於嵌入式入門的同學來說,往往會遇到裝置端處理能力不足、在面對大規模計算情況下需要藉助上位機完成進一步的資料處理的情況。此時,Python 語言因其簡單易用的特點和豐富多樣的庫成為了我們做上位機的不二選擇。然而,儘管我們可以很方便使用 Python 的 GUI 和科學計算庫,但是寫出的程式碼還是用的程序導向的那一套東西,程式碼是老太太的裹腳布,又臭又長,物件導向的設計方法為我們提供了一種新的程式設計思路。
然而,遺憾的是,市面上大多數關於Python物件導向程式設計的文件和教程往往只關注於如何實現,而對於為什麼要這樣實現、相關特點等更深層次的知識卻鮮有涉及。此外,這些教程也缺乏實際應用的例子,使得初學者難以真正理解和掌握物件導向程式設計的精髓。
為了幫助初學者更好地理解和應用物件導向的設計方法,本文件更加深入地探討其背後的原理和特點,並結合實際案例來展示其在實際開發中的應用價值。
本文件特點
本文件主要介紹如何使用 Python 進行物件導向程式設計,需要讀者對 Python 語法和微控制器開發具有基本瞭解。相比其他講解 Python 物件導向程式設計的部落格或書籍而言,本文件更加詳細、側重於嵌入式上位機應用,以上位機和下位機的常見串列埠資料收發、資料處理、動態圖繪製等為應用例項,同時使用 Sourcetrail 程式碼軟體對程式碼進行視覺化閱讀便於讀者理解。
文件內容介紹
第一章,我們首先對比了程序導向程式設計和麵向物件程式設計的兩種思想,介紹了物件導向方法學,包括物件導向分析、物件導向設計和麵向物件程式設計三個概念,同時簡述了物件導向程式設計的基本概念及其特性,並且給出了本文件示例程式的相關示例環境;
第二章,以串列埠通訊協議為例對於使用 Python 程式語言實現類的建立、繼承和組合進行基本講解,同時對使用模組和包組織我們多個 Python 檔案進行了基本介紹;
第三章,對於程式異常、異常捕獲和異常層級進行了基本介紹,同時介紹瞭如何根據自己的需要實現自定義異常類,並且對斷言的相關概念進行了基本介紹;
第四章,詳細講解了 Python 中物件、型別、類和例項間的關係,簡單回顧了 Python 中常用內建複合資料型別,同時講解了如何實現內建複合資料型別的擴充套件,最後簡單介紹了一些資料結構相關的概念;
第五章,首先對 Python 中函式和方法的區別進行了介紹,同時詳細介紹了Python 中介面的概念和具體實現,包括使用抽象基類、第三方庫和 Protocol 協議;
第六章,主要對字串、字元編碼、字串的格式化、正規表示式、二進位制字串和序列化物件等的概念和基本使用進行了介紹;
第七章,首先講解了程式的並行和併發兩個基本概念,主要對 Python 中使用多執行緒和多程序實現程式的並行和併發進行了介紹,並輔以綜合例項便於讀者更好的理解。
除了以上內容,本文件也對 Python 中的一些語法糖和 PyCharm 的使用技巧進行了介紹,包括型別註解、程式碼標籤等,這部分內容用紅框進行標註。
文件獲取
可訪問如下連結進行對文件下載:
https://github.com/leezisheng/Doc
相關示例程式碼獲取連結如下:
https://github.com/leezisheng/Python-OOP-Demo