Každý deň začína snahou o uľahčenie úloh v každej profesii. Pre programátorov je zvýraznenie syntaxe jednou z mnohých funkcií, ktoré ponúkajú moderné editory kódu na podporu produktivity.
Čo presne je zvýraznenie syntaxe? A môže vám to pomôcť napísať lepší kód?
Čo robí zvýraznenie syntaxe
Zvýrazňovanie syntaxe – alebo farbenie syntaxe – je technika, ktorú textové editory používajú na rozlíšenie častí zdrojového kódu pomocou farby. Zvyčajne zvýrazňuje kľúčové slová, reťazcové literály a ďalšie syntaktické prvky. Zvýraznenie syntaxe môže tiež upozorniť na chyby syntaxe.
Pri písaní kódu zvyčajne nedochádza k okamžitej vizuálnej spätnej väzbe. Zvýraznenie syntaxe však dokáže zistiť, či aspoň píšete platný kód.
Presný pôvod zvýraznenia syntaxe v kódovaní nie je taký jasný. Ale mohlo by to byť až štyri desaťročia, počnúc Anitou H. Klock a Jan B. Chodakov patentovaný editor zvýrazňovania syntaxe z roku 1982.
Ako funguje zvýraznenie syntaxe
Takže zvýraznenie syntaxe priraďuje farby rôznym prvkom kódu a značenia. Medzi tieto prvky patria okrem iného kľúčové slová, funkcie, značky, typy údajov, objekty a komentáre.
Nemá to vplyv na samotný kód, len na to, ako ho editor zobrazuje. Nemôžeme však ignorovať vplyv farieb na myseľ a mozog. Pocit písania farebného a zmysluplného kódu môže byť uspokojujúci a môže zvýšiť produktivitu.
Editori kódu pristupujú k zvýrazňovaniu syntaxe rôznymi spôsobmi. VS Code napríklad používa tokenizáciu textu a priradenie tém na zvýraznenie textu. Editory môžu podporovať zvýrazňovanie syntaxe v rôznych jazykoch a niektoré môžu byť pestrejšie ako iné!
Pomáha zvýraznenie syntaxe programátorom?
Takže zvýraznenie syntaxe triedi prvky kódu v textových editoroch. Je to však nejakým spôsobom užitočné pre programátorov?
Vylepšená čitateľnosť
Zvýraznený zdrojový kód sa ľahšie skenuje, keď môžete jeho časti rozlíšiť podľa farby. Napríklad identifikácia komentárov v rámci bloku kódu je jednoduchšia so zvýraznením syntaxe.
Nezvýraznený kód je trochu ťažko čitateľný, pretože základňa kódu sa zdá byť škaredá a zložitá.
Stačí sa pozrieť na zvýraznený kód vedľa kódu, ktorý nie je. Prvý z nich je čitateľnejší a je oveľa jednoduchšie vybrať konkrétne časti:
Pomáha pri ladení
Zvýraznenie syntaxe môže uľahčiť ladenie, pretože sa zameriava na rôzne významy kódu, ktorý pridávate alebo upravujete. Zvyčajne neoznačuje nesprávnu syntax, ale syntax, ktorú nepozná, sa môže javiť ako obyčajná biela alebo čierna, čo signalizuje problém.
Vaša schopnosť rozlišovať medzi farbami syntaxe môže závisieť aj od témy editora kódu. Napríklad môže byť ťažké rozlíšiť nezvýraznenú čiernu syntax od zvýraznenej tmavomodrej na bielom pozadí.
Zvýrazňovanie syntaxe môže stále prehliadať prvky kódu, ktorým váš editor nerozumie. Napríklad nemusí byť schopný identifikovať názvy metód vlastných tried.
Zvýrazňovanie syntaxe teda pridáva malú hodnotu ladeniu syntaxe, čo je úloha linter špecifického pre jazyk.
Uľahčuje krivku učenia
Niektoré štúdie naznačujú, že zvýraznenie syntaxe významne neovplyvňuje porozumenie kódu. Farebný kód však môže byť podľa oka diváka stále estetickejší. Syntax si nezapamätáte podľa farby, ale zafarbenie syntaxe môže aj tak urobiť programovanie prístupnejším.
Nevýhody zvýraznenia syntaxe
Diskutovali sme o niektorých svetlých stránkach zvýrazňovania syntaxe. Ale aj keď je to užitočná funkcia, môže to mať určité nevýhody.
Prílišná závislosť na editore kódu pri ladení
Ak je to prípad nového programátora, bude ťažšie odstrániť základné chyby, pretože majú tendenciu sústrediť sa viac na syntaktické chyby. To znižuje kreativitu a schopnosť riešiť problémy.
Okrem toho sú syntaktické chyby najmenším problémom pri písaní kódu. Existujú aj horšie chyby, ktoré smerujú k logike kódu a prístupu, ktoré si vyžadujú vašu pozornosť.
Prístup k balíkom tretích strán
Je zriedkavé, že kódový linter označí importované balíky tretích strán ako chyby v editoroch, ako napr. VS Code a Atom. A niekedy sa môže stať, že zvýrazňovač nedokáže aplikovať farbu na importované symboly. To sa môže stať, ak váš editor kódu nedokáže prečítať modul z jeho zdroja alebo ak nainštalovaný linter nerozpozná balík.
Môže to byť klamlivé, pretože si môžete myslieť, že ste napísali neplatný kód, aj keď je správny. Môžete skončiť s riešením chýb, ktoré tam napokon nie sú.
Ktoré editory kódu a IDE podporujú zvýrazňovanie syntaxe?
Mnoho moderných editorov kódu a IDE, vrátane VS Code, Atom, Sublime Text, Komodo Edit a mnohých ďalších, podporuje zvýrazňovanie kódu. Vo väčšine z nich je funkcia štandardne aktívna. Možno však budete musieť upraviť konkrétne nastavenia pre každé, aby ste ho vypli.
Zvýrazňovanie syntaxe prevláda aj v útržkoch kódu a online HTML editory. Môžete napríklad použiť štýl úryvkov kódu na zobrazenie na vašich webových stránkach highlight.js. Táto knižnica na zvýrazňovanie syntaxe JavaScriptu podporuje mnoho programovacích jazykov.
Zamerajte sa na riešenie problémov
Zvýraznenie syntaxe je funkcia iba v moderných editoroch kódu a IDE. Ako ste videli, len zvyšuje estetiku kódu a jeho čitateľnosť. Nemalo by to ovplyvňovať vaše logické uvažovanie a schopnosti riešiť problémy ani vás rozptyľovať. Namiesto toho, aby ste sa trápili nástrojmi v editore kódu, zamerajte sa na pochopenie každého kúska akéhokoľvek programovacieho jazyka, ktorý používate.