B2B研究院(微信公眾號B2B-College)按:當傳統企業向B2B電商轉型時,電商系統的建設就變成了橫在企業家面前的一道難關。在B2B研究院的咨詢活動中,我們多次遇到企業家詢問電商系統該選擇哪種語言棧,也聽到不少企業家抱怨前期語言棧的選擇拖累了現在的業務發展。那么各語言棧是否真有優劣之分?縱觀市場上各家電商企業,其系統開發語言無外乎PHP、.Net、Java三種。下面我們借助金庸武學典籍對這三種技術平臺進行華山論劍。
“天下武功,無堅不摧,唯快不破。”如同辟邪劍法追求快劍極致一樣,創業企業和大多數轉型企業在初期需要得是一套能夠最快驗證商業模式的電商系統。市面上大量開源PHP電商系統的存在,腳本語言快速開發的特性,以及傻瓜式的LAMP/LNMP web開發工具,使得PHP成為大多數企業前期自研電商系統時的最常見選擇,比如美菜網商城。當然也要看到,在實現了初期快速開發、快速交付的同時,PHP電商系統通常都會造成如下兩個痛點: 1. 代碼和數據重度耦合,但凡后期業務邏輯上有一點變動,都可能導致系統代碼大面積修改,甚至重構;2 缺乏大規模系統框架性設計思想,導致電商系統難以擴展或對接其它外部系統。與此同時,由于大量初創公司的出現,吸收了市場上多數PHP開發人才,導致PHP技術棧企業發展到一定階段以后,會發現很難以一個合理的價格招到足夠的PHP開發。如同辟邪劍法自帶的自殘光環一樣,以上問題都是PHP語言棧企業所必須經歷之痛。
猶如少林執武林之牛耳,微軟在全球軟件行業也曾一時風頭無兩。為了推廣.Net語言棧,微軟提供了大量的技術工具來降低.Net編程門檻,包括號稱世界上最強大的IDE工具VS。依托于微軟的技術優勢,.Net確實如少林易筋經一樣,成為了一套功能強大的開發語言,吸引了一大波電商企業,典型的有攜程網、藝龍網,找鋼網。如果把典型擴散到B2C電商領域,則還能看到京東、大眾點評等。近十年隨著軟件開源浪潮的強勢來襲,在各種開源技術和Linux平臺開發需求的沖擊下,.Net語言棧因其長期堅持閉源和只支持windows開發平臺而逐漸勢弱,如同修煉了易筋經的少林僧人,雖內功深厚,亦無法抵御外界的槍林彈雨。前文提到的京東、大眾點評、找鋼網數年前就已開始從.Net轉投Java。可謂成也微軟、敗也微軟。
逍遙派的北冥神功,以其善同化各派內力并增強己身的特性聞名于金庸武俠世界。這一特性也正是當今Java語言棧的真實寫照。時間回退到十余年前,即使在IBM和Sun(今Oracle)的扶持下,Java僅能勉力與C語言家族和.Net相抗衡,且以性能差而著稱。隨著對開源浪潮的持續擁抱,Java在兼容并蓄各類新技術中得到不斷增強和擴充,新的java開源框架和開發工具層出不窮,市場上也不斷有Java研發人才的新鮮血液補充進來。再加上Java適合大規模系統開發的特性,使得Java語言棧成為如今大多數電商企業在開發大型電商系統時的首選。當然,不確定性和不穩定性是開源技術的天生缺陷。在享受開源技術的福利時,開發人員也需要對新技術的深入理解和不斷試錯來真正將新技術歸于己身。
在人類編程語言的世界里,每種存活下來的編程語言都有其各自適合的場景,并沒有絕對的優劣之分。每家企業都應根據自身所處的發展階段和行業特性來合理規劃IT系統建設,這包括了技術團隊的組建、自研軟件和商業化軟件的分配、各類語言棧的選擇等等。就B2B電商系統來講,java體系的完備與開源使之相較另外兩種語言有較大優勢。紛至科技與找鋼、海爾、京東等著名企業合作設立的B2B研究院,在企業內部信息化和外部電商化建設方面積累了大量的實際經驗,能夠以咨詢方式為B2B企業在轉型中遇到的IT難題提供有效的方案建議。
作者簡介:
劉祺,紛至科技聯合創始人,B2B研究院發起人之一;原天旦資深架構師、IBM TSS大中華區技術專家團隊成員,在系統架構、企業服務領域有著深刻的洞見及實踐經驗,曾為人行、交行、太平保險等眾多企業提供技術講座。