發(fā)布時間:2021-07-10 17:20:57
作者:微紅科技
閱讀次數(shù):5899
一份工作在一個人的生活中占據(jù)重要地位,對于一個人的生活質(zhì)量占據(jù)決定性作用,可以說工作決定一個人一生,對于選擇工作當(dāng)然是要選擇新興產(chǎn)業(yè)且有發(fā)展前途的行業(yè),那么在IT技術(shù)領(lǐng)域,選擇Java好還是嵌入式好?下面我們就來了解一下IT技術(shù)領(lǐng)域中Java開發(fā)與嵌入式開發(fā)的特點(diǎn)、現(xiàn)狀及未來。
Java開發(fā)的應(yīng)用及特點(diǎn)
Java是Sun Microsystems公司1995年推出的一種面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,應(yīng)用于個人PC、數(shù)據(jù)中心、游戲控制臺、科學(xué)超級計(jì)算機(jī)、移動電話和互聯(lián)網(wǎng)方面的應(yīng)用軟件編程,Java方向開發(fā)需要計(jì)算機(jī)軟件基礎(chǔ)、數(shù)據(jù)庫原理、SQLserver、C++程序設(shè)計(jì)、java核心編程、linux、websphere 開發(fā)工具、DB2數(shù)據(jù)庫、ERWin數(shù)據(jù)庫建模、UML、ratioanlrose建模、OM軟件開發(fā)生命周期、J2EEOM企業(yè)級開發(fā)、基于MVC的struts框架技術(shù)、軟件測試工具與方法等,主要是基于PC機(jī)、linux等操作系統(tǒng)之上的應(yīng)用軟件開發(fā),對于硬件電路是完全不懂,主要就是做一些界面、QQ、游戲等上位機(jī)應(yīng)用軟件。Java在中國發(fā)展已10幾年時間,雖然所學(xué)的內(nèi)容較多,但入門較容易,初中、高中、中專基礎(chǔ)的都能學(xué)習(xí),但是有發(fā)展瓶頸,就是上升空間不大,且生命周期比較短(大概有7年左右的時間),感覺做幾年之后沒什么可做的了,做java(應(yīng)用軟件)開發(fā)的35歲以上的基本很少了,就是常說的“吃青春飯”,且軟件更新快,工作比較忙。
嵌入式的應(yīng)用領(lǐng)域、現(xiàn)狀及未來趨勢
隨著科技進(jìn)步,嵌入式的出現(xiàn),以及人們對生活質(zhì)量,產(chǎn)品的智能化,成本的要求等,以及國家對與物聯(lián)網(wǎng)、電子、科技的扶持,大量的電子產(chǎn)品都促使嵌入式的快速發(fā)展。使用嵌入式的產(chǎn)品如我們常用的手機(jī)、平板電腦、電子字典、可視電話、數(shù)字相機(jī)(DC)、數(shù)字?jǐn)z像機(jī)(DV)、U-Disk、機(jī)頂盒(Set Top Box)、高清電視(HDTV)、游戲機(jī)、智能玩具、交換機(jī)、路由器、數(shù)控設(shè)備或儀表、汽車電子、物聯(lián)網(wǎng)、智能家居、醫(yī)療儀器、航天航空設(shè)備等都是典型的嵌入式的應(yīng)用。
嵌入式系統(tǒng)市場是巨大的,市場需求是嵌入式系統(tǒng)產(chǎn)業(yè)化發(fā)展的巨大推動力,據(jù)報告:10%~20%的計(jì)算機(jī)芯片是位臺式或便攜式電腦設(shè)計(jì),80%~90%的計(jì)算機(jī)芯片是位嵌入式產(chǎn)品設(shè)計(jì)的,這意味著每年有10億至20億個CPU是為嵌入式產(chǎn)品制造的,市場決定了嵌入式行業(yè)是很有發(fā)展前途的行業(yè)。
嵌入式工作分類:
嵌入式產(chǎn)品開發(fā)是基于產(chǎn)品的功能,從功能需求、提出并選擇方案、電路設(shè)計(jì)、PCB電路板設(shè)計(jì)、軟件設(shè)計(jì)、樣機(jī)生產(chǎn)、軟硬件綜合調(diào)試,軟硬件結(jié)合的產(chǎn)品開發(fā)。所以嵌入式開發(fā)需要軟硬件都懂的基礎(chǔ)要求。但根據(jù)側(cè)重點(diǎn)的不同嵌入式產(chǎn)品開發(fā)工作可以有以下分類:
硬件方面:
1、電路設(shè)計(jì):產(chǎn)品原理圖的設(shè)計(jì),需要對數(shù)電模電都比較精通,且熟悉單片機(jī)、arm架構(gòu)及熟練外圍電路的使用;基本上會電路設(shè)計(jì)的都會PCB設(shè)計(jì)。
2、PCB電路板的設(shè)計(jì):需要熟悉數(shù)電、看懂常用模電,對單片機(jī)、arm外設(shè)了解,且具備安規(guī)電磁兼容的應(yīng)用經(jīng)驗(yàn)。
軟件方面:
1、驅(qū)動開發(fā):基于電路圖實(shí)現(xiàn)產(chǎn)品的驅(qū)動開發(fā),需要看懂電路,精通C語言,熟悉arm架構(gòu)及外設(shè)的使用,熟悉操作系統(tǒng)內(nèi)核、驅(qū)動。
2、系統(tǒng)開發(fā):基于硬件的uboot移植、內(nèi)核移植裁剪、根文件系統(tǒng)制作等系統(tǒng)環(huán)境搭建及驅(qū)動移植開發(fā)、應(yīng)用測試等,需要精通C語言,看懂電路,linux系統(tǒng)開發(fā)。
3、應(yīng)用開發(fā):基于操作系統(tǒng)之上的應(yīng)用程序開發(fā),無需電路方面知識,只需要軟件編程,需掌握J(rèn)ava或C++,操作系統(tǒng)、數(shù)據(jù)庫、數(shù)據(jù)庫建模、SQLserver、oracle等,應(yīng)用開發(fā)更新比較快,像電腦上的軟件QQ、360、游戲等軟件,所以工作也比較忙,入門門檻低,但上升空間不大。
嵌入式系統(tǒng)開發(fā)及應(yīng)用開發(fā)要求可能不會太高,相對入門比較簡單,但系統(tǒng)開發(fā)所需掌握知識面還是比較廣的,也比較有發(fā)展空間,應(yīng)用開發(fā)更新快,發(fā)展有限。驅(qū)動開發(fā)需要有驅(qū)動開發(fā)經(jīng)驗(yàn),如果有開發(fā)經(jīng)驗(yàn)的話,不會很忙,就是實(shí)現(xiàn)功能,如果一個產(chǎn)品功能實(shí)現(xiàn)了,就沒有太多事了,剩余的就是應(yīng)用開發(fā)了,驅(qū)動開發(fā)更新不會很快。
嵌入式產(chǎn)品開發(fā)中不同的工作有不同的一些特點(diǎn),硬件開發(fā)靠經(jīng)驗(yàn),經(jīng)驗(yàn)越豐富越吃香,可以說能做一輩子;軟件開發(fā)靠思維、靠算法,如果編程思維清晰,算法優(yōu)越,不需要太長時間就能做的相當(dāng)不錯。如果軟硬件都能做,獨(dú)立開發(fā)產(chǎn)品的話,身價更勝一籌。
但是對于入門級甚至初學(xué)者來說不可能面面俱到,都要去做,你也沒這個能力,即使能做,一般公司也不會讓你一個人從硬件到軟件獨(dú)立去開發(fā)嵌入式產(chǎn)品,因?yàn)楣咀鲰?xiàng)目有時間要求,必須分工協(xié)作。
嵌入式的學(xué)習(xí)規(guī)劃
嵌入式產(chǎn)品開發(fā)是需要軟硬件結(jié)合,做軟件需要能看懂電路,根據(jù)電路、功能即實(shí)現(xiàn)原理來編寫程序,如果電路不懂,是不能編程實(shí)現(xiàn)其功能的,硬件開發(fā)也需要對芯片架構(gòu),外設(shè)編程使用比較熟悉,否則你設(shè)計(jì)出來的硬件不便于軟件開發(fā)人員編程實(shí)現(xiàn)功能,或者你設(shè)計(jì)出來的硬件繁瑣,成本很高。
那么如何學(xué)習(xí)嵌入式呢,對于想學(xué)習(xí)嵌入式的朋友們來說有很多都有單片機(jī)的學(xué)習(xí)經(jīng)歷,感覺自學(xué)就行,但是從現(xiàn)實(shí)情況來看,嵌入式學(xué)習(xí)還是比較有難度的,很多朋友遇到問題解決不了,學(xué)了一部分就學(xué)不下去了,嵌入式學(xué)習(xí)需要有它的學(xué)習(xí)方法以及發(fā)展規(guī)劃,下面就來談?wù)勄度胧降膶W(xué)習(xí)規(guī)劃:
1、軟件開發(fā)不需要太多經(jīng)驗(yàn)積累,只要你做過一些開發(fā),編程思維、算法好,不需要太長時間就能做好,所以首先可以做軟件開發(fā),比如系統(tǒng)開發(fā)或應(yīng)用開發(fā)。
2、對系統(tǒng)比較熟悉,做過一些項(xiàng)目之后,可以朝底層驅(qū)動方面發(fā)展,這個工作也不會太忙,待遇也相當(dāng)不錯,做過一些項(xiàng)目之后對于電路見的也多了,電路也比較熟悉了。
3、有比較多項(xiàng)目經(jīng)驗(yàn)之后,電路也熟悉了之后,補(bǔ)充一些硬件電路知識可以朝硬件設(shè)計(jì)方面發(fā)展,整個產(chǎn)品的開發(fā)過程都比較熟悉了之后就可以成為項(xiàng)目研發(fā)部的主管或經(jīng)理,也可以自己接外快接項(xiàng)目來做,有管理經(jīng)驗(yàn)的甚至可以自己開公司做老板,畢竟這方面的產(chǎn)品開發(fā)不需要投資太多成本。
對于初學(xué)者嵌入式的學(xué)習(xí)步驟:
先打好兩個基礎(chǔ):
電路基礎(chǔ):熟悉數(shù)字電路,能看懂電路,能分析功能,能根據(jù)電路編程。
C語言基礎(chǔ):要學(xué)的精通,學(xué)得不好,上了系統(tǒng)程序看都看不懂。
掌握arm架構(gòu)及其外設(shè)的使用,編程控制,做相應(yīng)項(xiàng)目。
學(xué)習(xí)系統(tǒng)編程及網(wǎng)絡(luò)編程,在應(yīng)用程序中使用。
linux系統(tǒng)學(xué)習(xí):uboot移植,內(nèi)核移植、裁剪,根文件系統(tǒng)制作,驅(qū)動編寫與移植(花比較大精力學(xué)習(xí),它是系統(tǒng)的核心,也結(jié)合硬件),應(yīng)用編程,用戶界面等
先做系統(tǒng)編程或應(yīng)用編程,有一定經(jīng)驗(yàn)之后可向底層驅(qū)動發(fā)展;軟件項(xiàng)目經(jīng)驗(yàn)比較豐富之后可向硬件電路設(shè)計(jì)發(fā)展。
綜合來說,純應(yīng)用開發(fā)(如Java)來說,門檻較低,但更新太快,發(fā)展空間有限,生命周期太短;而嵌入式開發(fā)是靠經(jīng)驗(yàn)積累的,不用吃“青春飯”。
上一篇: 談SEO優(yōu)化理念之主題模型!
下一篇: 談SEO優(yōu)化理念之主題模型!
Copyright ? 微紅科技 All Rights Reserved
黔公網(wǎng)安備
黔ICP備17001430號-1
【微紅科技官方微博】
版權(quán)所有:微紅科技
百度統(tǒng)計(jì)