Python Nedir, Programlamanın Temelleri

Programlama Dili Nedir?

     Programlama dilleri insan ve bilgisayar arasındaki iletişimi sağlayan bilgisayar dilleridir.
Programlama dilleri sayesinde bir bilgisayarın hangi durumda ne çeşit çıktı vereceği kontrol
edilebilir.
     En eski programlama dilleri olarak kabul gören FORTRAN (1957) ve COBOL (1959) gibi
dillerden sonra bilgisayarların gelişim süresi boyunca yüzlerce programlama dili geliştirilmiştir. Günümüz itibariyle dünya üzerindeki programlama dillerinin toplam sayısının 750’nin (bazı kaynaklarda 2500’ün) üstünde olduğu tahmin edilmektedir.

Seviyelerine Göre Programlama Dilleri

     Programlama dilleri insanların algılamasına yakın olmasına göre dört gruba ayrılır:

  • Düşük seviyeli programlama dilleri: Makine koduna oldukça yakın dillerdir. Makine hakimiyeti oldukça gelişmiştir. Bu programlama dillerin bilen kişilerin mikro işlemciler hakkında bilgi sahibi olması gereklidir. (Assembly)
  • Orta seviyeli programlama dilleri: Oldukça esnek olan bu diller hem üst hem alt seviye programlama yapabilir. Alt seviye dillere oranla dahaanlaşılırdır. (C, C++, C#)
  • Yüksek seviyeli programlama dilleri: Olay tabanlı dillerdir. Sadece belirli fonksiyonlaretrafında çalışır ve programlama hakimiyetini azaltır. En hızlı ve en etkili dilleri içeren kategoridir. Diğer dillere kıyasla daha kolaydır. (Python, JavaScript)
  • Çok yüksek seviyeli programlama dilleri (Scratch)

Bilgisayarla Nasıl Konuşuruz?

     Baktığımızda bilgisayar yalnızca 0 ve 1’lerden oluşan makine dilini anlar. Peki, nedir bu “makine dili”?

     Makine dili (machine code), doğrudan bilgisayarın işlemcisi (CPU) tarafından
anlaşılabilen ve çalıştırılabilen komutlardan oluşan ve işlemci mimarisine bağlı olarak değişen
donanıma en yakın, en alt seviyedeki programlama dilidir. Bu dil sadece 0 ve 1 ikiliklerinin (Binary sistem) anlamlı kombinasyonlarından meydana gelmektedir. Bu sebeple makine dilinin anlaşılması çok güçtür. Günümüzde bu dile gerek duymadan yüksek ve orta seviye dillerle kodlama yapmaktayız.

Binary

   Makine dili, bilgisayar tarafından direkt olarak anlaşılabilir; öncesinde bir dil dönüşümü
(transformasyon) gerektirmez.
  Herhangi bir yazılımın işlenip makine diline çevrilmeden önce insanların okuyup üzerinde
çalışabildiği programlama diliyle yazılmış haline kaynak kodu denir. Bu kodun bilgisayar
tarafından anlaşılabilmesi için makine diline çevrilmesi gerekir. Bu dönüşümü gerçekleştirebilmek
için iki yol vardır:

  1. derleyici (compiler)
  2. yorumlayıcı (interpreter)

  Bir kaynak kodu hedef koda çevirdikten sonra çalıştıran ve dolayısıyla koddaki hataları yakalama işlemini ve kodun iyileştirilmesini daha kodu çalıştırmadan yapan çeviricilere derleyici ; kodu satır satır veya bloklar halinde çalıştırıp sırası gelmeyen satırları hiç çalıştırmayan, bu satırlardaki hataları göremeyen ve kodun bütününe ait iyileştirmeleri yapamayan çeviricilere de yorumlayıcı adı verilmektedir.

Derleyici vs Yorumlayıcı

          # Derleyici kullanan diller : Pascal, C, C++, Ada, Visual Basic
          # Yorumlayıcı kullanan diller : Python, Ruby, HTML, PHP
          # Hem derleyici hem yorumlayıcı kullanan diller : Java

Derleyicinin ve yorumlayıcının çalışma mekanizması

Python Nedir?

  • Python; nesne yönelimli, yorumlamalı, birimsel (modüler) ve etkileşimli, yüksek seviyeli bir programlama dilidir.
  • Guido van Rossum tarafından 1991’de piyasaya sürülmüştür.
  • Sanılanın aksine adını bir yılan türü olan “piton” yılanından değil, Rossum’un en sevdiği İngiliz komedi grubu olan Monty Python’ın Monty Python’s Flying Circus isimli
    TV programından almıştır.

     Python programlama dili ilk çıktığı zamanlarda sadece gereksiz programlar için tamamlayıcı
bir dil
olarak değerlendiriliyordu. Hatta “Automate the Boring Stuff with Python“(Python’la Sıkıcı
İşleri Otomatikleştirin) adlı günümüzde popüler olan bir kitap dahi yayımlanmıştır.
     Ancak bu durumun tam aksine son 15 yılda Python’ın popülaritesinde istikrarlı bir büyüme yaşanmıştır. 2019 yılında en popüler programlama dilleri arasında 3. sırada olan Python, bu sene
bir sıra daha yükselerek ikinciliğe adını yazdırmıştır.

     Tüm bunlarla birlikte Python, piyasada bu kadar fazla programlama dili varken nereden başlayacağını bilemeyenler için gayet güzel bir seçenektir. Çünkü kolay okunur, kolay yazılır. Bu
sayede öğrenmek de oldukça kolaydır. Diğer dillerde en sık karşılaşılan hata sebepleri arasında
olan tırnak işareti, parantez gibi detaylara gerek duymaz. Ayrıca söz dizimi olarak da diğer dillere göre oldukça sadedir. Python öğrenebilmek için biraz sabır, fazlaca da pratik yeterli olacaktır.

     Python’ın nerelerde, hangi amaçlarla kullanıldığına baktığımızda oldukça geniş bir çerçeveye sahip olduğunu görürüz. Özetleyecek olursak:

  • Web geliştirmede
  • Yazılım geliştirmede
  • Matematikte
  • Veri analizinde
  • Siber güvenlik alanında
  • Yapay zeka ve makine öğrenmesinde

     Python’ın ne olduğunu, nerelerde kullanıldığını az çok anlayabildiğimizi umuyorum. Şimdi de biraz avantajları ve dezavantajlarından bahsedelim.

   AVANTAJLARI:

  1. Python, prototipleri geliştirmede kullanılabilir ve hızlıdır.
  2. Python ile çalışmak ve onu okumak çok kolaydır.
  3. Son derece sade bir söz dizimine sahiptir.
  4. Çoğu otomasyon, veri madenciliği ve büyük data platformları Python’a dayanır. Bu sebeple genel amaçlı görevler için birlikte çalışmaya uygun bir dildir.
  5. C# ve Java gibi dillere göre oldukça üretken bir kodlama imkanı sağlar.
  6. Açık kaynaklı olması ve topluluk tarafından geliştirilmesi nedeniyle büyük bir destek tabanına sahiptir.
  7. Siber güvenlik açısından güvenilirdir. Bir sorun tespit edildiğinde büyük bir hızla aksiyon alınabilir. Ayrıca kodlar daha sade olduğu için sorunlu kısmın onarılması kolaydır.
  8. Çeşitlilik ve esneklik sunar. Farklı platformlarda çalışabilir.
Python diğer dillere kıyasla daha sadedir.

   DEZAVANTAJLARI:

     Her güzelin bir kusuru vardır. Bu durum Python için de geçerlidir. Her ne kadar -genel anlamda- kaliteli uygulamalar yazmak için uygun olsa da bazı eksiklikleri ve yetemediği alanlar da vardır:

  1. Python öğrendikten sonra Java gibi dilleri öğrenmek zor olabilir. Python, programların çalışma şeklinden temel kavramları soyutlar ve ilk önce bir mantık yaklaşımını
    tercih eder.
  2. Python yorumlanmış bir dil olduğundan çoğu durumda Java gibi dillerden daha yavaştır.
  3. Yüksek düzeyde bir dil olduğu için sistem düzeyinde programlama için uygun değildir.
  4. Windows, MacOS ve Linux işletim sistemleri için bir uygulama geliştirebilirsiniz ancak
    fazla görkemli bir uygulama olmaz.

     Şimdi de Python’la neler yapılabileceğinin daha iyi anlaşılabilmesi için Python’la yazılmış bazı programlardan ve uygulamalardan ve Python’ı kullanan en bilindik şirketlerden bahsedeceğim.

   Python’la yazılmış başlıca uygulamalar:
  • Ubuntu yazılım merkezi
  • Portage
  • Reddit
  • Sage
  • Battlefield 2
  • Civilazation IV
  • Planet
  • Calibre
   Python’ı Kullanan En Bilindik Şirketler:
  • Django
  • Zope
  • YouTube
  • BitTorrent
  • NASA
  • CERN
  • Google

IDE Nedir? Hangi IDE’yi seçmeliyim?

     IDE (Integrated Development Environment-Tümleşik Geliştirme Ortamı); programcıların hızlı ve rahat bir şekilde program geliştirebilmesini amaçlayan, geliştirme sürecini organize edebilen birçok araç ile birlikte geliştirme sürecinin verimli kullanılmasına katkıda bulunan araçların tamamını içerisinde barındıran bir yazılım türüdür.
     Özetlemek gerekirse IDE’ler sahip oldukları özelliklerle kod yazmayı bizim için kolaylaştıran programlardır.

     Diğer bütün dillerde olduğu gibi Python için de çok sayıda geliştirme ortamı vardır. Her IDE’nin kendine göre artıları ve eksileri vardır. Hangisini seçeceğimize ise neye ihtiyacımız olduğuna, amacımızın ne olduğuna ve tabii ki kişisel tercihlerimize göre karar veririz.

    Python için oluşturulmuş en bilindik, ücretsiz bazı IDE’ler şunlardır:

  • IDLE : Kullanımı kolaydır. Python’ı öğrenmeye başlayanlar için uygundur.
  • Thonny : Yeni başlayanlar için geliştirilmiş bir IDE’dir.
  • Eclipse + PyDev : Eclipse; varsayılan paketlerin yanı sıra birden fazla dili ve diğer özellikleri kolayca ekleyebileceğiniz, Java geliştiricileri için popüler bir IDE’dir. PyDev eklentisi ile Python için de kullanılabiliyor.
  • Spyder : Kullanımı kolaydır. Programcılar için sağladığı pek çok imkanıyla en popüler IDE’ler arasında yer alır.
  • PyCharm : JetBrains tarafından geliştirilmişitir. Sahip olduğu özellikler nedeniyle en iyi IDE’lerden biri olarak kabul edilir. İki versiyonu bulunur; topluluk ve profesyonel. Topluluk versiyonu ücretsizdir. Öğrenciler için Profesyonel Versiyonu da ücretsizdir.
                       

     Bu hafta programlama dili nedir, Python nedir ve ne işe yarar sorularına cevap vermeye çalıştık. Haftaya yavaştan temel Python komutlarına giriş yapacağız. Umarım sizler için de faydalı bir yazı olmuştur. Haftaya görüşmek üzere.


Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir