D'de biyoinformatik çalışması yapıyorum. Benim için D ile ilgili en önemli şey, deneklere çok düz bir yaklaşım benimsemesi ve getirileri azaltma ilkesini tanıması.
Sıfır genel gider prensibine sıkı sıkıya bağlı olan C ++ 'dan farklı olarak, D dili daha kullanışlı hale getirirlerse küçük bir performans / alan maliyeti olabilecek özelliklere izin verir. Bunlar çöp toplama, her sınıf için bir izleme nesnesi, çalışma zamanı türü bilgisi vb.
Ruby, Python, PHP, vs'den farklı olarak, komut dosyası dillerinden daha az dinamik ve programlaması biraz daha zor olsa da D neredeyse C kadar hızlı olmaya çalışır.
Sonuç, hem geliştirme süresi hem de yürütme süresi eşit olarak önemli olduğunda, benim alanımda çoğu zaman en uygun olan bir dildir.
Benzer şekilde, D, emniyet ve esnekliğe karşı çok düz bir yaklaşım sergilemektedir. Programcıların temelde ne yaptığını bildiklerini, ancak hata yaptığını varsayar.
C ve C ++ 'dan farklı olarak, kodunuzdaki her yerde işaretçiler, güvenli olmayan dökümler, manuel bellek yönetimi vb. Kullanmak istemediğinizi varsayar, çünkü hataya eğilimlidirler ve çoklu geçiş yapmak istemediğinizi varsayar. boyutlandırılabilir dizileri kullanmak için bağlandığınızda sayfalık şablon hata iletileri.
Java ve diğer esaret ve disiplin dillerinden farklı olarak, D bazen işaretçilerin, güvensiz dökümlerin, manuel bellek yönetiminin, vb. gizli kod. Ayrıca, bir diziyi sınırların dışına çıkarabileceğinizi ve bir diziye erişebileceğinizi, ancak programcının herhangi bir durumda güvenlik ve hız arasında hangi dengenin yapılması gerektiğini en iyi bildiğini varsayar. Bu nedenle, dizilerin sınır kontrol edilip edilmediği basitçe bir derleyici anahtarıyla belirlenir.