Neden D?

0
FZ
C++'nın en büyük ustalarından olan Andrei Alexandrescu, şimdilerde enerjisini Walter Bright tarafından tasarlanmış olan D programlama dilini geliştirmeye harcıyor. Alexandrescu, çeşitli nedenlerle C++'ya eklenemeyen çoğu dil olanağının D'ye eklenmesine yardım ederek, bir anlamda D'yi C++'nın olmayı başaramadığı dil haline getiriyor.

Kendisine özgü heyecanlı tarzını içeren bu yazısında Alexandrescu, D dilinin neden önemli olduğunu ve belki de sizin için de uygun bir dil olabileceğini göstermeye çalışıyor.
Bu yazının İngilizce aslı ilk olarak ACCU'nun yayın organlarından CVu'nun Mayıs 2009 sayısında yayınlanmıştır. Bütün hakları yazarı Andrei Alexandrescu'ya aittir. Aynı yazı, bu çevirinin yapıldığı tarihten kısa bir süre sonra Doctor Dobbs Journal'ın sitesinde de yayınlanacaktır.

Devamı: http://www.ceviz.net/c-c/neden-d_a1290.html

Görüşler

0
Dite
Kısacası D ile daha az esnek, daha rahatsız ve daha "anormal" günler sizleri bekliyor :). Benim gördüğüm tek şey şu ilk kez kod yazacak insanlar rahat edecektir çünkü çoğu 100 satırda C++ ile kendi garba collectorlarını yazabileceklerinden bile habersiz olduklarından (ki ben burada nasıl yazılacağını göstermiştim) kullandıkları dilin "sihirli" bir şekilde işleri yapması hoşlarına gidebilir.

Böyle diller tıpkı isveç çakıları gibidirler. Üzlerinde pek çok alet vardır ama aslında hiç biri gerçekten işe yaramaz ve marangozlarda o yüzden çakılardaki testereyi kullanmaz :D :D
0
Tarık
Dillerin gelişimi ve tasarlanmaları, her insanın kavramlara farklı baktığı düşünüldüğünde aslında oldukça doğal bir süreç.

Her biri onlarca ayrı uzmanlık seviyesinde milyon çeşit programcı var. Kimileri yorumlayıcılar için betik yazıyor, kimileri sistem programlıyor vs.

Kimileri kullanıcı etkileşimi, rdbms, platform bağımsızlığı vs. için en yüksek noktalarda aşağılardan habersiz gezinirken, kimileri bilmemne donanımı için donanım yazılım arasında akrobasi yapıyor. Herkesin ihtiyaçlarına göre ayrı ayrı tasarlanmış tonla dil mevcut. VB gibi sadece piyasa koparmak için geliştirilmiş, güya iş kolaylaştırıcı dilleri saymazsak yüzlerce emeğin hakkını verek anlamlı dil dünyanın her köşesinde çayır çayır kullanılmakta.

Elbetteki D dilide geliştirilecektir. Hatta tarihte geriye doğru atıf yapmayı seven topluluklar, dil tasarımcıları için isimlendirme işi Z' ye kadar bile gider.

Tüm programcıların sayı sistemlerini, hafıza yönetimini, donanım mimarilerini, bitsel işlemleri, pointer aritmetiğini biliyor olabilmesi mümkün değil. Ve bilmiyorlar diye yerilmeleride normal olmaz. Piyasanın buna ihtiyacıda yok. Kararlı durumda çalışan onlarca hazır araç gereç var, adam neden varolan dururken yenisini yaratmaya zaman harcasın? Bu araçlar şimdi sistemi kasıyor olsa bile 4-5 sene sonra donanım gelişim ivmesine bağlı olarak artık kasıntıyı hissettirmeyecek derecede gelişip hızlanacaklar.

Ha bu arada birileri yine assembly kasacak, kendi çöp toplayıcısını, bellek yöneticisini, editörünü yazacak orası ayrı. Ama doğal olarak dillerin kendi içinde çatallaşarak çoğalması devam edecek. Etsinde zaten. Neticede mükemmel dil hiçbir zaman mevcut olamayacak. Zira beklentiler ve amaçlar giderek karmaşıklaşıyor. Bir zaman sonra en yüksek ile en aşağı seviye arasında tek kişinin aşamayacağı bir karmaşıklık uçurumu ortaya çıkacak. Doğal olanda budur zaten.

Bir zamanlar nasıl bir zihniyet ise bilmiyorum, java ve türdaşlarına sıcak bakmazdım, bir süre sonra ne gereksiz bir düşünce içerisinde olduğumu hissettim(sanırım o zamanlar, gereksiz dil kavgalarının çokça yaşandığı dünlerdi.). Zira javanın varlığı ya da yokluğu benim için ne önem arzeder ki? Ben kullanmak istediğim süpersonik aşağı seviye hacker araçlarına her daim özgürce ulaşabildikten sonra.

saygılar.
0
Dite
Tabii ki haklısınız örneğin build script'lerini perl ile yazabileceken neden gidip C++ ile yazayım ? Fakat genelde hep java yada diğer benzeri dilleri kullanların savunması budur:

"Bu araçlar şimdi sistemi kasıyor olsa bile 4-5 sene sonra donanım gelişim ivmesine bağlı olarak artık kasıntıyı hissettirmeyecek derecede gelişip hızlanacaklar."

Bu pek doğru değil. Neden ? Çünkü 4-5 sene sonra sistemlerin hızlanması ile beraber ihtiyaçlarda bir o kadar artacak daha komplex multimedia uygulamarı çıkacak bu durumda gene java kullananlar "4-5 sene sonra" diyecekler, 4-5 geçtiğinde ise gene bu durum tekrarlanacak "4-5 sene sonra..." :D :D :D
0
St
Uzun bir süredir Java ile uğraşmadığınızı zannediyorum :)

Zira yazılımcıların kendilerinden kaynaklanabilecek hataları (örneğin: memory management) en az indirip işlerine güçlerine bakabildikleri, ve yığınla iş için çok kapsamlı ve sağlam kütüphanelere sahip olan Java, kendine ihtiyaç duyulan noktada en iyi performansla çalışmaya devam ederken, azıcık daha fazla hafıza ve azıcık daha fazla işlem gücü harcamak karşılığında şirketlere on binlerce insan*saat kazandırıyor.

Tarık'ın yorumuna sonuna kadar katılıyorum. Sizin beklentilerinizi, ihtiyaçlarınızı karşılıyorsa kullandığınızı dilden zevk almaya devam edin. Kısır tartışmalarla zaman harcayacağımıza sahip olduklarımızı geliştirmeye bakalım.
0
mustafa_
Görüş belirtmek için giriş yapın...

İlgili Yazılar

Patoloji Bilgi Sistemi.. Geliştiricisi bir Türk.. veee GPL!

ykarslioglu

Türkiye'de görenlerin koltuklarını kabartan çalışmalar yapılıyor. PATHOS-WEB FREE adlı Anatomik Patoloji ve Sitoloji Bilgi sistemi tamamen patoloji uzmanlarının ihtiyaçları düşünülerek tasarlanmış bir sistem. Mart 2005 tarihinden itibaren SourceForge'da açık kaynak kodlu, GPL lisanslı bir proje olarak Türkçe ve İngilizce versiyonları ile Patoloji Bölümlerinin hizmetine sunuldu. Yazılım, Türkiye'de, aralarında büyük üniversite hastanelerinin de bulunduğu 20'den fazla merkezde, yıllardır büyük bir başarı ile ve güvenle kullanılıyor.

C++ : `Standard Library´nin Ötesine Geçin

FZ

C++ programlama dilinde ustalaştıktan sonra çoğu programcının yaptığı ilk iş nedir? Standart fonksiyon kitaplığının dışındaki fonksiyon kitaplıklarını öğrenmek. Elbette standart C++ fonksiyon kitaplığının içinde karakter dizisi fonksiyonları, G/Ç kanalları, `container´lar, öteleyiciler (iterators), algoritmalar, vs. mevcuttur ancak modern programlama dünyasında en çok kullanılan kavramlar standart olarak gelmez: ağ programlama, GKA (Grafik Kullanıcı Arayüzü), eşzamanlılık, vs.

C++ in a Nutshell kitabının yazarı Ray Lischner, Blitz++, MTL (Matrix Template Library), ACE (Adaptive Communication Environment), Loki ve Boost gibi kitaplıkları ele aldığı bu yazısında C++ programcısının verimliliğini artırabilecek önemli noktalara dikkat çekiyor.

İşletim Sistemleri Videoları

DemensMagnet

Birçok dağıtımın ve arada Vista'nın da videolarının bulunduğu http://osvids.com herkesin yer imlerinde bulunması gereken bir site. Bu yazı yazılırken SUSE Linux Enterprise Desktop 10 video arşivine eklenmişti.

OpenAFS: Dağıtık Dosya Sistemi

acemi_

openafs.org: Dosyalarımı tek bir sunucu makinede toplayıp Internet'e bağlı her makineden dosyalarımı rahatca kullanabileceğim bir çözüm arıyordum. Bu işi, bir müddet Samba ile yapmıştım ama performansından pek memnun kalmamıştım. Güvenlik konusundaki kötü ününden dolayı da NFS kullanmaktan çekiniyordum.

Steganografide Yeni Ufuklar

FZ

Güvenlik ve veri gizleme konusunda çalışanların ilgisini çekecek yeni bir program geliştirildi. Columbia Üniversitesi'nde yüksek lisans yapmakta olan Rakan El-Halil tarafından geliştirilen Hydan ile elinizdeki metni çalıştırılabilir bir dosya içine gizlice yerleştirebiliyorsunuz ve sonuç olarak ortaya çıkan dosya orjinali ile aynı boya sahip ve aynı şekilde çalışır bir dosya oluyor.