gramdel kirjoitti:
Validointi on vain yksi juttu ja jos en nyt ihan turhaksi sanoisi, niin se ei kerro sivun tehokkuudesta ja aidosta toimivuudesta yhtään mitään. Vaikka iWebkin tekee varsin validia koodia, ovat sillä tehdyt sivut silti (usein) pirun raskaita ja rasittavia käyttää.
ap
Tietysti raskas koodi voi olla validia ja äärettömän kevyt epävalidia. Ihmeellinen tuo sinun kommenttisi!
Fakta on vaan se että jos koodi ei ole validia, niin siinä on virheitä. Kun selain löytää virheellisen kohdan, niin se joutuu arvaamaan että miten tämän kohdan kuuluisi olla ja toimia sen mukaan. Jos jokin nettisivu näkyy eri selaimissa eri lailla, niin syynä on sivun virhe jonka kohdalla eri selaimet ovat tehneet erilaisia arvailuja.
spiidi78 kirjoitti:Hullu jätkä

C on jo muutenkin niin karmeaa luettavaa ja gedit ei tee siitä yhtään sen luettavampaa ainakaan.
Hyvää ohjelmakoodia on nautinto lukea ihan riippumatta käytetystä kielestä. Ja huonosta ei saa selvää pirukaan. Minä luen C-kieltä yhtä sujuvasti kuin romaania, jos se on hyvin kirjoitettu. (Ehkä siihen vaikuttaa se että olen tehnyt sitä päätoimisesti yli 20 vuotta!) Valitettavasti vain suurin osa maailmalla tuotetusta C-koodista on täyttä roskaa.
spiidi78 kirjoitti:
edit: niin tarkoitin sisennyksillä koodin sisennystä. Mieti vaikka jo jotain switch-case lauseketta, välilyönti saa kyytiä. Tab != ratkaisu ainakaan teksturilla ja notepadilla

En ole kirjoittanut C-koodia notepadilla enkä texturilla. Niillä olen kirjoittanut pelkkää HTML-koodia ja hyvin vähän sitäkin, mutta onhan html:ssäkin sisennyksiä. Tai olisi ainakin syytä käyttää. Tabulaattorimerkit ovat syvältä... tabulaattoria voi käyttää editoidessa jos editorin asetuksissa on "replace tabs with spaces".
Aaaron kirjoitti:Jonkun koulukunnan mukaan (allekirjoittanut mukaan lukien) tab on parempi merkki sisennysten tekemiseen, koska sen voi kukin editorissaan itse määrittää niin leveäksi kuin haluaa (jos editori tukee tätä). Välilyönti on aina välilyönti, tabi voi olla 2 tai 4 tai vaikka 8 merkkiä. Muokkaapa siinä sitten usean koodarin tekemää tiedostoa kun jokaisella on omanlaisensa mieltymys sisennyksiin.
Juuri siksi koska jokaisella on oma mieltymyksensä sisennyksiin, niin tabluaattorit pitää korvata välilyönneillä. Tabluaattori voi olla editoidessa päällä, mutta sorsakoodiin pitää tulla välilyönnit. Jos näin ei ole, niin tapahtuu seuraavaa:
* Koodari 1 käyttää tab arvoa 8.
* Koodari 2 ottaa saman lähdekoodin editoitavakseen ja hänellä on tab arvona neljä. Alkuperäinen koodi näyttää aivan hyvältä vaikka sisennykset madaltuivat. Hänellä on editorissaan asetuksena että korvaa tabulaattorit välilyönneillä.
* Koodari 3 ottaa työn alle saman koodin ja hänellä on tabulaattorina 8. Hän näkeekin koodin sisennykset aivan väärin. Koska hän kuuluu tähän edellä mainitsemaasi koulukuntaan, niin hän ei ymmärrä miksi koodi on niin rumaa. Hän ei välitä rumista sisennyksistä joita sijaitsee niissä kohdissa koodia ajoihin hänen ei tarvitse koskea. Hän editoi tabulaattoriarvolla arvolla 8 ja asetuksena on "korvaa tabulaattorit välilyönneillä."
Noiden kolmen koodarin jäljiltä koodi onkin sisennyksiltään lopullisesi piloilla. Tällainen tauti on todella yleistä.
Ei tarvita edes kolmea koodaria. Vaikka kirjoitat sisennykset tabulaattoreilla, niin aina joukkoon lipsahtaa rivejä joissa tabulaattoreiden joukossa on myös välilyöntejä. Nämä välilyönnit joko vaikuttavat tai ovat vaikuttamatta koodin ulkoasuun riippuen siitä mihin kohtaan ne osuvat ja mikä on editorin tabulaattoriarvo.