İçindekilerGirişİndex
YukarıİlkÖncekiSonrakiSon
Geriİleri
Yazdır
Onder Teker
on_der_tek_er@yahoo.com

Bir Dili Ne Zaman Bırakmalı?

Yazılım geliştiricilerini diğer meslek erbaplarından ayıran en önemli özellik bence kullandıkları teknolojiye duydukları derin muhabbettir. Hemen her programcı bir yazılım dilini veya ortamını sever. Sevmekle kalmaz başkalarına sevdirmeye çalışır. Diğer dilleri savunanlara karşı sürekli tartışma oramında bulur kendini. O yüzden C'ci Delphi'ci Java'cı PHP'ci gibi sıfatlar konur geliştricilerin adlarının önüne. Üstelik bu, sadece o dilde uzman olmalarından değil, o dili sevmelerinden ve adeta militanı olmalarından kaynaklanır. "Java Evangelist" diye enteresan bir terim var. Bu insanlar, tıpkı bir dini yaymak için dünyaya yayılmış misyonerler gibi bu dili genç kuşaklara sevdirmek için uğraşıyorlar. Hindistatanda oraya giden Hristiyan misyonerlerden daha başarılı oldukları aşikar.

Kaç Dil Biliyorsun?

Teorik olarak bir insanın sadece bir dili bilerek çalışma hayatını sürdürmesi mümkündür. Ama pratikte bir çok progrmacı bir den fazla dili öğrenmek durumunda kalır. Ülkemizde üç dört dil bilen programcı makbuldur hatta. İş ilanlarında 'onu bilen şunu bilen ötekinden de azıcık anlayan' insan aranır. Gelişmiş ülkelerde bu böyle değildir. Java Programcısı yerine Java Swing programacısı veya Java Applet programcısı diye ilanlar verilir. Ama ülkemizde herşeyi bilmek bir dili bilemkten yeğ tutulur. Bu durumda bir insanın sevdiği dille program yapması her zaman mümkün olmaz. Hatta bazen en sevmediği dilde kod yazmak zorunda kalır. Bir işi bırakıp diğerini bulmak kolay olmadığı için. İş yerinde bir dilde yazarken, akşamları ve haftasonları hobi olarak diğerinde yazan çok sayıda programcı var.

Bazen programcılar çok sevdikleri dilin eskidiğini görürüler. Yeni bir dil çıkar ve gelişmelere karşı yeni dilin verdiği yanıt daha güzeldir. Sen yine kendi dilini seversin ve yenisine karşı savunursun ama giderek işinin zorlaştığını görürüsün. Bir çok Java'cı C++'tan gelmedir, örneğin. C++'a zaten C'den geçilmişltir. Pascal'cılar Dephi'ci oldular Basic'çiler Visual Basic'çi ve ASP'ci. Herkes yeni dillerden kendi sevdiği dile en yakın olanına geçme eiğilimdedir. C# zamanında çıksaydı belki C++'tan Java'ya geçenler C#'a geçecekti. Java'ya geçmeyip hala C++ yapanlar için de C# hala güçlü bir olasılık. Java'cıları .NET'e taşımak için J# diye bir dil çıkartılmış. VB'ciler açıklta kalmasın diye VB.NET var. Bütün bu çabalar bir dili seven insanların daha rahat diğerine geçmesini sağlamak için. Java'nın yeni bir platform olmasında rağmen C++'a benzemesi tesadüfi değil kastidir. Hem bildiği hem sevdiği sözdizimine yakın dile geçiş herkes için daha kolaydır.

Ayrılık Vakti...

Peki ne zaman bir dili bırakmalı? Bu konuda insanların tutumu üçe ayrılıyor. Yeni bir dile hemen geçenler. Yeni dil başarısını kanıtlayıp yaygınlaşınca geçenler. Ancak eski dili kullanamaz hale gelince yeni bir dile geçenler. Bu konuda karar genellikle mantık zemininde olmaz. Her şey hissidir. Bir geliştiricinin bir dili bırakması bir insanın eşinden ayrılması kadar zordur bazen.

Bu konuda yapılan temel yanlışara değinmek istiyorum. Birincisi yeni bir dil çıkınca eski dilin savunucularının hemen olumsuz tepki vermesi. Java çıktığında C++'çıların bir ksımı Java'ya balıklama atlarken bir kısmı çok kötü bir dil olarak gördü. Java'ya olumsuz yaklaşanların çoğu Java'yı hiç bilmeden önyargı sahibi oldular. Başta yavaşlığı olmak üzere bir çok özelliği çeşitli çevrelerde eleştirildi durdu. Bir kısmı ticari kaygılarla bir takım çarpıtma çabaları da olsa çoğu, insanların samimi tepkileriydi. Bir dili bilmeden, o dille program yapmadan kimsenin eleştiri yapmaya hakkı yoktur. Sonunda bilip bilmeden tepki verenler mahçup oldular. Java giderek yaygınlaştı, kendini bir çok konuda ispatladı.

C# çıktığı zaman bu sefer de Java geliştiriciler bu dile karşı cephe aldılar. Platforma bağımlılığından tutun taklitçiliğine kadar bir çok konuda C#'a eleştiri yönelttiler. Bunların da çoğu C#'ta hiç kod yazmamış veya sadece bir kaç satır yapıp bir proje geliştirmemiş insanların yorumlarıdır.

Herkese önerim, bir dili bilmeden kesinlikle bir yargı sahibi olmayın. Yeni bir dil çıktığında temel mantığını anlayacak kadar mutlaka öğrenin, onunla iyi kötü bir geliştirme yapacak kadar bilin. Ancak ondan sonra karşılaştırma ve tercih yapma hakkınız olabilir. Bir dili bırakmanın vakti yeni dili öğrendikten sonra onun esikisinden daha iyi olduğuna tanık olunduğu zamandır.

Bir dili bırakmak ille de diğerinden daha iyi olduğu için yapılmaz bazı durumlarda çalışılan şirketteki politika değişikliği buna sebep olabilir. İkinci dil ilki kadar iyi olmayabilir ama yine de o kadar kötü değilse ilk dil bırakılabilir.Bri dil diğerinden biraz daha kötü diye şirket değiştirmenin anlamı yok. Ancak bir dil diğerinden çok az daha iyi diye dil değiştirmek de anlamsız.

Yeni dil eskisinden daha kötü dahi olsa yaygınlaşıyorsa mutlaka benimsenmelidir. Yaygın dil her zaman iyi bir dildir. Çünkü dünya çapğında çok bileni vardır, etrafta yardım alabileceğiniz insanlar var. Kaynak sıkıntısı çekilmez. Java kötü bir dil olsa ne olacak İnternet Java kaynaklarıyla dolu. C# kötü bir dil olsa ne olacak Microsoft destekliyor ve bir çok sistem C#'la kuruluyor. Bir dil dünyanın en iyi dili bile olsa kullanılmıyorsa bırakılmalıdır.

El Fatiha!

Şimdi de -bazı kişileri kızdıracak olsa da- somut örnekler verelim. Fortran ve COBOL gibi dilleri bırakmak için ille de onların kötü bir dil olması gelerkmez. Değil mi ki artık yaygın olarak kullanılmıyor, bırakılmalıdırlar. Vsiual Basic bırakılmalı ve VB.NET' geçilmelidir. VB'yi üreticisi bırakmış biz niye tutalım? ASP yerine heöen ASP.NET'e geçilmelidir. Deplhi'nin durumu tarışılır. C++ eskisi gibi her yerde kullanılması yerine belli alanlarda kullanılmaılıdr, hala bazı yerlerde, örneğin oyun gibi gerçek zamanlı sistemlerde üstüne yok. Ama arayüz, application programming gibi alanlarda ısrar etmemek lazım. Perl'den vaz geçilmelidir ve PHP'ye geçilmelidir. Örnekler çoğaltılabilir, ancak çoğu insan hagi dilin eskidiğini hangisinin hala ayakta olduğun bilir. Her çıkan teknolojiye yönelmek hercai gönüllülük veya sadakatsizlik gibi görünebilir. Ama geliştirici kullandığı dille arasında gönül bağını zamanı geldiğinde koparmayı bilmelidir. Yaşlı diye ninemizi öldürecek değiliz. Ama ölmüş ninemizi de gidip gömeriz, leşini ortalıta dolaştırmayız. Ey cemaati müslimin, ölenlerin ruhuna El Fatiha!

İçindekilerGirişİndex
YukarıİlkÖncekiSonrakiSon
Geriİleri
Yazdır