Cha*_*ion 27 linq naming-conventions
当我阅读使用的代码时,Select我认为"select-all-where".当我阅读使用的代码时,Map我认为"这个到那个"或"适用于所有人".我不能成为唯一一个觉得这个名字Select令人困惑的人.
Meh*_*ari 37
它与功能语言的地图完全相同.它被命名的原因Select是它被设计为LINQ的一部分,它使用类似SQL的关键字.
from item in collection
where item.Value == someValue
select item.Name
Run Code Online (Sandbox Code Playgroud)
被翻译成:
collection.Where(item => item.Value == someValue)
.Select(item => item.Name)
Run Code Online (Sandbox Code Playgroud)
如果Select命名的话会有点不一致Map; 就像是:
collection.Filter(item => item.Value == someValue)
.Map(item => item.Name)
Run Code Online (Sandbox Code Playgroud)
实际上,许多人在没有听说过函数式编程的情况下使用LINQ.对于他们来说,LINQ是一种检索数据对象并轻松查询它们的方法(就像SQL查询一样).对他们来说,Select并且Where完美无缺.远远超过Map和Filter.