20 Mayıs 2016 Cuma

Spring Boot - Swagger UI Entegrasyonu


Swagger Rest Servisler için kullanılan açık kaynaklı bir dökümantasyon aracıdır. Birçok dil ile birlikte kullanılabilir ve kendi içerisinde de swagger-core , swagger-ui , swagger-editor ... oldukça fazla modül bulunmaktadır. Ben bunlardan sadece swagger-ui kullandım ve bu yazının temel amacı da kurulumunun nasıl yapıldığı ve ne işimize yaradığıdır.

http://swagger.io/
https://github.com/swagger-api

Swagger UI projemize dahil ettiğimizde kendi sistemimizi daha düzenli bir halde görüntüleyebiliriz ve test edebiliriz.


Yukarıdaki resimden de anlaşıldığı gibi kendi Rest Api miz içerisindeki Controller ları ve içerisindeki methodları , bunların GET , POST , DELETE , ... gibi Http methodlarını görebiliyoruz.



Yukarıdaki resimde de görüldüğü gibi  '/test' isminde GET methoduyla çağırabileceğimiz ve tester methoduyla çalışan(Tester kendi verdiğim method ismi , bu kısımları yazdığımız controller daki method isimlerinden otomatik çekiyor) bir istek yapısı var.  Bu isteği GET methodu olduğu için direk tarayıcının adres satırına yazarak çalıştırabiliriz. Eğer GET değilde POST , DELETE veya PUT olsaydı bunları çalıştırabilmek için Postman veya client tarafındaki kodlarla ya da curl kullanabilirdik. İşte Swagger-ui ın diğer bir güzel özelliği de kendi apimizdeki oluşturduğumuz istekleri parametreleriyle birlikte test etmemizi sağlamaktadır. Bunu yaparkende curl kullanıyor.



Test ederken bize Curl kodunu , istek URL sini  , sonuç kodunu ve sonucu ve başlık kısmını dönüyor.

Kısaca ne işe yaradığından ve kullanımından bahsettikten sonra Spring Boot entegrasyonuna geçebiliriz;

Kurulum için aşağıdaki linte anlatılanları sırası ile yapmamız yeterli , aynı işi tekrar etmemek için yazıyı daha fazla uzatmıyorum. Herhangi bir sıkıntınız , sorunuz veya isteğiniz olursa her zaman yorum bırakabilirsiniz.

http://heidloff.net/article/usage-of-swagger-2-0-in-spring-boot-applications-to-document-apis/

Şimdilik bu kadar size iyi eğlenceler!
 

9 Mayıs 2016 Pazartesi

Grafik Kütüphanem


Bu çalışma 4 ay gibi kısa bir sürede(Javascript i bilmeden sıfırdan başladığımı düşünürsek) istek üzerine yapmış olduğum bir grafik kütüphanesidir.  Bu kütüphanede 24 adet farklı grafik bulunmaktadır. Kütüphanenin yapımında d3.js kullanılmakta ve grafikler özel bir veri formatına sahiptir yani özelleşmiş durumdadır ve sadece tasarlanan proje içerisinde çalışmaktadır. Normal kullanım için uygun değillerdir!  Grafiklerin genel özellikleri aşağıdaki gibidir;

  1. Dinamik yapıda
  2. Responsive  
  3. Cross browser (Safari , Mozilla Firefox ve Chrome üzerinde test edildi)
  4. Png ve Svg formatında çıktı 
Bu özelliklere sahip grafiklerin 5 tanesini AngulaJS kullanarak projeye de bizzat kendim dahil ettim. Bu 5 grafik sorunsuz şekilde çalışmaktadır. Süreç devam ederken projede grafiklerin kullanımından vazgeçildiği için diğerlerini sisteme bağlayamadan olduğu gibi bıraktım. 

Aşağıdaki videodan grafiklerin taslak halini görebilirsiniz.  Oluşturulan bu grafiklerin tamamının renk ve tasarımları yaptıran kişilere aittir!!!