線上服務咨詢
您當前位置>首頁 » 新聞資(zī)訊 » 網站(zhàn)建設 >
開發大型web應用,你(nǐ)會選擇什麼作為後端語言?
發表時間:2013-12-31
發布人:葵宇科技
浏覽次數:28
本文(wén)是轉載,原文(wén)地址:http://www.iteye.com/news/25729
近日,Hacker News中(zhōng)有一個(gè)問(wèn)題引起了廣泛的讨論:如(rú)果要開發一個(gè)大型的web應用程序,你(nǐ)會選擇什麼編程語言來進行後端開發,要考慮到開發時間、成本和(hé)可(kě)維護性。
以下(xià)是部分回複:
1. Java
盡管不像Rails/Django那麼時髦,但是你(nǐ)将得益于衆多高性能、可(kě)靠的Java庫,更不用說那些偉大的分析工具。
meddlepal 寫道 我同意,我會選擇Java來開發核心功能,對于一些非核心功能,我可(kě)能會選擇Groovy或JRuby。
Jersey/JAX-RS非常不錯,但我感覺有些風險,我更傾向于Play2。
Java/JVM生态系統中(zhōng)有很多非常積極的東西,如(rú)偉大的虛拟機、庫、龐大的社區以及大量的開發者。這是開發一個(gè)大型web應用真正要考慮的。
2. .NET
Avalaxy 寫道 比起Java平台,我更傾向于ASP.NET MVC(比如(rú)C#)。.NET棧是非常強大的,我個(gè)人認為比Java強得多,并且ASP.NET MVC框架包含了大量RoR中(zhōng)的優秀特性。
ralphael 寫道 我投.NET、MVC和(hé)SQL Server一票。
這個(gè)平台上擁有大量的示例程序,況且stackoverflow.com就是基于.NET的。
spobo 寫道 .NET絕對不是一個(gè)壞的選擇。
過去幾年,微軟已經真正到達了頂峰,它們最新的框架非常易于開發者掌握和(hé)使用,微軟同時也開始基于.NET來推動(dòng)其開源項目,比如(rú)codeplex和(hé)NuGet,微軟同時還是jQuery的核心貢獻者。微軟最近還發布了WebAPI,為開發者創建REST-ful JSON/XML應用提供了一個(gè)相當平緩的方式。
3. PHP
interwho 寫道 對我個(gè)人而言,我會選擇PHP:
- 更快地解決事情;
- 網上有大量的類可(kě)以使用,這讓事情變得簡單;
- 個(gè)人認為,比其他一些語言更容易維護;
- 可(kě)在幾乎所有的網站(zhàn)托管服務器(qì)中(zhōng)運行,價格便宜;
- 可(kě)擴展。
4. Ruby或Python
olalonde 寫道 Ruby/Rails和(hé)Python/Django似乎是YC初創企業(yè)最常見的選擇,它們在開發時間、成本、可(kě)維護性方面具備一定的優勢。
spdy 寫道 Python/Django或Ruby /> netgineer 寫道 在面向服務架構中(zhōng),我會選擇Ruby。在不同系統之間使用HTTP/JSON用于内部API。如(rú)果性能是瓶頸,你(nǐ)可(kě)以考慮在部分系統中(zhōng)使用一個(gè)稍低級别的語言(Java、Haskell、Go、Erlang等)。
Rails使SOA開發更加容易和(hé)快速,除了API客戶端,我沒有其他好的解決方案。
3pt14159 寫道 Python(Tornado或Twisted)+ Riak。為什麼呢(ne)?你(nǐ)可(kě)以輕松擴展,并且有大量的庫,開箱即用,并且你(nǐ)也無須擔心你(nǐ)的數據庫受影響。
5. Clojure
Zak 寫道 我傾向于Clojure,因為:
- 屬性清單和(hé)類似于繼承的行為對于映射和(hé)記錄是非常自然和(hé)方便的。我認為,這些特性将有益于大型應用程序。
- Clojure可(kě)以抽象數據庫,保存和(hé)執行關(guān)系模型比ORM更加直接。
- Clojure可(kě)以利用Java庫,這意味着你(nǐ)在實現一些常用功能時會非常輕松。
6. 選擇喜歡(擅長)的語言
spobo 寫道 使用一個(gè)更高級的編程語言,同時使用标準接口與前端進行通(tōng)信。如(rú)果你(nǐ)為後端構建了一個(gè)REST API,使用什麼語言是不重要的。你(nǐ)可(kě)以随時更換更高性能的部件,也可(kě)以使用不同的語言來開發不同的功能。
如(rú)果你(nǐ)想降低開發成本,就使用大多數開發者已選擇的生态系統,Python、PHP、Ruby、Java、.NET都可(kě)以,這些語言都有一些偉大的框架,幫助你(nǐ)進行快速開發。
但是,不管你(nǐ)做什麼,不要強制讓你(nǐ)的開發人員去使用不喜歡的語言。聽從你(nǐ)的開發團隊,要相信每種語言都有很大的潛力。