Backend için Java mı C# mı?

Katılım
13 Eylül 2018
Mesajlar
778
Çözümler
3
Yer
Kocaeli
Daha fazla  
Cinsiyet
Erkek
Meslek
Öğrenci
Merhaba, şu anda backend için NodeJS kullanıyorum ancak NodeJS ile devam etmeli miyim emin olmadığım için C# veya Java'da öğrenmek istiyorum. Bu dillerden hangisini seçmeliyim? Başka önerileriniz var ise onlarada açığım.
 
Merhaba, şu anda backend için nodejs kullanıyorum ancak nodejs ile devam etmeli miyim emin olmadığım için C# veya Java'da öğrenmek istiyorum. Bu dillerden hangisini seçmeliyim? Başka önerileriniz var ise onlarada açığım.

Bu sizin ilgi alanınız ile alakalı C# ile Java birbirine benzerdir biraz.
 
İkisiyle de backend yazdım, Java daha kaliteli geliyor bana. NodeJS'le de devam edebilirsin fakat kurumsal firmaların backendlerinde genelde Java, C# istiyorlar Go da istiyorlar da henüz Go yazan bir firmayla çalışmadım. Sadece spring framework'ünü bildiğin takdirde bile iş bulabilirsin, backend için yönlendirecek olsam oraya yönlendirirdim.
 
Dunya geneliyle yarisabilecek seviyedeysen Java.
Turkiye'de kalacaksan C#.

Turkiye'de cok fazla C# yazan yer var, ortalama bir is bulup takilabilirsin.

Competitive olacagim diyorsan Java'da maaslar daha cilgin ve yurt disinda daha yaygin ( C#'a gore )

Aslinda Microsoft tekeli olmasa bana gore C# Java'dan daha guzel bir dil.

Bence hic birine baslamadiysan ve iddialiysan Kotlin ogren. Kotlin ikisinden de daha iyi.

1612478919706.png


Bu grafige aldanip Java ogrenme yalniz, dedigim gibi competitive degilsen yine isin zor. Turkiye'de ortalama bir backend dev icin en safe choice C#. Muhittin yazilima gider otomasyon yazarsin en kotu ihtimalle.

Turkiye'deki yazilim piyasasi Dunya genelinde olandan daha farkli. Bizde Python isi de cok az var.
 
Bana kalırsa Back-end için kesinlikle Node.js fakat Türkiye'de çok fazla .NET developer aranıyor bütün şirketler .NET arıyor. Linkedin'de biraz gezindikten sonra ben de galiba .NET öğrenmeliyim diye düşünüyorum.

Dünya geneline gelirsek piyasa tamamen Node.js 'e yöneliyor.

Şuradan bu kanıya nerden vardığıma bakabilirsin:
Stack Overfllow - 2020 Developer Survey
 
C# ve Java compiler, nodejs, PHP, Python interpreter. CPU güçlü ise interpreter dilleri kullanılır Backend'de, Memory ve depolama alanından tasarruf edilir. Diğerlerinde tam tersi. Veya CPU çok güçlüdür ama Backend'de yapılan işler de çok fazla CPU gücü ister, o zaman C# ve Java gibi compiler olan diller kullanılır. Interpreter kullanılınca server programın kodunu satır satır okuyor ve anlık derleyip çalıştırıyor. Compiler da ise en baştan derleniyor, server derlenmiş kodu çalıştırıyor. Satır satır interpreterla çalıştırılan yazılım derlenmişe göre çok yavaş kalıyor tabii ama CPU çok güçlü olunca derlenmişe göre aradaki fark hissedilmiyor. Derlenmiş kodun çalışması için gerekli Memory, kaynak vs. baştan belli, devreye alındığında bunlar yoksa en baştan hiç çalışmıyor. Ayrıca yazılım çalışırken kullanılan kaynakları gerek kalmayınca boşa çıkarmak vs. çok dikkatli yapmak gerekiyor. Avantaj olarak da runtime hataları en baştan eleniyor. Interpreter'da ise Memory az olsa bile yazılım çalışıyor, anlık olarak Memory vs. boşaltılıyor, ekleniyor vs. ama runtime hatası olma ihtimali çok yüksek diğerine göre ve CPU güçlü olduğu zaman hissedilmese bile çok yavaş.

Yani bence backend dili seçerken hangi tip projelerde yer alacağınıza bakın. Mesela bankalarda runtime hatası tahammül edilebilir bir şey değil, bu yüzden Python, nodejs falan gibi script dilleri kritik projelerde kullanılmaz. Ayrıca script dillerini hack'lemek daha kolaydır. Görüntü işleme, canlı data mining vs. gibi gerçek zamanlı projelerde çalışacaksanız C#, Java vs.
 
C# ve Java compiler, nodejs, PHP, Python interpreter. CPU güçlü ise interpreter dilleri kullanılır Backend'de, Memory ve depolama alanından tasarruf edilir. Diğerlerinde tam tersi. Veya CPU çok güçlüdür ama Backend'de yapılan işler de çok fazla CPU gücü ister, o zaman C# ve Java gibi compiler olan diller kullanılır. Interpreter kullanılınca server programın kodunu satır satır okuyor ve anlık derleyip çalıştırıyor. Compiler da ise en baştan derleniyor, server derlenmiş kodu çalıştırıyor. Satır satır interpreterla çalıştırılan yazılım derlenmişe göre çok yavaş kalıyor tabii ama CPU çok güçlü olunca derlenmişe göre aradaki fark hissedilmiyor. Derlenmiş kodun çalışması için gerekli Memory, kaynak vs. baştan belli, devreye alındığında bunlar yoksa en baştan hiç çalışmıyor. Ayrıca yazılım çalışırken kullanılan kaynakları gerek kalmayınca boşa çıkarmak vs. çok dikkatli yapmak gerekiyor. Avantaj olarak da runtime hataları en baştan eleniyor. Interpreter'da ise Memory az olsa bile yazılım çalışıyor, anlık olarak Memory vs. boşaltılıyor, ekleniyor vs. ama runtime hatası olma ihtimali çok yüksek diğerine göre ve CPU güçlü olduğu zaman hissedilmese bile çok yavaş.

Yani bence backend dili seçerken hangi tip projelerde yer alacağınıza bakın. Mesela bankalarda runtime hatası tahammül edilebilir bir şey değil, bu yüzden Python, nodejs falan gibi script dilleri kritik projelerde kullanılmaz. Ayrıca script dillerini hack'lemek daha kolaydır. Görüntü işleme, canlı data mining vs. gibi gerçek zamanlı projelerde çalışacaksanız C#, Java vs.
Öncelikler yanıtınız için teşekkürler. Backend kısmını API olarak yapacağız bu yüzden ilk olarak Node.JS ile başlayıp daha sonra C# ya da Java'ya geçebilir miyiz?
 
Uyarı! Bu konu 5 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Geri
Yukarı