LINQ / lambda ile ilgili olarak - "Bilgisayarınıza okunabilir değil, insanlara okunabilen bir kod yazın" ifadesiyle bir şeyler söylediği bir yorum / yorum gördüm.
Bununla birlikte, bu ifadenin çok fazla yararı olduğunu düşünüyorum; ancak, yüksek verimlilikli iş paralelinde paralel çözümler kullanarak, geliştirme, dilbilgisi, OO, yönetmenlik yoluyla, usule, OO aracılığıyla .
Çok sayıda farklı ticari sektörde üretim kalitesi sistemleri ve hizmetleri sunmak için kodumu olabildiğince okunaklı ve tekrar kullanılabilir hale getirme ve GOF tasarım model ilkelerinin çoğunu benimseme konusunda kendimden gurur duydum.
Lambda ifadesiyle ilk karşılaştığımda şöyle düşündüm: “Bu da neyin nesi!?!” Hemen tanıdık (ve dolayısıyla rahat) açık bildirimsel sözdizimine karşı sezgiseldi . Ancak , iş yerindeki genç <5 yaş genç , cennetten gelen adam gibi durdu!
Bunun nedeni yıllarca bir bilgisayar gibi düşünmenin (sözdizimsel anlamda) çok kolay bir şekilde doğrudan kodlama sözdizimine (dilden bağımsız olarak) çevrilmiş olmasıdır. Yaklaşık 20 + yıl boyunca (benim durumumda 30 +) bu hesaplama zihniyetine sahip olduğunuzda , lambda ifadesinin ilk sözdizimsel şokunun kolayca korku ve güvensizliğe dönüşebileceğini takdir etmeniz gerekir .
Belki OP'deki iş arkadaşı kendiminkine benzer bir arka plandan gelmişti (yani birkaç kez bloğun etrafında) ve o zaman onlar için karşı sezgiseldi? Sorum şu: bu konuda ne yaptınız? Eşdüzeyinizi satır içi sözdiziminin yararlarını anlama konusunda yeniden eğitmeye çalıştınız mı, yoksa "programla birlikte olmadığınız" için onları kandırdınız / dışladınız mı? İlki muhtemelen iş arkadaşınızın düşünce hattınıza geldiğini görecekti, ikincisi muhtemelen LINQ / lambda sözdizimini daha da güvensizleştirmelerini ve böylece olumsuz görüşü daha da kötüleştirmelerini sağlayacaktı.
Kendim için kendi düşünme tarzımı yeniden eğitmek zorunda kaldım (Eric yukarıda belirtildiği gibi, önemsiz bir zihin değişimi değil ve Miranda'da 80'lerde programlamak zorunda kaldım, bu yüzden işlevsel programlama deneyimimden payımı aldım) ama bir kez bu acıdan geçtim, faydalar açıktı - ama daha da önemlisi - kullanımının aşırı kullanıldığı (yani kullanımı uğruna kullanıldığı), karmaşık ve tekrarlayan (bu durumda DRY ilkesini göz önünde bulundurarak).
Hala çok fazla kod yazan ancak teknik olarak da çok fazla kod yazması gereken biri olarak, bu ilkeleri anlamam zorunluydu, böylece öğeleri tarafsız olarak gözden geçirebilirim, lambda ifadesinin kullanımının daha verimli olabileceğini tavsiye ederim. okunabilir ve ayrıca geliştiricilerin oldukça karmaşık satır içi lambda ifadelerinin okunabilirliğini göz önünde bulundurmasını sağlamak için (bir yöntem çağrısının - bu durumlarda - kodu daha okunaklı, sürdürülebilir ve genişletilebilir yapar).
Yani birileri "lambda alamadım" derken ya da LINQ sözdizimi, onları temelde yatan ilkeleri anlamalarına yardımcı olmak için bir luddite markası olarak kullanmak yerine . Sonuçta benim gibi bir "eski okul" geçmişine sahip olabilirler.