JVM Nasıl Çalışır Yazı Serisi – Java Just In Time Compiler (JIT) Nasıl Çalışır?
Java’yı çoğu programcı yorumlanan (interpreted) dil olarak bilir. Java’nın yavaş olduğu efsanesi de başlangıcını da burada bulur. Bytekod olarak derlenen Java sınıfları Java sanal makinesi (Java Virtual Machine – JVM)…
Merhabalar Ozcan Bey,
Ben sizin “Tasarim Sablonlari ve Yazilim Mimarileri” adli kitabinizi okumaktayim.Bu kitapta ogrendiklerimden dolayi 1 soru sormak istedim.Ilk paragraftaki implements ve extends kullaniminin bagimliligi arttirdigindan bahsettiniz ve kullanimini kotulediniz bu bir nevi design patterns lari da kotulemek anlamina gelmiyo mu? Ogrendigim kadariyla tekrar eden sorunlari cozmek amaciyla kullanilan ve tekrar kullanilabilir tipte yazilimi destekleyen “design patterns” kavrami bir nevi kotulenmis oldu bu yazida Kitabinizda anlattiginiz konular tamamen interface ve abstract class uzerine kurulu oldugu icin bu soruyu sorma geregi hissettim.Cevabiniz icin simdiden tesekkurler iyi calismalar…
Kötüleme degil, daha ziyade ben biraz hayal kurdum, nasil olurdu acaba diye kendime sordum.
Java 8 ile abstract sinifi kullanimi ortadan kalmis oldu. Interface siniflar bünyesinde default implementasyonlar olusturabiliyoruz. Bu yüzden extends ortadan kalmis gibi görünüyor. Geriye sadece implements kaldi
Interface bazli yazilim modüler yapilar olusmasi icin vazgecilmez bir durum. O yüzden tasarim sablonlarinda sikca kullanilmakta ve kullanilmali. Modüller arasi esnek bir bag olusturmak icin interface siniflar gerekli.
Hocam merhaba, Ben restful web servis ve web uygulaması oluştururken Spring Mvc kullanıyorum. Yanlış anlamadıysam Controller oluştururken Spring anotasyonları yerine JSR 330 anotasyonlarının tercih edilmesinin uygun olacağını söylemişsiniz. Fakat metodlarda @RequestMapping ve @ModelAttribute anotasyonlarını kullanmışsınız. Sorum ise; Bu anotasyonlara alternatif anotasyonlar JSR 330 da var mı ve Spring Mvc ile sorunsuz çalışabiliyorlar mı ? Ve eğer Spring anatasyonlarını kullanmayacaksak, neden Spring dependency lerini aplikasyona ekleyelim? Yani direk bir ejb projesi yapılandırmak daha mantıklı değil mi ?
JSR 330 sadece dependency injection icin gerekli anotasyonlari ihtiva ediyor. Tamamen Spring anotasyonlarindan bagimsiz bir REST uygulamasi gelistirmek icin Java API for RESTful Web Services, kisaca JAX-RS API’sini kullanmalisiniz. Böylece uygulamayi üst katmanda standart Java anotasyonlari ile yapilandirirken, alt katmanlar icin Spring catisini kullanabilirsiniz.