想做軟件開(kāi)發(fā)需要學(xué)什么(做軟件開(kāi)發(fā)人員需要什么技能)
本篇文章給大家談?wù)勏胱鲕浖_(kāi)發(fā)需要學(xué)什么,以及做軟件開(kāi)發(fā)人員需要什么技能對(duì)應(yīng)的知識(shí)點(diǎn),希望對(duì)各位有所幫助,不要忘了收藏本站喔。
本文目錄一覽:
- 1、軟件開(kāi)發(fā)需要學(xué)什么?
- 2、想開(kāi)發(fā)軟件需要學(xué)什么
- 3、學(xué)軟件開(kāi)發(fā)需要有什么基礎(chǔ)?
- 4、學(xué)軟件開(kāi)發(fā)要會(huì)什么?
- 5、軟件開(kāi)發(fā)需要學(xué)什么
軟件開(kāi)發(fā)需要學(xué)什么?
一、重視基礎(chǔ)課的學(xué)習(xí) 計(jì)算機(jī)科學(xué)雖然是高科技的象征,但又受到其它專(zhuān)業(yè)發(fā)展的制約。計(jì)算機(jī)專(zhuān)業(yè)知識(shí)的學(xué)習(xí)同樣要加強(qiáng)一些相關(guān)知識(shí)的學(xué)習(xí)。 計(jì)算機(jī)軟件開(kāi)發(fā)往往會(huì)涉及到算法,而且在語(yǔ)言結(jié)構(gòu)上會(huì)用到數(shù)學(xué)知識(shí),因此高等數(shù)學(xué)、離散數(shù)學(xué)、線(xiàn)性代數(shù)等數(shù)學(xué)知識(shí)的學(xué)習(xí)也有一定需求。尤其是軟件開(kāi)發(fā)高手,開(kāi)發(fā)過(guò)程會(huì)涉及數(shù)學(xué)方面往往會(huì)更多一些。 有些專(zhuān)家曾表示,計(jì)算機(jī)學(xué)習(xí)過(guò)程往往是由硬件開(kāi)始,走向軟件,但最終又會(huì)走向硬件。剛開(kāi)始學(xué)習(xí)硬件便于我們了解計(jì)算機(jī),學(xué)習(xí)軟件便于我們應(yīng)用計(jì)算機(jī)再深一步學(xué)習(xí)硬件,便于我們?nèi)?chuàng)新地提高計(jì)算機(jī)辦事效率、開(kāi)發(fā)計(jì)算機(jī)。一個(gè)軟件開(kāi)發(fā)高手非常注重程序效率,而效率卻往往與計(jì)算機(jī)硬件知識(shí)是緊密相關(guān)。 要自始自終地加強(qiáng)英語(yǔ)的學(xué)習(xí)。因?yàn)槟壳暗挠?jì)算機(jī)程序設(shè)計(jì)語(yǔ)言主要是外國(guó)開(kāi)發(fā)的,編代碼的主要語(yǔ)句往往是英文,中文通常是做解釋和說(shuō)明用。一些教材書(shū)籍翻譯得不太準(zhǔn)確,不如直接看HLP來(lái)得快。而且在高級(jí)語(yǔ)言中很多的語(yǔ)句、表達(dá)式就是用英文句子,如SQL中的許多語(yǔ)句。有一定的英文基礎(chǔ),在計(jì)算機(jī)學(xué)習(xí)上可以事半功倍。 二、重視編程基本功的學(xué)習(xí) 學(xué)習(xí)軟件需要什么?不要急首先當(dāng)我們走進(jìn)書(shū)店時(shí),計(jì)算機(jī)軟件開(kāi)發(fā)的書(shū)籍名目繁多,讓人眼花繚亂。從何處著手學(xué)習(xí)、用哪種軟件呢?也有很多計(jì)算機(jī)軟件開(kāi)發(fā)速成書(shū),如《24小時(shí)學(xué)會(huì)JAVA》等,從書(shū)名看很能吸引人。但從實(shí)際效果來(lái)看,沒(méi)有雄厚的編程基礎(chǔ)很難學(xué)精這些快速入門(mén)書(shū)籍。一個(gè)優(yōu)秀的程序員也不是十天半個(gè)月就能夠造就出來(lái)的,必須要扎扎實(shí)實(shí)學(xué)好編程基礎(chǔ)知識(shí),要經(jīng)歷一個(gè)漫長(zhǎng)且辛苦的學(xué)習(xí)和程序開(kāi)發(fā)過(guò)程。因此計(jì)算機(jī)專(zhuān)業(yè)學(xué)生,首先要做好吃苦的準(zhǔn)備。 當(dāng)我們?cè)趯W(xué)習(xí)一些基礎(chǔ)課如java,C語(yǔ)言等,我們會(huì)感覺(jué)到似乎這些沒(méi)什么大作用,這些近似于低級(jí)語(yǔ)言的東西好像再努力也難成大器呀!的確,一些代碼編程的學(xué)習(xí)要遠(yuǎn)比窗體開(kāi)發(fā)難得多,所有的語(yǔ)句都得通過(guò)每個(gè)表達(dá)式來(lái)輸入,鼠標(biāo)點(diǎn)擊幾下的開(kāi)發(fā)方式當(dāng)然比鍵盤(pán)輸入代碼開(kāi)發(fā)容易得多,僅學(xué)習(xí)窗體開(kāi)發(fā)系統(tǒng)可以使人在短期內(nèi)開(kāi)發(fā)一些功能簡(jiǎn)單的系統(tǒng),但很難成大器。人們大多數(shù)喜歡窗體軟件開(kāi)發(fā)。 這也是中國(guó)軟件業(yè)發(fā)展多年還未能走向軟件強(qiáng)國(guó)的一個(gè)原因之一,計(jì)算機(jī)教育應(yīng)該重視代碼編程的教育, 專(zhuān)業(yè)學(xué)生也不能忽視代碼開(kāi)發(fā)的學(xué)習(xí)。 如果你要問(wèn)C語(yǔ)言這種代碼開(kāi)發(fā)功能具有多大的用處,大名鼎鼎的UNIX操作系統(tǒng)就是使用C語(yǔ)言書(shū)寫(xiě)的。 而且我們玩的所有游戲幾乎也是使用C語(yǔ)言編寫(xiě)的。 學(xué)習(xí)C語(yǔ)言的難度比學(xué)習(xí)匯編語(yǔ)言的難度小多了,而且C語(yǔ)言是一門(mén)“必修課”所以每一位立志成為電腦編程者的用戶(hù)都必須征服C語(yǔ)言這座山峰。 三、 理論聯(lián)系實(shí)踐 學(xué)習(xí)編寫(xiě)程序,不僅要領(lǐng)悟教師的各種知識(shí)點(diǎn),多看教材,還要結(jié)合課程重視上機(jī)的練習(xí)。很多學(xué)生在理解教師知識(shí)點(diǎn)和看教材上花了很多時(shí)間,卻不重視上機(jī)的練習(xí),最終會(huì)走向“書(shū)呆子”類(lèi),很難在軟件開(kāi)發(fā)中占有一席之地。在看教材、聽(tīng)課的同時(shí),要將知識(shí)點(diǎn)在上機(jī)過(guò)程中做第二消化,這樣便比光消化課本會(huì)強(qiáng)得多。當(dāng)然每次上機(jī)應(yīng)該做好準(zhǔn)備,很多學(xué)生是無(wú)目標(biāo)的上機(jī),其學(xué)習(xí)效率當(dāng)然會(huì)很低。上機(jī)前要計(jì)劃一下上機(jī)做些什么,要有一些新思路來(lái)設(shè)計(jì)和調(diào)試程序。只有在上機(jī)過(guò)程中不斷發(fā)現(xiàn)問(wèn)題,解決問(wèn)題,才能逐步邁向程序員之路。又一些同學(xué)光重視上機(jī), 忽視理論的學(xué)習(xí),這些同學(xué)剛開(kāi)始好像進(jìn)步快,但到了一定的層次,就會(huì)停滯不前了。因此,實(shí)操要與理論同步,緊密結(jié)合,方可為編程打下扎實(shí)的基礎(chǔ)。 總結(jié)學(xué)習(xí)軟件需要什么?軟件編程需要實(shí)踐。 四、 深入學(xué)習(xí),練就高手 經(jīng)過(guò)一定時(shí)間的學(xué)習(xí)、實(shí)踐,你已經(jīng)具備了較扎實(shí)的計(jì)算機(jī)編程方法和技巧。但你學(xué)習(xí)的還只是一些DOS下的、功能相對(duì)簡(jiǎn)單的語(yǔ)言,比如在10年前,Windows 98已經(jīng)占據(jù)了計(jì)算機(jī)操作系統(tǒng)的主導(dǎo)地位,要想練成高手,不學(xué)習(xí)Windows 98下的編程是不行的。正因?yàn)槟阌辛松厦娴幕A(chǔ),學(xué)習(xí)起新的語(yǔ)言來(lái)更是輕車(chē)熟路。那么對(duì)于比較有一定水平的人來(lái)說(shuō)在來(lái)研究學(xué)習(xí)軟件需要什么?的話(huà)那就應(yīng)該看看現(xiàn)在現(xiàn)在最流行的語(yǔ)言:Visual C++、Microsoft Access、Visual FoxPro 、Powersoft PowerBuilder、 Visual Basic, Visual J++和Visual InterDev,Borland Delphi、Java。軟件編程需要深入。 總之,學(xué)習(xí)軟件需要什么?實(shí)際和其他的一些技術(shù)錯(cuò)不多,只要你肯吃苦,沒(méi)什么學(xué)不成的,所以只有想不到?jīng)]有做不到,告誡軟件愛(ài)好著要想掌握它,就要實(shí)踐、實(shí)踐、再實(shí)踐。當(dāng)學(xué)到了一種新的技術(shù)或知識(shí)時(shí),多實(shí)踐是鞏固學(xué)習(xí)的一種最好最有效的方法。
想開(kāi)發(fā)軟件需要學(xué)什么
問(wèn)題一:想學(xué)軟件開(kāi)發(fā),學(xué)什么好 你說(shuō)的是安卓機(jī)和蘋(píng)果機(jī)吧
說(shuō)白了,那種都有前途,前提是你得學(xué)扎實(shí),現(xiàn)在國(guó)內(nèi)的氣氛很浮躁,總想著速成,寫(xiě)的代碼爛的可以但卻可以運(yùn)行...
所以你如果還在上學(xué),建議從C++學(xué)起,C的話(huà)如果你想搞硬件,那是必學(xué)的,但如果你只想寫(xiě)點(diǎn)小程序,看看C++,再學(xué)C#...當(dāng)然,我是指你不只是想做web...
說(shuō)白了,Java能做很多,官網(wǎng)不都說(shuō)了,航天程序都有Java,但你能(想)達(dá)到這個(gè)高度么?
所以,國(guó)內(nèi)的Java普遍就是web系的了,而你說(shuō)的iOS,那是iPhone的系統(tǒng)程序,學(xué)的人不少,但比Java少,學(xué)好了還是很不錯(cuò)的,畢竟版權(quán)啥的,安卓不好整
然后就是,如果你想做桌面程序(windows程序),忘掉Java吧,C++|C#才是你的歸屬
但,你如果想做web,開(kāi)發(fā)網(wǎng)頁(yè)前端后臺(tái)啥的,去學(xué)PHP吧,她專(zhuān)干這個(gè),比Java簡(jiǎn)單易上手
說(shuō)的比較亂,咳...最后,學(xué)校...咱能不談這個(gè)么?
他就是個(gè)敲門(mén)磚,進(jìn)去后管你會(huì)不會(huì),先把大量知識(shí)填鴨式的塞給你,接不接受是你的問(wèn)題,碰到好老師是你運(yùn)氣好,渣老師那是社會(huì)現(xiàn)象,別指望能手把手教會(huì)你,還有別信啥保證就業(yè),那話(huà)里的意思就是只要能把你推出去,不管那公司多糟糕,就算保證就業(yè)了,你辭職,那是你的事,你不服的話(huà),看合同,上面要求你要按他們的要求去學(xué)習(xí),話(huà)里的意思是你沒(méi)做到,所以是你先違約,不過(guò)說(shuō)實(shí)在的,很少人能完全做到,這也是個(gè)陷阱吧
額...負(fù)能量有點(diǎn)多...
但,如果你還沒(méi)上大學(xué)或剛上,該做什么你一定清楚了,如果你畢業(yè)了或待業(yè),雖然無(wú)奈,但你還是要去培訓(xùn)機(jī)構(gòu),努力學(xué)還是有很多收獲的,當(dāng)然,學(xué)費(fèi)無(wú)論哪里都貴的要死,半年接近2萬(wàn),還不包括吃住...
羅嗦一點(diǎn),學(xué)完后找工作,需要背各種“寶典”,里面都是基礎(chǔ)知識(shí)及面試經(jīng)常會(huì)問(wèn)的,一定要了解,建議平時(shí)就多看看,最起碼先記住,即使你不知道那是啥,面試時(shí)能說(shuō)出來(lái)很重要,因?yàn)槌舜蠊?,一般小中企業(yè)是不會(huì)機(jī)試的,筆試+面試是一般流程。
不要認(rèn)為程序員就不需要出差,也是出的,畢竟設(shè)備動(dòng)不了,還有一種叫外包的,那就相當(dāng)于中介,帶著你到處跑,真正做到了哪里需要你你就在哪里,求職的時(shí)候留心點(diǎn)公司的屬性
--------------總結(jié)--------------
前途 :學(xué)好了啥都有前途
學(xué)web :簡(jiǎn)單點(diǎn)PHP,想深造Java(咱不是來(lái)引戰(zhàn)的,勿拍我~)
桌面 :C++|C#
硬件 :匯編、C
學(xué)校 :哪個(gè)近就哪個(gè)(最后靠自己)
學(xué)費(fèi) :你沒(méi)得選
就業(yè) :學(xué)的夠好,公司找你(潛臺(tái)詞...?)
問(wèn)題二:我想自己開(kāi)發(fā)軟件需要學(xué)習(xí)什么?? 20分 不互你學(xué)的是C、C++、C#、vb、java,你都要學(xué)習(xí)下面的東西,當(dāng)然你已經(jīng)很了解的,可以跳過(guò),或者做適當(dāng)?shù)膹?fù)習(xí):
1、計(jì)算機(jī)硬件原理:了解硬件怎么工作,知道軟件是怎樣在硬件上工作的,CPU架構(gòu),指令,怎么做運(yùn)算,內(nèi)存如何工作,內(nèi)容地址是怎么回事,硬盤(pán)如何存儲(chǔ),數(shù)據(jù)和指令如何通過(guò)電路和元器件轉(zhuǎn)化成電流和脈沖,可能需要數(shù)據(jù)電路的原理。無(wú)論從事計(jì)算機(jī)哪方面,比如網(wǎng)絡(luò)、軟硬件,這個(gè)原理都必須精通。因?yàn)橛?jì)算機(jī)技術(shù)是很抽象的,但是在現(xiàn)實(shí)和具象上是依賴(lài)硬件。
2、操作系統(tǒng)原理:在了解了硬件原理后,了解操作系統(tǒng)是怎么工作的。因?yàn)樗械能浖际腔诓僮飨到y(tǒng)的,而操作系統(tǒng)本身也是一個(gè)軟件。這些結(jié)合硬件來(lái)理解,就更容易了。
3、編譯原理:了解軟件從源文件到目標(biāo)文件,到執(zhí)行的全過(guò)程。如果有必要,其中的東西也要專(zhuān)門(mén)買(mǎi)書(shū)去研究。這樣代碼上不容易犯錯(cuò)誤。了解了硬件原理和操作系統(tǒng)原理的基礎(chǔ)上,了解編譯原理也就比較簡(jiǎn)單。當(dāng)然每種語(yǔ)言編譯過(guò)程都不一樣,但是原理都是基本相同。
4、數(shù)據(jù)結(jié)構(gòu)和算法分析:好的算法,事半功倍,此外可能還要補(bǔ)一些高中數(shù)學(xué)、高等數(shù)學(xué)的知識(shí)。
以上每部分,都要至少1-2個(gè)月或者150個(gè)小時(shí)以上的鉆研,要做到基本掌握。如果不掌握以上部分,不是說(shuō)學(xué)不了軟件,但是如果想學(xué)精通,想比一般人強(qiáng),是不可能的,因?yàn)槟阒恢涝趺醋觯菫槭裁催@樣做不清楚,就是死記硬背了,反反復(fù)復(fù)的記憶效率也很差。
有時(shí)候很多獨(dú)立的軟件開(kāi)發(fā)的工具書(shū),沒(méi)有講的那么細(xì)致,只是告訴你如何做,但是不會(huì)告訴你為什么這樣做,另外一些好的方法也無(wú)法告訴你,因?yàn)槎夹枰獜幕A(chǔ)的硬件電路電流原理來(lái)介紹,如果從原理上說(shuō),那會(huì)說(shuō)的沒(méi)完沒(méi)了。
大約半年甚至1年后,此時(shí)你所有軟件開(kāi)發(fā)需要掌握的基礎(chǔ)知識(shí),都比較明白了。再開(kāi)始研究程序開(kāi)發(fā),就會(huì)覺(jué)得開(kāi)發(fā)很簡(jiǎn)單,事半功倍。因?yàn)槟阋呀?jīng)從原理上理解了,軟件是怎么工作的。所以也知道軟件開(kāi)發(fā)的學(xué)習(xí)周期至少在1年以上。 達(dá)到能夠開(kāi)發(fā)中型軟件,至少也要1年半,而且這個(gè)時(shí)間還是每天都在鉆研的時(shí)間。
問(wèn)題三:想做軟件要學(xué)什么呢? 接下來(lái),我?guī)湍阋?guī)劃一條編程之路.
學(xué)編程的人,很少有人沒(méi)學(xué)過(guò)C語(yǔ)言的.我推薦讓C語(yǔ)言作為你第一個(gè)學(xué)的語(yǔ)言.雖然有的人說(shuō)要先學(xué)VB,其實(shí)這種觀(guān)念是錯(cuò)誤的.C確實(shí)比VB枯燥,而且說(shuō)實(shí)話(huà)學(xué)完C后不學(xué)別的就好象沒(méi)學(xué)過(guò),感覺(jué)什么都沒(méi)學(xué)會(huì).可是,對(duì)初學(xué)編程的人來(lái)說(shuō),只有C語(yǔ)言才能建立起你對(duì)編程概念的理解.VB不是編程,VB只是一種工具而已.C語(yǔ)言確實(shí)是個(gè)不折不扣的語(yǔ)言,真正讓你知道什么是編程的語(yǔ)言.有初學(xué)C語(yǔ)言,用TC2編譯器的人總說(shuō)他學(xué)了C什么都不會(huì).什么軟件也寫(xiě)不出來(lái).我可以告訴他,編程編程,編的是程序,而不是軟件,軟件這是程序的一個(gè)構(gòu)價(jià).你想編程出軟件,那以后很輕松的就能掌握,現(xiàn)在你需要學(xué)的就是編程,說(shuō)明確一點(diǎn),你現(xiàn)在所需要學(xué)的就是算法.編程的靈魂是算法,這點(diǎn)每個(gè)人都要記住.
所以,第一門(mén)語(yǔ)言要學(xué)C,推薦的書(shū)為譚浩強(qiáng)老師的(清華大學(xué)出版社)或者克尼漢的(美國(guó)).
初學(xué)者也許需要一套視頻教程來(lái)幫助自己更快的入門(mén),那么就推薦你去百度搜索C語(yǔ)言視頻教程,第一頁(yè)的第一條記錄就是這個(gè)教程.而且是和譚老師的配套的教程!
注:有些人說(shuō)譚浩強(qiáng)的書(shū)不好,太死板.那么我只能說(shuō)你最多是個(gè)一瓶子不滿(mǎn),半瓶子逛蕩的人.真正要掌握高深技術(shù)的時(shí)候,你會(huì)發(fā)現(xiàn)你沒(méi)辦法掌握.
那么,下面要學(xué)的是什么呢?這會(huì)不會(huì)還有人說(shuō)VB吧.還美其名曰加深對(duì)編軟件的印象.這種說(shuō)法很幼稚.學(xué)了C語(yǔ)言還學(xué)什么VB呀.其實(shí)VB確實(shí)是很強(qiáng)大的,容易入門(mén),想精通了也不容易.著名的DOS系統(tǒng)就是用BASIC語(yǔ)言寫(xiě)出來(lái)的.可是,這種這么易用的軟件對(duì)于專(zhuān)業(yè)學(xué)編程的人是一種不好的東西,會(huì)讓人產(chǎn)生依賴(lài),讓人產(chǎn)生惰性.VB的那些控件的功能實(shí)在是太強(qiáng)大了,你都不用怎么思考,就可以編寫(xiě)出來(lái).可是,控件畢竟是不能隨你的意愿支配的,控件是死的東西.你真正要學(xué)的是編寫(xiě)的思想,是函數(shù)(Java中稱(chēng)方法).另外,學(xué)VB還不如去學(xué)Delphi呢.
所以,下面要學(xué)的也就那兩種選擇了,C++/Java.我推薦,先學(xué)Java.
Java實(shí)際上是C++改的.去除了C++中指針的部分,讓C++變得更安全,同時(shí)也比C++稍微簡(jiǎn)單了一些.你需要去找一些關(guān)于Java的介紹,在看下面的東西.
我聽(tīng)一個(gè)北大青鳥(niǎo)的老師說(shuō)Java的最終發(fā)展目標(biāo)是J2EE.我覺(jué)得不然,J2ME一定也是個(gè)發(fā)展方向,只是他跟J2SE,J2EE有很大的不同,開(kāi)發(fā)環(huán)境也很不同.關(guān)于J2ME的部分我不做討論.而J2SE呢.說(shuō)實(shí)在的,市面上的J2SE軟件確實(shí)也是很少的,你見(jiàn)過(guò)有幾個(gè)拓展名為.jre的軟件?不過(guò)還是要告訴你,學(xué)習(xí)Java的人肯定最先接觸的是J2SE.Java的GUI軟件只是技術(shù)性的問(wèn)題,也是開(kāi)發(fā)手段的問(wèn)題.不管你是要發(fā)展到J2EE,還是轉(zhuǎn)到GUI編程,J2SE絕對(duì)不是彎路.還是那句話(huà),算法是最重要的.而Java比C++最大的優(yōu)勢(shì)在于他的完全面向?qū)ο蠛涂缙脚_(tái).其實(shí),就算你先學(xué)了Java,你還是可以很容易的掌握C++,Java程序員和C++程序員的互轉(zhuǎn)是很容易的!再說(shuō)一些Java的優(yōu)點(diǎn).Java比C++方便很多,下載了編譯器后一個(gè)記事本就能寫(xiě)程序,JBuilder實(shí)際上只是個(gè)輔助的工具.我去一個(gè)搞Linux系統(tǒng)開(kāi)發(fā)的公司看過(guò),用JBuilder的很少,一般都是直接用UltraEdit直接寫(xiě)程序.而C++必須要用VC++等編譯器,不說(shuō)電腦配置低很不好用,光說(shuō)VS是要花錢(qián)的,而JDK永遠(yuǎn)都是正版(免費(fèi)下載),就應(yīng)該用Java.其實(shí)這只是習(xí)慣問(wèn)題,不管你是先學(xué)Java還是先學(xué)C......
問(wèn)題四:如何自學(xué)軟件開(kāi)發(fā),具體都需要學(xué)什么課程 FLASH動(dòng)畫(huà)設(shè)計(jì)與制作
SQL Server2008數(shù)據(jù)庫(kù)基礎(chǔ)
Dreamweaver網(wǎng)頁(yè)設(shè)計(jì)
平面構(gòu)成、色彩構(gòu)成
SiteServe CMS 建站
SiteServer+Sql2008企業(yè)建站
JavaScript和Jquery應(yīng)用
SEO網(wǎng)站優(yōu)化
網(wǎng)站推廣
C# 語(yǔ)言基礎(chǔ)
常用CMS后臺(tái)管理與搭建
問(wèn)題五:想學(xué)習(xí)軟件開(kāi)發(fā),需要用到哪些軟件? 不論你學(xué)的是C、C++、C#、vb、java,你都要學(xué)習(xí)下面的東西,當(dāng)然你已經(jīng)很了解的,可以跳過(guò),或者做適當(dāng)?shù)膹?fù)習(xí):
1、計(jì)算機(jī)硬件原理:了解硬件怎么工作,知道軟件是怎樣在硬件上工作的,CPU架構(gòu),指令,怎么做運(yùn)算,內(nèi)存如何工作,內(nèi)容地址是怎么回事,硬盤(pán)如何存儲(chǔ),數(shù)據(jù)和指令如何通過(guò)電路和元器件轉(zhuǎn)化成電流和脈沖,可能需要數(shù)據(jù)電路的原理。無(wú)論從事計(jì)算機(jī)哪方面,比如網(wǎng)絡(luò)、軟硬件,這個(gè)原理都必須精通。因?yàn)橛?jì)算機(jī)技術(shù)是很抽象的,但是在現(xiàn)實(shí)和具象上是依賴(lài)硬件。
2、操作系統(tǒng)原理:在了解了硬件原理后,了解操作系統(tǒng)是怎么工作的。因?yàn)樗械能浖际腔诓僮飨到y(tǒng)的,而操作系統(tǒng)本身也是一個(gè)軟件。這些結(jié)合硬件來(lái)理解,就更容易了。
3、編譯原理:了解軟件從源文件到目標(biāo)文件,到執(zhí)行的全過(guò)程。如果有必要,其中的東西也要專(zhuān)門(mén)買(mǎi)書(shū)去研究。這樣代碼上不容易犯錯(cuò)誤。了解了硬件原理和操作系統(tǒng)原理的基礎(chǔ)上,了解編譯原理也就比較簡(jiǎn)單。當(dāng)然每種語(yǔ)言編譯過(guò)程都不一樣,但是原理都是基本相同。
4、數(shù)據(jù)結(jié)構(gòu)和算法分析:好的算法,事半功倍,此外可能還要補(bǔ)一些高中數(shù)學(xué)、高等數(shù)學(xué)的知識(shí)。
以上每部分,都要至少1-2個(gè)月或者150個(gè)小時(shí)以上的鉆研,要做到基本掌握。如果不掌握以上部分,不是說(shuō)學(xué)不了軟件,但是如果想學(xué)精通,想比一般人強(qiáng),是不可能的,因?yàn)槟阒恢涝趺醋?,但是為什么這樣做不清楚,就是死記硬背了,反反復(fù)復(fù)的記憶效率也很差。
有時(shí)候很多獨(dú)立的軟件開(kāi)發(fā)的工具書(shū),沒(méi)有講的那么細(xì)致,只是告訴你如何做,但是不會(huì)告訴你為什么這樣做,另外一些好的方法也無(wú)法告訴你,因?yàn)槎夹枰獜幕A(chǔ)的硬件電路電流原理來(lái)介紹,如果從原理上說(shuō),那會(huì)說(shuō)的沒(méi)完沒(méi)了。
大約半年甚至1年后,此時(shí)你所有軟件開(kāi)發(fā)需要掌握的基礎(chǔ)知識(shí),都比較明白了。再開(kāi)始研究程序開(kāi)發(fā),就會(huì)覺(jué)得開(kāi)發(fā)很簡(jiǎn)單,事半功倍。因?yàn)槟阋呀?jīng)從原理上理解了,軟件是怎么工作的。所以也知道軟件開(kāi)發(fā)的學(xué)習(xí)周期至少在1年以上。 達(dá)到能夠開(kāi)發(fā)中型軟件,至少也要1年半,而且這個(gè)時(shí)間還是每天都在鉆研的時(shí)間。
問(wèn)題六:如何學(xué)習(xí)軟件開(kāi)發(fā) 對(duì)于初學(xué)者,想做簡(jiǎn)單的編程的話(huà),建議從C語(yǔ)言開(kāi)始入門(mén)。C語(yǔ)言是最主流的基礎(chǔ)語(yǔ)言。現(xiàn)在軟件開(kāi)發(fā)上所用的的主流的高級(jí)編程語(yǔ)言大多數(shù)都是以C語(yǔ)言為基礎(chǔ)演化而來(lái)的,掌握好C語(yǔ)言有助于學(xué)習(xí)其他的高級(jí)編程語(yǔ)言。在學(xué)習(xí)過(guò)程中推薦參考譚浩強(qiáng)的C語(yǔ)言教程,非常適合入門(mén)級(jí)別的教材,在學(xué)習(xí)中還要注重實(shí)際操作,技術(shù)的提高來(lái)與源于代碼量的積累。
問(wèn)題七:開(kāi)發(fā)手機(jī)app 應(yīng)該學(xué)什么 第一、程序相關(guān)
如果想成為android應(yīng)用開(kāi)發(fā)者,最基本的是需要懂得用Java語(yǔ)言和XML知識(shí)。掌握了這兩種語(yǔ)言后再裝個(gè)Eclipse和Android SDK, 就可以做開(kāi)發(fā)了。當(dāng)然,還得學(xué)Android特有的API的用法。Java和XML只是編程基礎(chǔ)。
如果希望成為iOS應(yīng)用開(kāi)發(fā)者,那么需要知道1、語(yǔ)言基礎(chǔ):Objective-C語(yǔ)言、xcode開(kāi)發(fā)環(huán)境;2、手機(jī)使用經(jīng)驗(yàn):足夠的iPhone使用經(jīng)驗(yàn)與體會(huì),不然你很難與產(chǎn)品經(jīng)理和設(shè)計(jì)人員有效溝通;3、具體的開(kāi)發(fā)能力:主要的開(kāi)發(fā)將集中于界面開(kāi)發(fā)、一定的數(shù)據(jù)庫(kù)開(kāi)發(fā)、通訊接口開(kāi)發(fā)、協(xié)同開(kāi)發(fā)與聯(lián)調(diào),如果是游戲,那么還需要涉及到引擎、建模、素材、光影、故事板等。推薦兩本書(shū)兩本經(jīng)典入門(mén)書(shū)籍《objective-c基礎(chǔ)教程》和《iphone4和ipad開(kāi)發(fā)基礎(chǔ)教程》。
第二、用戶(hù)體驗(yàn)
好的應(yīng)用都會(huì)有好的用戶(hù)體驗(yàn),所以在進(jìn)行app開(kāi)發(fā)之前我們就要要拿出方案,想想用戶(hù)在什么情況下使用我的應(yīng)用,用戶(hù)的使用態(tài)度是什么,其中應(yīng)用中哪些是核心功能,哪些是輔助功能,哪些是邊緣功能,最佳操作路徑怎么建立,如何將功能分布到頁(yè)面上,同時(shí)我的應(yīng)用界面應(yīng)該是什么風(fēng)格和樣式,最終要畫(huà)出來(lái)UI方案。
第三、產(chǎn)品設(shè)計(jì)
確定好了UI方案,那么我的app應(yīng)用的市場(chǎng)定位、核心價(jià)值、產(chǎn)品功能、競(jìng)爭(zhēng)分析、商業(yè)模式和營(yíng)銷(xiāo)推廣。其中為用戶(hù)解決什么樣的問(wèn)題(核心價(jià)值),怎么解決(產(chǎn)品功能),有沒(méi)有替代方案(競(jìng)爭(zhēng)分析),為APP開(kāi)發(fā)者帶來(lái)什么好處(商業(yè)模式),怎么讓用戶(hù)接觸并安裝使用這款我的APP(營(yíng)銷(xiāo)推廣)這些問(wèn)題都需要考慮到。
第四、不懂技術(shù)也能開(kāi)發(fā)
如果上面三點(diǎn)你都不能夠做到,那么你也不用灰心,現(xiàn)在已經(jīng)有了應(yīng)用之星(appstar)免費(fèi)的移動(dòng)應(yīng)用開(kāi)發(fā)平臺(tái),關(guān)鍵是你不懂技術(shù)也能在這個(gè)平臺(tái)開(kāi)發(fā)
問(wèn)題八:想學(xué)軟件開(kāi)發(fā)上什么大學(xué)?。? 不知道別扯蛋好嗎?
首先我就編程序的,很負(fù)責(zé)的說(shuō)這活很累,而且中國(guó)的市場(chǎng)不太好,就是說(shuō)如果你只做開(kāi)發(fā)人員大30歲你就做不動(dòng)了,可能到身體好一點(diǎn)的到35!青春飯。
再說(shuō)學(xué)校:一本就選東北大學(xué)吧,我老板這學(xué)校畢業(yè)的。非常好的學(xué)校非常牛。
二本:長(zhǎng)春理工大學(xué),可考慮天津工業(yè)大學(xué)、天津科技大學(xué)、深圳大學(xué)、煙臺(tái)大學(xué)都不錯(cuò)!
三本就都一樣!你可以都了解下。如果你能上清華就別選計(jì)算機(jī),除非你你想研究學(xué)術(shù)。另外開(kāi)發(fā)也分很多,最近國(guó)內(nèi)熱門(mén)的是安卓,JAVA。你可以了解下!
希望對(duì)你有幫助。 純手打。一點(diǎn)愚建望莫笑!
問(wèn)題九:想做軟件開(kāi)發(fā),學(xué)什么最快 C#最快,馬上學(xué)馬上就可以著軟件了!
我當(dāng)時(shí)學(xué)的時(shí)候就讓個(gè)老師給我上了兩節(jié)課就讓我做個(gè)進(jìn)銷(xiāo)存的東西了!
問(wèn)題十:我想學(xué)習(xí)軟件開(kāi)發(fā),需要什么配置的電腦! 不好意思哦 我對(duì)上面的兩位朋友的配置提點(diǎn)意見(jiàn)哦 第一位你的CPU和主板的價(jià)格總共和我這個(gè)也差不多的呀 干嗎不用我的這個(gè)呢。第二個(gè)朋友 你的主板搞那么好 你就不說(shuō)用個(gè)雙核的CPU嗎??jī)?nèi)存的話(huà)就用512MB了 1G的還沒(méi)那個(gè)必要(至少現(xiàn)在還沒(méi)哪個(gè)必要的呀)。
要學(xué)軟件開(kāi)發(fā)呀 那就首先要選擇INTEL的CPU 你的話(huà)就買(mǎi)個(gè)
CPU INTEL P-D805 920
主板 雙敏945PLNS 570
顯卡 七彩虹X550 128M/128bit 370
內(nèi)存 威剛DDR533 280
硬盤(pán) ST串口 80G/7200/2MB 370
光驅(qū) 明基DVD16X 175
顯示器 菲力蒲17‘純平 880
音箱:漫步者/沖擊波2.1低音炮 85
機(jī)箱電源 160
鼠標(biāo)鍵盤(pán) 40
總共是3850元
說(shuō)明::這個(gè)配置是個(gè)雙核電腦的基本配置了 只所以采用雙核,是因?yàn)樗麑?duì)浮點(diǎn)的運(yùn)算的速度是很快的,比起以前的CPU不在同一個(gè)等級(jí)上的哦 而且這款805的價(jià)格是還是不錯(cuò)的哦 下面的主板只能用這個(gè)了 這個(gè)主板一方面便宜 而且質(zhì)量還是行的。內(nèi)存的使用圖的是個(gè)穩(wěn)定,用威剛還是行的。硬盤(pán)是也是圖便宜 但是是質(zhì)量一點(diǎn)都不含糊的哦。顯卡稍次了點(diǎn),不過(guò)夠用了,剩下的就這樣了 呵呵 個(gè)人建議哦 緊供參考哦 (哦對(duì)了 我報(bào)的價(jià)格都是武漢的價(jià)格 你在你那川不一定能拿到的 呵呵)
要是游戲的話(huà) 就把顯卡換成ATI X1300吧 這個(gè)是256MB/128bit的,還支持OPENGL 2.0 哦 就570元 總共是4050元了 呵呵
學(xué)軟件開(kāi)發(fā)需要有什么基礎(chǔ)?
可以的,只要你感興趣
計(jì)算機(jī)基礎(chǔ)、網(wǎng)絡(luò)基礎(chǔ),這些先基本了解一下,然后選擇一個(gè)編程技術(shù)方向,現(xiàn)在熱門(mén)的編程崗位就是Web前端、Java,如果是為了就業(yè)可以考慮這兩個(gè)技術(shù)方向,如果是對(duì)編程感興趣,可以學(xué)Python,語(yǔ)法簡(jiǎn)單,可以迅速做一些小項(xiàng)目。
"編程"就是我們?yōu)榱送瓿赡稠?xiàng)任務(wù), 將解決問(wèn)題的步驟, 用計(jì)算機(jī)能夠理解的語(yǔ)言寫(xiě)成指令, 這就是"編程". 而后, 計(jì)算機(jī)會(huì)根據(jù)這些指令一步步執(zhí)行, 最后完成任務(wù).
編程語(yǔ)言有很多種,只需要精通一門(mén)編程語(yǔ)言或者說(shuō)一個(gè)技術(shù)方向就可以了,可以結(jié)合自身,選擇一門(mén)自己喜歡并合適自己的。
HTML5+JS(web前端開(kāi)發(fā))
什么是前端?在網(wǎng)站上看到的一切圖片、文字、視頻、都是前端寫(xiě)的。
目前web前端開(kāi)發(fā)還是熱門(mén)編程方向,這門(mén)語(yǔ)言對(duì)于零基礎(chǔ)的學(xué)員來(lái)說(shuō)學(xué)起來(lái)難度不大。
Java
java仍然是市場(chǎng)上最流行和最火爆的編程語(yǔ)言,常常跟企業(yè)聯(lián)系在一起, 因?yàn)榫邆湟恍┖芎玫恼Z(yǔ)言特性, 以及豐富的框架, 在企業(yè)應(yīng)用中最被青睞。
Python
Python是動(dòng)態(tài)形的靈活的解釋性語(yǔ)言,從軟件開(kāi)發(fā)到Web開(kāi)發(fā),Python都有在被使用,因?yàn)樗慕忉屝?,適合輕量級(jí)開(kāi)發(fā),Python是很多新手會(huì)選擇的編程語(yǔ)言。
C語(yǔ)言
C語(yǔ)言,語(yǔ)法較多,時(shí)間相對(duì)還是比較多的,所以也可以考慮從C語(yǔ)言入手,因?yàn)榇蚝镁幊袒A(chǔ),以后再學(xué)其他語(yǔ)言會(huì)很快上手。如果是快速就業(yè),不太適合C語(yǔ)言
C++
和C語(yǔ)言一樣,語(yǔ)法有一定難度,C++是一種最廣泛支持范式的編程語(yǔ)言,。當(dāng)然如果C學(xué)的不錯(cuò),C++上手也會(huì)快。
學(xué)軟件開(kāi)發(fā)要會(huì)什么?
學(xué)習(xí)這個(gè)需要有一定的英語(yǔ)功底,數(shù)學(xué)或者統(tǒng)計(jì)學(xué)還不錯(cuò),邏輯思維能力差的話(huà)建議你別考慮這個(gè)了。
軟件開(kāi)發(fā)主要有web開(kāi)發(fā)、java開(kāi)發(fā)、嵌入式開(kāi)發(fā)。
1?、確定自己喜歡可視化的工作,還是抽象的工作。喜歡可視化工作的可以定位為前端開(kāi)發(fā),因?yàn)榍岸碎_(kāi)發(fā)更多的會(huì)和可視化用戶(hù)界面接觸;而喜歡抽象的工作則可以定位為后端工程師,后端工程師主要做一個(gè)軟件的功能部分的開(kāi)發(fā)。
2?、開(kāi)始基礎(chǔ)的學(xué)習(xí),不管定位是前端工程師,還是后端工程師,他們都需要從業(yè)者掌握基礎(chǔ)的互聯(lián)網(wǎng)?IT?知識(shí)。在具體的學(xué)習(xí)之前,需要先把這些基礎(chǔ)的知識(shí)學(xué)習(xí)扎實(shí),這些內(nèi)容包括:?HTML?,軟件開(kāi)發(fā)步驟,互聯(lián)網(wǎng)請(qǐng)求響應(yīng)過(guò)程(?HTTP?協(xié)議),基本算法(數(shù)據(jù)結(jié)構(gòu)),基本編程知識(shí)。
3?、然后就是不同工種的學(xué)習(xí)了,先說(shuō)前端工程師。前端工程師主要是對(duì)用戶(hù)看到的界面上的內(nèi)容進(jìn)行調(diào)整,開(kāi)發(fā)。主要包括的內(nèi)容有:?HTML?,?CSS?,?JavaScrit?,?Jquery?。其他的一些內(nèi)容都是以這幾項(xiàng)為基礎(chǔ)而衍生出來(lái)的。
4?、接下來(lái)是后端工程師的職業(yè)知識(shí),后端工程師所作的事是用戶(hù)看不到的,比如說(shuō)進(jìn)入網(wǎng)站你輸入用戶(hù)名,密碼登陸,這個(gè)登錄的功能就需要后端工程師去完成。主要涉及的知識(shí)有:編程語(yǔ)言(如?Java?,?C#?,?PHP?,?Python?等,這里選擇一種即可)?,?數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)庫(kù),服務(wù)器
5?、知識(shí)儲(chǔ)備完畢,可以做一個(gè)簡(jiǎn)單的小軟件去系統(tǒng)的應(yīng)用一下自己所學(xué)的內(nèi)容。比如做一個(gè)簡(jiǎn)單的學(xué)生管理系統(tǒng),圖書(shū)管理系統(tǒng)。
6?、最后你就可以去尋找相關(guān)的開(kāi)發(fā)崗位了,由于沒(méi)有實(shí)際的項(xiàng)目開(kāi)發(fā)經(jīng)驗(yàn),可以先找一些工資少一點(diǎn)的。等工作一兩年有了項(xiàng)目經(jīng)驗(yàn),這個(gè)時(shí)候你就有資本去謀求高薪水的工作了。
軟件開(kāi)發(fā)需要學(xué)什么
編程就是讓計(jì)算機(jī)為解決某個(gè)問(wèn)題而使用某種程序設(shè)計(jì)語(yǔ)言編寫(xiě)程序代碼,并最終得到結(jié)果的過(guò)程。信息時(shí)代的大背景下,計(jì)算機(jī)的應(yīng)用顯得舉足輕重,精通計(jì)算機(jī)的人才對(duì)于龐大的市場(chǎng)需求量來(lái)說(shuō)還是顯得很匱乏,因此計(jì)算機(jī)行業(yè)的前景是很可觀(guān)的,但是也有不少人對(duì)于編程處于一竅不通的狀態(tài),那編程該從何入手呢?
首先,編程所需的基礎(chǔ)也就是語(yǔ)言,選擇一種自己感興趣或者擅長(zhǎng)的語(yǔ)言,這里給大家羅列一個(gè)語(yǔ)言的分類(lèi):Python——一個(gè)非常適合初學(xué)者的語(yǔ)言 ,而且當(dāng)你掌握它的時(shí)候它會(huì)變得更加強(qiáng)大。被用來(lái)開(kāi)發(fā)了許多Web應(yīng)用、甚至一些游戲。Java——被無(wú)數(shù)個(gè)項(xiàng)目所使用,從游戲到Web應(yīng)用再到ATM軟件。HTML——對(duì)于任何Web開(kāi)發(fā)者必不可少的起航點(diǎn)。在從事其他一系列Web開(kāi)發(fā)之前掌握好HTML非常重要。C——最古老的語(yǔ)言之一,它已經(jīng)是非常強(qiáng)大的工具,也是一些更現(xiàn)代的語(yǔ)言的祖先,比如C++,C#和Objective-C。
學(xué)習(xí)語(yǔ)言的過(guò)程中還要有機(jī)會(huì)進(jìn)行檢驗(yàn),不能只編寫(xiě)代碼,還要檢驗(yàn)代碼的結(jié)果運(yùn)行是否正確,也就是某些可以運(yùn)行結(jié)果的軟件我們要有,不過(guò)許多的編程語(yǔ)言都要求有被程序員設(shè)計(jì)來(lái)講代碼轉(zhuǎn)換成機(jī)器能理解的語(yǔ)言的編譯器。其他一些語(yǔ)言,比如Python,使用可以立即轉(zhuǎn)換成程序而不需要編譯。一些語(yǔ)言有自己的往往包含著代碼編輯器、調(diào)試器和/或者翻譯以及調(diào)試的IDEs(集成開(kāi)發(fā)環(huán)境)。這些程序員在同一個(gè)地方去執(zhí)行任何必要的功能。IDEs可能還包含著包含對(duì)象層次結(jié)構(gòu)和目錄的可視化界面。
要學(xué)會(huì)習(xí)慣編程序的過(guò)程中不斷修復(fù)錯(cuò)誤和漏洞,當(dāng)你在編程時(shí),你總會(huì)碰到bug。它們存在程序中,并且可能隨時(shí)隨地的出現(xiàn)在程序中的任何一個(gè)地方。漏洞可能會(huì)破壞程序,或者只是讓程序不能編譯/運(yùn)行。捕捉和修復(fù)這些錯(cuò)誤在軟件開(kāi)發(fā)周期中這是一個(gè)主要的過(guò)程,要早早地習(xí)慣于這么做。
給自己的代碼加注釋?zhuān)@是新手學(xué)習(xí)代碼時(shí)最常用的方法,給自己的代碼加注釋?zhuān)梢宰尵幋a者搞清楚每段代碼所代表的含義,這樣,即使在大程序中,我們也能熟記各個(gè)代碼的含義。
學(xué)習(xí)數(shù)學(xué)和邏輯,大多編程都涉及了基本的算術(shù)運(yùn)算,但可能你想要學(xué)習(xí)更先進(jìn)的概念。如果你想寫(xiě)出復(fù)雜的模擬或者算法級(jí)別程序,這將是非常重要的。對(duì)于大多數(shù)日常編程而言,你并不需要太多先進(jìn)的數(shù)學(xué)知識(shí)。但學(xué)習(xí)邏輯,尤其是計(jì)算機(jī)邏輯,將能幫助你理解處理更先進(jìn)程序的復(fù)雜問(wèn)題的最好方式。
編程最需要的還是不斷的練習(xí),每天不停地敲代碼,直到自己能熟練運(yùn)用為止。
很多人因?yàn)榱w慕軟件開(kāi)發(fā)人員的高薪,選擇學(xué)習(xí)軟件開(kāi)發(fā);也有很多人因?yàn)槌绦騿T不需要和復(fù)雜的社會(huì)打交道而選擇軟件開(kāi)發(fā)職位;也有很多人是因?yàn)槟澄淮笊窦?jí)別說(shuō)的“21世紀(jì),每個(gè)人都要學(xué)會(huì)一種或幾種編程語(yǔ)言?!倍鴬^發(fā)努力,開(kāi)始學(xué)習(xí)軟件開(kāi)發(fā)。不管你出于什么原因想學(xué)習(xí)編程,那么作為零基礎(chǔ)的小白,需要先學(xué)什么,后學(xué)什么呢,需要怎么做呢?至于學(xué)什么語(yǔ)言,這個(gè)得看自己的喜好,很多攻擊說(shuō)C語(yǔ)言的,也讓很多人懼怕學(xué)習(xí)C語(yǔ)言,但是很多頂級(jí)的程序員都是非常喜好C語(yǔ)言的。你可以學(xué)java,相對(duì)容易,而且用的公司也比較多,工資待遇比較高,或者你也可以學(xué)html、java等入門(mén)級(jí)的語(yǔ)言。
關(guān)于想做軟件開(kāi)發(fā)需要學(xué)什么和做軟件開(kāi)發(fā)人員需要什么技能的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。