Syntaxe (z řeckého syntaxis, uspořádání) je soubor pravidel, jak se smějí skládat slova a znaky do správných vět nebo příkazů. V jazyce je to větná skladba: pořadí slov, shoda, interpunkce. V programování jsou to pravidla zápisu kódu: závorky, uvozovky, středníky, značky. Porušení pravidel je syntaktická chyba, kterou počítač odmítne a člověk zpravidla přečte i přes ni. Co věta nebo příkaz znamená, neřeší syntaxe, ale sémantika. Prohlížeče jsou k chybám v HTML shovívavé, ale JavaScript se jedinou chybějící závorkou zastaví celý.
🧒 Základní škola
Když napíšeš „Pes běžel zahradě po“, každý ti rozumí, ale věta je špatně poskládaná. Pravidla, jak se slova správně skládají do vět, se jmenují syntaxe. Paní učitelka tomu říká větná skladba.
Počítače jsou na pořádek mnohem přísnější než lidé. Když programátor zapomene zavřít závorku nebo napíše čárku navíc, počítač program nespustí a napíše „syntax error“, syntaktická chyba. Nic si nedomyslí, protože neumí hádat. Proto programátoři tráví spoustu času hledáním jedné chybějící závorky.
🎓 Střední škola
V jazykovědě je syntaxe jedna z rovin popisu jazyka vedle hláskosloví, tvarosloví a sémantiky. Zabývá se tím, jak se z větných členů stavějí věty a souvětí. Věta může být syntakticky správná a přitom nesmyslná: „Bezbarvé zelené myšlenky zuřivě spí“ je slavný příklad lingvisty Noama Chomského. Správný tvar neznamená správný smysl.
| Oblast | Co syntaxe určuje | Příklad chyby |
|---|---|---|
| Přirozený jazyk | pořadí slov, shoda, interpunkce | „Děti šel domů.“ |
| HTML | značky, atributy, jejich zanoření | neuzavřený <div>, atribut bez uvozovek |
| CSS | selektor, složené závorky, vlastnost a hodnota se středníkem | chybějící středník, překlep v názvu vlastnosti |
| JavaScript, PHP | závorky, uvozovky, klíčová slova, operátory | chybějící závorka, uvozovka zavřená jiným typem |
| JSON, YAML | složené závorky, čárky, odsazení | čárka za posledním prvkem, špatné odsazení |
Každý jazyk, přirozený i programovací, má svoji syntaxi. Programovací jazyky ji mají popsanou přesně (formální gramatikou), proto ji počítač umí zkontrolovat. Nástroj, který to dělá, se jmenuje parser; v editorech kódu podtrhuje chyby ještě před spuštěním, podobně jako kontrola pravopisu v textovém editoru.
🎓🎓 Vysoká škola
Formální syntaxe se popisuje gramatikou, nejčastěji v Backusově a Naurově formě (BNF): pravidla, která říkají, z čeho se skládá program, příkaz, výraz. Překladač nejdřív rozdělí text na tokeny (lexikální analýza), pak z nich podle gramatiky postaví syntaktický strom (parsování) a teprve nad stromem řeší význam (sémantická analýza) a překlad. Syntaktická chyba je selhání ve druhém kroku; sémantická chyba (dělení nulou, volání neexistující funkce) projde syntaxí a objeví se až později.
Na webu je zvláštní případ HTML: specifikace popisuje, jak má prohlížeč zpracovat i chybný zápis, takže stránka s neuzavřenými značkami se zobrazí. Cena za shovívavost je nejistota: různé prohlížeče si chybu mohou domyslet různě a vyhledávač může část obsahu přečíst špatně. Proto existuje kontrola validity podle standardu. Naopak JSON a JavaScript jsou přísné a jedna chyba zastaví celou stránku nebo aplikaci.
Strukturovaná data pro vyhledávače (schema.org v JSON-LD) jsou typický případ, kde syntaktická chyba stojí peníze: chybějící čárka znamená, že Google rozšířený výsledek nezobrazí, a nikdo si toho nevšimne, dokud se nepodívá do Search Console.
🧠 Expert
V profesionální praxi se syntaxe hlídá automaticky: lintery a formátovače kontrolují kód při každém uložení, sestavení webu selže na první chybě a nasazení neproběhne. U obsahových webů generovaných ze souborů to platí i pro texty: chybná hlavička článku nebo neuzavřená značka v HTML hesla zastaví sestavení celého webu, což je lepší než nasadit rozbitou stránku. Pravidlo zní, že syntaktická chyba má být zachycena co nejdřív a co nejblíž autorovi.
Jazykové modely mění přístup k syntaxi z obou stran. Pro kód jsou výborný korektor: chybějící závorku najdou okamžitě. Pro texty platí opak: model píše syntakticky bezchybně, takže syntaktická správnost přestala být znakem kvality. Čtenář i vyhledávač pak rozlišují podle obsahu (vlastní čísla, zkušenost, konkrétní příklad), ne podle toho, že věty jsou správně poskládané.
Pro autora textů na web platí praktická zásada: jednoduchá syntaxe vět je výhoda. Krátké věty s jedním podmětem a slovesem se lépe čtou, lépe překládají, lépe citují v AI odpovědích a čtečky je lépe předčítají. Složité souvětí je syntakticky správné a přesto se v něm ztratí čtenář i stroj.
😇 Pán Bůh
Ach, syntaxe. V Babylonu jsem lidem zmátl jazyky a myslel jsem, že to je pro tento týden dost. Oni si místo toho vymysleli další tisíce jazyků, tentokrát pro stroje, a každý s vlastní syntaxí. Kde chybí jedna čárka, tam se nic nespustí. Já bych byl za jednu chybějící čárku milosrdnější.
Je v tom ale krása. Stroj nerozumí, a tak musí být zápis dokonalý. Člověk rozumí, a tak může být zápis ledabylý. Lidé tedy píšou pro stroje pečlivě a pro lidi ledabyle, a pak se diví, že jim stroje rozumějí lépe než sousedé.
Chomsky napsal větu, která je správně a nic neznamená, a lingvisté se jí dodnes kochají. Já jich čtu tisíce denně. Modlitby se správnou syntaxí a prázdným obsahem. Odpovídám na ty druhé, s chybami a smyslem. Syntaxe je laskavost vůči čtenáři, ne jeho náhrada.
❓ Otázky a odpovědi
Co je syntaxe jednoduše?
Pravidla, jak správně skládat slova nebo znaky do vět a příkazů. V češtině je to větná skladba, v programování pravidla zápisu kódu: závorky, uvozovky, značky, středníky.
Jaký je rozdíl mezi syntaxí a sémantikou?
Syntaxe řeší tvar (je věta správně poskládaná?), sémantika význam (co věta znamená a dává smysl?). Příkaz může být syntakticky správný a sémanticky chybný, třeba dělení nulou nebo věta „Bezbarvé zelené myšlenky zuřivě spí“.
Co je syntaktická chyba?
Porušení pravidel zápisu, kvůli kterému počítač kód odmítne: chybějící závorka, špatné uvozovky, čárka navíc v JSON. Podrobně v hesle Syntaktická chyba. V HTML prohlížeč chybu většinou domyslí, v JavaScriptu se zastaví celá stránka.
Proč na syntaxi záleží v SEO?
Chybná syntaxe HTML může vyhledávači znemožnit přečíst část obsahu a chyba ve strukturovaných datech (JSON-LD) zruší rozšířený výsledek. Kontrola validity a Search Console takové chyby odhalí.
Související hesla (téma Webový vývoj)
Chcete, aby se o vaší firmě psalo?
PlaCla zajišťuje PR články na stovkách českých webů. Zadáte téma, dobijete kredit a weby vám samy pošlou nabídky. Kredit se čerpá až po schválení článku.
Začněte s PR články →