Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

Java vs Node vs .Net vs ...


Litminov

Öne çıkan mesajlar

front-end başladığım maceraya backend - full-stack olarak devam ettim şimdi de engineering kısmındayım. sonrası ne olur bilinmez diye bir şeyde uzmanlaşayım (developing kısmında) diyorum. 

Bu firmalar neye göre C# neye göre Java neye göre Node (mern vs) seçiyor anlayamadım. Bana sanki eski kafalı taraf veya devlet tarafı .net ya da java, yeni firmalar ise JS tercih ediyor gibime geldi. 

İçimde niyeyse .net ve java'ya karşı bir soğukluk var js tarafına odaklanayım diyorum. Bir yandan da araştırma yapıyorum aralarındaki farklara, performanslarına vs. CPU bazlı işlemler için Java, Ram ve HTTP istekli işlemler için Node daha iyi dendiğini gördüm birkaç yerde. Paypal da Java'dan Node'a geçiş yapmış daha iyi olduğunu söylüyor sanırım blogunu okuyorum şimdi. 

İşlemler neye göre CPU, neye göre RAM odaklı oluyor daha öğreneceğim şeyler arasında. Kısacası yazılar arasında boğuluyorum daldan dala atlayarak bu konuda görüşlere, tavsiyelere, kaynaklara ihtiyacım var. 

 

Litminov tarafından düzenlendi
Link to comment
Sosyal ağlarda paylaş

"neye göre şekilleniyor"u bir kaç örnekle anlatayım.

- bahsettiğin "eski kafa" dediğin tayfa olarak bankalar, büyük firmaları örneklendirelim. bu büyük firmalar 20-30 senedir bu işin içindeler, 30 sene önceki "insancıl" diyebileceğimiz yazılım dilleri şu anki kadar bol değildi. java/.net olarak uygulamalarını geliştirdiler, ekip ihtiyacı oldu, .net/java bilen insanları aldılar şirkete ekip büyüdü, şirkette artık herkes java biliyor ve içerideki ürünler de java. bu şirket python'a geçmez, hatta istese de geçemez kolay kolay.

- bu şirketten istifa eden "deneyimli" bir abimiz başka yeni bir şirkete lider benzeri bişey olmaya gitti. ekip toplarken kendi uzmanlık alanında insanları seçti hepsi gene java oldu.

- şirket sahibinin yükümlülüğü vardır yasal olarak, yazılımlarda sıkıntı olursa diye arkasına şirket desteği için microsoft'u almak isteyebilir. hazır MS kullanıyoruz herşeyimiz microsoft stacki olsun azuresinden .net'ine kadar diyebilir.

- proje o kadar büyüdü ki lider abimiz işlere yetişememeye başladı kendisi müdür oldu altına liderler topladı. kalabalık olunca tartışmalar çıkmaya başladı X yazılımı daha iyi, Y daha iyi, bu yöntem kaka bu toolu kullanalım, senin ben eşşeğim filan derken hoop şirketin içindeki ürünler aynı yazılım dili olmasına rağmen çorba olmaya başladı. yapılan yazılım aşırı hantal takip edilemez kimin nereye ne yaptığı belli olmayan bir şey haline geldi. burada büyük abilerimiz demiş ki takımları da projeleri de komple bölün. yazılımlar kendi arasında konuşsun. (microservise giriş)

eskiden uygulamalar arasındaki iletişim bile sıkıntılı idi. socket açarak iletişim kuruluyordu çoğu zaman, yazılım dilinin hala gelişiyor olması, desteğinin verilmesi baya önemliydi (hala önemli aslında. artık geliştirilmeyen dillerde kimse kalmak istemez bkz: delphi). ama teknoloji aşırı ilerledi, Soap/xml zamanın en muhteşem iletişim protokolüyken şu an rest, rpc vs. aldı başını gidiyor ve "daha kolay" geliştirme imkanı veren yazılım dilleri çıkıyor sağdan soldan. 

takımlar komple kendi içlerine ayrıldığı için artık yavaş yavaş şirketlerdeki X dili zorunluluğu kalkmaya başladı. farklı türde rezillikler başladı.

sonuç olarak anahtar kelime "en kolay/en hızlı" geliştirme yapmak aslında. bu tür teknoloji seçimlerin ana sebebi performans filan değil. 1. sırada en kolay, en hızlı nasıl geliştiririm. deneyimli abimizin java ile devam etmesinin sebebi en iyi bildiği en hızlı çözüm üretebileceği aracın o olması. ama bu deneyimli abimize dayısının amcası gelse kardeş benim dükkana düz bi site yapsana dese java yerine php tercih edebilir çünkü tek sayfa yapmak için daha kolay bir yöntem.

performansı yazılımcı yapar yazılım dilinden ziyade. hangi dil olursa olsun yazılımcı kötüyse performansı rezil bir şey yazabilir. uzman değilseniz performanslı yazacağım diye çok da düşünmeyin. sıkıntı gelirse bakarsınız öğrenirsiniz exp kasarsınız.

Link to comment
Sosyal ağlarda paylaş

Eğer bir şey js ile yazılabiliyorsa bir gün illa js ile yazılır diye bir atasözü var. Bana da mantıklı geliyor. Özellikle js biliyor olmak, ekosistemine alışık olmak büyük avantaj. Express/mongo her geçen gün daha da populerleşiyor bu sebepten.

Kişisel olarak da daha keyifli buluyorum ben. Java'ya bakınca koşarak kaçasım geliyor mesela. 

Link to comment
Sosyal ağlarda paylaş

küçük projelerde js daha pratik ama performans için kesinlikle yeterli değil. yük almayacak basit bir iş için tercih edilir yani.

golang ise business basit ama çok hızlı olması gereken işler için çok iyi. json parse vs işlerinde çok hızlı. deli gibi event basıp big data işi yapacaksan tercih edilir.

business kompleks ve yük alacaksa hala dotnet core ya da java seçmek mantıklı bence.

spesifik işlerde gereksinimler farklı yerlere yönlendirebilir tabi. yeni çıkan her şeyi detaylı inceleyemiyoruz. genelde 3-5 makale okuyup artı eksisine bakıyoruz. gönül hepsini iyi bilip projeye göre en doğrusunu seçmek isterde. vakit yetmiyor?

Link to comment
Sosyal ağlarda paylaş

JS ogrenirsen her alanda is bulabilirsin. Zaten bir dilde low level konseptlerine kadar uzmanlastiktan sonra diger dilleri ogrenmesi cok daha kolay oluyor. Bu nedenle JS & co. ogren derim, sonra bos zamaninda Go, Rust, Kotlin, Elixir, .NET, ne istersen ogren. Is basinda ognenirsen daha da iyi.

 

Dendigi gibi sirketlerin architectleri karar veriyor genelde degerlendirme yaparak. Ayrica NodeJS gayet dogru secim olabilir; gelistirmesi nispeten daha hizli/basit olabildigi icin oradan edilen tasarruf daha cok/iyi (scaling) makinelere yatirilabilir. Netflix NodeJS kullanarak buralara geldi.

DoruK tarafından düzenlendi
Link to comment
Sosyal ağlarda paylaş

.net ozellikle Turkiye'de cok yogun cunku Microsoft deli gibi partnership kasti Turkiye'de, ondan kasiyorlar. Global pazara yonelik en iyi diller python ve js, typescript olur. python hala backendde de iyi django sayesinde. js ts her bir boku yapabiliyor, bir de git gide populerlesiyor backendde de, frontendde zaten mecbur. dolayisi ile python = typescript = js > others

Link to comment
Sosyal ağlarda paylaş

10 yıllık developerım en başından bugüne hala 1 tane dil öğrensem de emekli olana kadar o bildiklerimle para kazansam diye düşündüm ama olmadı. Javascript bunu az biraz sağlıyo, full stack hiç stacktir ama nedense piyasa full stack sevdasına düşmüş herkes her şeyi bilsin derdinde. Bu mesleğe başladığımda sadece html,css ve js biliyordum şimdi yanına nodejs eklendi o da yetmedi devopsda biliceksin kardeş dediler ve aws'ye ucundan kıyısından girdim muhtemelen 2 sene sonra iyi düzeyde bilmemi bekleyecekler. 3 adamın yaptığı işi tek adama düşürdü rekabet sağolsun.

Yazılım sektörü diğer sektörlere nazaran çok kazandırıyo ve remote çalışma olayı müthiş büyük bir benefit ama çilesi çok. 40dan sonra kod yazmak istemiyorum ben mesela artık bu hızla değişen ekosisteme ayak uydurma işi beni sıktı. Canı sıkılan js framework çıkarıyo, yok deno çıktı node ölcek, yok svelte çıktı react ölücek falan bi de bu işin fanboyluk kısmı var ki o daha fena, işsiz twitter yazılımcıları ezikliklerini kapıştırıyolar sanal mecralarda.

Link to comment
Sosyal ağlarda paylaş

vue daha iyi diyorlar evet ama react a acayip talep var. linkedin de iş arıyorum u açınca polonyadan ing ye ukraynaya kadar iş teklifi yağıyor, Türk hr lar zaten taciz seviyesinde saldırıyorlar.

 

ama teknik testleri geçmek aşırı zor değil ama o kadar kolay da değil. 

lovecraft0Z tarafından düzenlendi
Link to comment
Sosyal ağlarda paylaş

Angular'in DOM manuplation'i react ve vue'den farkli. Reach ve vue virtual DOM kullanirken angular real DOM uzerinde manuplasyon yapiyor. Kagit ustunde bu react'i daha performansli yapar ama cok edge case bir web tabanli is yapmiyacaksaniz pek farkedilcek bir performans farki oldugunu dusunmuyorum ikisi de client a yuklendikten sonra.

Link to comment
Sosyal ağlarda paylaş

Flutter ne garipmis ya, windows da gelistir, ios, andro, web, winui alayina export ediyo. Oyle platform based kod yazmak da mimimal. Web e export ettigi UI in hem canvas hem HTML5 versiyonlarini gorunce ckum tavana yapisti. Dart da C# in kucuk kardesi gibi, syntax neredeyse ayni. Google yakinda Angular i deprecate ederse bundan eder. Yumulun.

Link to comment
Sosyal ağlarda paylaş

biraz kompleks seyler gelistirmeye basladigin zaman o native liblerin hepsi sorun cikarmaya basliyor ve yerine gore workaround bulma / fixleme zamani senin native yazip calistiracagindan daha uzuna veya hemen hemen ayni vakte gelebiliyor.

nativescript ve vue ile cok cektim ben.

basit bir mobile app yapiyorsan guzel cozum ama cross platfrom frameworkler.

C#'a asinaysan xamarin'e de bakabilirsin. iyi bir community'si var.

Link to comment
Sosyal ağlarda paylaş

react native yazmış birisi olarak ben de multi platform dillere çekimserim. bireysel projelerde çok güzel. ya da basit app ise. ama kurumsal şirketlerde kabus gibi. tek ekip, düşük maliyet ve single code kafasında kararı veriyorlar. ama teknik bilmeyen ui, ux ekipleri nativedeki her davranışı aynı şekilde isteyince işin boku çıkıyor. maksimum %85-90 native hissiyatı oluyor. bu yetmiyorsa uzak durmak lazım.

Link to comment
Sosyal ağlarda paylaş

 

sunu takip ediyorum 1-2 haftadir, baktigin zaman trilyor dolarlik app'in neredeyse %80 lik functionality sini yapiyor adam, zort diye 4 platforma export edebiliyorsun. zaten instagram dedigin nedir ki, image yukle, feed pompala. belki cook specific filterlar falan vardir da, marketteki applerin zaten %99.9 u react native veya flutter ile klonlanabilir bana kalirsa. hepi topu hepimiz CRUD ve biraz animasyon yapiyoruz. 

ayni sey Unity icin de gecerli, yani kim sifirdan Ios native android oyun yazmak ister direk tek yerden export etmek varken.

yok ben 2 milyor dolarlik sirketim, 121 tane dev im var, bunlari 4 takima bolup yazdiririm diyosan o lala.

Ben birsonraki SPA projeme hic gozunun yasina bakmam flutter ile girisirim, tabi kesin acaip use-case ler cikacaktir desteklenmeyen ama, bu kadar fragmented dil ve platform varken, developer ordusu olmayan sirketler icin react native, flutter gibi proxy ler kullanmak en akillicasi bana gore.

MAUI de denenebilir, ama microsoft iste, developerlarin kulagindan tutup zkib birakmakla meshur adflkjafdl

Link to comment
Sosyal ağlarda paylaş

1 saat önce, df dedi ki:

react native yazmış birisi olarak ben de multi platform dillere çekimserim. bireysel projelerde çok güzel. ya da basit app ise. ama kurumsal şirketlerde kabus gibi. tek ekip, düşük maliyet ve single code kafasında kararı veriyorlar. ama teknik bilmeyen ui, ux ekipleri nativedeki her davranışı aynı şekilde isteyince işin boku çıkıyor. maksimum %85-90 native hissiyatı oluyor. bu yetmiyorsa uzak durmak lazım.

en iyi yol bildigin yoldur, native yollar arsin arsin asinmis.

2 kat is yaparim exponential is yapmaktansa

hele js tabanli frameworklerden kacmak lazim, 1 ay yazdigin kod ertesi aya calismiyor, backward compatibility bilenin js yazmasi yasak mi acaba ?

 

tabii phonegap ile basladik bu islere, allah dusmanima vermesin cross platform. simdi biraz iyilesmedi degil orasi ayri

sardalya tarafından düzenlendi
Link to comment
Sosyal ağlarda paylaş

×
×
  • Yeni Oluştur...