• Twitter
  • Facebook
  • RSS

Archive for category: Web yazılım tasarım

Bu ay içerisinde yazılım geliştirme ortamımızda ciddi değişiklikler yaptık.  Öncelikli olarak birincil uygulama geliştirme platformu olarak Play! Framework 1.2.4‘ü seçmiş durumdayız.  Neden Play! ve neden Play! 2 değil başka bir yazının konusu olacak kadar uzun.  Kısaca özel olarak istek gelmedikçe JEE’den (Seam ve Spring) uzak durmak gibi bir hedefimiz var.  Bununla beraber hala Django’yu da takip etmeye devam ediyoruz ve bizim ikincil uygulama geliştirme framework tercihimiz.

Play! ile beraber artık subversion’ı terk edip git kullanmaya başladık.  Git’i tercih etme sebeplerimizden en önemlisi “Gerrit” sunucusudur.  Her ne kadar git bizim kullanım alışkanlıklarımıza ters düşse de alışkanlıklarımızın da evrilmesini sağlayarak bu sisteme uyum sağlayacağımız konusunda şüphelerimiz yok.  Gerrit sunucusu sadece bir git sunucusu olmaktan öte bir “code review”  (kod inceleme) sunucusu.  Jenkins ile entegre ettiğimiz bu sunucu aslında bizim şu ana kadar olan tüm alışkanlıklarımızı değiştirmeye aday durumda.

Bu durumdaki iş akışlarımız ise şu şekilde olmaya başladı

  • Geliştirici yazdığı Play! kodları için JUnit ve Functional testlerini de yazar
  • Geliştirici kendi ortamında git ile versiyonlama yapar
  • Geliştirici Gerrit sunucusuna değişikliklerini “Push” eder
  • Gerrit gönderilen değişiklikleri Jenkins sunucusuna iletir
  • Jenkins son değişikliklerle birlikte kodu compile eder ve testleri çalıştırır
  • Jenkins sonucu Jabber ile geliştiricilere iletir ve Gerrit’i sonuçtan haberdar eder
  • Eğer Gerrit, Jenkins’den “hata yok” mesajını alırsa kodu incelemeye açar
  • İnceleyen kişi onay verirse kod “Master” dala Gerrit tarafından commit edilir
  • Bu süreç içerisinde bir hata oluşursa, hatalı versiyon için Gerrit’e düzeltme patch’i gönderilir

Bu süreç içerisinde artık testler daha da önem kazanmakta.  Testleri geçmemiş kod review alamadığı ve ana branch’e geçemediği için kod kalitesinde ciddi bir artış beklemekteyiz.  Aynı şekilde review sürecinin sisteme eklenmesi daha ufak commit’lerin yapılmasına sebep olacağını düşünmekteyiz.  Zira kodu inceleyen kişi çok uzun commitleri incelemekte zorluk yaşayacaktır.

Bu süreç içerisindeki sıkıntı ise Redmine ile Gerrit entegrasyonundan kaynaklanmakta.  Redmine pek de düzgün olmayan bir şekilde “git repository browsing” yapmakta.  Bu konu ile de bir iki farklı yaklaşımı gözden geçirmekteyiz.

Bu şekilde bir sistem değişikliği sancılı olmakla birlikte iyi sonuçlar alacağımız konusunda kendimize güvenimiz tam.

Web yazılımı ve tasarımıyla uğraşırken sıklıkla uğraştığımız hataları en kolay şekilde çözmemizi sağlayan ve uzun süre uğraşmamıza gerek kalmada bize hemen çözüm üretebilen bazı eklentileri ve online servisleri listelemek istedim.
ilk önce hayatımızı kolaylaştıran sevgili Firefox umuza ekleyebileceğimiz eklentilerden başlayalım

  • Firebug : Bu eklenti sayesinde oluşturduğunuz web sayfasının, css ini görebilir ve değiştirebilirsiniz, Html çıktısıyla oynayabilir hatalarını ayıklayabilirisiniz, javascript leri izleyebilir DOM nesnelerini görebilirsiniz, kısacası olmasza olmaz bir eklenti
  • Web Developer : Yine webcinin alet cantasında bulunması gereken bir eklenti.
  • MeasureIt : Sayfalarınızda pixel ölçümlerini yapmanızı sağlayan güzel bir eklenti. Bunun sayesinde alanları olması gerektiği gibi ölçüp
  • ColorZilla : Renkleri Hex veya RGB olarak almanızı sağlayan ve bununla birlikte bir kaç özellik daha sunmakta. Artık hoşunuza giden bir rengi bulmak için print screen alıp bir resim programıyla uğraşmanıza gerek yok.
  • IE View : En çok uğraştığımız alanlar elbette yaptığımız sayfanın bütün kullanıcılar tarafından aynı görüntülenebilmesi. Ne yazık ki bu kullanıcıların büyük çoğunluğu explorer kullanmaktadır. Bu eklenti sayesinde expolerı ayrı olarak açmanıza gerek kalmamakta. Firefox içerisinde Explorer pencerisini görüntüleyebilmekte. (sadece windows)
  • LinkChecker : Web sayfanızdaki bağlantıların (linklerin) ulaşılabilir olup olmadığını göstermektedir.
  • FireShot : Web sayfasını imaj olarak kaydetmenize yardımcı olamkla birlikte isterseniz sayfa üzerinde belli alanları işaretleyip naotlar da eklemenize yardımcı olmaktadır. (sadece windows)
  • Screengrab : Aynı Fireshot gibi web sayfasını imaj olarak kaydetmenize yaramakta ama linux da da çalışabilmektedir

Renk Paletleri
Uygun renkleri bulmak bazen can sıkıcı olabiliyor. İşinize yarayacak bazı araçlar.

  • I Like Your Colors : Renkleri hoşunuza giden bir web sitesinin adresini girin ve kullanılan renkleri kolayca görün.
  • ColourLovers : İşinize yarayabilecek renkler ve renk paletleri örnekleri.
  • kuler : Adobe dan hazır renk paletleri.

Web Sayfası Testi
Web sayfanızın değişik Tarayıcı ve işletim sisteminde test etmenize yardımcı olacak araçlar

Bunlarda Gerekebilir
işinize yarayabilecek başka araçlar