Miért fontos, hogy szabványos legyen a kód?
Több visszajelzést kaptunk, hogy mondjuk el miért olyan fontos a W3C szabvány betartása!
A válasz kicsit bonyolultabb, mint elsőre gondolnánk, de fontos legalább egyszer foglalkozni vele!
Kód történelem
Ha unod az ilyesmit ugorj, de érdekesség is van benne.
A W3C tartja nyilván a HTML kódhoz tartozó szabványokat és mint ilyen szervezet dicséretes tőle, hogy még egy ellenőrző készletet is biztosít számunkra. De mit is ellenőriz a W3C és hány ilyen szabvány létezik, aminek meg kellene felelnünk?
Első körben illik tisztázni, hogy az adott kód milyen programnyelven íródott!
Ha egy weblapról beszélünk, akkor a legtöbb esetben HTML kód jut mindenki eszébe. Sajnos azonban ez nem egyetlen szabvány, mert különböző verziók léteznek.
A HTML 3.2-vel kezdeném, mert az azt megelőző időkre nem sokan emlékeznek. Ezt 1997-ben adták ki.
A ma leginkább elterjedt kód a HTML 4.01, amit 1999 decemberében szabadítottak a világra. A nyelv támogatja a Multimédiás elemek, a Script nyelvek és a Stíluslapok használatát.
A nagy kedvenc a HTML 5. Egy pici bibi van vele! Nem létezik még!
A cikk írásakor a "Working Group Note" Munkacsoport ajánlásai és egy 2012 októberi "Working Draft" fordítsuk: "Munka változatnak" létezik belőle.
A történet egyszerű! A W3C egy egyeztető szervezet, különböző szolgáltatásokkal; ami nem foglalja magába a fejlesztést konkrétan, inkább tanácsadással, elemzéssel foglalkoznak. A nagyobb cégek, mint pl.: Microsoft, vagy a Google saját értelmezéseiket és házi szabványaikat használják, amik ha nagyobb mértékben elterjednek, akkor a többiek is kénytelenek támogatni a szoftvereikben.
Tehát a szabvány leginkább az erősebb kutya szabályát követi!
Remélem, most egy-két kolléga elkezdi kántálni, hogy mi van a HTML+RDFa-val és társaival, de ez már tényleg a tejszínhabon lévő meggy levele! ;)
Második kör: karakter kódolás
Na igen, ez is számít!
Mi történik, ha egy régebbi Windowson beírjuk a keresőbe hogy "páramentesítő"?
Megkapjuk a találatot? ...
Igen! De a háttérben egy konverzió zajlott le:
- Az ISO 8859-2 ékezetek bemasíroztak a gugliba
- Az adatbázisban összevetették őket ISO 8859-2, -1, HTML encode és UTF-8 szövegekkel, ha valami archív adat is volt akkor még a 852, vagy 850 kódolás is előkerült!
- Megérkezett a találat
Ha Linux, Unix, Android, vagy egyéb új rendszert használtunk, akkor UTF kódolással kezdtünk.
A mi szempontunkból, most csak annyi lényeges, hogy a W3C ellenőrzés és szegény Google Crawler (robot) akkor működik jól, ha a kódban megadjuk a karakterkódolást és a nyelvet!
Miért érdemes betartani a HTML4 szabványokat?
Az előbb említettem, hogy a nagyok úgy formálják a szabványt ahogy csak szeretnék, és ennek az a következménye, hogy a google.hu W3C elemzése a cikk írásakor 25 hibát ad!
De a Google nem térképezi fel saját robotjával a saját oldalát!
Ha mi azt szeretnénk, hogy a keresőrobotok értsék amit közzéteszünk, akkor nem csak az érthetőség, hanem a feldolgozhatóság miatt is be kell tartanunk a játékszabályokat!
Tegyük fel magunknak a kérdést, hogy mennyit szenvednénk egy olyan iromány olvasásával, ahol a felét nem értjük a szövegnek, mert hiányoznak az írásjelek és a szóközök, vagy pl. minden második szó Kantoni kínai, némi tájszólással!? Hozzá kell tenni, hogy az adott szövegnek még létezik kb. 2 milliárd társa, amit szintén belátható időn belül el kellene olvasnunk!
Minden példa sántít egy kicsit, de a program kódok nem mindenhatóak. Nem minden hibát tudnak lekezelni és ha van is kezelve az adott hiba, az legtöbb esetben elemzés vége irányba mozdul, védve a feldolgozó eszközt a túlterheléstől és a hibás eredményektől.
Gyakori magyar weblap hiba
A magyar nyelv szép és míves, leginkább ékezetes betűiről híres (cipőfűző, árvíztűrő tükörfúró).
A weblapjaink bekezdései pedig igyekeznek rövidíteni a szövegen. Jó példa mikor 150 karakterben a programozó vágja a bekezdést, mert majd megnyomja valaki a "tovább olvas" gombot, ha érdekli a szöveg.
Na igen! :) de a szép ékezetes betűink UTF-8 kódolás esetén 2 Byte-on férnek el és már fűrészeli is a kód a közepén az "é" betűnket! Ilyenkor hibás trapéz alakú és egyéb érdekes forma karakterek sorakoznak a sorvégeken. A legnagyobb baj nem a csúnya sorvéggel van, hanem ha ezt a forrást megpróbáljuk feldolgozni, akkor a visszakódoló programunk úgy hasal el, mint jóllakott óvodás a jégen! Ha pedig ez megtörténik, akkor az adott oldalra szép fogadásokat lehet kötni: Vajon beindexeli-e a Google, vagy nem!?
Javaslom a szabványok minél pontosabb betartását!
Éles László
weblap technikai szakértő