Javascript Kalıpları

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Ayro
    Ayro's avatar
    Kayıt Tarihi: 08/Ağustos/2005
    Erkek

    Programlama dilinde kalıplarınızı oluşturmak önemlidir. Fakat bunu yaparken hem başkalarının anlayabileceği, hemde 3 sene sonra baktığınızda bile anlayabileceğiniz bir şekilde yapmanız gerekir. Bu yüzden bir standarta sahip olmak, kalıpların olması iyidir.

    Dougles Crockford'un tavsiyeleri;

    http://www.jslint.com/

    kullanarak, kodlarınızda yapmanız gerekenleri görebilirsiniz. Örneğin ;

    function deneme(){
        ...
    }

    Fakat function deme() 'den sonra bir boşluk bırakmamızı söylüyor. Bizde bırakalım;

    function deneme() {
        ...
    }
    ---

    Başlayalım !

    block {
      ...
    }

    block
    {
      ...
    }

    Hangisi doğru ?

    Doğru cevap : normalde ikiside doğrudur. Bunun doğru cevabı ve yanlış cevabı yok. İKiside kullanılabilir. Fakat ; sürekli aynı şekilde kullanmalısınız. Aynı projede olduğunuz insanlar, kodlarınızı anlayabilmelidir.

    Fakat javascripte doğru cevap ilkidir. Javascript'i bu şekilde kullanmalısınız. Çünkü ;

    return {
      test : True
    };

    ile

    return
    {
    test : false
    };

    arasında javascripte fark vardır. İkinci kullanım, hata getirecektir.

    ----

    0 == ''                 //true
    '' == '0'               //false
    0 == '0'              //true
    false == 'false'         //false
    false == '0'             //true
    "\t\r\n" == 0          //true

    kontrollerde bunlar döndürülecek. Fakat amaç nedir ???

    Yukarıdaki gibi kontrollerde === kullanmak daha mantıklı. 3 eşittir , türüne bakar. Yani ;

    3 == 4     //false
    3 === 4  //true

    Çıktı üstteki gibi gelir. Çünkü 3 te rakamdır, 4'te

    ----

    Yazarken daha açık olun. Örneğin ;

    if (a) b(); c();

    Bu kodun anlaşıldığı ;

    if (a) { b(); c(); }

    ama aslında olan ;

    if (a) { b(); } c();

     

    Fakat Douglas dayımız diyor ki ; her zaman süslü paranteze koyun diyor. Böylece değiştirmek isteyen ne olacağını anlar diyor. (da maalesef ben buna uymuyorum, şunu yapıyorum ;

    if (a) b();
    c();

    )

    ---

    ++ şu anlama gelir ;

    x += 1;

    Dougles dayımız diyor ki ;

    programı yazarken, sürekli sıkıştırmaya çalışırız. Tek satırlık kod haline gelene kadar uğraşırız. Fakat bir yarar sağlamaz. Aksine daha karmaşık bir hal alır.

    Bu yüzden sürekli x += 1 ; kullanırım diyor (ben demedim o dedi).

    ++x ve x++ olduğunda karışabilir diyor.

    Şunu gördüm didi ;

    x++;
    ++x;

    (bencede saçma), bunun yerine ; x += 2 kullanın

    ---

    if (a = b) {...}

    anlaşıldığı ;

    if (a === b) {...}

    aslında olan

    a = b;

    if (a) {...}

    ---

    var a = b = 0;

    anlaşılan 

    var a = 0, b = 0;

    aslında olan ;

    b = 0;

    var a = b;

    ----------------------------------------

    Düşündüğünüz gibi yazın, başkası okuduğunda sizin düşündüğünüz gibi okusun.

    http://javascript.crockford.com/code.html

    Burada örnekleri var, inceleyebilirsiniz.

    --

    Reklamlar :

    http://www.tahribat.com/Forum-Kontrollu-Ve-Standart-Site-Tasarimi-153594/

    Kontrollü ve standart site tasarımı ile ilgili yukarıdaki linkte birşeyler paylaştım (programlama olduğu için her zamanki gibi tutmadı) görmeyenler varsa bi işine yarayacak birşeye denk gelebilir.

  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ucenmi
    ucenmi's avatar
    Kayıt Tarihi: 25/Mayıs/2011
    Erkek

    hocam kısaca mantıklı yazın akla uygun olsun desek yeter heralde :D

  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hybris
    Hybris's avatar
    Kayıt Tarihi: 12/Haziran/2007
    Erkek

    bu kalıplardan yana çok problem çekmiyorum, yanına açıklamasını da yazarım genelde geri döndüğümde rahat anlamak için.

    ama şu girinti olayını yapamıyorum arkadaş ya dreamweaverda elementleri menüden ekleyince problem yok. ama tab yapıp kodu yazınca çok saçmalıyor browser sourcedan bakınca :|


    agile isn’t how fast you can go, it’s how fast you can turn.
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Ayro
    Ayro's avatar
    Kayıt Tarihi: 08/Ağustos/2005
    Erkek

    Tam anlamadım ne demek istediğini aam tab'a basınca boşluk versin hocam. 

    4 tane boşluk iyidir. Böylece her yerde aynı olur

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hybris
    Hybris's avatar
    Kayıt Tarihi: 12/Haziran/2007
    Erkek

    şu olayı kastediyorum abi. burada menüden ekledim olması gerektiği gibi bıraktı boşlukları.

    ama ben taba basıp kod yazınca dw ekranı ile sourcedaki bir olmuyor.


    agile isn’t how fast you can go, it’s how fast you can turn.
Toplam Hit: 889 Toplam Mesaj: 5