PYTHON PROGRAMLAMA DİLİ – NEDEN PYTHON

PYTHON PROGRAMLAMA DİLİ – NEDEN PYTHON

3 Ocak 2019 1 Yazar: Onur Cici

Evet son zamanlarda kullanım miktarı artan Python programlama dili hakkında birkaç bilgi açıklayacağım.

Python, Guido Van rossum adlı hollandalı bir programcı tarafından yazılmış bir programlama dilidir. Geliştirilmesine 1990 yılında başlayan Python; C ve C++ gibi programlama dillerine kıyaslarsak şöyle sonuçlar elde edebiliriz:

  • Daha kolay öğrenilir.
  • Program geliştirme sürecini kısaltır yani hızlı yazılır.
  • Yukarıdaki verilen programlama dillerine aksine ayrı bir derleyici ihtiyacı duymaz.
  • Hem daha okunaklı, hem daha temiz kodsal söz dizimine sahiptir.

Python’un bu ve bunlara benzer özelliklerinden dolayı, dünyada ün salmış kuruluşlar (Google, Yahoo!, Dropbox vb.) bünyelirinde her zaman Python programlamasını bilenleri çalıştırırlar.

Python!un baş geliştiricisi Guido Van Rossum 2005 ile 2012 yılları arasında Google’da çalışmıştır. 2012 yılının sonlarına doğru ise Dropbox’ta çalışmıştır. Yani anlaşılacağı üzere önemli bir programlama dilidir.

Yani; “Python, işlerinizi hızlı, sisteminize entegre ve etkin bir şekilde kullanmanızı sağlayan bir programlama dilidir.” (python.org) diyen site gerçektende doğruyu söylemiştir. Açık kaynak kod lisansı özgür ve ücretsiz bir yazılımdır. Nesne yönelimli programlama fonksiyonel ya da yapısal programlama gibi birden fazla programlama paradigmasını destekleyen bir programlama dilidir.

[the_ad id=”775″]

Neden Python?

Python’un öne çıkan unsurlarından biri, bilimsel yöntemlerde kullanılması ve çok hızlı işlem yapmasıdır. Python dilinin yeni nesil, diğer dillerin hatalarını görerek geliştirilmeside büyük bir avantaj olduğu ortaya koymaktadır. Python dilinin bir seçilme sebebi ise şöyle örnekle anlatabiliriz. Örneğin Php dilinin bilen bir kişi Sunucu taraflı Php yazılım yapabilir. Fakat Python bilen biri Masa üstü uygulaması ( her işletim sisteminde çalışan ) , Web uygulaması ( Her ortamda çalışan ve açık kaynaklı ) , Mobil uygulama ( Kivy ile ) gibi bütün ortamlara hükmedebiliyorsunuz.

İTÜ fizik bölümünden Berkin Malkoç, “Temel Bilimler ve Mühendislik Eğitiminde Programlama Dili Olarak Python” başlıklı makalesinde etraflı bir inceleme sunuyor. Kısa başlıklarla özetlersek:

  • Açık kaynaklı. Kullanmakta özgürsünüz, bir şirkete bağlı olmak zorunda değilsiniz. Üstelik ücretsiz.
  • Yapısı sade. Okuması ve yazması çok kolay. Çok hızlı öğrenilebiliyor.
  • Dinamik” dil. Yorumlayıcıyla çalışıyor. Çok karmaşık işlemleri basit komutlarla yaptırabilirsiniz.
  • Etkileşimli. Yorumlayıcı penceresinde ardarda komutlar verip işlemler yapabilirsiniz.
  • Aklınıza gelen bir fikri çabucak bir program oluşturarak deneyebilirsiniz.
  • OOP’yi destekler ama mecbur tutmaz. Basit işler için class tanımlamak zorunda değilsiniz.
  • Genel kullanım alanı geniş ve yazılım sanayiinde çok seviliyor. Bu sayede sürekli geliştiriliyor. Öğretici kaynak bulmak kolay.
  • Bilimsel araştırmalarda çok yaygın olarak kullanılıyor. Çeşitli bilim dallarında kullanılmak üzere özel hazırlanmış kütüphaneleri var. Bu kütüphaneler kendini bu işe adamış profesyonel yazılım ekipleri tarafından hazırlanıyor, yoğun şekilde test ediliyor, ve yine açık kaynaklı.

Pythonun gücünü şöyle bi örneklede kanıtlayabiliriz. Bildiğiniz üzere yukarada bahsettiğim gibi Python dilinin Google tarafından kullanıldığını biliyoruz. Peki nerede kullaniyor hiç düşündünüz mü ?

Google’nın arama motoruna örneğin “Python” yazdığımda belki 1 milyon kaynak önümüze dökecektir. Bu işlemi mili saniyece sürece yanıt vermesini sağlayan Pythondur.

 

Python’un Kullanım Alanları 

Python;

  • Yüksek seviyeli bir programlama dili.
  • Bilim ve teknoloji bilgi sanayesinde önemli rolu var.
  • Uluslar arası alanda etkili.
  • Askeri savunma alanda etkili.
  • Hacking network sistemleri üzerinde etkili.

Bir dilden beklenenden daha fazlasını karşıladığını sizde görüyorsunuz.

Peki diğer programlama dillerinden neden farklı?

  • Dinamik boşluklar ve türler
  • Kolay ve hızlı gelişme

Peki Python ne sağlar?

  • C kadar hızlı değil ama C’den daha hızlı
  • İnsanlar tarafından okunabilir.

[the_ad id=”144″]

Python İle Yazılmış Uygulamalar 

 

  • Emesene
  • Ubuntu Yazılım Merkezi
  • Gwibber
  • Civilization IV ( Oyuın)
  • Battlefield 2 (Oyun)
  • Reddit başlangıçta lisp ile, daha sonra baştan Python ile yazılmış. Python ile yazılım geliştirme süreci çok hızlı ve web uygulaması geliştirme çok yaygın olduğu için tercih etmişler. İsteyenler reddit kaynak kodlarını okuyabilir.
  • Django Siteleri sayı bakımından oldukça fazla. djangosites adresinde kayıtlı 4500 adet websitesi var.
  • Portage Gentoo Linux’un kullandığı paket yönetim sistemi. Python ve kabuk programlarıyla yazılmış.
  • Sage açık kaynaklı ve Python tabanlı bir matematik seti. Sage, 100’den fazla açık kaynak program ve kütüphaneyi bir araya getirmiş. Matlab, Stata, Mathematica gibi programlara alternatif sunuyor.
  • GNU Mailman e-posta listesi yönetim aracı. Bildiğim kadarıyla birçok açık kaynak yazılımın mail grupları gnu mailman ile yönetiliyor.
  • Planet çok sayıda rdf, rss ve atom beslemesini toplayıp, tek bir belge içinde birleştiren ve çeşitli formatlarda çıktı verebilen yazılım. Dive into python kitabından tanıdığımız Mark Pilgrim’in yazdığı feed parser kütüphanesini kullanıyor.
  • Trac bir yazılım geliştirme yönetim sistemi. Subversion ve git ile entegre, wiki ve sorun bildirme özellikleri bulunuyor.
  • GNU Bazaar ve Mercurial kısmen Python ve kısmen C ile geliştirilmiş iki versiyon kontrol sistemi.
  • Calibre açık kaynak e-book yönetimi aracı. E-book’larını bir server oluşturarak paylaşma imkanı da sağlıyor.
  • Yum RPM sistemleri için otomatik paket yükleyici ve kaldırıcısı. Bağımlılıkları denetler ve bir paketin yüklenmesi için neler olması gerektiğini anlar.

Bunlar Python kullanan uygulamalardan bazılarıydı. Python ile yapılabilecekler bunlarla sınırlı değil; Python ile yapılan oyunlar, yapay zeka kütüphaneleri, çeşitli web, grafik, gui framework’leri, bilimsel uygulamalar da var. Google, Youtube ve NASA’nın da çeşitli işleri için Python kullandığı yaygın olarak söyleniyor.