Sağlam Yazılımlar için Öneriler


Güvenliğin, performansın, desteğin ve sağlamlığın kritik olduğu projelerde hangi teknolojiler tercih edilmelidir?

2019 yılından bu yana geliştirmekte olduğum enGrehber projesi sayesinde hangi teknolojileri kullanmam gerektiği konusunda bolca düşünme fırsatı yakladım. Engrehber projesini başlangıçta bildiğim teknolojilerle hazırladım.

.NET Core, Angular ve Ionic kullandım.

Ancak bazı sorunlarla karşılaştım:

  1. Ionic çok yavaş
  2. Angular’ın mobil karşılığı yok
  3. .NET Core yerli yapay zeka için uygun değil
  4. SQL Server big data için uygun değil

Zamanla Engrehber bir Big Data, WebRTC, WebSocket ve BlockChain projesine dönüştü. Araştırmalarım neticesinde tüm bunları karşılayabilen aşağıdaki teknolojileri kullanmam gerektiğine karar verdim.

  1. Big Data veritabanları MongoDB, HBase ve Cassandra’dır
  2. Yerli Yapay Zeka üretmek istiyorsanız Python veya Java kullanmalısınız
  3. React ve React Native ile kod paylaşımlı ve blockchain uyumlu proje geliştirmek daha kolaydır.

O yüzden Engrehber’in 3. sürümü için aşağıdakilerden birini tercih etmek mantıklı oldu

  1. Python, React, React Native
  2. Java, React, React Native

Python çok avantajları olan bir dildi. Ama çok eski ve çok yavaştı ve Finance, E-Commerce projelerinde çok tercih edilmiyor ama yapay zeka, blockchain DID ve veri bilimi için çok tercih ediliyordu.

Kamu ile projelerinde ise tartışmasız Java tercih ediliyordu ve Engrehber bir kamu projesiydi.

Yaptığım araştırmalarda:

  1. Java ile yazılmış yapay zeka: OpenNLP
  2. Java ile yazılmış big data veritabanı: Cassandra
  3. Java ile kurumsal blockchain: HyperLedger Besu

yazılımları benim Java’yı tercih etmeme neden oldu. Buna karşın Tensorflow ve ACA-Py olmak üzere iki proje Python kullan diye bastırmaya devam ediyordu. Çünkü bunların Java SDK’ları stabillik garanti etmiyor.

Ancak buna karşın Siber Güvenliğin ve sağlamlığın kritik olduğu kamu projelerde mutlaka Java tercih ediliyor, üstelik Java Python’dan daha hızlı.

Engrehber projesi için Tensorflow şu an o kadar önemli olmasa da Aries Cloud Agent Py (ACA-Py) çok önemli, o yüzden Java, Python, TypeScript dillerinin üçünü de kullanmaya karar verdim.

Mutlu kodlamalar 🙂

Reklam