網(wǎng)站開(kāi)發(fā) 軟件開(kāi)發(fā)、網(wǎng)站開(kāi)發(fā)有區(qū)別嗎?
軟件開(kāi)發(fā)、網(wǎng)站開(kāi)發(fā)有區(qū)別嗎?謝謝。我是一名軟件工程師。首先我要明確的是,軟件開(kāi)發(fā)的范圍非常大,包括游戲開(kāi)發(fā)、網(wǎng)站開(kāi)發(fā)、手機(jī)應(yīng)用開(kāi)發(fā)等等。因此,網(wǎng)站開(kāi)發(fā)屬于軟件開(kāi)發(fā)的范疇,網(wǎng)站開(kāi)發(fā)主要采用B/S架構(gòu),B
軟件開(kāi)發(fā)、網(wǎng)站開(kāi)發(fā)有區(qū)別嗎?
謝謝。我是一名軟件工程師。首先我要明確的是,軟件開(kāi)發(fā)的范圍非常大,包括游戲開(kāi)發(fā)、網(wǎng)站開(kāi)發(fā)、手機(jī)應(yīng)用開(kāi)發(fā)等等。
因此,網(wǎng)站開(kāi)發(fā)屬于軟件開(kāi)發(fā)的范疇,網(wǎng)站開(kāi)發(fā)主要采用B/S架構(gòu),B代表瀏覽器,S代表服務(wù)器。由此可見(jiàn),網(wǎng)站的開(kāi)發(fā)還包括前端和后端兩部分。
前端負(fù)責(zé)開(kāi)發(fā)web界面,還控制用戶數(shù)據(jù)和服務(wù)器數(shù)據(jù)之間的交互。
常見(jiàn)技術(shù)包括HTML和JavaScript。Html用于編寫(xiě)網(wǎng)頁(yè)的外觀。JavaScript控制著網(wǎng)頁(yè)數(shù)據(jù)處理的邏輯,還可以處理圖形交互的動(dòng)畫(huà)效果。
下圖是前端工程師的思維導(dǎo)圖:
后端負(fù)責(zé)服務(wù)器的代碼開(kāi)發(fā)。目前,服務(wù)器的主流語(yǔ)言是Java。作為一名java開(kāi)發(fā)工程師,我主要談?wù)搄ava。
Java知識(shí)很深,但歸根結(jié)底,Java的主要目的是對(duì)服務(wù)器端的數(shù)據(jù)庫(kù)進(jìn)行合理的管理,處理數(shù)據(jù)變化和數(shù)據(jù)傳輸,保證前端數(shù)據(jù)能夠得到有效的反饋,保證網(wǎng)站的數(shù)據(jù)能夠穩(wěn)定、連續(xù)地輔助網(wǎng)站的運(yùn)行網(wǎng)站。
事實(shí)上,網(wǎng)站開(kāi)發(fā)過(guò)程是軟件開(kāi)發(fā)的縮影,開(kāi)發(fā)原則是相互聯(lián)系的。
用什么語(yǔ)言容易編寫(xiě)網(wǎng)站?
如果只從易寫(xiě)的角度考慮,用PHP語(yǔ)言寫(xiě)網(wǎng)站是最簡(jiǎn)單的。事實(shí)上,javaweb已經(jīng)取代了PHP開(kāi)發(fā)網(wǎng)站的主流地位。
所以我建議用java語(yǔ)言來(lái)編寫(xiě)網(wǎng)站的后臺(tái),用前端技術(shù)react和Vue來(lái)編寫(xiě)前端頁(yè)面,這樣就形成了一個(gè)前后分離的網(wǎng)站。
PHP速度很快。它不僅容易學(xué),而且容易發(fā)展。方法可以直接調(diào)用。它不需要像Java那樣逐層調(diào)用??刂破鲗诱{(diào)用服務(wù)層,服務(wù)層調(diào)用Dao層。
但是PHP開(kāi)發(fā)也容易出錯(cuò)。作為一種腳本語(yǔ)言,它在編譯時(shí)并不嚴(yán)格檢查語(yǔ)言。Java是強(qiáng)類型語(yǔ)言,PHP有點(diǎn)像JavaScript,屬于弱類型語(yǔ)言。有時(shí)當(dāng)它被不小心編譯時(shí),它會(huì)在運(yùn)行時(shí)出錯(cuò)。
在移動(dòng)互聯(lián)網(wǎng)的浪潮中,前端和后端的分離已經(jīng)被公認(rèn)為一種解決方案。前端使用react和Vue,服務(wù)器語(yǔ)言使用Java,不建議使用少數(shù)民族語(yǔ)言。有人會(huì)說(shuō)Python比Java好得多,golang語(yǔ)言有多好,C比Java快得多。但是,我仍然想為Java構(gòu)建一個(gè)平臺(tái)。Java無(wú)疑贏得了服務(wù)器的主導(dǎo)地位,其他語(yǔ)言也難以撼動(dòng)。