導航:首頁 > 程序命令 > 什麼是伺服器後端程序員

什麼是伺服器後端程序員

發布時間:2022-09-10 05:37:53

A. 客戶端、前端、後端、服務端的區別分別是什麼

客戶端是指開發面向客戶的程序,分很多平台,比如Windows 安卓 蘋果,還有游戲客戶端也算一類。


前端指的是通過瀏覽器和用戶交互的那部分。
後端是在伺服器上跑的,一般是管理數據,為前端 客戶端提供數據傳輸的。
伺服器端就是後端。

B. 什麼是前端,後端,終端,有什麼區別

簡單地說,前端就是你在瀏覽網頁app看到的一切東西,都是前端。後端就是程序員在背後做的一切努力,對數據等東西的處理。而終端就是你使用來瀏覽這些東西的設備。
展開來說的話,就比較長。
前端:
前端就是展現給用戶瀏覽的部分。我們通常說的前端,其實是指前端開發,也就是創建PC端或移動端等前端界面給用戶的過程,通過HTML,CSS及javaScript以及衍生出來的各種技術、框架、解決方案,來實現互聯網產品的用戶界面交互。前端開發是從網頁製作演變而來。早期的網頁製作主要內容都是靜態的,以文字圖片為主,用戶使用網站也以瀏覽為主。隨著互聯網的發展,現代網頁更加美觀,交互效果顯著,功能更加強大。因此現在的前端開發的主要技術通常是指html、css、js技術和一些開發框架的使用。大家熟知的Facebook就是Web前端技術的產物,完全基於前端框架打造出來的平台。另外,外賣平台餓了么旗下的部分產品也是基於Web前端技術的。像淘寶,網路,阿里等等,都已經將Web前端技術打入到了自己的產品中。
後端:
為了讓伺服器、應用、資料庫能夠彼此交互,後端工程師需要具有用於應用構建的伺服器端語言,數據相關工具,php框架,版本控制工具,還要熟練使用 Linux 作為開發和部署環境。後端開發者使用這些工具編寫干凈、可移植、具有良好文檔支持的代碼來創建或更新 Web 應用。但在寫代碼之前,他們需要與客戶溝通,了解其實際需求並轉化為技術目標,制定最有效且精簡的方案來進行實現。
終端:
「終端」即是指最後或最外層的節點。在計算機世界裡一般指最外層的輸入輸出。那什麼是計算機的輸入輸出?最常見的輸出設備就是顯示器、最常見的輸入設備就是鍵盤滑鼠。所以通俗來說,計算機的終端就是位於最外層的顯示器、鍵盤或滑鼠。
在過去(現在也有)因為計算機資源非常寶貴,經常一台高性能主機向多台終端設備提供計算能力。即終端設備通過鍵盤滑鼠向中心主機輸入信息,中心主機計算後將結果返回給終端進行顯示。終端本身不具備核心計算能力,主要就負責數據的輸入和輸出,這就是「終端」。
現代我們管很多設備叫終端機,比如手機。因為手機作為接打電話的終端負責聲音的輸入和輸出,而重要的信號處理工作由各個基站等設備完成。

C. 程序員分前端與後端,那麼後端程序員都做些什麼看完就知道了

我剛開始做Web開發的時候,根本沒有前端,後端之說。

原因很簡單,那個時候伺服器端的代碼就是一切: 接受瀏覽器的請求,實現業務邏輯,訪問資料庫,用JSP生成HTML,然後發送給瀏覽器。

即使後來Javascript在瀏覽器中添加了一些AJAX的效果,那也是錦上添花,絕對不敢造次。因為頁面的HTML主要還是用所謂「 套模板 」的方式生成:美工生成HTML模板,程序員用JSP,Veloctiy,FreeMaker等技術把動態的內容添加上去,僅此而已。

那個時候最流行的圖是這個樣子:

在最初的J2EE體系中,這個 表示層 可不僅僅是瀏覽器中運行的頁面,還包括Java寫的桌面端,只是Java在桌面端太不爭氣, 沒有發展起來。

每個程序員都是所謂 「全棧」工程師 ,不僅要搞定HTML, JavaScript, CSS,還要實現業務邏輯,編寫訪問資料庫的代碼。等到部署的時候,就把所有的代碼打成一個WAR包,往Tomcat指定的目錄一扔,測試一下沒問題,收工回家!

不差錢的公司會把程序部署到Weblogic,Websphere這樣的應用伺服器中,還會用上高大上的EJB。

雖然看起來生活「簡單」又「愜意」,但實際上也需要實現那些多變的、不講邏輯的業務需求,苦逼的本質並沒有改變。

隨著大家對瀏覽器頁面的 視覺和交互 要求越來越高,「套模板」的方式漸漸無法滿足要求,這個所謂的表示層慢慢地遷移到瀏覽器當中去了,一大批像Angular, ReactJS之類的框架崛起,前後端分離了!

後端的工程師只負責提供介面和數據,專注於業務邏輯的實現,前端取到數據後在瀏覽器中展示,各司其職。

像Java這樣的語言很適合去實現復雜的業務邏輯,尤其是一些MIS系統,行業軟體如稅務、電力、煙草、金融,通信等等。 所以剝離表示層,只做後端挺合適的。

但是如果僅僅是實現業務邏輯,那後端也不會需要這么多技術了,搞定SSH/SSM就行了。

互聯網,尤其是移動互聯網開始興起以後,海量的用戶呼嘯而來,一個單機部署的小小War包肯定是撐不住了,必須得做分布式。

原來的單個Tomcat得變成Tomcat的 集群 ,前邊弄個Web伺服器做請求的 負載均衡, 不僅如此,還得考慮狀態問題,session的一致性。

(註:參見文章《小白科普:分布式和集群》)

業務越來越復雜,我們不得不把某些業務放到一個機器(或集群)上,把另外一部分業務放到另外一個機器(或集群)上,雖然系統的計算能力,處理能力大大增強,但是這些系統之間的通信就變成了頭疼的問題, 消息隊列 (MQ), RPC框架 (如Dubbo)應運而生,為了提高通信效率,各種 序列化的工具 (如Protobuf)也爭先空後地問世。

單個資料庫也撐不住了,那就做資料庫的 讀寫分離 ,如果還不行,就做 分庫和分表 ,把原有的資料庫垂直地切一切,或者水平地切一切, 但不管怎麼切,都會讓應用程序的訪問非常麻煩,因為數據要跨庫做Join/排序,還需要事務,為了解決這個問題,又有各種各樣「 數據訪問中間件 」的工具和產品誕生。

為了最大程度地提高性能,緩存肯定少不了,可以在本機做緩存(如Ehcache),也可以做 分布式緩存 (如Redis),如何搞 數據分片 ,數據遷移,失效轉移,這又是一個超級大的主題了。

互聯網用戶喜歡上傳圖片和文件,還得搞一個 分布式的文件系統 (如FastDFS),要求高可用,高可靠。

數據量大了,搜索的需求就自然而然地浮出水面,你得弄一個支持全文索引的 搜索引擎 (如Elasticsearch ,Solr)出來。

林子大了,什麼鳥都有,必須得考慮 安全 ,數據的加密/解密,簽名、證書,防止SQL注入,XSS/CSRF等各種攻擊。

前面提到了這么多的系統,還都是分布式的,每次上線,運維的同學說:把這么多系統協調好,把老子都累死了。

得把持續集成做好,能自動化地部署,自動化測試(其實前端也是如此),後來出現了一個革命化的技術 docker , 能夠讓開發、測試、生成環境保持一致,系統原來只是在環境(如Ngnix, JVM,Tomcat,MySQL等)上部署代碼,現在把代碼和環境一並打包, 運維的工作一下子就簡化了。

公司自己購買伺服器比較貴,維護也很麻煩,又難於彈性地增長,那就搞點虛擬的伺服器吧,硬碟、內存都可以動態擴展(反正是虛擬的), 訪問量大的時候多用點,沒啥訪問量了就釋放一點,按需分配,很方便,這就是 雲計算 的一個場景。

隨著時間的推移,各個公司和系統收集的數據越來越多,都堆成一座大山了,難道就放在那裡白白地浪費硬碟空間嗎?

有人就驚奇地發現,咦,我們利用這些數據搞點事情啊, 比如把數據好好分析一下,預測一下這個用戶的購買/閱讀/瀏覽習慣,給他推薦一點東西嘛。

可是這么多數據,用傳統的方式計算好幾天甚至好幾個月才能出個結果,到時候黃花菜都涼了,所以也得利用分布式的技術,想辦法把計算分到各個計算機去,然後再把計算結果收回來, 時勢造英雄, Hadoop 及其生態系統就應運而生了。

之前聽說過一個大前端的概念,把移動端和網頁端都歸結為「前端」,我這里造個詞「大後端」,把那些用戶直接接觸不到的、發生在伺服器端的都歸結進來。

現在無論是前端還是後端,技術領域多如牛毛,都嚴重地細分了,所以 我認為真正的全棧工程師根本不存在,因為一個人精力有限,不可能搞定這么多技術領域,太難了

培訓機構所說的「全棧」,我認為就是前後端還在拉拉扯扯,藕斷絲連,沒有徹底分離的時候的「全棧」工程師。

那麼問題來了, 後端這么多東西,我該怎麼學?

之前寫過一篇文章叫做《上天還是入地》,說了學習的廣度和深度,在這里也是相通的。

往深度挖掘,可以成為某個技術領域的專家,如搜索方面的專家、安全方面的專家,分布式文件的專家等等,不管是哪個領域,重點都不是學會使用某個工具和框架, 而是保證你可以自己的知識和技術去搞定這個領域的頂尖問題。

往廣度發展,各個技術領域都要了解,對於某種需求,能夠選取合適的軟體和技術架構來實現它,把需求轉化成合適的技術組件,讓這些組件以合適的方式連接、部署、運行,這也需要持續地學習和不斷的經驗積累。

最後,以一張漫畫來結束吧!

C/C++高級工程師學習路線圖:

D. 前端程序員和後端程序員的區別是什麼

一、方式不同:

前端開發主要是研究用戶可以看到的前端顯示界面。後端開發主要集中在邏輯功能等模塊上,用戶看不到的這些模塊。

二、技術不同:

前端開發的技術主要包括但不限於html5、css3、javascript、jquery、Bootstrap等技術。而後端開發是以java為例的,主要用到的技術包括但不限於Struts spring springmvc Hibernate Http協議 Servlet Tomcat伺服器等技術。

前端開發從網頁製作演變而來

名稱上有很明顯的時代特徵。在互聯網的演化進程中,網頁製作是Web1.0時代的產物,早期網站主要內容都是靜態,以圖片和文字為主,用戶使用網站的行為也以瀏覽為主。隨著互聯網技術的發展和HTML5、CSS3的應用,現代網頁更加美觀,交互效果顯著,功能更加強大。

前端開發跟隨移動互聯網發展帶來了大量高性能的移動終端設備應用。HTML5,Node.js的廣泛應用,各類UI框架,JS類庫層出不窮,開發難度也在逐步提升。

以上內容參考:網路-前端開發

E. 後端是什麼意思

「後端工程師」的意思是負責數據提供,熟悉後端流程,熟練掌握一種後端工具的使用,學會如何使用工具分析功耗及其對設計的影響的人群。要求如下:

1、能夠使用一門或者數門語言構造大型應用。

2、了解ansible、salt、puppet等自動化運維技術,了解docker,熟練掌握shell腳本處理線上問題。

3、能夠規避常見的安全漏洞,處理各種網路攻擊事件。

4、知道常規的演算法和數據結構,通過分析代碼能了解架構的計算復雜度和性能,並針對性做出優化。

5、掌握elasticsearch solr等開源搜索引擎,能夠搭建搜索引擎實現各種搜索以及排序任務。

(5)什麼是伺服器後端程序員擴展閱讀

前端工程師不同於後端的基本情況

據了解,前端工程師的職責主要是利用各種Web技術進行產品的界面開發。其中的說明具體如下:

1、編寫網頁標准優化代碼,並增加交互動態功能,開發JavaScript以及Flash模塊,同時結合後台開發技術模擬整體效果,進行豐富互聯網的Web開發,致力於通過技術改善用戶體驗。

2、隨著互聯網技術的發展,還有HTML5、CSS3、JavaScript、Node.js的相關應用,前端工程師這樣的工作人員逐步具備了從客戶端(用戶端)到後台(伺服器端)綜合開發的能力。

F. java前端開發和後端開發是什麼意思

1、前端開發:
網站的「前端」是與用戶直接交互的部分,包括你在瀏覽網頁時接觸的所有視覺內容–從字體到顏色,以及下拉菜單和側邊欄。這些視覺內容,都是由瀏覽器解析、處理、渲染相關HTML、CSS、Java 文件後呈現而來。前端開發,就是要創造上面提到的網站面向用戶的部分背後的代碼,並通過建立框架,構建沉浸性的用戶體驗。為了實現這個目標,開發需要熟練運用下列語言、框架、工具庫。
2、後端開發:
為了讓伺服器、應用、資料庫能夠彼此交互,後端工程師需要具有用於應用構建的伺服器端語言,數據相關工具,PHP框架,版本控制工具,還要熟練使用 Linux 作為開發和部署環境。後端開發者使用這些工具編寫干凈、可移植、具有良好文檔支持的代碼來創建或更新 Web 應用。但在寫代碼之前,他們需要與客戶溝通,了解其實際需求並轉化為技術目標,制定最有效且精簡的方案來進行實現。

G. 什麼是伺服器端程序員

伺服器端程序員主要寫業務方面,跟資料庫,系統關聯,一般用C#,php,JAVA等。客戶端的,主要是界面設計,如CSS,html,PHOTOSHOP,JAVASCRIPT等

H. 後端開發程序員究竟做什麼

後端開發程序員究竟做什麼?在現實中,即使前端開發獲得了大部分的榮耀,但是世界上存在的大多數代碼(可以說是最有用的代碼)是最終用戶從來不會看到的後端代碼。前端開發人員構建用戶界面,而後端開發人員編寫代碼,使其工作;後端開發人員寫可使得按鈕工作的代碼,通過指出從資料庫中提取哪些數據並將其傳回到前端。後端開發程序員究竟做什麼接下來我們具體說說

閱讀全文

與什麼是伺服器後端程序員相關的資料

熱點內容
windows的doc命令 瀏覽:463
nfc全加密門禁卡 瀏覽:636
身份信息被加密 瀏覽:482
我的鹽城app怎麼添加不了家庭成員 瀏覽:493
php商城並發 瀏覽:348
熊貓繪畫app怎麼做出大佬的筆刷 瀏覽:603
雲存儲伺服器知識 瀏覽:461
伺服器cpu是什麼指令集 瀏覽:590
糖貓t10怎麼安裝app 瀏覽:992
電腦加密u盤怎麼使用 瀏覽:517
linux如何升級php版本升級 瀏覽:841
二級程序員c語言難度 瀏覽:352
批處理編譯qt 瀏覽:66
鐵友app怎麼查詢機票訂單 瀏覽:197
myeclipselinux破解版 瀏覽:417
批處理命令語法不正確 瀏覽:889
pdf合並成一個pdf在線 瀏覽:383
柱加密區構造要求 瀏覽:515
地板木龍骨標准跟加密區別 瀏覽:151
解壓放鬆的好地方河南 瀏覽:965