C語言大型軟體設計的物件導向
C 原本是程式導向的語言,自身沒有內建物件導向的特性,但我們還是可以利用 C 語言本身已有的特性來實現物件導向的一些基本特徵。
今天我們給大家推薦一門《C語言大型軟體設計的物件導向》課程,11月16日(下週四)宋寶華老師將線上直播,與您討論 C 語言面嚮物件的技術難點、疑點。
1.物件導向的概念
物件導向的語言-
與已往的各種語言的根本不同是,它的設計出發點就是為了更能直接的描述問題域中客觀存在的事物。
一切皆物件,物件來源於生活高於生活。
將功能封裝進物件,強調具備了功能的物件。
物件導向是基於程式導向的。
是一種符合人們思考習慣的思想,可以將複雜的事情簡單化,將程式設計師從執行者轉換成了指揮者
物件導向的特徵:
①封裝(encapsulation)。封裝是指利用抽象資料型別將資料和基於資料的操作封裝在一起,使其構成一個不可分割的獨立實體,資料被保護在抽象資料型別的內部,儘可能地隱藏內部的細節,只保留一些對外介面使之與外部發生聯絡。封裝有四大好處:
- 良好的封裝能夠減少耦合。
- 類內部的結構可以自由修改。
- 可以對成員進行更精確的控制。
- 隱藏資訊,實現細節。
②繼承(inheritance)。繼承是使用已存在的類的定義作為基礎建立新類的技術,新類的定義可以增加新的資料或新的功能,也可以用父類的功能,但不能選擇性地繼承父類。
③多型(polymorphism)。所謂多型就是指程式中定義的引用變數所指向的具體型別和通過該引用變數發出的方法呼叫在程式設計時並不確定,而是在程式執行期間才確定,即一個引用變數倒底會指向哪個類的例項物件,該引用變數發出的方法呼叫到底是哪個類中實現的方法,必須在由程式執行期間才能決定。
2.C語言實現封裝、函式指標
在程式執行中,函式程式碼是程式的演算法指令部分,它們和陣列一樣也佔用儲存空間,都有相應的地址。可以使用指標變數指向陣列的首地址,也可以使用指標變數指向函式程式碼的首地址,指向函式程式碼首地址的指標變數稱為函式指標。函式指標是通過函式名及有關引數進行呼叫的。
3、從一個命令解析器的案例開始
a. 過程化程式設計b. 採用封裝思想設計
4.一個嵌入式圖形框架的C物件導向
5.C語言實現繼承和多型,模擬虛擬函式
6.提煉軟體的中間層
7.綜合案例,物件式思維鍛鍊
更多細節,您可以點選下方課程入口進入瞭解:
講師介紹:
宋寶華老師有10幾年的Linux開發經驗。他長期在著名跨國企業擔任一線工程師和系統架構師,編寫大量的Linux程式碼,並負責稽核其他同事的程式碼。他是Linux的活躍開發者,在Linux主線核心提交了4萬行以上的程式碼和幾百個補丁,曾擔任一ARM SoC在Linux社群的maintainer工作。他也是China-pub 2008年度“十大暢銷經典”,“十佳原創”圖書《Linux裝置驅動開發詳解》的作者,他曾為許多知名企業提供嵌入式Linux企業培訓和技術服務,受到企業廣泛好評。
課程介紹:
C語言程式碼一旦達到一定規模,就特別強調良好的架構設計,以保證程式碼的可讀性好、程式碼簡潔以及可複用。此時,軟體設計師勢必要用C語言來做物件導向的設計。不能克服物件導向這一關,也是很多人無法讀懂Linux核心、驅動等架構比較龐大的軟體的主要技術壁壘之一,因為這些軟體裡面充滿了物件式的設計。 本課程以案例來詳細講解,用C語言如何設計物件導向的程式。
課程特色:專屬答疑+課件資料提供+視訊無限時回放+VIP交流群
開課時間:隨到隨學,自由支配
相關文章
- 真的可以,用C語言實現物件導向程式設計OOPC語言物件程式設計OOP
- 軟體設計師:物件導向技術物件
- Facebook 開源 Skip 物件導向+函數語言程式設計語言物件函數程式設計
- Go語言結構體(struct)物件導向程式設計基礎篇Go結構體Struct物件程式設計
- 物件導向程式設計—C++語言描述電子書pdf下載物件程式設計C++
- 物件導向變成 VS 函數語言程式設計物件函數程式設計
- 物件導向程式設計C++物件程式設計C++
- 物件導向程式設計-java語言 第二週程式設計題物件程式設計Java
- 50.C++物件模型的分析(上)(C語言實現物件導向特性)C++物件模型C語言
- 一步步分析:C語言如何物件導向程式設計C語言物件程式設計
- Go 是物件導向的語言嗎?Go物件
- C++ 物件導向高階設計C++物件
- 聊聊 Go 語言中的物件導向程式設計Go物件程式設計
- 物件導向軟體工程物件軟體工程
- 物件導向的程式設計和函數語言程式設計基本相同的證據 - vavr物件程式設計函數VR
- 物件導向程式設計物件程式設計
- C++模組2:物件導向程式設計C++物件程式設計
- C++物件導向程式設計_Part1C++物件程式設計
- 物件導向程式設計(C++篇4)——RAII物件程式設計C++AI
- JS物件導向設計-建立物件JS物件
- js物件導向設計---建立物件的方式JS物件
- javascript:物件導向的程式設計JavaScript物件程式設計
- JS物件導向的程式設計JS物件程式設計
- Scala的物件導向程式設計物件程式設計
- 單位網路監控軟體中的Pharo物件導向程式設計物件程式設計
- 物件導向(軟體開發概述)物件
- 物件導向程式設計(C++篇2)——構造物件程式設計C++
- 物件導向程式設計(C++篇3)——析構物件程式設計C++
- Python物件導向程式設計Python物件程式設計
- JS物件導向設計模式JS物件設計模式
- 程式設計思想 物件導向程式設計物件
- js物件導向程式設計JS物件程式設計
- 十三、物件導向程式設計物件程式設計
- 物件導向設計原則物件
- 十六、物件導向程式設計物件程式設計
- Python 物件導向程式設計Python物件程式設計
- Java--物件導向設計Java物件
- JS物件導向程式設計(一):物件JS物件程式設計