Şu Meşhur Python

Piton, Paytın, Fayton, Faytın, Piyton…

Doğrusu, “faytın“dır, ama f yi okurken ph arası bir ses çıkarmanızda fayda vardır.

Eğer az çok yazılıma aşina iseniz, temellerini biliyorsanız, anlamakta hiç zorlanmayacaksınız.

Python, kod yazması en kolay, en esnek dillerden biridir. Yazdığımız kodların düzenli olması gerekir. Örneğin, bir şart/döngü/fonksiyon a giriş yapıyorsak eğer, bir tab’a basmalık boşluk bırakmamız gerekir. 4 kere çubuğa basmak veya sadece tab a basmak, sizin damak zevkinize kalmış.

Burada, size her yerde bulabileceğiniz, içerik kasmak için uzun uzadıya, bot ile çekilse fark edilmeyecek cümleler yazmayacağım. Olabildiğince, akılda kalabilecek ve görmemiş olabileceğiniz içeriği yazmaya çalışacağım.

Gerçek Hayatta Nerde Lâzım Olcak ki?

Python mu? Python, güzel kullanıldığında insanın düşünmekte zorlanacağı kadar çok işe yarayabilir. Kötü kullanımında ise, herhangi bir sunucu’ya ddos attırmaktan tutun da, bu sitenin bile zaafiyetlerini bulmanızı sağlayacak olan, wp-scanner gibi uygulamalar ortaya çıkabilir.

Amaaaaaa tabiiikiiiii, bizim böyle şeylerle pek işimiz olmaz di mi? Sadece kendi güvenlik açıklarımızı test etmek için kullanıyoruz kesinlike. 🙂

Python’un güvenlik alanında sıkça kullanıldığı gibi, bilimsel alanda da bolca kullanılmaktadır. Bunun sebebi, yazılan kodun zorla güzellik yapması, yani düzenli yazmaya zorlaması, anlaşılırlığı, pratikliği, hızlı çalışması (C’ye yakınlık bakımından), nesneye dayalı özelliği……

  • Anlaşılırlığı, dilin kendi has fonksiyon isimlerinin kısa olması,
  • Pratikliği, C’de uzun uzadıya yazılıp tanımlanacak işlerin çok daha az bir yazımla halolması
  • Hızlı Çalışması, yazılan kodun arkaplanda C’ye çevrilmesinin başarısı
  • Nesneye Dayalılığı ise, başlı başına uzun bir makale konusu.

Nesneye dayalılıkla ilgili bilgi edinmek için linke tıklayabilirsiniz:

https://tr.wikipedia.org/wiki/Nesne_y%C3%B6nelimli_programlama

Ah Pardon. Vikipedia yasaklanmıştı sanırım. Ancak eğer bilgisayarda iseniz, VPN ile girebilirsiniz. Ha onun yerine, bu linkte de gerekli bilgilerin bir kısmını bulabilirsiniz:

http://www.ismailgursoy.com.tr/nesne-yonelimli-programlama-oop-nedir/

Burada da, İsmail Gürsoy‘a, içeriğimizi zenginleştirdiği için teşekkür ediyorum.

Python’u öğrenmek isteyene gerçekten kaynak bol. Bir zamanlar istihza diye bir pdf içerikli site vardı. Ancak kapandı nedense. Onun pdf’ini internette araştırırsanız -ki mutlaka tavsiye ederim!- bulun ve onu takip edin. Benim burada paylaşmam etik olmayabilir, hak ihlaline girebilir. İzin alabilirsem paylaşacağım da.

Bilimsel Hesaplamalarda Python

Kullandığınız, üzerine çalıştığınız alan ne ise, Python’un o işe özel olarak tasarlanmış kütüphanesini indirmeniz gerekir. Bunu nasıl yapacağınız, zaten kullanacağınız kütüphanenin sayfasında yazar. Örneğin, Görüntü İşleme için OpenCV’nin Python kütüphanesini indirecekseniz eğer, kendi sayfasında linklerini bulabilirsiniz. Veya, Deep Learning için Tensorflow kullanacaksanız, yine kendi sayfasında bulabilirsiniz.

Ben blogumda, üzerine çalıştığım alanlarda hangi veri yapılarını, kütüphaneleri kullandığımı yazacağım, ayrıntılı olarak anlatacağım. Bunların başında Histogram yapısı gelir. Mesafe Fonksiyonları gelir. Zamanla hepsini anlatacağım.

Mesela hücrelerin şekilleri ve ölçüleri ile ilgili elimizde bir veri kümesi var diyelim. Bu hücrelerin de hangisinin deri, hangisinin kas hücresi olduğunu bilelim. Programımız bu veri kümesini inceleyerek, sınıflandırarak, ölçülerini girdiğimiz bir hücrenin ne hücresi olduğunu bize döndürebilir. Bu Makine Öğrenmesidir binevi. Ancak elbette Makine Öğrenmesi, kapsamı çok daha geniş bir konu.

Python ve Güvenlik

Hepimiz aslında birazcık meraklıyızdır hek yapmaya. Fakat öyle bir alandır ki güvenlik, okudukça genişler. Daha çok ilgi ister. Nazlanır. Ve insanın nefsine hakim olması gerekir ki, kötü bir şeyler yapmasın.

Python ve diğer bir çok yazılım dilinin ortak özelliği, bir web sayfasına bağlanıp, o sayfanın içeriğini çekip okuyabilmesidir. Yazılımcı da yeteneğini konuşturarak, o okunan sayfayı yorumlayıp, değerlendirmede bulunabilir.

Hepimizin bildiği gibi, her sistemde mutlaka açıklar bulunur. Sistemleri insanlar yazmaktadır ve insanlar kusursuz değillerdir. En bilinen açıklardan başlarsak bunlar: SQL Injecition, XSS, DDOS’tur. XSS ve SQL Injection, web sayfasının içeriğiyle alakalıdır, ancak DDOS, bir yöntem olarak içeriği kullansa da, içeriksiz de yapılabilir.

Sistemlerin içindeki açıkları programa öğrettikten sonra, herhangi bir sayfayı işleme aldığınızda, ondaki açıkları az çok görebilirsiniz. Bunun için internette tonla örnek program vardır. Sqlmap, wpscanner gibi uygulamalar bunların başında gelir.

Not: wpscanner, Python ile değil Ruby ile yazılmıştır.

Dolayısıyla kendi sitenizin açıklarını denemek için bu uygulamaları kullanabilirsiniz. Bu uygulamalar, zahmetinizi azaltacak ve ciddi fayda sağlayacaktır.

Ancaaaak, eğer bir silah olarak başka bir web sayfasına doğrultursanız, kullanırsanız, kapınızda polis beklemeniz yerinde olur. Haklı olarak, bir suç işlemiş sayılırsınız. Veya diyelim bir web sitesinin veritabanına sızdınız, “Aha, milletin kredi kartı bilgileri!”. Zaten eğer o bilgileri çaldıysanız, suçunuz tartışılmaz. Ancak çalmayacaksanız, sizden sonra birisi çalacak olursa, bir de yaramazlığınızın cezasını, başkasının suçuyla birlikte çekebilirsiniz. O yüzden, silahla çok oynamamakta fayda var. Allah korusun, ‘şeytan’ doldurur.

 

 

 

 

 

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Create a free website or blog at WordPress.com.

Up ↑

%d bloggers like this: