Python, 1990’lı yıllarda Amsterdam’da G. Van Rossum’ un geliştirdiği bir programlama dilidir. Sanılanın aksine Python, ismini bir piton yılanından değil, Yaratıcısı Rossum’un fazlaca ilgi duyduğu MonthyPython isimli bir komedi grubundan almıştır.
Python dili, diğer çoğu dillerin tersine derleme gerektirmeden çalışabilir. Nesne Tabanlı Programlama (OOP) ‘yı desteklese de Class klasörü açmak gibi bir duruma gerek yoktur. Öğrenimi ve okunurluğu gayet basit olan bu programlama dili, farklı birçok platformda kullanılabilmektedir.
Neden Python Öğrenmelisiniz ?
Python, öğrenmek ve geliştirmek açısından oldukça basit bir dildir. Diğer dillere oranla çok daha kolay okunabilmekte ve hızınıza hız katabilmektedir. Open Source (Açık Kaynaklı) bir dil olması bu dili diğer dillerden üstün kılar. Ticari kullanımlarda serbestçe kullanılabilmektedir.
En güzel özelliklerinden biri olarak ise fazladan bir derleyici platformu gerektirmez. Python, bilgisayara yüklendiğinde Python IDLE otomatik bir şekilde yüklenir ve derleme işlemlerinizi bu derleyciyle yapabilirsiniz.
Python’ın Kullanıldığı Alanlar Nerelerdir?
Python birçok alanda kullanılabilmektedir. Örneğin Makine Öğrenmesi, Bilimsel Durumlar, Web Uygulamaları ve Veri Analizleri gibi alanlarda Python programlama dili Kullanılabilmektedir.
Makine Öğrenmesi (Machine Learning)
Makine öğrenmesi, verileri kullanarak değişik algoritmalarla birlikte yeni şeyler öğrenme çabasına denir. Sınıflandırma, Resim tanıma, Görüntü işleme vb. gibi birçok alan bu çabanın içine dahil olarak görülüyor. Makine Öğrenmesi, hemen hemen tüm sektörlerde uygulama alanına sahip olabilecek bir alandır.
Python’da kullanmak amacıyla geliştirilmiş ‘scikit-learn’ isminde geniş kapsamlı bir Makine Öğrenmesi (Machine Learning) Kütüphanesi bulunmaktadır. Bununla birlikte aynı zamanda ‘PyBrain’ adlı bir kütüphane daha bulunmaktadır ancak PyBrain genellikle Neural Network (Yapay Sinir Ağları) alanında kullanılan bir kütüphanedir.
Web Uygulamaları
Python, web uygulamaları veya web sitelerinin geliştirilmesinde fazlaca kullanılan ve tercih edilme sırasında liderliğe yakın olan bir dildir. Django adlı Framework sayesinde hemen hemen ihtiyaç duyulabilecek her durum karşılanabilmektedir. Yine de Django’ ya bağımlı kalmak şart değildir.
Bilimsel Durumlar
Bilimsel konularda Python belki de Matlab’ ı geride bırakabilecek kadar fazlaca fonksiyonlarıyla karşımıza çıkıyor.
Pythoni bilimsel alanlarda kullanılmak istendiğinde birçok opsiyon sunmakta. Hepsi için dağıtımlar indirerek kurabilirsiniz. Ayrıca kullanmak istediğiniz kütüphaneleri de bunlardan bağımsız olarak ekleme seçeneğine de sahipsiniz ve SciPy adlı bir set sizlere yardımcı oluyor.
Scipy setinde mevcut olan IPython, Tıpkı Matlab gibi interaktif olarak Python’ı kullanmanıza imkan tanıyor. Verilerinizi görselleştirebilmek konusunda ise Matpolitb sizlere yardımcı oluyor.
Veri Analizleri
Pandas isimli bir kütüphane sayesinde performansı fazla, kullanım konusunda rahat veri yapı ve analizleri özellikleri elde edilebiliyor. Bu sayede R veya stata benzeri daha karmaşık uygulamalara gerek bile duyulmadan verilerin analiz ve modellemesi kolayca yapılabiliyor. IPython, scikit-learn veya benzeri kütüphanelerle beraber kullanılırsa performans bakımından ciddi derecede saplam bir analiz ortamı oluşturulabilir.
Yapay Zeka (Artificial Intelligance)
Google tarafından oluşturulan TensorFlow kütüphanesi bir Python kütüphanesidir. Bu kütüphane Yapay Zeka ve İleri Teknolojiler ile birlikte sürekli olarak geliştirilmekle birlikte gelecekte yapay zekanın ilk ürünlerinden birisi şeklinde hatırlanabilecek kadar öneme sahiptir.
Avantajlarından bahsedersek TensorFlow kütüphanesi, oldukça yüksek bir derleme yapmaya imkan sağlar. Bunun yanında görselleştirme anlamında da fayda sağlar. GPU ve CPU ile uyumlu çalılma niteliğiyle Google’ın gözdesi durumundadır.
Daha önce de bahsettiğimiz Makine Öğrenmesi ve Yapay Sinir Ağları da yapay zekanın birer parçasıdır. Python ise bu parçaları bir araya getirmemize yardımcı olan oldukça önemli bir etkendir.
Bahsedilen bu alanlar Python’ın kullanım alanlarından sadece birkaç tanesi. İnternet üzerinden detaylı bir araştırma yaptığınızda aslında Python’ın çok daha geniş bir kapsama alanı olduğunu zaten görürsünüz.
Oyun geliştirmeden Veritabanına, Sistem yönetimlerinden Ağ programlamaya kadar daha birçok alanda aktif olarak kullanılmakta olan Python programlama dili, yazılan kodların pratikleştirilmesi ve çok daha kısa sürelerde çok daha büyük projelerin tamamlanması konusunda oldukça yararlıdır.
Python Nerelerde Yetersiz Kalır? Python’ı Aşağı Çeken Özellikler Nelerdir?
Python’ın iyi özellikleri anlatmakla bitmez. Ancak genel anlamda mükemmel derecede fayda sağlayan Python dilinin yetersiz kaldığı noktalar da vardır.
Bunlardan birisi düzey sorunudur. Düzey seviyesi olarak yüksek kategoride olması nedeniyle sistem düzeyindeki programlamalar için pek de uygun olduğu söylenemez.
Şunu da söylemek gerekir ki bu kategori altında aygıt sürücüleri ve işletim sistemi çekirdeği bulunmaz.
Aynı zamanda platformlar arasında özgür binary dosyaları için çağrı gereken durumlar için de uygun olmadığı söylenebilir.
Bu işletim sistemleri için uygulamalar tasarlayamayacağınız anlamına gelmez ancak geliştirilecek olan uygulamanın yüksek verime sahip olamayacağı da bilinmelidir. Bir genelleme yapmak gerekirse Python’ da hıza daha çok öncelik verildiği için ağır olan programlarda yetersiz veya işlevsiz kalabilir.