April 22, 2011

Evet haklısınız. Aslında Araba sınıfından türeyen bir Anadol ve Ferrari demek istemiştim. O kısmı biraz eksik yazmışım. O durumda da üst sınıf Araba sınıfı, Anadol ve Ferrari alt sınıflar olmuş oluyor.

Nasıl örnek ama Anadol 'v'****'s' Ferrari :)

Can teşekkürler hatırlatmalar için. Bu konuda bir dökümana yönlendirebilirsen sevinirim. Ben sadece w3schools'a bakıyorum. O da biraz basit kalıyor galiba :huh:

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

April 22, 2011

Ben w3schoolstan daha kapsamlı yer bilmiyorum. Ancak daha basit olarak buradan baktım: http://www.zvon.org/xxl/XMLTutorial/General_tur/contents.html#12

Orda genelde yapılan hatalı örneklerde olduğu için yanlışlıkların nereden nasıl yapıldığını öğrenebiliriz ve o hatayı kontrol altına alabiliriz diye düşündüm.

Örneğin ayrıca karakter kodlamasıda enum ile belirtilebilir. Böylece utf32 nasıl yazılıyor veya şimdi hatırlayamadığım iso bilmem kaç nasıl yazılıyor diye hatırlamamızda gerekmez?

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

April 22, 2011

Alıntı (erdem):

>

Örneğin üst sınıfımız Anadol diye bir sınıf olsun. Alt sınıfımız da Ferrari diye bir sınıf olsun.

Yalnızca örnek olarak verdiğini biliyorum ama o ilişkide bir uygunsuzluk var: "Ferrari bir Anadol'dur" anlamını verdiği için doğru görünmüyor. :)

Doğrusu, üst sınıfta zaten gerçekleştirilmiş olan bir işlevin alt sınıfta tekrardan tanımlanmasına kendim fazla rastlamıyorum. Çoğunlukla gördüğüm, üst sınıf 'abstract' olarak bildiriyor ve alt sınıflar tanımlıyorlar. (Bunlar yine C++ deneyimlerim; yoksa D'de 'interface' de var ve çoğu duruma daha uygun.)

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

April 24, 2011

Merhaba arkadaşlar;
Bir sorunumuz var.Sizce input alanlarını nasıl yapmalıyız?Ortalama 8 tane input tipi var.Hepsi için ayrı class yazma fikri var ama çok fazla kod tekrarı yaparız gibi geliyor.enum kullanmak fikri var aklımda.final switch ile kullanılabilir gibi geliyor.

Siz ne düşünüyorsunuz?

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

April 24, 2011

Aslında o şekilde de olabilir:

enum type { text, radio }

class InputField : XmlElement {

   this(type value) {
       super("input");

       final switch (value) {
       case type.text : setAttributes(["type":"text"]);
           break;
       case type.radio:
           setAttributes(["type":"radio"]);
           break;
       }
   }
}

Ama bence nesneler kişiliği olan elemanlardır. Bunu da ilk okuduğumda baya güldüğümü söylememe bilmem gerek var mı :)

Alıntı:

>

class objects are entities, meaning that they have "personality"

Ek olarak kişilikleri olduğu için kopyalanmamaları gerekiyormuş.

Konuyla ilgili olarak ben eğer okunabilirliği arttıracaksa biraz kod tekrarı yapılması taraftarıyım. Böylece soyutlamaları daha iyi yapabiliriz. Örneğin ilerde bunun gibi bir kod eklememiz gerektiğinde

class Form
{
   void radioButtons(string var, Button[] buttons);

koda bakarak ne yapılmak istendiği daha açık olmuş oluyor. Yani soyutlamaları daha iyi yapıyoruz diye düşünüyorum.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

April 24, 2011

Peki sizce her elemanı örnek verdiğim koddaki gibi mi yapalım. Yoksa ayrı ayrı soyutlayalım mı okunabirlik açısından.

Bir de ben artık w3schools yerine w3c'nin kendi sitesinden bakalım diyorum. Çünkü sanırım belirli bilgiler yeni HTML 4.01 standardıyla güncelliğini kaybetmiş gibi gözüküyor.

http://www.w3.org/TR/html401/interact/forms.html

Örneğin burada bir form elementi için 'ACTION' niteliğinin gerekli olduğunu görebiliyoruz. Ya da oradaki First name: gibi bir etiket için artık bir 'LABEL' etiketi de belirtmemiz gerektiğini görüyoruz:


<LABEL for="firstname">First name: </LABEL>

http://www.w3.org/TR/html401/interact/forms.html#h-17.3

Alıntı (acehreli):

>

http://www.w3schools.com/tags/tag_input.asp

Bir de 'INPUT' elemanının html için kapatılmaması gerekiyormuş,

Alıntı (acehreli):

>

button, kendisi bir bir işlem yapmıyor. Tek anladığımi, onu düğme çizmek için kullanıyoruz. O düğmeye tıklandığında ne olacağını acaba "onclick" gibi "event attribute"ları ile mi belirliyoruz?

Düğmeye tıklanınca da dediğiniz gibi 'onclick' olayı tetikleniyor anladığım kadarıyla.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

April 24, 2011

Erdem'in gösterdiği radioButtons() işlevinin arayüzü doğru. Aşağıda sesli düşünüyorum. :)

w3schools'da şu on türden input olabileceği söyleniyor: button, checkbox, file, hidden, image, password, radio, reset, submit, text.

http://www.w3schools.com/tags/tag_input.asp

hidden'ın sunucudan istemciye durum bilgisi göndermek için kullanıldığını biliyorum. Örneğin kullanıcının önceki pencerelerde seçmiş olduğu bilgiler burada tekrar istemciye gönderilir, kullanıcı yeni alanları doldurup formu tekrar gönderdiğinde o gizli bilgi de sunucuya gider ve sunucu hepsini birden görebilir. Oturumlardan haberi olan çatılarda bu yönteme sanırım gerek yok. Çünkü kullanıcının bütün durum bilgisi sunucu tarafında tutulur.

file, image, ve reset'i bilmiyorum.

button, kendisi bir bir işlem yapmıyor. Tek anladığımi, onu düğme çizmek için kullanıyoruz. O düğmeye tıklandığında ne olacağını acaba "onclick" gibi "event attribute"ları ile mi belirliyoruz?

Onların dışındakileri anlıyorum çünkü hem daha önce kullandım hem de w3schools'da örnekleri var:

http://www.w3schools.com/html/html_forms.asp

Aralarında özel ilgi isteyen tek input elemanı bence "radio" olan, çünkü big grup "radio"nun aralarından yalnızca bir tanesinin seçilebilmesi için o grubun hepsinin aynı "name" niteliğinin olması gerekiyor. Bu yüzden birbirleriyle ilgili olan bütün radio grubunun ismini tek olarak almak yararlı olur (Erdem'in gösterdiği gibi).

Aynı kısıtlamanın checkbox'ta da yapılması mantıklı gibi görünüyor ama tarayıcının "yalnızca birisi seçilsin" gibi bir davranışı checkbox'larda istenmediği için aynı gruptaki checkbox'ların name'leri farklı da olabilir. Yine de, bence programlama kolaylığı açısından kısıtlanmalı.

   void checkBoxes(string var, Box[] boxes);

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

1 2 3 4 5 6 7
Next ›   Last »