Bir yazılımcının istediğini yaptırmak icin bilgisayarıyla iletişim kurarken kullandığı dile programlama dili denir. Programlama diliyle yazılan komutlar sayesinde bilgisayar yapması gerekeni anlar ve verilen komutları işleme doker. Gunumuzde yazılımcılar tarafından kullanılan birbirinden farklı 800 ’den fazla programlama dili mevcut ve bugun sizlere anlatacağımız Python da bu 800 dilden biri.
Netflix, Instagram, Dropbox, Spotify ve hatta Google ’ın da kullandığı Python ’un ne olduğunu merak ediyorsanız gelin beraber bakalım.

[h=2]Python nedir, ne icin kullanılır? [/h] Basitce acıklamak gerekirse Python, dinamik semantiği olan nesne odaklı, genel amaclı bir ust duzey programlama dilidir. Yani bu da demek oluyor ki, doğru araclarla desteklendiği taktirde hemen hemen her şeyi oluşturmak icin kullanılabilir.
Python ’un dinamik yazma ve dinamik bağlama ile birleştirilmiş yuksek duzeyde yerleşik veri yapıları, onu hızlı uygulama geliştirmek (Rapid Application Development) ve mevcut bileşenleri birbirine bağlamak icin bir komut dosyası oluşturma veya tutkal dili olarak kullanımı icin oldukca cekici kılmaktadır. Python'un basit, oğrenmesi kolay sozdizimi onu daha okunulabilir kılar ve bu da program bakım maliyetini azaltır. Python ayrıca program modulerliğini ve yeniden kod kullanımını teşvik eden modulleri ve paketleri de desteklemekte. Python yorumlayıcısı ve standart kapsamlı kitaplığını tum buyuk platformlar icin ucretsiz bir şekilde bulmak mumkun ve dağıtımı icin de para odemeniz gerekmez.
Profesyonel acıdan bakacak olursak Python; backend internet geliştirme, veri analizi, yapay zeka ve bilimsel bilgi işlemleri icin mukemmeldir. Bircok geliştirici uretkenlik aracları, masaustu uygulamaları ve oyunlar oluşturmak icin Python ’u kullanıyor, yani eğer olur da Python ’u oğrenmek ister ya da oğrenme aşamasında takıldığınız yerler olursa acıp bakabileceğiniz bir suru yardımcı kaynak var.

[h=2]Python ’un calışma prensibi nedir? [/h] Programcılar, sağladığı artan uretkenlik nedeniyle genellikle Python'a deyim yerindeyse vurulurlar. Python ’da derleme adımı olmadığından, duzenleme-test-hata ayıklama dongusu inanılmaz derecede hızlıdır. Python programlarında hata ayıklamak kolaydır: herhangi bir hata veya hatalı giriş asla bir segmentasyon hatasına neden olmaz. Bunun yerine, yorumlayıcı bir hata keşfettiğinde bir istisna oluşturur. Program istisnayı yakalamadığında, yorumlayıcı bir yığın izi yazdırır. Kaynak duzeyinde bir hata ayıklayıcı, yerel ve global değişkenlerin incelenmesine, keyfi ifadelerin değerlendirilmesine, kesme noktalarının ayarlanmasına, kodda her seferinde bir satır adım adım ilerlemeye vesaire izin verir.
Hata ayıklayıcı, Python'un ic gozlem gucune tanıklık ederek Python'un kendi dilinde yazılmıştır. Ote yandan, genellikle bir programda hata ayıklamanın en hızlı yolu, kaynağa birkac yazdırma ifadesi eklemektir: hızlı duzenleme-test-hata ayıklama dongusu bu basit yaklaşımı cok etkili kılar.

[h=2]Peki Python oğrenmesi kolay bir dil mi? [/h] İsmini unlu komedi/hiciv serisi Monthy Python ’dan alan ve ‘başlangıc dostu‘ olarak nitelendirebileceğimiz Python, anlaşılması kolay ve kullanımı eğlenceli olacak şekilde tasarlandı. Eğlencenin harika bir motivasyon olduğunu ve genelde sıkıcı olan oğrenme surecini kolaylaştırdığını goz onunde bulundurursak, Python ile hızlıca prototipler ve araclar oluşturabileceğinizi ve coğu kullanıcının Python ’da kodlamayı tatmin edici bulduğunu soylersek pek de yanılmış olmayız. Bu ozellikler Python ’un yazılıma yeni başlayanlar arasında populer olmasını ve ABD ’nin en iyi universitelerinde en populer giriş dili olarak da Java ’nın tahtına oturmasını sağladı.
Cok yuksek seviyeli bir dil olan Python, kodlamaya yeni başlayanlar icin cok fazla soz dizimi oğrenme gerektiren İngilizce gibidir. Python sizin yerinize cok fazla karmaşıklığın ustesinden gelir ve yeni başlayanların programlama kavramlarını oğrenmeye odaklanmasına ve cok fazla ayrıntı icin endişelenmemesine olanak sağladığı icin de oldukca başlangıc dostudur.
Dinamik olarak yazılan bir dil olan Python icin son derece esnek bir dil diyebiliriz. Bu esneklik, ozelliklerin nasıl oluşturulacağına dair katı kuralların olmadığı ve her ne kadar Python ’un felsefesi sorunları en kolay ve temiz yoldan cozmeye dayalı olsa da, farklı yontemlere başvurarak sorunları cozme konusunda daha fazla seceneğe sahip olacağınız anlamına gelir. Dahası, Python hatalarınızı oldukca ılımlı bir şekilde karşılar, yani sorunlu kısma ulaşana kadar programınızı duzenleyip calıştırabilirsiniz.
[h=2]Python ’un eksileri nelerdir? [/h]
Python dinamik olarak yazılan bir dil olduğundan, kullanıldığı bağlama gore bir şey kolayca birden fazla anlama gelebilir. Bir Python uygulaması buyuyup daha karmaşık hale geldikce, hataların izlenmesi ve duzeltilmesi zorlaşacağından bakımı zorlaşabilir, bu nedenle kodunuzu nasıl tasarlayacağınızı veya bakımı kolaylaştırmak icin birim testleri yazmayı bilmek deneyim ve bilgi gerektirir.
Ayrıca, cok esnek olduğu ve makinenin bir şeyin tanımının ne olduğundan tam olarak emin olmak icin cok fazla referans yapması gerektiği icin bu durum Python ’un performansını biraz yavaşlatabilir ve ağır calışmasına neden olabilir.
Her halukarda, Python'un daha hızlı olan PyPy gibi alternatif uygulamaları mevcut. Bu alternatifler henuz Java kadar hızlı olmasalar da, hızı buyuk olcude arttırdıklarını belirtmekte de fayda var.

[h=2]Python toplulukları:[/h] StackOverflow ’da en buyuk 5. topluluk Meetup ’da en buyuk 3. topluluk GitHub ’ en cok kullanılan 4. dil Programlama dunyasına adım attığınızda kısa surede anlarsınız ki, geliştirici topluluğu tamamen gerektiğinde yardım almak ve etmek uzerine kurulu olduğundan, programlama camiasının en onemli kilit noktalarından birisi destektir. Yani, topluluğun buyukluğuyle yardım alma olasılığınız doğru orantılıdır ve topluluk ne kadar buyuk olursa o kadar insan geliştirme surecini kolaylaştırmak icin faydalı araclar geliştirir.
[h=3]StackOverflow ’da en buyuk 5. topluluk [/h] Eğer kodlamaya yeni başlayan birisiyseniz, bir soru-cevap sitesi olan StackOverflow şuphesiz kısa bir sure icinde uğrak noktanız haline gelecektir. Python ’un StackOverflow ’da 85,900 ’nin uzerinde takipcisi ve hakkında 500,000 ’den fazla da sorusu bulunmakta. Bunlara ek olarak diğer populer programlama dillerine kıyasla Python ile alakalı sorular, cevaplanması en muhtemel 3. sorulardır.
[h=3]Meetup ’da en buyuk 3. topluluk [/h] Python ’un, totalde 608,000 ’den fazla uyesiyle birlikte Meetup.com ’da 1300 ’den fazla grubu bulunmakta ve bu da Python ’u, programlama dilleri baz alındığında Meetup ’ın en buyuk 3. topluluğu yapıyor. Meetup uzerinden ağ kurabilir, diğer geliştiricilerden bilgi edinebilir ve dilerseniz mentorluk servislerinden yararlanabilirsiniz.
[h=3]GitHub ’ en cok kullanılan 4. dil [/h] Ne kadar faydalı proje varsa o kadar birilerinin geliştirme surecinizi buyuk olcude hızlandıracak olan, istediğiniz işlevi halihazırda ve iyi bir şekilde oluşturmuş olma olasılığı vardır. 950 ’den fazla Python projesinin 500 ’den fazla yıldızı bulunuyor.
Python'un ayrıca veri analizine ve bilimsel hesaplamaya yardımcı olan cok sayıda kitaplığa sahip olduğu bilinmektedir. Buna ek olarak, basit oyunlar yapmak istiyenleriniz icin PyGames, oyun oluşturmak icin guzel bir oyun motorudur.
[h=2]Sektorunde oldukca rağbet goren Python'un kariyer olanakları:[/h]
Startuplar ve iş arayanlar icin bir site olan AngelList ’e gore Python en cok talep edilen 2. ve en yuksek ortalama maaşa sahip beceri. Buyuk verinin yukselişiyle birlikte, ozellikle de Python makine oğrenimi gerektiren gorevleri gercekleştirmek icin web uygulamalarına kolayca entegre edilebildiğinden, Python geliştiricileri veri bilimci olarak oldukca rağbet gormekte.
[h=2]Python ’un geleceği neler vadediyor?[/h] TIOBE endeksine gore, en populer 100 programlama dili sıralamasında Python 4. sırada. Bir başka programlama dili olan Ruby on Rails ve son zamanlarda da Node.js ’nin yukselişe gecmesiyle birlikte, Python'un backend internet gelişimi icin ana prototipleme dili olarak kullanımı, ozellikle parcalanmış bir MVC ekosistemine sahip olduğu icin biraz azalmış olsa da buyuk verinin giderek daha onemli hale gelmesiyle Python, her zamankinden daha fazla talep goren, ozellikle web uygulamalarına entegre edilebilen bir beceri haline geldi.
Acık kaynaklı bir proje olarak Python, ılımlı bir guncelleme dongusu ile aktif olarak calışılır ve amacına uygun kaldığından emin olmak icin her yıl yeni surumler cıkarır.
Bir programlama dilinin amacına uygun kalma yeteneği, dilin yeni ve taze kalmasına da bağlıdır. Arama hacmi acısından Python, oğrenmek isteyen herkes icin diğer diller arasında 1. sıraya yukseldi. Python'a olan ilgi 2015'te %22,1 oranla buyume gosterdi. Gidişata bakacak olursak rahatca soyleyebiliriz ki amacına hizmet etme acısından Python, geniş kitlesinin de yardımıyla gelecekte de ipleri elinde tutmaya devam edecek.