Kitabı D'nin 2.074.0 sürümü destekler duruma getirdim:
http://ddili.org/ders/d/index.html
Hem bir iki yenilikten bahsettim hem de bir sürü düzeltme yaptım ama ama bütün kodları yeniliklerden yararlanacak gibi değiştirmedim. Aklıma gelen iki yeni özellik:
- readf gösterge (işaretçi) gerektirmiyor değişken referansı da alabiliyor:
readf(" %s", &a);
readf(" %s", a); // üsttekiyle aynı şey
- Düzen dizgisi kullanan bütün işlevler düzen dizgisini artık şablon parametresi olarak da alabiliyorlar:
format("%s %s", a); // Hâlâ geçerli olan eski yöntem
format!"%s %s"(a); // Yeni yöntem
Yeni yöntemin yararı, düzen dizgisini derleme zamanında doğrulaması. Örneğin yukarıda iki değişken bekleyen düzen dizgisine karşılık tek değişken kullanıldığından kod derlenemez. Hatayı eski yöntem de yakalar ama bunu ancak çalışma zamanında yaptığından fazla geç kalmış olabilir. Hele bu gibi düzen dizgilerinin hata bildirimlerinde kullanıldıklarını düşünürsek, bu gibi yanlışlıklar programın geliştirilmesi aşamasında gözden kaçabilir ve ancak kullanıcıların elinde patlayabilir. :) Yeni yöntem o yüzden çok daha iyi.
Şablonların her farklı parametre değeri için farklı derlenmesi gerektiğinden yeni yöntemin program boyutunu az miktarda arttırma olasılığı var ama hemen hemen hiçbir durumda önemli olmamalıdır. Ek olarak, programın çalışma hızına hiç etkisi yok.
Ali
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]