Bu konuyu okuyanlar

Ali Yaman

Öğrenci
Katılım
24 Haziran 2016
Mesajlar
3
Reaksiyon puanı
3
Puanları
1
Yaş
33
Python Dili Nedir?
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 öğrenenilir.
  • Program geliştirme sürecini kısaltır yani hızlı yazılır.
  • Yukaridaki verilen programlama dillerine aksine ayrı bir derleyici ihtiyaci duymaz.
  • Hem daha okunaklı, hem daha temiz kodsal söz dizimine sahiptir.
Python'un bu ve buna benzer özelliklerinden dolayı, dünya çapında ün sahibi büyük kuruluşlar ( Google, Yahoo! ve Dropbox gibi) bünyelerinde herzaman Python programcılarına ihtiyaç duyuyor.

python-nedir-ne-ise-yarar-150x150.png


Mesela pek çok büyük şirketin Python bilen programcılara iş olanağı sunduğu, Python'un baş geliştiricisi Guido Van Rossum'un 2005 ile 2012 yılları arasında Google'de çaliştığını, 2012 yılının sonlarında doğru ise Dropbox şirketine geçtiğini söylersek, bu programlama dilinin önemi ve geçerliliğini herhalde daha belirgin bir şekilde ortaya çıkaracaktır.

Bu arada Python dilinin, her nekadar Python Programlama dili ile ilgili çoğu görsel malzemeninn üzerine yılan resmi olarak görsek de, Python kelimesi aslında çoğu kişinin zannetiği aksine Piton anlamına gelmiyor. Python programlama dili ismini, Guido Van Rossum'un çok sevdiği Monty Python adlı altı kişilik bir ingiliz komedi grubun Monty Python's Flying Circus adlı gösterisinden gelmektedir.

Neden Python dili ?
Diğer programlama dilleri gibi tahmin edebilceğiniz gibi Python (C,C++,Perl,Ruby ve benzeri gibi) bir programlama dilidir. Tıpkı öteki yazılım dilleri gibi, önünüzde duran kara kutuya yani bilgisayara hükmetmenizi yani yönetmenizi sağlar.

Python dilinin öne çıkaran unsurlardan biri ise bilimsel yöntemlerde kullanılması ve çok hızlı işlem yapmasıdır. Bir başka yönden incelediğimizde Python ile Arduino,Raspi ve benzeri programlamanabilir elektronik kartlar ile harika işler çıkardığını biliyoruz.

Arduino ve Python Örneği
Paul McWhorter tarafından Python dili üzerinden arduino ile cisim algılama sistemi örneği yaptı. Gerçekten bu video izlediğinizde python'un gücünü biraz daha görebilcekseniz.






Python dilinin yeni nesil, diğer dillerin hatalarını görrek gelişirilmeside 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 çalişan ) , Web uygulaması ( Her ortamda çalişan ve açık kaynaklı ) , Mobil uygulama ( Kivy ile ) gibi bütün ortamlara hükmedebiliyorsunuz.

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'nin arama motoruna örneğin "Python" yazdığımda belki 1 milyon kaynak önümüze dökücektir. Bu işlemi mili saniyece sürece yanıt vermesini sağlayan pythondur.

Python Dilinin Kullanım Alanları
Python, nesne yönelimi, yorumlamalı, birimsel ve etikileşimli yüksek seviyeli bir programlama dilidir.

Python bilim ve teknoloji bilgi sanayesinde önemli rol oynamaktadır. Yazılım teknolojileri özgür yazılım platformu her dalda ayrı compiler ile çalışan bu dil uluslar arası Askeri savunma ve hacking network sistemleri üzerinde uluslar arası bir öneme sahip programlama dilidir.

Özetlemek gerekirse ;

  • 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.

1991 Yılında çıktığını görüyoruz yani köklü bir dil olduğunu kanitliyor.

Geliştirici durumu bir Yazılım vakfı tarafından ele alınmış aslında güzel bir durum arkadaşlar tamamen ücretsiz bir platform olduğunu kanıtlıyor.

Tıp sisteminde güçlü ve dinamik olduğunu görüyoruz, gerçekten mutlu oluyor insan :)

Neden Python?
İ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ı.
Python tamamen harika değil. Dinamik ve yorumlanan bir dil olması, ister istemez yavaş çalışmasını gerektiriyor. Yoğun hesaplama gerektiren işleri C veya Fortran’la yazılmış programlara yaptırmak daha doğru olur.

dolasıyla şöyle , Python çeşitli ara çözümler de sunuyor. Sözgelişi, C ile yazılmış programlar Python koduna entegre edilebilir, epeyce hızlı Python programları hazırlanabilir. Meselâ bilimsel hesaplama için geliştirilen SciPy kütüphanesi böyle hazırlanmış.

Dahası, birçok durumda, yavaş çalışan bir Python programı bile size zaman kazandırabilir. Meselâ C ile bir hafta uğraşarak yazabileceğiniz bir programı Python ile bir günde yazmanız mümkün olabilir. Neden Python cevabı verilmiş oldu sanırım.

Ek olarak Neden Python adına Youtube üzerinde harika bi grup videosu çekildi. Python üzerinde uzman kişiler arasında 2 saat konuşma yapıldı. Videoyu sonuna kadar izlermenizi tavsiye ediyorum :






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ı. Bunların dışında, Python'u başka programların içine gömerek, o programın Python kodlarını kullanmasını sağlamak mümkün. Python'u bu şekilde kullanan uygulamalardan örnek vermek gerekirse:

  • Maya 3 boyutlu animasyon, modelleme ve simülasyon yazılımı. Birçok oyun ve animasyon film tarafından kullanılıyor. Maya ile Python kodları kullanmanın temelleri videosunu izleyebilirsiniz.
  • Blender Maya'nın açık kaynak alternatifi. Aynı şekilde, Blender içinde de Python kodları kullanmak mümkün.
  • Inkscape vektörel grafik tasarım programı. İnkscape'in python kütüphanelerini import edip Python ile svg oluşturabiliyorsunuz. Python scripti ile oluşturulmuş bir svg animasyonu buldum Youtube'da.
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, ancak bunu teyit edemedim.

Kaynak : Python ile Yazılmış Programlar

Yazılımcılara Tavsiye
Programlama bir sanattır. bir Programlama diline ait bilgiler program yazıcısının beceri ve düşüncesi ile birleşince orta program çıkıcaktır. Bu bakış açısı ile baktığımızda, her başlık altında öğreneceğiniz bilgiler ayrı ayrı değerlendirdiğimizde bir işe yaramiyacaktır. Bunları ancak birlikte kullandığımızda ortaya ürün cıkacaktır. Herkes programlama dilinin temel öğelerini öğrenebilir ancak asıl iş bu parçaları bir araya getirip ustaca kullanmaktadır. Nasıl ki bir sanatçı edindiği tecrübeleri yaratıcı fikirleri birleştirince sanat ve eseri ortaya cıkarsa, bir programcı da öğrendiklerini yaratıcı fikirleri ile yoğurunca program ortaya çıkar. Bu neden Python öğrenmeye karar verdiyseniz Python temel programlamayı sağlamlaştırmanız gerekiyor. Öğrendiğiniz örnekleri farklı yorumlayarak değişik örnekler cıkarmaya çalışın.



Belki anlatabilcek daha çok şey var ama , inşallah ilerleyen makalerde eksiklere değineceğiz, sizlere yararlı olması acısından teknik bilgiler vermeye çalıştık. Yararlı olması dileğiyle , sağlıcakla kalınız...
 

mirinkirin

Doçent
Katılım
4 Temmuz 2016
Mesajlar
708
Reaksiyon puanı
358
Puanları
63
Arkadaşlar şöyle de bir not düşelim, eğer yurt dışında çalışmayı düşünmüyorsanız ruby,python gibi dilleri öğrenmekle vakit harcamayın. Türkiye'de python, ruby gibi dillerin istenme oranı çok düşük, burada kalacaksanız .net öğrenin kafanız rahat olsun, maceraya gerek yok.
 

Son mesajlar

Üst