我有一個關於SPA的一般性問題。也就是說,SPA是否僅適用於Dashboard類應用程序?或者我們可以將SPA用於任何規模的企業級應用程序開發(比如ERP解決方案)嗎?企業級系統的單頁應用程序
UPDATE:
請查看以下鏈接此話題約翰·爸爸,丹Wahlin和其他偉大的討論....
Single Page Application for Enterprise Level Systems
我有一個關於SPA的一般性問題。也就是說,SPA是否僅適用於Dashboard類應用程序?或者我們可以將SPA用於任何規模的企業級應用程序開發(比如ERP解決方案)嗎?企業級系統的單頁應用程序
UPDATE:
請查看以下鏈接此話題約翰·爸爸,丹Wahlin和其他偉大的討論....
Single Page Application for Enterprise Level Systems
AngularJS是我也用過的一個非常熱門的項目,但你回到擁有JavaSc中的所有邏輯如果項目變得龐大(這是企業),這會增加複雜性和痛苦。
經驗法則是:軟件解決方案應該越複雜,企業越應該使用專業工具和靜態語言(Java/C#)。
維護是軟件使用壽命的80%。把它放在JavaScript中可能會非常棘手。在腳本語言中,重構,結構和開發人員獨立性有點困難。
有些使用情況的SPA是一個好辦法:
1.當你想爲所有類型的移動設備的高性能應用程序(如果您不能負擔本地開發,如果你不想支付費用到蘋果,谷歌,微軟當你賣東西)。
2.希望儘可能吸引用戶的新聞網站(www.usatoday.com就是一個很好的例子)。
3.社交網絡你必須盡一切努力讓用戶保持活躍(例如:Facebook主要是SPA)。
SPA的底線=最快的網絡性能&最好的用戶體驗。
偉大的問題。我真的在SPA開發了一款企業移動應用程序。我從經驗中學到了很多東西。如果你喜歡,該應用程序有大約40個模塊或應用程序。每個應用程序有約3-6的意見。我很早就意識到,傳統的Web架構不會削減它,記住它是一個移動的第一個項目,所以我開始做一個spa。
有這麼多的東西,還不夠或者在這裏表達,但它並不那麼難。這裏有一些原則,我相信你必須堅持:
避免沉重的框架,他們得到太多,他們來來去去,所以不要嫁給他們 香草JavaScript是你的朋友在很多方面。所有瀏覽器都與支持相同標準,Apis等非常一致。 利用本地存儲緩存數據以及標記 不要一次下載大塊標記 不要創建不必要的聊天應用程序localStorage和indexDB是您的朋友 創建一種機制,在每次加載應用程序時只提供修改後的標記內容 保持您的DOM小,太多元素,甚至隱藏創建一個呆滯的機器餓死內存。 使用appcache離線,但瞭解它的怪癖
我一般大部分的企業應用都可以用100kb以下的JavaScript來完成,那就是整個應用程序。我的DOM通常少於100個元素在視圖中禁止長列表或表格。我的所有應用程序都在不到1秒的時間內加載,並在後臺加載子模塊內容。
+1分享您的真實體驗。 – Sampath
thnx我實際上正在努力完成一本書,說明我這樣做的方式。希望它能在十二月之前上市,時間會證明。 –
只有某人使用Angular將單個頁面應用程序構建爲一個成功的ERP時,纔會有明確的答案。
民用網站框架包含一個詳細的樣本[1] [2],製造商探索這個方向。這似乎不是一個完整的解決方案,但可能會更接近架構。
[1] http://www.civilian-framework.org/doc-samples.html#crm
[2] https://groups.google.com/forum/#!topic/angular/Q3GrhAH39AU
對於我谷歌達特+聚合物聲稱用於ERP發展。 但谷歌正在用Dart,Flutter,Dartino做所有事情,僅僅是 被遺棄的Polymer.Dart和Teh Dart Editor。
使用谷歌框架是一個糟糕的主意,因爲他們往往會不斷停止他們的工作。 – TedOnTheNet
它主要取決於你使用的工具/框架。如果響應/用戶體驗速度是最重要的,則SPA特別好。如果情況並非如此,那麼SPA可能不會帶來額外的複雜性。 – zmirc
@zmirc是的,我想用AngularJs做那個。你的想法是什麼(我上面也分享了一個鏈接)? – Sampath
@zmirc假設我可以處理這種實現的複雜性。但是我的問題是,是否適合通過使用Javascript框架開發這樣一個大型應用程序? – Sampath