Bu form elementinin diğer ortamlardaki adını bilmiyorum ama cocoa'daki (macosx işletim sistemini doğal arayüz kütüphanesi) adı segmented control. Bu yüzden, yazının devamında segmented control olarak kullanmaya devam edeceğim.

iOS arayüzlerindeki on/off swtich'lerini biliyorsunuzdur, geçtiğimiz 2 yılda web'deki implementasyonları o kadar artti ki, artık her yerde basit bir javascript kütüphanesi olarak bu form elementini bulmak mümkün. Sadece javascript değil css implementasyonları da var. Bu yazıda, bu elementin teorisine biraz değineceğim. Ayrıca benim kullandığım method, javascriptin çalışmadığı tarayıcılarda da sorunsuz çalışacak (fallback) hatta css desteklemeyen taryıcılarda dahi fonksiyonalitesini bozulmadan koruyacak standart input, label elementleri ile bunu nasıl yapabileceğinizi anlatacağım.

Ama görsel olarak neyden bahsettiğimi göstermem gerekirse:



Gördüğünüz gibi aslında standart bir çoktan seçmeli tek cevap sorularından bahsediyorum. Bunun için standart form elementlerinden radio butonu kullanarak cevapları tek grup altında label ve input elementleriyle bir formda toplayalım.

Devamını Oku →

Kontrol Yapıları

Kontrol yapıları programların neredeyse her 5 kodundan birinde vardır. Çünkü kontroller şartlar değiştiğinde sonuçları değiştiren yapılardır. Eğer böyle bişey olmasa idi program diye birşey olmaz statik yapılar olurdu. Kontrol yapıları çok çeşitlidir. Ancak sık kullanılan 2-3 tanesini ele alacağım.

if Kontrolü

Basit bir yapıdır. Basitçe kullanımı :
if( koşullar ){
  print 'koşul sağlandı';
}
şeklindedir. Koşullar gerçeklendiği sürece işlemler yapılacaktır.

if else Kontrolü

if kontrolüne koşulun olmadığı zaman da görev verilenidir.
if( koşullar ){
  print 'koşul sağlanıyor';
}else{
  print 'koşul sağlanmıyor';
}

if else if kontrolü

Bir if else kontrolünde else yani ilk koşulun sağlanmaması halindeki duruma bir if eklenirse yani üsttekilerin sağlanmaması ve burada tanımlanan koşulun sağlanması halidir.
if( ilk koşullar ){
  // ilk koşular sağlanıyorsa yapılacaklar
  print 'bir';
}else if( ikinci koşullar ){
  // ilk koşullar sağlanmıyor ve ikinci koşullar sağlanıyorsa yapılacaklar
  print 'iki';
}else if( üçüncü koşullar ){
  print 'üç';
  // ilk ve ikinci koşullar sağlanmıyor ve üçüncü koşullar sağlanıyorsa yapılacaklar

}else{
  // hiçbiri sağlanmıyorsa yapılacaklar
  print 'bir, iki ve üç DEĞİL!';
}

switch / case Yapısı

switch / case yapısını çok sonuçlu olayları kontrol ederken kullanırız. Mesela bir olay sonucu $deg değişkeni 3 değer alabilsin ("1x","2x","3x"). Burada if'leri kullanmaktansa switch / case yapılarını kullanmak daha kısadır.
switch($deg){
  case '1x' : print "deg'in içi 1x";break;
  case '2x' : print "deg'in içi 2x";break;
  case '3x' : print "deg'in içi 3x";break;
  default : print "deg'in içi 1x,2x,3x değil";
}
Kontrol yapıları aslında programlamada en sık kullanılan yapılardır. Farkında olmadan çok kez bu yapıları defalarca defalarca yazarız. Kullanımlarını, esnekliklerini iyi bilmek gerektiğini düşünüyorum.


Hazırlayan : Mehmet Fatih YILDIZ

Popüler Etiketler

mfyz design windows linux fstab ntfs firefox zaman facebook connect api box social html db database service free html5 mobile browsers table media sosyal medya twitter auth javascript js jquery plugin screen konsol terminal lifestream rss proje logo mootools ajax xmlhttprequest blog macosx apple osx player form input textarea select örnek kod php http download css cache htaccess apache kontrol yapıları if while date tarih regex phpstorm jetbrains mysql pgsql sql mssql ide editor url iOS optimizasyon less css3 ubuntu portfolio startups bootstrap code ipucu svn subversion ipad iphone itunes music kitap ui development google chart grafik ios app store store in-app purchase purchase verification integration storekit itunes connect server icon ikon xhtml kurulum switch subscription ux icons tebrik diff xml nedir internet explorer wanda digital license network session istatistik gimp howto workspace route router mod_rewrite lisans query object ruffles doritos share meta open source banner calendar job developer language style nasıl cms analyse procedure kampanya tytz export tool app opengraph graph ie browser support pear mdb2 link sitemap generator prepare execute optimization fql seo search dokuman spam parse pharma hack wordpress oyun injection internet radio framework insanlar git version control deployment button compile applications laptop notebook widget cookie assets login webkit mail newsletter statistics coding compiler on-the-fly web app imza signature wireless www subdomain redirect crossdomain