資料介紹
模塊化思想
模塊化是一個很重要的思想,它的應用不僅僅局限在單片機等技術(shù)方面,還體現(xiàn)在我們的身體構(gòu)造,體現(xiàn)在人類社會生產(chǎn)生活中的方方面面。何為模塊化思想呢?按照我的理解,模塊化思想有幾個特點,下面一一道來。
1、分工合作與專一
對生物學有基本認識的人都知道,包括人在內(nèi)的很多動物是由多種器官構(gòu)成的,例如大腦負責思考,心臟負責輸送血液等。每個器官或組織負責幾項功能,各個器官之間協(xié)調(diào)工作,共同構(gòu)成一個復雜的整體。
在人類社會中,分工合作的現(xiàn)象也是很常見的。生活中需要吃飯穿衣,在比較落后的年代,可能有一些自給自足的經(jīng)濟形式,自己勞動滿足最基本的生活需求。而在現(xiàn)代社會,人的需求越來越多,不可能全部靠自己生產(chǎn)。每個人都專注于自己的特長,例如農(nóng)民負責種植糧食,服裝工人負責制造衣服,養(yǎng)殖戶負責養(yǎng)殖,程序員負責編寫程序等。各種人分工合作,最后互相交換勞動成果。當一個人長期專注于一件事,而不用擔心自己其他的需求時,這個人能把這件事做得更好,總體上來看,社會的生產(chǎn)力也就大大提高了。
2、模塊抽象
如果對電腦的基本組成有所了解,可以知道電腦由CPU、內(nèi)存、硬盤、主板、顯示器等幾部分組成。如果想在電腦中存儲更多的電影,可以考慮更換更大的硬盤。我們只需要知道硬盤是電腦中負責存儲的部件,而不關(guān)注硬盤內(nèi)部的構(gòu)造。因為每個模塊都是高度抽象的,內(nèi)部原理可能很復雜,但是對外部而言,它只是一個能完成特定功能的黑盒子。這樣抽象的好處,就是在更換硬盤時,只需要從外部對硬盤有一個抽象的認識,就能輕松解決問題,剩下的就只是花錢購買硬盤了。
3、分層
如果讓你管理一個龐大的公司,你會怎么管理?分層管理將會是一個很好的選擇。
你可以根據(jù)實際情況將公司分為幾個部門,研發(fā)部、營銷部、財務(wù)部、人事后勤部等。每個部門指派幾個負責人進行管理,每個部門負責指定的工作。而具體到研發(fā)部,管理人員為了便于管理,又可能將其分為軟件部、硬件部等;而到了軟件部,又會有不同的團隊,移動客戶端開發(fā)、服務(wù)器端開發(fā)等等。這樣一層一層進行分下來,每個人各司其職,也體現(xiàn)了分工合作的特點。
如果你是公司的老總,當發(fā)現(xiàn)這個月公司的軟件產(chǎn)品開發(fā)進度非常慢時,可能會直接叫來研發(fā)部的總管大發(fā)雷霆:“公司的XX軟件開發(fā)太慢了,你看人家公司的同類產(chǎn)品早就發(fā)布出去了。這件事你得盡快給我搞定,要不然就走人!”然后指令一層一層的下達到了最下層的員工,最底層的程序猿們就又要加班加點拼命的干活了。研發(fā)進度慢或許只是因為有幾個程序員最近有事請假了,但是在這個過程中,你不需要過多關(guān)注底層的細節(jié),你也沒有太多精力去關(guān)注,而只是把整個研發(fā)部當做一個抽象的整體去對待,這也體現(xiàn)了模塊抽象的特點。
模塊化設(shè)計的方法原則
前面說了模塊化思想的特點,模塊化思想應用很廣泛,而根據(jù)這種思想設(shè)計系統(tǒng),就是模塊化設(shè)計了。不只是單片機系統(tǒng),計算機軟硬件系統(tǒng)也可以充分利用模塊化設(shè)計。這里先說一說模塊化設(shè)計的方法思路。
對于初學者,對此只需要先有個大概的認識,沒有實際設(shè)計過,對這些思想也不容易有所感觸;后來需要設(shè)計實際系統(tǒng)時,有需要回來再看看這篇就好了。
1、自頂向下,逐步求精;邏輯設(shè)計與物理實現(xiàn)分離;自底向上
當要設(shè)計一個比較復雜的系統(tǒng)時,常常會先畫框圖,每個框表示一個抽象的功能模塊。通過框圖可以設(shè)計這些模塊之間的邏輯關(guān)系,然后再細化去設(shè)計每個模塊。而這樣一個模塊可能也比較復雜,這時又會將其拆分為更小的模塊。這樣一步一步的拆分模塊,直到最后技術(shù)細節(jié)實現(xiàn)。這就是自頂向下的設(shè)計方法,將一個復雜問題進行分解,逐步求精。而框圖的設(shè)計則是模塊之間的邏輯設(shè)計,邏輯設(shè)計與每個模塊的具體物理實現(xiàn)可以完全分離。
和自頂向下的設(shè)計方法相比,還有一種恰恰相反的思路:自底向上。先設(shè)計出一些核心模塊,然后再逐步進行擴展和完善。完全的自底向上的方法只適合設(shè)計小型的系統(tǒng)。在實際應用中,往往是結(jié)合這兩種方法進行設(shè)計。
2、模塊獨立,減小耦合度
模塊化設(shè)計中很重要的一個思想是模塊獨立,減小模塊之間的耦合度。也就是說,每個模塊負責完成自己的功能,不同的模塊之間關(guān)聯(lián)要盡可能小,以免互相影響。
想給電腦換一個更大的硬盤時,一般不用考慮內(nèi)存等其他模塊會不會受到影響,要不然實在是太麻煩了。因為電腦的模塊化設(shè)計非常規(guī)范,模塊之間的關(guān)聯(lián)很小。
減小耦合度這種看似簡單的問題,實際上在設(shè)計的時候卻相當麻煩,為了減小耦合度,需要使用很多技術(shù)來完成,后面會在實際操作中進行介紹。
3、模塊標準化,可代換
有同學覺得自己的電腦反應太慢,網(wǎng)上一查,原來電腦慢很大可能是因為機械硬盤的速度太慢。相比硬盤,CPU和內(nèi)存要快很多,所以就如木桶效應,電腦被最慢的硬盤給拖慢了速度。于是就給電腦換上了固態(tài)硬盤,頓時速度快了很多。
固態(tài)硬盤和機械硬盤的內(nèi)部結(jié)構(gòu)是完全不一樣的。機械硬盤是依靠磁性盤片存儲數(shù)據(jù)的,讀寫時需要機械結(jié)構(gòu)帶動盤片轉(zhuǎn)動,機械轉(zhuǎn)動速度不能太快(2.5寸機械硬盤以7200轉(zhuǎn)每分鐘的速度旋轉(zhuǎn),盤片邊緣的速度能達到86km/h),太快了盤片可能會直接破裂,或者發(fā)熱量巨大,所以讀寫速度遠遠沒有電子器件快。而固態(tài)硬盤使用的就是電子芯片來實現(xiàn)數(shù)據(jù)存儲,所以速度非常快。
兩種硬盤雖然原理和性能差距都很大,但是卻能很輕松的安裝在同一臺電腦上,只要保證一些參數(shù)匹配,例如都是2.5寸的。這是因為現(xiàn)有的不同硬盤設(shè)計的都是標準化的,硬盤的尺寸、接口等都有標準規(guī)范,所以能很輕松的代換。
4、模塊通用性,適用于多種產(chǎn)品
幾年以前的手機等數(shù)碼產(chǎn)品,不同品牌、不同設(shè)備分別由不同的人和公司設(shè)計,充電的接口各不相同,充電器也都是每個數(shù)碼產(chǎn)品專門配備一套,出門旅行帶的數(shù)碼產(chǎn)品一多,僅僅是大大小小的各種充電器就夠讓人煩了。而且充電器壞了只能重新買配套的充電器。這樣的設(shè)計浪費了很多資源,也給人們的生活帶來了很大的不便。
而近幾年,MP3、MP4、手機等數(shù)碼產(chǎn)品的充電器接口慢慢被統(tǒng)一起來,很多設(shè)備都可以使用通用的USB充電頭和數(shù)據(jù)線進行充電。對于用戶來說方便多了;對于設(shè)備制造商來說,也不是很有必要單獨設(shè)計充電器,直接用標準充電器就可以了;還節(jié)約了資源,例如有些數(shù)碼設(shè)備充電器是可以選配的,有充電器就不用再進行購買了。通用的充電頭和手機充電接口設(shè)計,使得一個充電器可以用于多種產(chǎn)品。
通用性和前面一點標準化,兩者其實都可以理解成,設(shè)計一個模塊或系統(tǒng),都要遵循一定的標準化規(guī)范。一個標準化的模塊,可以應用于不同的系統(tǒng)(通用充電器給多種設(shè)備充電);而符合統(tǒng)一標???的多個同類模塊,可以用于同一個系統(tǒng)(機械硬盤和固態(tài)硬盤都能裝進電腦)。
模塊化設(shè)計的優(yōu)缺點
前面通過舉例,已經(jīng)明確的體現(xiàn)了模塊化設(shè)計的很多優(yōu)點,這里對其特點進行一個總結(jié)。
1、便于分工合作
對于一個實際產(chǎn)品,很多時候不是一個人開發(fā)的,而是很多人共同開發(fā)。這里的原因有很多,可能是因為時間比較緊,例如公司之間的競爭,誰最先開發(fā)并發(fā)布新的產(chǎn)品,就最有可能搶占市場;可能是因為系統(tǒng)太龐大,一個人一輩子也做不完,例如操作系統(tǒng)的代碼量往往能達到幾百萬行;分工合作還會提高整體效率,前面已經(jīng)說過了。
多個人開發(fā)同一個系統(tǒng),模塊化開發(fā)是最好的選擇。一些人專注于一個領(lǐng)域,例如安卓程序、平面設(shè)計、服務(wù)器等,每個人負責開發(fā)和他的專注領(lǐng)域匹配的小模塊,而另外一些知識面比較廣、經(jīng)驗豐富的人,負責模塊之間的邏輯組合,最后將整個系統(tǒng)整合到一起。這個過程也可能會有分層,系統(tǒng)分成大的模塊,再拆分成小的模塊,逐層分解并實現(xiàn)。
2、提高開發(fā)效率
一方面,分工合作的方式能提高效率;另一方面,運用已經(jīng)實現(xiàn)好的模塊,像積木一樣搭建新的系統(tǒng),更是讓效率大大提高。
模塊的開發(fā),可能是很多人分別完成的,也可能是同一個人在不同時期完成的,還有可能是從別人那免費獲得或購買的。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 單片機系列講解--單片機是什么?
- 51單片機(1)單片機概述
- 51單片機原理以及接口技術(shù)(一)-單片機發(fā)展概述
- 小白學單片機(15) 單片機程序下載失敗總結(jié)資料下載
- 小白學單片機(17) 單片機/計算機系統(tǒng)概述:核心模塊資料下載
- 小白學單片機(18) 單片機/計算機系統(tǒng)概述:通信接口與協(xié)議資料下載
- 小白學單片機(19) 單片機/計算機系統(tǒng)概述:擴展模塊資料下載
- 單片機小白學寄存器資料下載
- 單片機入門匯編之單片機接收計算機串口發(fā)送的數(shù)據(jù)程序免費下載 14次下載
- 單片機入門匯編之單片機通過串口向計算機發(fā)送數(shù)據(jù)程序免費下載 8次下載
- 什么是AVR單片機AVR單片機的優(yōu)勢,特點,應用等資料概述 2次下載
- 什么叫單片機?單片機原理及接口技術(shù)的詳細資料概述免費下載 42次下載
- 基于單片機的計算機箱智能監(jiān)控系統(tǒng) 2次下載
- 基于單片機的計算機箱智能監(jiān)控系統(tǒng) 0次下載
- 單片微型計算機概述
- 單片機的特點及功能 3029次閱讀
- 計算機與單片機的串口通信的方案設(shè)計 5325次閱讀
- 什么是單片機_單片機的概念 3.5w次閱讀
- PIC單片機與PC機實現(xiàn)串行通信的設(shè)計 2819次閱讀
- PIC單片機虛擬串行通信設(shè)計 1347次閱讀
- 單片機各種復位電路大全 詳解單片機復位電路 4.7w次閱讀
- 51單片機如何進行模塊化編程 3.2w次閱讀
- 教你如何玩轉(zhuǎn)STM8單片機! 1w次閱讀
- 新手學習單片機的首選:51單片機 8536次閱讀
- 單片機學習入門_學單片機需要什么基礎(chǔ) 3.9w次閱讀
- 單片機和電腦pc計算機的區(qū)別 1.7w次閱讀
- 單片機有什么用_單片機的應用領(lǐng)域介紹 1w次閱讀
- 我對單片機的理解 617次閱讀
- 關(guān)于計算機組成原理與單片機原理 3725次閱讀
- 單片機看門狗電路的作用,看門狗系統(tǒng)設(shè)計技巧及其抗干擾措施 3964次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關(guān)電源基礎(chǔ)知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計與實現(xiàn)
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發(fā)板設(shè)計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多