Öncelikle konuya gelme sebebim neler söylendiğini merak ettiğimdendi ama kimse bişey dememiş,
1. OOP Bir yazılım metodolojisidir, altında bir algoritma ve işleyiş vardır.
2. Bu işler deviri geçti işleri değil ne kadar kaliteli yaptığın ile alakalıdır.
2.1 . Eğer bir şeyin devri geçti ise daha iyisi ortaya çıkmış demektir ama 1 olmadan 2 olmaz unutmamak lazım. Eskisini bilmeden yenisinin neden geldiğini anlamak çok zor olur.
3. Hiç bir bilgi zaman kaybı değildir.
4. Object tabanlı yazılımı bilmeden diğer metodolojileri benimsemen çok kolay olmayacaktır.
5. Django bildiğim kadarıyla obje tabanlı işlemektedir.
6. Python veya Php yada NodeJs farketmeksizin bu metodoloji öğrenilmesi gerekenler sırasında ilk 10'a oynar.
Şimdi Açıklamanı okudum,
Üst hedef olarak belirttiğin machine learning ve yapay zeka bambaşka şeyler.
Different Things : Machine Learning Yapay Zeka değildir.
1 : Hazırladığın bir algoritmanın yapay zeka olabilmesi için yapay sinir ağları gerekmektedir. Bunlarla birlikte deep learning ve kendi fikirlerine sahip olmasını sağlayacak diğer öğrenim teknikleri ve modellemeleri olmalıdır. Ekstradan seninle etkileşime geçmesi için NLP (National Language Processing) lazımdır.
2 : Runtime compile olan bir sistem ile compile based çalışan programların teknik ve yazım mantaliteleri çok farklıdır yönünü seçmen gerekiyor. O yüzden web mi core mu karar vermelisin.
3 : Yazdığın kodu dil bağımsız olarak test edilebilir, okunabilir bir biçimde yaz, senin yazdığın kodu başka biri okuduğunda kolayca anlamalı.
4 : Kodun içine TODO ve COMMENT'sleri bol bol koy.
5 : Konu Her ne olursa olsun trendlerden çok işine hangi yöndem daha çok yarar onu analiz et ve kullan.
Özet olarak, iyi bir yazılımcı bulduğu her bilgiyi yakalar, yer, yutar.
Peki sence OOP Öğrenilmeli mi ? :)