Python Dilini Neden Öğrenmelisiniz?

Python Dilini Neden Öğrenmeliyim?

Python öğrenmek için bir çok neden sayılabilir. Fakat aşağıdaki ana başlıklar altında bunları özetlemek mümkündür. Hadi başlayalım!

1. Veri Bilimi (Data Science)

Bir çok programcının Python dilini tercih etmesinin en önemli sebeplerinden birisi Veri Bilimi için sağladığı kolaylıklardır. Python dilindeki gelişmeler, sunmuş olduğu kütüphaneler ve çerçeveler Python’un veri bilimi alanında tercih edilme sebeplerini arttırmaktadır.

2. Makine Öğrenmesi (Machine Learning)

Son yıllarda makine öğrenmesinin popülaritesinin artması dikkat çekicidir. Hayatın hemen hemen her alanında makine öğrenmesinin örneklerine rastlamak mümkündür. Google’ın arama algoritmaları, Chatbots’lar ve Uber’in tamamen algoritmalar tarafından yönetilmesi makine öğrenmesi dünyasının sadece bir kaç örneğidir. Python, makine öğrenmesini basitleştiren bir çok kütüphaneye sahip. Bugün makine öğrenmesi ile ilgili iş ilanlarına baktığınızda hemen hemen hepsinde Python bilgisinin arandığı görülmektedir.

3. Web Geliştirme (Web Development)

Python’un sahip olduğu yetenekler ve kullanıldığı alanlar oldukça fazla. Bu alanlardan birisi de Web Geliştirme. Web geliştirmeyi oldukça kolaylaştıran Python, bunu Django ve Flask gibi oldukça güçlü kütüphane ve çerçeveleri ile sunuyor. Aynı zamanda python tabanlı geliştirilen web siteleri ve aplikasyonları için Django CMS, Wagtail, Mezzaine gibi CMS’ler (İçerik Yönetim Sistemi) de mevcut. Web siteleri ve aplikasyonları arasındaki rekabet gücü arttıkça, pazarlama, içerik üretimi ve yönetimi büyük bir önem kazanmaya başladı. Dolayısıyla yakın gelecekte, özellikle arama motoru optimizasyonu’na (SEO) uygun python tabanlı altyapılar kullanılmaya başlanacak.

4. Sadelik

Programcılığa yeni başlayanlar için, Python dilinin sadeliği önemli tercih nedenlerinden birisi. Python, hem okunabilir hem de sadedir. Kurulumu oldukça kolay, Java gibi sınıf yolları ile veya C++ gibi derleyici sorunları ile uğraşmanıza gerek yoktur. Platform bağımsız özelliği ile istediğiniz işletim sisteminde Python kodlama yapabilirsiniz.

5. Büyük Topluluk

Bu kadar güzel özellikleri olan bir dilin elbette geniş bir kullanıcı kitlesi de vardır. Yeni bir dil öğrenme başladığınızda, karşılaşacağınız sorunlar da çok olacaktır. Python dilinin geniş bir kitleye sahip olması ve bu kitlenin paylaşımcı ruhu sayesinde sorunlarınız çözümü de oldukça kolaylaşıyor. Python dilinde kodlama yaparken, karşılaşacağınız sorunları Google aramasında belirterek gerekli çözüme dakikalar içerisinde ulaşmanız mümkün. StackOverflow gibi topluluklar, yeni gelenlere yardımcı olmak için birçok Python uzmanını bir araya getiriyor.

6. Kütüphaneler

Python’ın farklı ihtiyaçlar için sayısız kütüphanesi vardır. Web geliştirme için Django ve Flask, Veri bilimi için Numpy, Pandas ve SciPy, makine öğrenmesi için TensorFlow, Scikit-learn ve Keras… Bu örnekleri arttırmak mümkün.

7. Çok Amaçlılık

Python tek amaçlı bir dil değildir. Örneğin; Veri Bilimi ve Makine Öğren mesi için R dilini tercih edebilirsiniz. Ama R dili ile web geliştirme yapamazsınız. Veri Bilimi, Makine Öğrenmesi, Web Geliştirme ve Masaüstü Programlama gibi birçok farklı alanda Python dili ile uygulamalar geliştirmek mümkün. 2019 yılında en çok sevilen ve sevilmeyen diller ile ilgili bir araştırma sonucu Şekil 1’de sunulmuştur. Görüldüğü gibi Python ve Javascript’in sevilme oranları oldukça yüksek.

Python en sevilen dil

8. İş İmkanları

Bu sorunun cevabı için popüler iş arama sitelerine bakmanız yeterli. Amerika ve Avrupa’da mükemmel bir iş sahasına sahip olduğunu söylemek mümkün. Ülkemizde ise özellikle son yıllarda Python Geliştirici, Veri Bilimci başlığı altında iş ilanlarına rastlamak mümkün. Fakat ülkemizin bu konuda geride kaldığını söylemek mümkün.

9. Maaş

Maaş konusu oldukça değişken. Ülkelere göre, deneyime göre bu miktarlar değişiyor. daxx.com sitesinin bu konuda güzel bir araştırması var. Amerika ile ilgili 2019 yılına ait istatistikler Tablo 1’de paylaşılmıştır. Tablo incelendiğinde Ruby ve Java’dan sonra Python’un en yüksek maaş skalasına sahip olduğu görülmektedir.

Amerika'daki yazılım geliştirici maaşları

Farklı Avrupa ülkeleri için yapılan araştırmaların sonuçları aşağıda sunulmuştur.

isveç yazılım geliştirici maaşları

ingiltere yazılım geliştirici maaşları

Almanya yazılım geliştirici maaşları

Sonuç olarak, Python dilinin tercih edilmesinin birçok sebebi var. Python kullanıcı sayısının artışı ile ilgili yapılan bilimsel bir çalışmanın sonucu aşağıdaki grafikte görülmektedir. TIOBE tarafından Mart 2019’da yapılan çalışmada belirtildiği gibi , Python geliştiricileri küresel olarak tüm geliştiricilerin% 8,262’sini oluştururken, 2018’de bu rakam% 5,761’di. Grafik incelendiğinde 2018 yılından sonra artışın oldukça fazla olduğu görülmektedir.

Python en çok kullanılan dillerden biri

Python, yüksek seviyeli ve nesne yönelimli bir programlama dilidir. Python, öğrenmesi kolay, yazımı basit ve bir çok alanda kullanılan bir
programlama dilidir. Python platformlar arası taşınabilir bir dildir. Bu nedenle de her geçen gün popülaritesi ve bu dil ile geliştirilmiş uygulama sayısı artmaktadır. Aynı zamanda en yaygın derin öğrenme kütüphaneleri Python dili kullanmaktadır. Python derin öğrenme konusunda bir endüstri standardı haline gelmektedir. Ek olarak açık kaynak kodlu bir dildir. Herhangi bir şirkete para ödemek zorunda kalmazsınız. Sade bir dile sahip olması sebebiyle okuması ve yazması kolaydır. Yorumlayıcı (interpreter) bir dil olduğu için çok karmaşık matris işlemlerini bile basit kodlar yazarak çalıştırabilirsiniz. Python Linux, Windows ve MAC OS X gibi gündelik hayatta kullanılan pek çok
işletim sisteminde çalıştırabilmektedir.

Python, tüm dünya genelinde çok güçlü ve geniş bir topluluğa (community) sahiptir. Yani niceliksel ve niteliksel olarak çok büyük bir yazılımcı kitlesi sürekli Python ile geliştirme yapmaktadır. Bu durum, gerek çekirdek Python gerek de Python ile ilintili teknolojiler ve alanlarda Python topluluğu vasıtasıyla, yaşadığınız problemlere kolayca çözüm/yardım bulabilmenizi, eğitim/öğrenme ihtiyaçlarınızı karşılayacak çok fazla sayıda materyale ulaşmanızı sağlamaktadır.

Python’ın popülerliği basit bit şöhret olarak görülmemelidir. Bu popülerlik, Python kullanıcılarının bilişim dünyasında daha fazla imkâna erişebilmesi sonucunu da beraberinde getirmektedir. Mesela AWS Lambda hizmetinin desteklediği dört dilden birisi Python’dır.

Python, her ne kadar üst seviyeli ve yavaş bir dil gibi görünse de hız gerektiren uygulamalar geliştirirken C dili ile bağlantısı sayesinde hızlı
olabilmektedir. Bilimsel programlama için bu kadar yoğun kullanılmasının ana sebeplerinden biri de C diline bağlanan kütüphanelerle hem yazım kolaylığı sağlaması hem de hızlı olmasıdır.

Python Hangi Alanlarda Kullanılıyor?

Python,   makine  öğrenmesi,  derin  öğrenme,  bankacılık  ve  finans uygulamaları, web uygulamaları, biyomedikal uygulamalar, veri analizi, veritabanı uygulamaları, oyun geliştirme, robotik, doğal dil işleme uygulamaları, görüntü işleme, sinyal işleme, ağ ve bilgi güvenliği, karaparayla mücadele, dolandırıcılığın tespitinde, siber güvenlik, şifreleme algoritmaları gibi bir çok alanda kullanılmaktadır.

YouTube, DropBox, Google, Quora ve hatta Netflix gibi günümüzün en büyük şirketleri Python’ı doğrudan veya dolaylı olarak kullanıyor. Python’ı neden öğrenmeniz gerektiğine dair bahsedilebilecek birçok neden var fakat bunları örneklendirmek daha faydalı olacaktır. Python’un en çok kullanıldığı bazı uygulamalar şöyle:

1-Web

Python, çok fazla sorun yaşamadan bir web uygulaması geliştirmenize izin  verir.  HTML  ve  XML,  JSON,  IMAP,  FTP  gibi  internet  protokolleri  için kütüphanelere sahiptir.

  • Requests- Bir HTTP istemci kütüphanesi
  • BeautifulSoup – Bir HTML işleyicisi
  • Feedparser – RSS besleme kütüphanesi
  • Paramiko – SSH2 protokolünü adapte etmek amaçlı
  • Twisted Python – Asenkron ağ programlaması için kullanılır.

Python ayrıca Django ve Pyramid gibi gelişmiş web framework’lere sahiptir. Microframework olarak da Flask ve Falcon Python bünyesinde kullanılan web geliştirme uygulamalarıdır.

2-Masaüstü Uygulamaları

Standart   bir   GUI   kütüphanesi   olan   Tk;  Python  ile  birlikte  gelir. Uygulamalar için bir kullanıcı arayüzü taslağı oluşturmanıza olanak sağlar. Bunun dışında, aynı amaçla kullanılan başka kütüphanelere de sahiptir:

  • Tkinter
  • wxWidgets
  • Kivy – Android’den Windows’a kadar birden fazla işletim sistemini destekleyen bir grafik arayüz kütüphanesidir.
  • Pyqt ve pyside

3-Bilimsel ve Sayısal Uygulamalar

Python’un bilim dünyasındaki yerini bulması sürpriz değil. Bunun için elimizde şunlar var:

  • SciPy – Matematik, fen ve mühendislik için bir kütüphane
  • Pandas – Bir veri analizi ve modelleme kütüphanesi
  • NumPy, karmaşık sayısal ve matris hesaplamaları için kütüphane
  • Nengo – Tıp için, kullanıcı arayüzünü de sahip, biyolojik sinir ağları simulatörü
  • bmtk (Brain Modeling Toolkikt) – Python temelli beyin modelleme yazılımı
  • brian – Python temelli artan sinir ağı simulatörü yazılımı
  • Sagemath – numpy, scipy, matplotlib, r gibi yazılımlar üzerine kurulu; Magma, Maple, Mathematica ve Matlab gibi ticari yazılımlara alternatif bir matematik yazılımı
  • OpenCV:  Görüntü   işleme   için   kullanılan   bir   kütüphanedir.   Bu kütüphane ile nesne tespiti, makine öğrenmesi algoritmaları, video analiz algoritmaları, yüz tespiti gibi işlemleri yapabilmek için bir çok algoritma bulunmaktadır.

4-Yazılım Geliştirme Uygulamaları

Yazılım geliştiricileri Python’ı destek dili olarak kullanır. Build-kontrol ve yönetim, test ve diğer birçok şey için kullanıyorlar.

  • SCons – Build-control için kütüphane
  • Buildbot, Apache Gump – Otomatik ve sürekli derleme ve test için kütüphane
  • Roundup, Trac – Proje yönetimi ve hata takibi için kütüphaneler

5-İşletmelerde Python Uygulamaları

Python ayrıca ERP ve e-ticaret sistemleri geliştirmek için mükemmel bir seçimdir:

  • Tryton – Üç katmanlı, üst düzey bir genel amaçlı uygulama
  • Odoo – Çok çeşitli iş uygulamalarına sahip bir yönetim yazılımı. Çok yönlü ve etkili bir tam kapsamlı kurumsal yönetim uygulamaları paketi oluşturur.

6-Veri Tabanına Erişim

MySQL, Oracle, PostgreSQL, MS SQL Server ve diğer veritabanı sistemlerine erişim için kullanılabilir.

7-Oyunlar ve 3D Grafikler

PyGame ve PyKyra, Python ile oyun geliştirme için en çok kullanılan iki frameworktür. Python bunlardan başka, çeşitli 3B grafik oluşturma kitaplıklarına da sahiptir.

8-Diğer Python Uygulamaları

Yukarıda bahsettiklerimizin dışında, Python hemen hemen tüm alanlarda kullanılmaktadır. Bunlar;

  • Konsol Tabanlı Uygulamalar
  • Ses veya Video Tabanlı Uygulamalar
  • Bilgisayarla Görme (Yüz tanıma ve renk algılama gibi özellikler)
  • Makine Öğrenmesi
  • Robotik kodlama
  • Web Scraping (İnternet sitelerinden veri toplama)
  • Yapay zeka uygulamaları
  • Veri analizi

Python ile Yapılan Önemli Projeler Nelerdir?

Python programlama dili kullanılarak bir çok uygulama geliştirilmiştir. GitHub da python programlama dili kullanılarak yapılmış olup en yüksek yıldız alan bazı projelere aşağıda yer verilmiştir.

The System Design Primer: Bu repo, ölçekli sistemler kurmayı öğrenmenize yardımcı olan kaynakları içerir. (GitHub 62.427 yıldız)

Public APIs: Yazılım ve web geliştirmede kullanım için toplu bir API listesi içerir. (GitHub 56.408 yıldız)

TensorFlow Models: Derin öğrenme ile ilgili birçok kütüphane ve model bulundurur. (GitHub 52.161 yıldız)

youtube-dl:    youtube.com’dan veya diğer video platformlarından videolar indirmeye yarayan bir uygulamadır. (GitHub 49.933 yıldız)

Flask: Python ile web uygulamaları geliştirmek isteyenler için geliştirilmiş bir frameworktur. (GitHub 43.768 yıldız)

Keras: TensorFlow, CNTK veya Theano’nun üzerinde çalışabilen üst düzey bir sinir ağları API’sidir. (GitHub 40.782 yıldız)

The Algorithms: Eğitim için pythonda bulunan bütün algoritmaların yer aldığı bir uygulamadır. ( GitHub 34.671 yıldız)

Falcon: Python ile güvenilir, yüksek performanslı REST API’leri, mikroservisleri oluşturmayı amaçlayan mikro frameworktur.(Github 6.600 yıldız)

 

Kaynak: https://www.daxx.com/blog/development-trends/it-salaries-software-developer-trends-2019

Daha fazla Python yazısını buradan ulaşabilirsiniz.

 

Tahsin ALTINTAŞ

Computer science 4 life mottosuyla yola çıkmış bir bilgisayar mühendisi.

1 Yorum

Bir cevap yazın

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