|
Evet arkadaşlar, çoğunuz programlamanın ne olduğunu az çok duymuşsunuzdur.Duymayan arkadaşlar için; programlama: bir makineyi kendi istekleri doğrultusunda köle gibi kullanmaya denir. Mesela bilgisayarınızı programlayıp ona 2+3 ü bulmasını söylediğinizde, bilgisayarınızın bunu kabul etmeme gibi bir hakkı yoktur. Mecburen yapar. E madem karşımızdaki makinenin ipleri elimizde, o zaman onu sömürmemek için sebebimiz yok:). Bilgisayarları sömürmek için önce onların dilinden konuşup onları ikna etmemiz lazımdır. Dillerini öğrendikten sonra zaten karşı da gelemezler. Bilgisayar ile iletişim kurmak için çeşitli diller geliştirilmiştir. Bu diller genel mantıkta 2 gruba ayrılır.
1-)Fonksiyonel diller.Bu isim de bu dillerin nasıl çalıştığını anlatmaya yeter sanırsam. Bu dillerde her komut, yorumlanacak bir dizi fonksiyonu içerir. En ileri temsilcisi C'dir. C'nin bu şekilde ileri çıkması ise,verimli olması ve sistem programcılığında kullanılabilmesidir.
2-)Nesne yönelimli diller: Bu diller özellikle 1990 dan sonra popülerlik kazanmıştır. Bu dillerde geliştirilen programlar Class adı verilen program parçacıklarını kullanarak programcının verimini müspet yönde arttırırlar.Bu dil grubunun en ileri temsilcileri JAVA ve C++'dır.C++ sistem kaynaklarını az kullanması ile, JAVA ise "Bir kere yaz, her yerde çalıştır(Taşınabilirlik)" mantığı ile öne çıkmışlardır.
PEKİ HANGİ DİLİ ÖĞRENMELİ Bu soruya verilecek cevap, sizin ne yapmak istediğinize bağlıdır. Herşeyden önce ne yapmak istediğinizi belirleyin. Mesela amacınız bir işletim sistemi yazmak mı, yoksa otomasyon programı geliştirmek mi, yoksa işletim sistemleri için bir çekirdek(kernel) mi geliştirmek istiyorsunuz?Yoksa internet siteleri için chat vb. programları mı geliştirmek istiyorsunuz? Amacınızı belirledikten sonra, amacınıza en uygun programlama dilini öğrenip,özgün yazılımlar geliştirebilirsiniz... Öncelikle dilleri, artılarını ve eksilerini tanıyalım
POPÜLER DİLLER C/C++: Bu diller birbirlerine syntax(sözdizimi) olarak çok benzerler, fakat yapılarına bakıldıklarında bazı farklar görülür. Yine de bu farklılığa rağmen, genelde yakın işlerde kullanılırlar.Bu nedenle bu dilleri aynı kategoride yazıyorum. En çok kullanıldıkları işler, İşletim sistemleri, driverler ve hack tool lardır. Tabi bu dillerde otomasyon programları da hazırlanabilir, fakat bu diğer dillere göre zahmetlidir. Linux, UNIX ve OSX bu dillerle yazılmıştır.C 1969-1973 yılları arasında Dennis Ritchie,C++ da 1983 yılında Bjarne Strostroup tarafından geliştirilmiştir.
Pascal:1968 yılında Prof.Dr Niklaus Wirth tarafından geliştirilmiştir. Bu dil yüksek seviyeli bir dil olduğu için,sistem kaynaklarını savruk kullanır ve verimsiz çalışır. Buna rağmen popüler bir dil olmayı başarmıştır(İşte o nasıl oldu ben hala anlamış değilim,belki de kolaylığındadır:)). 2000 li yıllara kadar otomasyon programları yazmakta 1. tercih iken, şu anda son çırpınışlarını görmekteyiz. Bunun sebebi ise görsel programlamanın popüler hale gelmesidir. Yerini günümüzde kendisinin görsel versiyonu sayılan delphi ye devretmiştir. Yine de programlamaya yeni başlayan insanlar tarafından kolaylığı sebebi ile tercih edilebilmektedir.
Delphi: Borland firmasının, bir nevi pascalın görsel versiyonu olarak geliştirdiği dildir. Bu dilde program geliştirmek, diğer birçok dile göre daha kolaydır. Arayüz, paint de resim çizer gibi geliştirilir. Genelde otomasyon programı ve Hack Tool geliştirirken kullanılır.Testlerde Visual Basic den 10 kat hızlı işlem yapması,onu kullanılabilir bir dil hale getirmiştir
Visual Basic: 1964 yılında geliştirilen BASIC dilinin 32 bit uygulama geliştirmeye olanak tanıyan versiyonudur.Program yazmak Delphi den de kolaydır. Genelde yeni başlayan programcılara tavsiye edilir. Ama çok verimsizdir. Genelde otomasyon programı,bazen hack tool olarak kullanılır. Driver gibi programların arayüzünün tasarımında da kullanılabilir. Windows serisi işletim sistemlerinin de arayüzü bu dille yazılmıştır.
JAVA: "Bir kere yaz, heryerde çalıştır" solganını kullanan bu dille Windows da geliştirdiğiniz programı, kodla hiç oynamadan Linux'da da çalıştırabilirsiniz.Bu neredeyse hiçbir dilde olmayan bir özelliktir.Sun Microsystems firmasının geliştirdiği bu dil, telefon uygulamalarında çok kullanılır. İyi bir hackerin bilmesi gereken bir programlama dilidir. Kendisi ile işletim sistemi bile yazılmıştır(Bkz. Solaris).
C#: Windows'un 1999 yılında (Aralık ayı idi sanırsam) programlama dünyasına sunduğu .NET platformunun bir parçasıdır. Bir nevi JAVA'ya karşılık olarak yazılmıştır. Fakat onun kadar kaliteli ve popüler bir dil olamamıştır.IDE(Integrated Development Environment) sinde 32 bit uygulamaları geliştirmek JAVA dan daha kolaydır. Bu nedenle tercih edilebilir..
Assembly: Programlama yeni başlayan birinin son denemesi gereken dildir.İnanılmaz düzeyde zordur. Taşınılabilirlik özelliği yok denecek kadar azdır.Fakat buna karşılık bilgisayarı en çok kontrol edebilen dildir. Assembly ile herşeyi yazabilirsiniz; Driver, kernel,işletim sistemi,hack tool,(hatta otomasyon da yazarsınız ama visual basic duruken Assembly'de yazan görmedim).
Fortran: Amerikan ordusu tarafından geliştirilmiş bu dilin, geliştirilmesinden bu yana uzun yıllar geçmesine rağmen hala kullanıldığı yerlere rastlamaktayız. Genelde bilimsel araştırmalarda kullanılır.
MATLAB: Mathworks firmasının geliştirdiği bu dil matematik ve bilim alanında kullanılmaktadır. Sentaxı(Sözdizimi) fortran ve C ye benzer, fakat matematik işlemlerde bu dilllerden daha başarılıdır.
Perl: PHP dilinin atası olarak kabul edilen, sentaxını C dilinden almış scripting dilidir. Genelde web uygulamaları, sayaç, toplist sitelerinde kullanılır, C dilinden türemiş olmasına rağmen kendisi ile yazılmış forum sistemi bile vardır(bkz. yaBB). remote exploit adı verilen kötü niyetli programcıklar bu dilde geliştirilir. Öğrenmenizin programcılık mantığınıza pek birşey katacağı söylenemez
Popüler dilleri az çok tanıdık,şimdi ise amacımıza uygun dili belirleyelim;
Eğer amacımız otomasyon programları geliştirmek ise, tercihimiz Visual Basic veya Delphi olmalıdır.Çünkü bu otomasyon programlarında aranan arayüz özellikleri ve veritabanı yönetimi bu dillerde bulunmaktadır. Opsiyonel olarak Visual C# dili de kullanılabilir.
Eğer işletim sistemi yazacak isek; tercihimizi C veya C++ dan yana kullanmalıyız. Bu dillerin hem ram'e müdahale edebilecek kadar düşük, hem de işletim sistemi arayüzü tasarlanabilecek kadar yüksek olması bu dilleri işletim sistemi geliştirme için biçilmiş kaftan haline getirmektedir
Eğer web appletleri(örneğin chat) geliştireceksek JAVA dilini kullanmalıyız,çünkü JAVA'nın taşınılabilirlik özelliği üst düzeyde olduğundan sunucunun kullandığı işletim sistemi yazdığımız programı etkilemez.
Hack tool yazacak isek, 1. tercihimiz C++ olmalıdır. Çünkü bu dil işletim sisteminden bağımsız olarak her yere el atabilir. Assembly ve Delphi dilleri de, özelliklerine bağlı olarak bu işte kullanılabilirler
Eğer programcılığa giriş için kolay bir dil istiyorsanız tercihiniz PASCAL veya BASIC gibi diller olmalıdır. Çünkü bu dilleri öğreneme, orta düzey ingilizce bilen birisi için gayet kolaydır..
Eğer amacınızı belirlemediyseniz ilk öğreneceğiniz dil C olsun. Çünkü C birçok dilin atasıdır ve C öğrenerek C++ ,JAVA,PHP,Perl,C# gibi dilleri büyük oranda öğrenmiş olursunuz...
Umarım bu yazı öğreneceğiniz programlama dilini seçmenizde faydalı olmuştur.... Ali Selman Aydın
Bu yazının tüm hakları www.teknoinfo.net'e aittir.İzinsiz olarak başka sitelerde gösterimi kesinlikle yasaktır.
|