Python’u tam olarak ne için kullanabilirim?
Python için çok fazla uygulama var, cevaplanması çok zor bir soru.
Ancak zamanla, Python için 3 ana popüler uygulama olduğunu gözlemledim:
- Web Geliştirme
- Veri Bilimi – makine öğrenmesi, veri analizi ve veri görselleştirme
- Komut
Sırasıyla her biri hakkında konuşalım;
Web Geliştirme
Django ve Flask gibi Python tabanlı web çerçeveleri son zamanlarda web geliştirme için çok popüler hale geldi.
Bu web çerçeveleri Python’da sunucu tarafı kodu ( backend code ) oluşturmanıza yardımcı olur. Bu, kullanıcıların cihazlarında ve tarayıcılarında ( front-end code ) aksine sunucunuzda çalışan koddur. backend code ile front-end arasındaki farkı bilmiyorsanız, lütfen aşağıdaki dipnotu okuyun.
Bekle, neden bir web framework ihtiyacım var?
Bunun nedeni, bir web çerçevesinin ortak arka uç mantığı oluşturmayı kolaylaştırmasıdır. Bu, farklı URL’lerin Python kod parçalarına eşleştirilmesini, veritabanlarıyla ilgilenmeyi ve kullanıcıların tarayıcılarında gördüğü HTML dosyalarını oluşturmayı içerir.
Hangi Python web framework kullanmalıyım?
Django ve Flask en popüler Python web çerçevelerinden ikisidir. Yeni başlıyorsanız bunlardan birini kullanmanızı tavsiye ederim.
Django ve Flask Arasındaki Fark Nedir?
<begin quote>
Ana kontrastlar:
- Esneklik ve ince taneli kontrol sağlar. (bir şeyi nasıl uygulamak istediğinize karar vermenizi sağlar).
- Django her şey dahil bir deneyim sunar: Uygulamalarınız ve projeleriniz için kutudan bir yönetici paneli, veritabanı arayüzleri, bir ORM [nesne-ilişkisel haritalama] ve dizin yapısı elde edersiniz.
- Deneyim ve öğrenme fırsatlarına odaklanıyorsanız veya hangi bileşenleri kullanacağın konusunda daha fazla kontrol istiyorsan (hangi veritabanlarını kullanmak istediğin ve onlarla nasıl etkileşim kurmak istediğin gibi).
- Django, eğer nihai ürüne odaklanıyorsan. Özellikle, bir haber sitesi, bir e-ticaret veya blog gibi dürüst bir uygulama üzerinde çalışıyorsan ve orada her zaman tek ve açık bir işlem yapmaya olanak sağlar.
</ end quo te>
Başka bir deyişle, eğer bir acemi iseniz, Flask muhtemelen daha iyi bir seçimdir, çünkü başa çıkacak daha az bileşen vardır. Ayrıca, Flask daha fazla özelleştirme istiyorsanız daha iyi bir seçimdir.
Öte yandan, doğrudan bir şey inşa etmek istiyorsanız, Django muhtemelen oraya daha hızlı ulaşmanıza izin verecektir.
Veri Bilimi – Makine Öğrenmesi, Veri Analizi ve Veri Görselleştirme
Her şeyden önce, makine öğrenmesinin ne olduğunu gözden geçirelim
Makine öğrenmenin ne olduğunu size vereceğim örnekte anlatmak istiyorum.
Diyelim ki resimde ne olduğunu otomatik olarak algılayan bir program geliştirmek istiyorsunuz.
Bu nedenle, aşağıdaki resmi koydum. (Resim 1), programınızın bir köpek olduğunu tanımasını istiyorsunuz.
Aşağıdaki resimde ise (2. Resim), programınızın bir masa olduğunu bilmesini istersiniz.
Tamam, bunu yapmak için bir kod yazabilirim. Örneğin, eğer resimde çok fazla açık kahverengi piksel varsa, o zaman bunun bir köpek olduğunu söyleyebiliriz.
Ya da belki, bir resimdeki kenarları nasıl tespit edeceğinizi öğrenebilirsiniz. Öyleyse, çok fazla düz kenar varsa, o zaman bir masa diyebilirsiniz.
Ancak, bu tür bir yaklaşım oldukça çabuk zorlaşıyor. Ya resimde kahverengi saçlı olmayan beyaz bir köpek varsa? Resimde masanın sadece yuvarlak kısımları gösteriliyorsa?
Makine öğrenmenin geldiği yer burasıdır.
Makine öğrenmesi tipik olarak verilen girişteki bir deseni otomatik olarak algılayan bir algoritma uygular.
Örneğin, bir köpeğin 1.000 resmini ve bir masanın 1.000 resmini bir makine öğrenme algoritmasına verebilirsiniz. Daha sonra, bir köpek ve bir masa arasındaki farkı öğrenecektir. Ona bir köpeğin veya masanın yeni bir resmini verdiğinizde, hangisinin olduğunu tanıyabilecektir.
Bir bebeğin yeni şeyleri nasıl öğrendiğine biraz benzer olduğunu düşünüyorum. Bir bebek bir şeyin köpeğe, diğerine de masa gibi göründüğünü nasıl öğrenir? Muhtemelen bir sürü örnekten.
Muhtemelen açıkça bir bebeğe “Bir şey tüylü ve açık kahverengi saçları varsa, o zaman muhtemelen bir köpek” demezsiniz.
Muhtemelen, “Bu bir köpek. Bu aynı zamanda bir köpek. Ve bu da bir masa. Bu da bir masa. ”
Makine öğrenmesi algoritmaları da aynı şekilde çalışır.
Aynı fikri aşağıdakilere de uygulayabilirsiniz:
- öneri sistemleri (YouTube, Amazon ve Netflix’i düşünün)
- yüz tanıma
- ses tanıma
diğer uygulamalar arasında.
Hakkında duymuş olabileceğiniz popüler makine öğrenme algoritmaları şunları içerir:
- Nöral ağlar
- Derin öğrenme
- Vektör makineleri desteklemek
- Rastgele orman
Daha önce açıkladığım resim etiketleme problemini çözmek için yukarıdaki algoritmalardan herhangi birini kullanabilirsiniz.
Makine öğrenmesi için Python
Python için popüler makine öğrenme kütüphaneleri ve çerçeveleri var.
En popüler olanlardan ikisi, scikit-learn ve TensorFlow’dur .
- Scikit-learn, yerleşik olan bazı popüler makine öğrenme algoritmalarıyla birlikte gelir. Yukarıda bazılarından bahsettim.
- TensorFlow, özel makine öğrenmesi algoritmaları oluşturmanıza olanak sağlayan düşük seviyeli bir kütüphanedir.
Bir makine öğrenim projesine yeni başlıyorsanız, önce scikit-learn ile başlamanızı tavsiye ederim. Verimlilik sorunları yaşamaya başlarsanız, o zaman TensorFlow’a bakmaya başlardım.
Komut
Komut dosyası nedir?
Komut dosyası genellikle basit görevleri otomatikleştirmek için tasarlanmış küçük programlar yazmak anlamına gelir.
Gömülü uygulamalar ne olacak?
Gömülü uygulamalar konusunda uzman değilim, ancak Python’un Rasberry Pi ile çalıştığını biliyorum. Donanım hobileri arasında popüler bir uygulama gibi görünüyor.
Peki ya oyun?
Oyun geliştirmek için PyGame adlı kütüphaneyi kullanabilirsiniz, ancak buradaki en popüler oyun motoru değil. Bir hobi projesi oluşturmak için kullanabilirsiniz, ancak oyun geliştirme konusunda ciddi olursanız kişisel olarak seçmezdim.
Bunun yerine, en popüler oyun motorlarından biri olan C # ile Unity ile çalışmaya başlamanızı tavsiye ederim. Mac, Windows, iOS ve Android dahil olmak üzere birçok platform için bir oyun oluşturmanıza olanak tanır.
Masaüstü uygulamalarından ne haber?
Tkinter kullanarak Python ile bir tane yapabilirsin, ama en popüler seçenek gibi görünmüyor.
Bunun yerine, Java, C # ve C ++ gibi diller bunun için daha popüler gibi görünüyor .
Son zamanlarda, bazı şirketler de Masaüstü uygulamaları oluşturmak için JavaScript kullanmaya başladı.
Örneğin, Slack’in masaüstü uygulaması Electron adlı bir şeyle inşa edildi . JavaScript ile masaüstü uygulamaları oluşturmanıza olanak sağlar.
Şahsen, ben bir masaüstü uygulaması inşa ediyor olsaydım, bir JavaScript seçeneğini tercih ederdim. Varsa, kodun bir kısmını bir web sürümünden yeniden kullanmanızı sağlar.
Ancak, masaüstü uygulamaları konusunda da uzman değilim, bu yüzden bu konudabenimle hemfikir ya da hemfikir değilseniz yorumda bana haber verin.
Python 3 veya Python 2?
Daha modern ve bu noktada daha popüler bir seçenek olduğundan Python 3’ü tavsiye ederim.
Yazar : Ahmet Kaptan
Instagram : https://www.instagram.com/codescaptain/