8 Ağustos 2017 Salı

Spring'e Giriş

Merhaba arkadaşlar,

Bu yazımda ve takip eden yazılarımda Spring'ten bahsedip birkaç örnek yapacağım.


Spring Nedir?

Spring kısaca Java uygulamalarını düzgün bir altyapıyla hızlı bir şekilde geliştirmek için kullanılan açık kaynak bir platformdur.  En önemli özelliği modüler olmasıdır. 

Spring, kurumsal uygulamalar geliştirmek için en popüler java geliştirme ortamıdır.Dünya genelinde milyonlarca geliştirici Spring Framework üzerinde kolayca test edilebilir,yüksek performanslı uygulamalar geliştirmektedir. 

Spring projeleri yazılımcıya konfigürasyon, güvenlik, web uygulamaları, big data gibi birçok konuda gereken altyapıyı sağlar. Spring Boot, Spring Data, Spring Framework, Spring Security sağlanan projelerden bazılarıdır. Springin sağladığı tüm projelere bu linkten erişebilir, inceleyebilirsiniz.


Spring Framework'ün Faydaları


  1. POJO sınıfları sayesinde minumum düzeyde karışıklık oluşturur.
  2. Spring modüler olarak geliştirilmiştir, sadece ihtiyacınız olan modülleri ekleyerek gereksiz modül eklememiz için bizi zorlamaz.
  3. Spring, tam anlamıyla bir ORM yapısı sağlayarak JEE,Kuvars ve JDK sayaçlarını bünyesinde bulundurarak diğer teknolojileri de kullanmak için alt yapı sağlamaktadır.
  4. Spring ile yazılmış bir uygulamanın test edilmesi kolaydır.
  5. Spring Web Framework, popüler olan Struts ve diğer kütüphaneler gibi iyi tasarlanmış bir Web MVC alt yapısı sağlamaktadır.
  6. Spring tutarlı veya kontrolsüz(teknolojiye özel istisna durumlar) teknolojilerin kullanımı için uygun bir API sağlamaktadır.(Hibernate,JDBC,JDO)
  7. Spring küçük bir uygulamadan küresel işlem yapan bir uygulamaya kadar gerekli alt yapıyı ve desteği sağlar.



Spring projeleri modüler olarak kullanılabilmektedir. Yani, uygulamanızda ihtiyacınız olan altyapı için uygun projeyi seçip kullanabilirsiniz veya yine ihtiyacınıza göre birden fazla projeyi bir arada kullanabilirsiniz. Daha iyi anlaşılması adına projelerin kullanımına yönelik bir örnek verecek olursak, Spring Framework  kullanarak bir web uygulaması geliştirmeye karar verdiniz diyelim. Bu uygulamanız için veri tabanına erişim sağlamanız da gerekeceğini varsayalım. Veri erişimi noktasında yine spring tarafından sağlanan Spring Data projesini kullanabilirsiniz. Böylece uygulamanızı Spring Framework ve Spring Data projelerini bir arada kullanarak gerçekleştirmiş olursunuz. Spring Data kullanmak istemediniz diyelim, sorun değil, Springin modüler yapısı sizi kendi projelerini kullanmanız için zorlamıyor, alternatif olarak Hibernate (şuan için Spring Data alternatifi olarak bilmemiz yeterli) kullanabilirsiniz. Bu şekilde de uygulamanızda sadece Spring Framework projesinden yararlanmış olursunuz.



Sonuç Olarak

Sonuç olarak, Spring birçok alanda (veri erişimi, güvenlik, konfigürasyon…) uygulamalarımız için gerekli altyapıyı sağlamaktadır. Spring projeleri kendi alanlarında kayda değer bir iş yükünü yazılımcıdan alır. Yazılımcıya senin ihtiyacın olan bu işi nasıl yapacağımı ben biliyorum, tekerleği yeniden keşfetmene gerek yok, bu konuyu bana bırak sen diğer işlerine yoğunlaş der. Bu sayede yazılımcı olarak bizler uygulamamızın kalan kısımlarına yoğunlaşma, daha çok vakit ayırma imkanı buluruz. Modüler yapısı ile yazılımcıya kısıtlar koymadan istenilen projeyi kullandırması, ciddi bir iş yükünü yazılımcıdan alarak hayatını kolaylaştırması Springi tercih sebebi yapmaktadır.

Spring için bütün bilgiler : Spring Guides :  https://spring.io/guides




Kaynaklar:

https://www.mobilhanem.com/spring-nedir/
http://www.javauzmani.com/spring-framework-giris/
https://kurukod.wordpress.com/2015/07/06/spring-nedir-neden-kullanilir/





1 yorum: