對于剛?cè)腴T軟件開發(fā)的小白,可能會有很多的疑問,軟件開發(fā)是什么?一款軟件是怎么設(shè)計開發(fā)出來的?軟件開發(fā)具體是做什么的?需要掌握哪些技能?下面讓我簡單的大伙聊聊軟件開發(fā)。
什么是軟件開發(fā)?
軟件其實就是實現(xiàn)具體功能的程序。
什么是程序?
程序其實就是完成一些列動作的過程描述。這個過程是由計算機語言進行編寫的。
什么是計算機語言?
計算機是沒辦法直接理解我們?nèi)祟惖恼Z言,當我們需要計算機輔助我們執(zhí)行一些操作,比如一些簡單的算術(shù)運算(加、減、乘、除),則需要通過計算機語言將我們程序翻譯成計算機能夠理解的指令集.,而指令集是計算機能夠直接理解和執(zhí)行的。
計算機語言有哪些?
機器語言:由0和1組成的二進制指令集,能夠直接被計算機CPU識別的執(zhí)行,所以通過機器語言編寫的程序執(zhí)行的效率是最高的,但是開發(fā)的難度也是最大的,現(xiàn)在的主流軟件開發(fā)不會直接使用機器語言進行軟件代碼的編寫。
匯編語言:通過一些指定的關(guān)鍵字代替0,1編碼,比如mov,push,pop等,與機器語言相比相對降低了開發(fā)的難度,也更易于理解,但是開發(fā)起來也是相當?shù)睦щy,而且不易于調(diào)試。
高級語言:
現(xiàn)在的軟件開發(fā)基本都是通過高級語言進行開發(fā),例如C、C 、Java等,相對于前面提及到開發(fā)語言,雖然高級語言執(zhí)行效率沒有前面提到的兩種開發(fā)語言高(計算機沒辦法直接理解高級語言編寫的程序需要將高級語言編寫的程序翻譯成計算機能夠理解的指令集),但是高級語言比較符合人類語言的模式,更易于開發(fā)和維護,所以現(xiàn)在主流的軟件開發(fā)都是基于高級語言進行的。
什么是java?
java是一種編程語言,我們可以用java語言編寫特定的程序,將程序交給計算機去執(zhí)行輔助我們完成任務。
為什么我們要使用java?
java語言有很多重要的特點,現(xiàn)在我們簡單的聊一下
可移植:java是一種跨平臺運行的語言,java語言之所以能夠跨平臺運行是因為java程序是運行在java虛擬機上面的(JVM),我們可以簡單的這樣理解JVM以及對各種操作系統(tǒng)做了適配,我們編寫的代碼可以通過java的編譯器編譯成字節(jié)碼,而各操作系統(tǒng)平臺有相對應的jva字節(jié)碼解析器將其解析成該平臺能夠執(zhí)行的機器碼,所以java語言可以跨平臺運行。
垃圾回收:所謂的垃圾回收,其實是對程序運行時程序占用內(nèi)存的回收,java作為一種高級語言,提供了內(nèi)存自動回收的機制(GC),能夠幫我們自動清理沒有引用的對象釋放掉其占用的內(nèi)存資源,這塊現(xiàn)在只是簡單的提一下,后面會詳細的描述java語言垃圾回收機制以及怎么進行GC優(yōu)化我們程序使用的內(nèi)存。
面向?qū)ο螅簀ava是一種面向?qū)ο蟮木幊陶Z言,非常的適合大型軟件的開發(fā)設(shè)計。
軟件生態(tài):java經(jīng)過了十幾年的發(fā)展,其軟件生態(tài)已經(jīng)非常的完整,良好的開源社區(qū)支持,文檔支持。相對應的開發(fā)工具,開發(fā)框架也是非常完善的
經(jīng)過上面的介紹希望能給剛接觸軟件開發(fā)的同學會有一些幫助,后面這個系列文章會不停的更新,例如java學習路線、軟件開發(fā)流程、java基礎(chǔ)、框架、中間件、微服務等
版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至 舉報,一經(jīng)查實,本站將立刻刪除。