2017-01-25 124 views
6

在IT學校,我對軟件開發的前端和後端的確切內容有着相互矛盾的答案。我搜索了包括這個網站在內的網站,並詢問了幾位有見識的人,我得到的核心答案是任何在Web服務器上運行的東西都是前端,而在應用服務器或數據庫服務器上運行的任何東西都是後端。所以前端=站點的外觀和後端=網站的工作方式,但如果.NET窗體和asp.net窗體都是前端開發或前端和後端的組合,我會得到相互衝突的答案。前端與後端定義

要問一個具體的問題,用asp.net的形式,aspx代碼是前端和這些應用程序後端後面的c#代碼嗎?或者是asp.net所有的前端?謝謝。

+4

完全基於...步行到街頭的意見 - 在你的左邊是所謂的「左端」,在你的右邊「右端」 ......現在爭論如果你之間的空間是街道的「左端」或「右端」,則右邊的人:) –

+2

由於豐富的***客戶端框架***(如Angular和**),很難說這些日子。 *無服務器架構***像FireBase。 – Win

+1

「前端=網站的外觀和後端如何=使網站工作」是的,非常多的就是這樣。 – DDan

回答

6

在web應用中,我通常使用以下定義:

前端:上客戶端運行(用戶)計算機

後端:運行在服務器

在傳統的ASP應用程序中,所有標記(Razor)在被髮送到客戶端之前在後端上被轉換爲HTML,所以絕大多數工作都在那裏完成。實際的HTML解析(由瀏覽器完成)和任何JavaScript仍然是前端的一部分。

一般,前端是UI和它的邏輯,和後端在程序/系統(業務邏輯,數據訪問等)

+0

本質上,您也可以將服務器端代碼分解爲「前端」和「後端」。你不能嗎? – RBT

+0

@RBT在某種程度上,當然。你要小心,因爲理解ASP的一部分是理解幾乎所有事情發生在後端(即服務器)上。 – BradleyDotNET

5

通常的其餘部分 - 一切在服務器上運行時被認爲是後端,瀏覽器上運行的所有內容都是前端。

通常 - 後端代碼會生成一個將在瀏覽器上運行的代碼,這是一個前端代碼。

asp.net被認爲是後端,如果它生成html/css/javascript - 這些將在瀏覽器上運行,因此它們是前端。

+0

即使在服務器端開發中 - 我一直認爲* .aspx,* aspx.cs和* .js文件構成前端。域服務,業務邏輯層,數據訪問層,ORM(例如實體框架),數據庫構成後端。這是不是一個正確的理解? – RBT

+1

@RBT JS絕對是前端,aspx.cs絕對後端(所有服務器); aspx文件本身很奇怪,因爲它們在後端進行處理,並且其結果在前端呈現(如HTML) – BradleyDotNET

+0

* .aspx實際上是一種奇怪的物種,因爲它們還包含使用'<% %>'標記的服務器端代碼:) – RBT

1

這取決於幾件事情。即你指的是什麼應用程序(即桌面應用程序,Web應用程序,API,移動應用程序),因爲這些應用程序中的每一個都可能在前端/後端類別下組合稍微不同的事物。

在web應用程序中,我們將應用程序代碼的任何UI(客戶端公開)部分稱爲前端。因此,例如,所有HTML,jS,css和其他用戶界面(視圖)相關文件都應該在前端的保護下(因此前端開發人員 - 跨越橫跨頭髮的男士/女士)瀏覽器兼容性等)

業務邏輯,數據操縱和處理(模型,控制器,數據庫對象等)通常被認爲是後端

可以簽出維基百科(https://en.wikipedia.org/wiki/Front_and_back_ends