Ⅰ 詳細介紹Web前端與後端有什麼區別(包括定義、特點、所用到的技術等(500字)
1.什麼是前端開發?
前端,也稱為「客戶端開發」,簡單來說,你可以在應用程序或網站的屏幕上看到的所有內容都屬於前端。
通俗點說:web的本意是蜘蛛網和網的意思,在網頁設計中我們稱為網頁的意思。現廣泛譯作網路、互聯網等技術領域。表現為三種形式,即超文本(hypertext)、超媒體(hypermedia)、超文本傳輸協議(HTTP)等,包括Web頁面的結構、Web的外觀視覺表現以及Web層面的交互實現。
1.1 網站和移動應用的前端
讓我們考慮一個現實的例子:你正在訪問的網站。內容設計、圖像、段落和線條之間的間距,左上角的公司徽標,以及右下角的小通知按鈕——所有這一切都是前端。
移動應用的前端與網站相同。例如,你在移動或 Web 應用中看到的內容,按鈕、圖像是前端的一部分。此外移動屏幕還具有觸摸響應功能,因此當應用響應你所做的所有手勢時,需要進行縮放放大/縮小、雙擊、滑動等操作。
前端開發人員構建所有的這些。它們創造了你在屏幕上看到的外觀和觸摸到的體驗。
Ionic,Swift,Kotlin,Bootstrap,Angular,Vue,jQuery,React.js 是用於前端開發的一些工具和技術。
1.2 物聯網的前端
連接到互聯網的任何對象都是IoT(物聯網)設備。你可能在想物聯網設備的前端如何工作?任何智能設備,如智能冰箱、遠程 PoS 系統、智能手錶、智能錢包,都需要用戶可以與之交互以操作設備的「東西」。因此,「某物」是一種互動媒介,其元素就是物聯網的前端。
物聯網設備沒有前端的說法,但設備包含一個固件,其行為類似於移動應用程序中的前端。此外該固件可以用C、C++、Lua、Python 和 JavaScript 等語言編寫。
另外還有物聯網設備的 UI/UX 設計和實現。
2.什麼是後端開發?
後端,也稱為「伺服器端開發」,也就是在系統「後面」所發生的事情。同樣,在後端伺服器和瀏覽器或應用程序之間存儲網站、應用數據和中間媒介的伺服器都屬於後端。簡單來說,在應用程序或網站的屏幕上看不到的所有東西都是前端的後端。它更多的是與資料庫進行交互以處理相應的業務邏輯。需要考慮的是如何實現功能、數據的存取、平台的穩定性與性能等。
2.1 網站和移動應用後端
網站的後端需要設置伺服器,存儲和檢索數據,以及將這些伺服器與前端進行連接的介面。如果說前端開發人員梗關注網站的外觀,後端開發人員則更更關注網站的速度、性能和響應能力,後端通過編碼、雲 API 和資料庫進行集成。
就像前端一樣,移動應用的後端開發在各個方面都與網站後端相同。此外,你為移動應用設置後端伺服器的選項包括:雲計算(AWS,Firebase)定製伺服器或 MBaaS(移動後端即服務)。
Ruby,Apache,Nginx,PHP,MySQL,MongoDB 等用於後端開發的工具和技術很少。
2.2 物聯網後端
物聯網後端最重要的組成部分之一是雲後端。顯然大多數物聯網設備都依賴雲伺服器對數據進行上傳和下載,並將其處理為動作。
如果我們談論高級物聯網解決方案,後端開發可以擴大到 AI(人工智慧)和 ML 等功能(機器學習)。
用於物聯網項目的後端技術是Amazon IoT,Google Cloud,MQTT Broker,IFTTT等等。
綜上所述,說通俗一點:
web前端分為網頁設計師、網頁美工、web前端開發工程師。
首先網頁設計師是對網頁的架構、色彩以及網站的整體頁面代碼負責;網頁美工只針對UI這塊的東西,比如網站是否做得漂亮;web前端開發工程師是負責交互設計的,需要和程序員進行交互設計的配合。
web前端需要掌握的有腳本技術javascript DIV+CSS現下最流行的頁面搭建技術,ajax和jquery以及簡單的後端程序等。 後端的話可供開發的語言有 asp、php、jsp、.NET 這些後端開發語言的話搭建環境都不一樣
實際的開發過程中,前端、後端開發人員的定位如下:
1)前端開發人員:精通JS,能熟練應用JQuery,懂CSS,能熟練運用這些知識,進行交互效果的開發。
2)後端開發人員:會寫Java代碼,會寫SQL語句,能做簡單的資料庫設計,會Spring和iBatis,懂一些設計模式等。
3.前端 Vs 後端有什麼區別?
ok,接近2000字了,應該是回答了你的問題了,如果有幫助到你,請採納哦,謝謝!
Ⅱ Web 應用程序 和 Web服務 有什麼區別
一、web應用程序(web application):web應用程序是透過http請求來存取web伺服器的網頁,或執行服務端網頁技術的程序,例如:ASP,ASP.NET,JSP,PHP。
二、web服務(web services):透過通訊協定SOAP或RESTful api提供資料交換和工作分享,這也是一種web應用程序,只不過是透過web服務來執行。
Ⅲ web後台開發有哪些技術和伺服器端開發有什麼區別
web後台開發可以選擇php、jsp、asp、Java等語言,後台的開發就是實現某些具體的邏輯或者增刪減改等功能,而伺服器端的開發主要是數據以及程序相應路由機制等等方向,兩者沒有太大的差距,主要都是針對數據交互,以及邏輯業務的實現
Ⅳ web伺服器和應用伺服器有什麼區別
web伺服器(web server)
web伺服器可以解析(handles)http協議。當web伺服器接收到一個http請求(request),會返回一個http響應 (response),例如送回一個html頁面。為了處理一個請求(request),web伺服器可以響應(response)一個靜態頁面或圖片,進行頁面跳轉(redirect),或者把動態響應(dynamic response)的產生委託(delegate)給一些其它的程序例如cgi腳本,jsp(javaserver pages)腳本,servlets,asp(active server pages)腳本,伺服器端(server-side)javascript,或者一些其它的伺服器端(server-side)技術。無論它們(譯者注:腳本)的目的如何,這些伺服器端(server-side)的程序通常產生一個html的響應(response)來讓瀏覽器可以瀏覽。
要知道,web伺服器的代理模型(delegation model)非常簡單。當一個請求(request)被送到web伺服器里來時,它只單純的把請求(request)傳遞給可以很好的處理請求 (request)的程序(譯者注:伺服器端腳本)。web伺服器僅僅提供一個可以執行伺服器端(server-side)程序和返回(程序所產生的)響應(response)的環境,而不會超出職能范圍。伺服器端(server-side)程序通常具有事務處理(transaction processing),資料庫連接(database connectivity)和消息(messaging)等功能。
雖然web伺服器不支持事務處理或資料庫連接池,但它可以配置(employ)各種策略(strategies)來實現容錯性(fault tolerance)和可擴展性(scalability),例如負載平衡(load balancing),緩沖(caching)。集群特徵(clustering—features)經常被誤認為僅僅是應用程序伺服器專有的特徵。
應用程序伺服器(the application server)
根據我們的定義,作為應用程序伺服器,它通過各種協議,可以包括http,把商業邏輯暴露給(expose)客戶端應用程序。web伺服器主要是處理向瀏覽器發送html以供瀏覽,而應用程序伺服器提供訪問商業邏輯的途徑以供客戶端應用程序使用。應用程序使用此商業邏輯就象你調用對象的一個方法 (或過程語言中的一個函數)一樣。
應用程序伺服器的客戶端(包含有圖形用戶界面(gui)的)可能會運行在一台pc、一個web伺服器或者甚至是其它的應用程序伺服器上。在應用程序伺服器與其客戶端之間來回穿梭(traveling)的信息不僅僅局限於簡單的顯示標記。相反,這種信息就是程序邏輯(program logic)。正是由於這種邏輯取得了(takes)數據和方法調用(calls)的形式而不是靜態html,所以客戶端才可以隨心所欲的使用這種被暴露的商業邏輯。
在大多數情形下,應用程序伺服器是通過組件(component)的應用程序介面(api)把商業邏輯暴露(expose)(給客戶端應用程序)的,例如基於j2ee(java 2 platform, enterprise edition)應用程序伺服器的ejb(enterprise javabean)組件模型。此外,應用程序伺服器可以管理自己的資源,例如看大門的工作(gate-keeping ties)包括安全(security),事務處理(transaction processing),資源池(resource pooling),和消息(messaging)。就象web伺服器一樣,應用程序伺服器配置了多種可擴展(scalability)和容錯(fault tolerance)技術。
一個例子
例如,設想一個在線商店(網站)提供實時定價(real-time pricing)和有效性(availability)信息。這個站點(site)很可能會提供一個表單(form)讓你來選擇產品。當你提交查詢 (query)後,網站會進行查找(lookup)並把結果內嵌在html頁面中返回。網站可以有很多種方式來實現這種功能。我要介紹一個不使用應用程序伺服器的情景和一個使用應用程序伺服器的情景。觀察一下這兩中情景的不同會有助於你了解應用程序伺服器的功能。
情景1:不帶應用程序伺服器的web伺服器
在此種情景下,一個web伺服器獨立提供在線商店的功能。web伺服器獲得你的請求(request),然後發送給伺服器端(server- side)可以處理請求(request)的程序。此程序從資料庫或文本文件(flat file,譯者注:flat file是指沒有特殊格式的非二進制的文件,如properties和xml文件等)中查找定價信息。一旦找到,伺服器端(server-side)程序把結果信息表示成(formulate)html形式,最後web伺服器把會它發送到你的web瀏覽器。
簡而言之,web伺服器只是簡單的通過響應(response)html頁面來處理http請求(request)。
情景2:帶應用程序伺服器的web伺服器
情景2和情景1相同的是web伺服器還是把響應(response)的產生委託(delegates)給腳本(譯者注:伺服器端(server -side)程序)。然而,你可以把查找定價的商業邏輯(business logic)放到應用程序伺服器上。由於這種變化,此腳本只是簡單的調用應用程序伺服器的查找服務(lookup service),而不是已經知道如何查找數據然後表示為(formulate)一個響應(response)。這時當該腳本程序產生html響應(response)時就可以使用該服務的返回結果了。
在此情景中,應用程序伺服器提供(serves)了用於查詢產品的定價信息的商業邏輯。(伺服器的)這種功能(functionality)沒有指出有關顯示和客戶端如何使用此信息的細節,相反客戶端和應用程序伺服器只是來回傳送數據。當有客戶端調用應用程序伺服器的查找服務(lookup service)時,此服務只是簡單的查找並返回結果給客戶端。
通過從響應產生(response-generating)html的代碼中分離出來,在應用程序之中該定價(查找)邏輯的可重用性更強了。其他的客戶端,例如收款機,也可以調用同樣的服務(service)來作為一個店員給客戶結帳。相反,在情景1中的定價查找服務是不可重用的因為信息內嵌在 html頁中了。
總而言之,在情景2的模型中,在web伺服器通過回應html頁面來處理http請求(request),而應用程序伺服器則是通過處理定價和有效性(availability)請求(request)來提供應用程序邏輯的。
警告(caveats)
現在,xml web services已經使應用程序伺服器和web伺服器的界線混淆了。通過傳送一個xml有效載荷(payload)給伺服器,web伺服器現在可以處理數據和響應(response)的能力與以前的應用程序伺服器同樣多了。
另外,現在大多數應用程序伺服器也包含了web伺服器,這就意味著可以把web伺服器當作是應用程序伺服器的一個子集(subset)。雖然應用程序伺服器包含了web伺服器的功能,但是開發者很少把應用程序伺服器部署(deploy)成這種功能(capacity)(譯者注:這種功能是指既有應用程序伺服器的功能又有web伺服器的功能)。相反,如果需要,他們通常會把web伺服器獨立配置,和應用程序伺服器一前一後。這種功能的分離有助於提高性能(簡單的web請求(request)就不會影響應用程序伺服器了),分開配置(專門的web伺服器,集群(clustering)等等),而且給最佳產品的選取留有餘地。
http://www.cndw.com/tech/communicate/2006041138650.asp
Ⅳ 什麼是web應用伺服器和WEB伺服器的區別是什麼
1.WEB伺服器:
理解WEB伺服器,首先你要理解什麼是WEB?WEB你可以簡單理解為你所看到的HTML頁面就是WEB的數據元素,處理這些數據元素的應用軟體就叫WEB伺服器,如IIS、apache。 WEB伺服器與客戶端打交道,它要處理的主要信息有:session、request、response、HTML、JS、CS等。
2.應用伺服器:
應用伺服器如JSP,處理的是非常規性WEB頁面(JSP文件),他動態生成WEB頁面,生成的WEB頁面在發送給客戶端(實際上當應用伺服器處理完一個JSP請求並完成JSP生成HTML後它的任務就結束了,其餘的就是WEB處理的過程了)。