這會如何影響性能? 我知道在客戶端,這是一個好習慣,但服務器端呢?Node.js:將代碼分區爲更小的函數 - 它好嗎?
-3
A
回答
0
是的,它非常好。即使它們不是熱的,它們也會進行優化,因爲優化小函數非常便宜。
優化成本與函數的大小成超線性關係,所以我們可以使用10行等優化10個函數的一般性語句比使用100行優化1個函數更快。
另見http://mozakai.blogspot.com/2013/08/outlining-workaround-for-jits-and-big.html
4
是的,它在服務器端很好。如果您對性能非常擔心,您需要停止使用函數,那麼您將不得不開始編寫程序集。
如果您實際上開始出現問題,配置文件,基準並進行適當修改。否則,請相信V8完成工作並擔心重要的地方的性能問題,例如文件訪問。
+0
我不是一個瘋子:)只是在服務器端,計算是相當大的(1-5秒)。所以開始擔心這個問題。在我看來,代碼在大量小函數上的劃分大大減緩了這個過程。 –
+1
@YuriChechulin:不應該。你能展示一些代碼,或者至少描述你如何使用函數嗎? – Ryan
相關問題
- 1. 將代碼拆分爲函數
- 2. 使用find()和end()函數鏈接代碼會更好嗎?
- 3. 很好的做法,代碼分區
- 4. 簡單的哈希函數,它是HTML id友好和區分大小寫
- 5. 關於TypeScript代碼的JSlint - 它還能教我編寫更好的代碼嗎?
- 6. 將長javascript元素代碼轉換爲更小的代碼
- 7. 對區分大小寫的數據庫有好處嗎?
- 8. 我可以寫更好的代碼嗎?
- 9. 如何將代碼分解爲更小的塊,將這些代碼塊轉換爲函數,然後在python中調用main中的函數?
- 10. 在區分大小寫的情況下創建的myisam表比不區分大小寫的執行更好嗎?
- 11. 使用它會更好嗎?在代碼之前?
- 12. 將HTML頁面拆分爲更小的塊並使用AJAX進行組合會更好嗎?還是將它作爲單個頁面更好?
- 13. 要將代碼分解到函數中嗎?
- 14. 將numpy數組中的連續區域拆分爲更小的連續區域
- 15. 將迭代函數更改爲迭代
- 16. VB.NET不區分大小寫;很好的區分大小寫?
- 17. 將Android源代碼移至區分大小寫的圖像
- 18. 提示計算 - 將數字更改爲小數點代碼
- 19. 將javascript代碼更改爲jquery代碼,它如何?
- 20. 將代碼分離爲函數並調用它並不會呈現
- 21. 如何將它分解爲函數
- 22. 擁有更少的代碼但更少清晰,更多代碼和更清晰的代碼會更好嗎?
- 23. 如何將反彙編的C代碼分解爲函數?
- 24. 如何將代碼拆分爲流星模板中的函數
- 25. 將PHP代碼實現爲函數
- 26. 將代碼分成塊是好習慣嗎?
- 27. 更好的代碼爲2 for循環?
- 28. Pytyments更好的格式爲py代碼
- 29. 在javascript中使函數變小會更好嗎?
- 30. Node.js使用回調函數更改HTML代碼
我不認爲這是一個明確的回答這個問題。更小的函數 - 或者更好的組織代碼 - 對程序員來說更好。 –