<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 本人關(guān)于IT技術(shù)體系的一些理解

          本人關(guān)于IT技術(shù)體系的一些理解

          作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò) 收藏

          根據(jù)我自己的想法和理解,IT技術(shù)體系并不能單純地劃分為軟件和硬件(有些時(shí)候,持這種理解的人問(wèn)的一些很嘲諷性的問(wèn)題會(huì)讓人吐血的),硬件我并不是十分精深,模糊中我認(rèn)為純粹的硬件應(yīng)該分為模型和電路系統(tǒng)這兩個(gè)部分,模具制作應(yīng)該是屬于模型的,PCB板屬于兩者都有,電路設(shè)計(jì)是畫(huà)PCB的基礎(chǔ)和前置條件,理應(yīng)屬于電路系統(tǒng)。兩部分難度不分上下:模型需要更多的考慮環(huán)境和人的因素,電路則更傾向于技術(shù)知識(shí)。但是根據(jù)我看到的一些情況,往往懂技術(shù)的人不少,但真正能結(jié)合模型去思考電路(也就是根據(jù)實(shí)際情況,使用者的習(xí)慣,質(zhì)量,外觀等因素)的人在大學(xué)生中真的不多見(jiàn)。如果在本科階段就能在技術(shù)之上結(jié)合模型相關(guān)的考慮,那么這個(gè)做底層硬件的人算是真的“硬起來(lái)”了,在就業(yè)過(guò)程中應(yīng)該會(huì)很受歡迎的。

          有人經(jīng)常會(huì)想單片機(jī)到底屬于哪一塊的東西。我這里的劃分僅僅是憑著“代碼”來(lái)作為依據(jù),并沒(méi)有太大的實(shí)踐指導(dǎo)意義,僅僅是為了更方便的說(shuō)明問(wèn)題,做一個(gè)歸檔罷了。單片機(jī)在我眼里屬于軟件的最底層,但是考慮到軟件都是建立在硬件之上的,即使是最底層的軟件,也應(yīng)該在硬件之上(上下并不止價(jià)值和難度,只是指在架構(gòu)中處于的邏輯位置)。往往處于架構(gòu)結(jié)合部的技術(shù)都是屬于難度非常大的,但是單片機(jī)是個(gè)例外。也許時(shí)光倒退個(gè)幾十年,單片機(jī)的確是一個(gè)難點(diǎn),但是到了現(xiàn)在,單片機(jī)的難點(diǎn)正在逐步因?yàn)槠渥陨硇阅艿奶岣?,軟硬件技術(shù)體系的完善所侵蝕。功能越來(lái)越完善的IDE、越來(lái)越豐富的片上資源、功能完備文檔健全的API、統(tǒng)一封裝的功能模塊等,這些因素使單片機(jī)編程越來(lái)越成為一個(gè)引導(dǎo)新手入行的工具:現(xiàn)今軟件的難度主要表現(xiàn)在大規(guī)模系統(tǒng)代碼設(shè)計(jì)、技術(shù)選擇和架構(gòu)上,單片機(jī)的應(yīng)用特殊性注定其代碼規(guī)模有限(單顆處理芯片);硬件系統(tǒng)中的封裝思想愈加完善,底層模擬實(shí)現(xiàn)逐漸被API屏蔽。不過(guò)任何事情想要精通還是很有難度的,單片機(jī)也是如此,屬于入門(mén)容易,精深有難度。這個(gè)難度主要體現(xiàn)在代碼規(guī)模的膨脹和為了充分利用硬件資源而進(jìn)行的代碼改革優(yōu)化。代碼規(guī)模的膨脹需要編程者向純粹上層軟件體系學(xué)習(xí)架構(gòu)、設(shè)計(jì)模式、算法優(yōu)化等領(lǐng)域的知識(shí);硬件資源的發(fā)揮也在于編程者對(duì)模塊底層實(shí)現(xiàn)、單片機(jī)的底層實(shí)現(xiàn)有一個(gè)充分的了解,主要表現(xiàn)為基礎(chǔ)知識(shí)數(shù)字模擬電路以及他們的引申知識(shí)(諸如EDA,高頻模擬電路或者類(lèi)似通信等專(zhuān)精的電子領(lǐng)域知識(shí),關(guān)于單片機(jī)和這些相關(guān)技術(shù)的學(xué)習(xí)我建議去http://www.51hei.com/里面的教程比較人性化)。另外我個(gè)人建議對(duì)于并發(fā),多核編程有所了解會(huì)有助于跟上時(shí)代的步伐,畢竟這已經(jīng)不再是 80C51橫行天下的時(shí)代了。

          一路往上走,單片機(jī)之上應(yīng)該是嵌入式系統(tǒng)相關(guān)的東西了。我在專(zhuān)注于嵌入式的學(xué)習(xí)之后和一同學(xué)習(xí)的兄弟探討嵌入式系統(tǒng),覺(jué)得嵌入式系統(tǒng)的難點(diǎn)關(guān)鍵在于廣,而一個(gè)真正的大牛會(huì)在廣的基礎(chǔ)上對(duì)這些廣泛的知識(shí)做進(jìn)一步深入的研究而達(dá)到精神,并且對(duì)于某幾項(xiàng)技術(shù)做到專(zhuān)精。因?yàn)榍度胧较到y(tǒng)其實(shí)也是建立在MCU、CPU 之上的,上文所述的知識(shí)體系對(duì)嵌入式系統(tǒng)學(xué)習(xí)者同樣有效。但是與純粹的單片機(jī)編程相比,嵌入式系統(tǒng)的難度還體現(xiàn)在系統(tǒng)。除了要對(duì)軟件體系的基礎(chǔ)——操作系統(tǒng)要有著十分精通的了解以外,基于操作系統(tǒng)環(huán)境下的編程代碼規(guī)模成幾何倍數(shù)的膨脹,同時(shí)帶來(lái)的還有測(cè)試和調(diào)試難度變大,手工測(cè)試已經(jīng)無(wú)法滿足要求,而自動(dòng)化測(cè)試代碼覆蓋率也很難保障?;诓僮飨到y(tǒng)的編程在學(xué)習(xí)過(guò)程中十分復(fù)雜(一旦掌握了開(kāi)發(fā)起來(lái)倒也沒(méi)那么痛苦),要了解各種API,操作系統(tǒng)的各種調(diào)度機(jī)制和其架構(gòu)體系(不然怎么寫(xiě)驅(qū)動(dòng))。而對(duì)于專(zhuān)業(yè)領(lǐng)域上還有一系列讓人望而生畏的東西,比如說(shuō)智能算法,圖像分析,穩(wěn)定性實(shí)時(shí)性要求等等。我在這里沒(méi)事掰著指頭算都要算很久,就不一一列舉了。但是我著重要提到的是,嵌入式系統(tǒng)這個(gè)名詞中系統(tǒng)二字代表的并不是操作系統(tǒng),而是指更加廣泛意義上的系統(tǒng)。具體解釋有興趣的去翻翻系統(tǒng)論(與控制論,信息論并稱(chēng)三論)。一旦從模塊級(jí)上升到系統(tǒng)級(jí),考慮的問(wèn)題各種各樣,有興趣的去翻翻軟件工程吧,雖然寫(xiě)著是軟件工程,對(duì)于硬件也同樣適用,個(gè)人覺(jué)得對(duì)于工程二字都不怎么了解的人有何臉面自稱(chēng)工程師。那么需求工程、架構(gòu)設(shè)計(jì)、編碼規(guī)范、編碼管理、系統(tǒng)測(cè)試、項(xiàng)目發(fā)布等領(lǐng)域的知識(shí)多少也要懂一點(diǎn)的(沒(méi)人愿意一輩子當(dāng)小工吧)。然后別忘了還有人機(jī)交互,這個(gè)界面其實(shí)十分十分關(guān)鍵,開(kāi)發(fā)過(guò)程中你至少得花30%以上的精力在這上面。

          像android,windows phone,ios之類(lèi)環(huán)境下編程如果僅僅是做個(gè)應(yīng)用丟APP去賣(mài)的那種的話,根本算不上嵌入式系統(tǒng)(別以為寫(xiě)了個(gè)非PC程序就算是搞嵌入式了,差別太大了),也就是一般的計(jì)算機(jī)編程加點(diǎn)佐料而已。
          在往上走一點(diǎn),那應(yīng)該是傳統(tǒng)意義上的計(jì)算機(jī)編程了。這是一個(gè)十分蛋疼的東西,因?yàn)楹w面過(guò)分廣大了導(dǎo)致很多人都快累死了也搞不明白那是啥。還是老規(guī)矩從下往上說(shuō)。最下面的應(yīng)該是BIOS,這個(gè)不能被忽視,就跟嵌入式的bootloader為代表的引導(dǎo)程序一樣,是整個(gè)體系不可缺少的一部分,當(dāng)然PC上的 BIOS我沒(méi)有太多的了解,也就不班門(mén)弄斧了。我只是想提一下匯編這門(mén)語(yǔ)言的重要性。我大一大二的時(shí)候經(jīng)常性有學(xué)長(zhǎng)跟我說(shuō),匯編這種東西都快被淘汰了,沒(méi)有搞頭啊,不如把時(shí)間放在別的方面。我覺(jué)得這是一個(gè)誤區(qū)。對(duì)于所有有志向在軟件編程上有所成就的人來(lái)說(shuō),代碼的效率,功能往往是重點(diǎn)中的重點(diǎn),而匯編正是效率和功能最佳的伙伴。我這么說(shuō)不是讓人都用匯編去提高效率實(shí)現(xiàn)功能,這對(duì)于這個(gè)時(shí)代來(lái)說(shuō)成本太高,根本不科學(xué)。我要說(shuō)的是,學(xué)習(xí)匯編這個(gè)過(guò)程能夠幫助所有學(xué)習(xí)軟件的人能更好的理解硬件,理解底層。有了理解后,產(chǎn)生的代碼自然而然會(huì)對(duì)一些效率上的硬件障礙有所規(guī)避(比如經(jīng)典的乘2操作),對(duì)于這點(diǎn)無(wú)論是用什么上層編程語(yǔ)言來(lái)編寫(xiě)代碼都是一樣的。此外,會(huì)匯編,你懂的,可以干很多壞事的(為了網(wǎng)絡(luò)環(huán)境的和諧這些請(qǐng)自己領(lǐng)悟了)。
          (時(shí)間有限,我寫(xiě)得累死了,下面開(kāi)始稍微簡(jiǎn)潔一點(diǎn),等哥滿狀態(tài)復(fù)活了在以后的日子逐一論述)

          本文引用地址:http://www.ex-cimer.com/article/201611/323679.htm

          BIOS之上是操作系統(tǒng),這個(gè)其實(shí)跟嵌入式很相通的,最多操作系統(tǒng)種類(lèi)有所區(qū)別,然后要求、性能也有所區(qū)別。這里關(guān)鍵是要了解操作系統(tǒng)的運(yùn)行機(jī)制,一些系統(tǒng)級(jí)常用算法數(shù)據(jù)結(jié)構(gòu)啥的(別覺(jué)得沒(méi)用,這些東西才是好東西,自己做稍微有點(diǎn)規(guī)模的系統(tǒng)時(shí)候有用得很,畢竟是一群大師的智慧結(jié)晶)。我堅(jiān)信一個(gè)不懂得操作系統(tǒng)運(yùn)行機(jī)制的人寫(xiě)的代碼也好的有限。

          操作系統(tǒng)之上的東西又海了去了,比如網(wǎng)絡(luò)啦,數(shù)據(jù)庫(kù)啦,并發(fā)啦,人機(jī)交互啦,測(cè)試?yán)驳鹊龋òl(fā)現(xiàn)沒(méi),哥說(shuō)的都是通用型的技術(shù),絕對(duì)不搞技術(shù)陣營(yíng)化,微軟跟甲骨文鬧多大都跟咱沒(méi)關(guān)系,微軟倒閉了地球也照樣轉(zhuǎn)的,別到時(shí)候哪家公司倒閉了自己也跟著失業(yè))。這些是純粹技術(shù)上的東西。這個(gè)時(shí)代比較流行的就是這些啦。網(wǎng)絡(luò)大家都懂的,多扯也沒(méi)意義,學(xué)TCP/IP協(xié)議族有多惡心看過(guò)的人都知道,但是看過(guò)跟沒(méi)看過(guò)區(qū)別還是十分大的。一些眼花繚亂的技術(shù)比如P2P之類(lèi)的都是基于基礎(chǔ)的網(wǎng)咯體系的,看基礎(chǔ)知識(shí)總沒(méi)錯(cuò)的。數(shù)據(jù)庫(kù)也是當(dāng)今軟件不能少的東西,但是關(guān)鍵能力還是在于數(shù)據(jù)庫(kù)架構(gòu)能力,數(shù)據(jù)庫(kù)管理維護(hù)能力,表結(jié)構(gòu)設(shè)計(jì)能力等,在此基礎(chǔ)之上可以去搞某一種數(shù)據(jù)庫(kù)的專(zhuān)精(甲骨文是好東西)。并發(fā)是經(jīng)常被無(wú)視的,但是沒(méi)有并發(fā)哪有現(xiàn)在的軟件體系,其重要性各位看官自己心里都應(yīng)該明白。人機(jī)交互對(duì)于我們這些代碼男來(lái)說(shuō)是最痛苦的,但這年頭就屬它最重要,第一映像嘛。這個(gè)跟把妹釣凱子一樣,長(zhǎng)著一副*絲樣,就算有顆高富帥的心路人也不會(huì)搭理你。

          另外一塊就是WEB技術(shù)體系咯,近十年最火的東西。照理說(shuō)我應(yīng)該多扯一點(diǎn)這方面的,因?yàn)閮?nèi)容真的很多,但我個(gè)人對(duì)其的看法是眼花繚亂前路迷茫。這并不是指的是WEB技術(shù)即將會(huì)沒(méi)落,而是對(duì)開(kāi)發(fā)時(shí)程序員的狀態(tài)和技術(shù)體系的運(yùn)作模式表現(xiàn)出一種模棱兩可的態(tài)度。WEB技術(shù)體系是當(dāng)今發(fā)展速度最快的技術(shù)體系,百花齊放,各種框架和技術(shù)實(shí)現(xiàn)爭(zhēng)奇斗艷,更新?lián)Q代十分快,單拿出某個(gè)具體技術(shù)進(jìn)行品頭論足實(shí)在沒(méi)什么意義。任何人看到這種現(xiàn)狀第一反應(yīng)就是好累,這種生活是一種看不到盡頭的生活。我只能說(shuō),多關(guān)注WEB技術(shù)的底層,框架的范式型實(shí)現(xiàn)規(guī)則和技術(shù),通用型技術(shù)架構(gòu),交互模式,高并發(fā)后臺(tái)支撐容器,容災(zāi)等等東西。最后的總結(jié)在于:會(huì)個(gè)具體技術(shù)當(dāng)敲門(mén)磚開(kāi)路不錯(cuò),最重要的還是學(xué)習(xí)新東西的速度,速度跟不上,別人討厭你不說(shuō),自己也會(huì)活得很累很痛苦。

          最后我扯一下項(xiàng)目管理的東西,這并不是一項(xiàng)需要很多精力去翻書(shū)查資料去研究的技術(shù),但的確是最為重要的東西,即使沒(méi)有一顆成為管理者的心,學(xué)一下這些東西也能讓自己更能被管理,理解管理者需要面對(duì)的困難會(huì)有助于交流,從而使整個(gè)項(xiàng)目推進(jìn)更加順利,思想更加統(tǒng)一,也能為自己爭(zhēng)取到更多機(jī)會(huì),從更高的層面看待整個(gè)世界,也會(huì)有種豁然開(kāi)朗,一切盡在掌握的快感。

          句句肺腑,也算對(duì)自己的一個(gè)總結(jié)。



          關(guān)鍵詞: IT技術(shù)體系單片

          評(píng)論


          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();