LINQ功能非常強大,可以在代碼中高度使用。但使用它最好的做法是?經常使用LINQ是不是很好?
2
A
回答
13
當它使代碼更清晰和更簡單的維護時,以及當您不處於任何LINQ的性能對您的需求而言太慢的情況下時,使用它是個不錯的主意。
您尚未指定您是在討論LINQ to Objects還是LINQ to SQL等,但我知道有些情況下後者的對於某些高流量網站來說太慢了,而且他們已經移動了關閉它......但只有在顯示爲之後才成爲問題。與對相同邏輯進行「硬編碼」相比,LINQ to Objects通常具有非常小的性能優勢,但這甚至不太可能成爲真正的問題。
當然LINQ可以肯定被過度使用,我見過的人達到了LINQ解決方案時,我們還有實現同樣的事情更合適的方式 - 所以不要嘗試可能在任何地方使用它可以。只要在明確幫助的地方使用它。
4
linq的聲明性質是其最強大的特性之一。幾乎總是這會讓你的代碼更具可讀性和可維護性,所以是的,除非有令人信服的性能原因,否則我認爲這是最佳實踐。
相關問題
- 1. 使用變量是不是很好()
- 2. 使用大量IBOutlets是不是很好?
- 3. 使用formbuilder是否很好?
- 4. 使用lambda表達式而不是foreach是不是很好?
- 5. 在控制器中使用linq查詢是不是很好的做法?
- 6. 服務不是很好
- 7. print_thumbnail是不是很好表現在WordPress
- 8. 在循環中使用`fwrite`是不是很好?
- 9. 網站使用自己的API是不是很好的做法?
- 10. 在H2O上使用笑臉庫是不是很好的想法?
- 11. 在PHP中使用exec是不是很好的做法?
- 12. 使用「視圖」進行分組是不是很好的做法?
- 13. 在使用Linq EF時有很多selectMany語句是不好的做法嗎?
- 14. 使用嵌套異常是一種很好的做法嗎?
- 15. 這是一個很好的使用ActionBar?
- 16. Linq Distinct不是很不一樣
- 17. 如果使用Mercurial或Git,經常提交文件是否好?
- 18. 讓每個常量字符串都被引用是不是很好的做法?
- 19. 是不是很好的做法,或者至少不是不好的做法,不要使用限制
- 20. 是不是很好用2個不同的數據庫
- 21. Android:不是經常調用saveInstanceState嗎?
- 22. 是不是很好調用視圖內的視圖在sql
- 23. 在onPause()方法中調用GC是不是很好的做法?
- 24. 的jQuery + parseInt函數()不是打很好
- 25. 爲什麼這不是很好打字?
- 26. asp.net mvc3 customErrors不是很好的
- 27. 經常使用的LINQ返回方法
- 28. 抓住一個更一般的異常類型是不是很好?
- 29. 使用Linq而不是foreach
- 30. 使用一個很好的SQL查詢而不是PHP代碼
你能說出一些缺點嗎? –
實現什麼的最佳實踐? LINQ可以增加可讀性。 –
@AshBurlaczenko從技術上講,它比手工編寫的代碼慢一些:-)而LINQ創建新的集合,而通常你可以以破壞性的方式重新使用源集合。但最終,除非你真的遇到速度問題,否則LINQ是一條可行的路 – xanatos