Çözüldü Hangi programlama dillerini öğrenmeliyim?

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

Unturned

Kilopat
Katılım
29 Ağustos 2016
Mesajlar
2.635
Makaleler
1
Çözümler
43
Arkadaşlar bu her zaman açılan konular gibi değil.

ÖNEMLİ: Arkadaşlar programlama dili önerecekseniz "şunu öğren daha kolay, şunu öğren bunla şunu bunu kavradıktan sonra şuna atlarsın, şunda çok para var, şunun geleceği daha parlak" gibi (saçma-sapan) öneriler yerine idealist, en iyi öneride bulunursanız çok sevinirim. Frameworkler ve kütüphaneler de dahil.

Arkadaşlar öncelikle neler yapacağımı söyleyeyim.


Web​

E-Ticaret sitesi kurmak,

Kullanıcıların hesap açabileceği (yani verilerin depolanıp saklanabileceği) blog, haber, forum sitesi kurmak,

Kullanıcıların hesap açamayağı blog, haber sitesi kurmak,

kendi oyun, uygulama ve programlarımı indirebileceği ürünlerimi alabileceği site yapmak.

Oyun, Uygulama ve Program​

Kullanıcıların hesap açabileceği (yani verilerin depolanıp saklanabileceği) Android, iOS, (Windows Phone desteği olursa güzel olur ama olmasa da olur.) Windows, Linux destekli oyun, uygulama ve program yapmak,

Online & Offline Android, iOS, (Windows Phone desteği olursa güzel olur ama olmasa da olur.) Windows, Linux oyun uygulama ve program yapmak,

kendi oyun, uygulama ve programlarımı indirebileceği ürünlerimi alabileceği Mobil-PC launcher yapmak.


Diğerleri​
İşletim Sistemi yapmak, GNU/LINUX tabanlı.

Yapay Zekâ programlamak.

Makine (programlama dili dışında)​
otomasyon ve güvenlik icatları yapmak.


Arkadaşlar programlama dili önerecekseniz "şunu öğren daha kolay, şunu öğren bunla şunu bunu kavradıktan sonra şuna atlarsın, şunda çok para var, şunun geleceği daha parlak" gibi (saçma-sapan) öneriler yerine idealist, en iyi öneride bulunursanız çok sevinirim. Frameworkler ve kütüphaneler de dahil.

Umarım anlatabilmişimdir. @bitwise @The Anorak
 
Son düzenleyen: Moderatör:
Çözüm
Bizim su anda uzerinde calistigimiz projelerde senin isteklerinle ortusen seyler var ve tercihlerimizi yazayim. Yanlarina alternatiflerini de yazacagim belki onlari da incelersin.

Web Backend:
- JVM dilleri. Kotlin, Java vs Scala uclusunun hepsini kullaniyoruz. Linux server uzerinde calisiyor sunucular. Kurumsal firmalarin agir is yuku gerektiren istekleri oluyor ( saniyede binlerce dosyanin parse edilmesi vs gibi ). Alternatif olarak C# da dusunulebilir ama Windows teknolojilerinden uzak duruyoruz malum sebeplerden.
- Node: Gorece hafif projeler icin tercih ediyoruz. NPM 'de cok guzel library ler var, barkod ve resim analiz etmemiz gereken bazi ufak projeler var, direkt 3rd parti kutuphanelerle isimizi goruyoruz ama genel olarak daha yavas calisiyor. Ama memory management konusunda daha iyi. Alternatif olarak Python dusunulebilir, onda da image processing kutuphaneleri var.

Frontend -> Javascript. Gercek bir alternatifi yok. Varsa bile zaten JS e compile oluyor ( Typescript, CoffeeScript vs )

Yapay zeka:
- Eticaret sistemlerinde kullandigimiz yapay zeka modulleri var. Bunlari da Python ve Scala ile yaziyoruz. Alternatifi pek yok bana gore, Python'daki machine learning kutuphaneleri piyasadaki en iyileri bana gore. Tensorflow kullanacak kadar sofistike bir is yapmiyoruz.

Big Data:
- Python + Spark. AWS de bunun sunuculari, AWS Lambda kullanarak big data process ediyoruz. Genelde Java ile yazilan backend process ettigi verileri lambda'ya aktariyor. Alternatif Java + hadoop olabilir. AWS Lambda – Serverless Compute - Amazon Web Services

Oyun : Bilmiyorum. Sadece oyun serveri projemiz vardi 2 tane, ama client'ini baska bir ekip Unity ile yazdi. Biz sadece serverini Java ile yazdik. Gayet C++ ya da C# ile de yazilabilirdi.

Mobil:
- Hic native isine girmedik, full React-Native yazdik. Gereksiz if-else branchleri disinda bir sorunumuz olmadi. ( Eger androidse sunu yap, IOS ise bunu yap demek gerekiyor bazen ). Javascript kullandik. ( Typescript + JS )

Isletim sistemi: Universiteden sonra profesyonel olarak hic low level is yapmadim. Sadece meraktan assembly ile basit bir NES programi yazmisligim var : ) Programming guide - Nesdev wiki Tavsiye etmiyorum.

Otomasyon: Market pazar payi cok dusuk yeni firmalar icin. Hic bulasmadik bu alana.

Ozet: Javascript - Python - Java EE ya da Microsoft uzerinde .NET ve C#. Low level isler icin ise C++ ya da Go.
peki bu alanlar için önerebileceğiniz en iyi Frameworkler ve Kütüphaneler var mı?

Bunu cevaplamak cok uzun surer. Bir suru onerebilecegim kutuphane var. Bence onlari ayri ayri basliklarda tartismak gerekiyor. Java dilinde X yapmak icin kutuphane onerisi gibi.

Framework konusuna gelince, Java dunyasinda Spring kullanmamis olan yoktur muhtemelen. Spring kullaniyoruz biz de. Dedigim gibi tum JVM dilleri ayni byte code a compile oldugu icin Kotlin, Java ve Scala da Spring kullanmak mumkun, biz de oyle yapiyoruz.

Node icin sadece ufak capli kutuphaneler ve e2e icin jest gibi ( yine yazari Facebook ) test kutuphaneleri kullaniyoruz. NPM de binlerce paket var, cok canli Node tarafi. Ama Javascript'in callback meselesi yuzunden basit tutmaya calisiyoruz. Neden bahsettigimi anlamak icin ayni isimde yapilmis web sitesine goz atabilirsin : ) Callback Hell
jest = Jest · 🃏 Delightful JavaScript Testing

Python icin sci-kit tabi ki, de facto. scikit-learn: machine learning in Python — scikit-learn 0.16.1 documentation

Saniyede cok fazla istek alan serverlar icin reactive programlama yapiyoruz. Project-Reactor. Yalniz bu biraz beyin yakar, paradigma degisiyorsun cunku. https://projectreactor.io/

Hocam mobil uygulama geliştirmede Facebook'un yaptığı React-Native framework'ü güzel mi?

Ben baya severek kullaniyorum. Begenmedigim noktalari var ( navigasyon yonetimi gibi ) ama alternatiflerine gore ( Ionic, Cordova ) cok daha oturmus ve basarili. Flutter da yeterince olgun degil bana gore.

hocam Node.js uygulamaların back-end taraflarında da çalıştıramaz mıyız?

Tabi, zaten biz de oyle yapiyoruz. Saydigim tum diller arasinda muhtemelen en hizli backend yazacagin dil nodejs tir. 3 satirda hello world yazarsin web uzerinde : )

Biz node'u agir islerde kullanmiyoruz performans problemleri sebebiyle. Ama piyasadaki islerin %90 inini node ile yaparsin, her zaman performansli yazmana gerek yok.
Node js vs Java - Which programs are fastest? | Computer Language Benchmarks Game
 

Geri
Yukarı