Editing
První programovací jazyk: Jak vybrat chytře a bez zklamání
Jump to navigation
Jump to search
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
<br>GraphQL je dotazovací jazyk, který vám umožní získat přesně ta data, která potřebujete, a nic navíc. Tím odpadá problém s over-fetchingem a under-fetchingem, které sužují REST. Skvěle se hodí pro aplikace s komplexními vztahy mezi daty, jako jsou sociální sítě nebo dashboardy. Na druhou stranu si musíte dát pozor na přílišné dotazy, které mohou zahltit databázi. Doporučuji zavést limity na hloubku dotazu a použít dotazovací plán, abyste předešli situaci, kdy klient neúmyslně stáhne obrovské množství dat.<br><br>Jakmile máte jasný cíl, přestaňte řešit, co je „nejlepší" a co „nejmodernější". Typická chyba začátečníka je skákat mezi jazyky podle aktuálních trendů. Jeden týden zkoušíte Python, protože je populární, pak JavaScript, protože je všude, a nakonec skončíte u ničeho. Vyberte si jeden jazyk a držte se ho alespoň tři měsíce. Teprve po této době můžete zhodnotit, jestli vám sedí, nebo ne. Neustálé přepínání vás připraví o hlubší pochopení základních principů, které jsou ve všech jazycích podobné.<br><br>Jednotkové testy jsou nedílnou součástí kvalitního kódu. Framework NUnit patří mezi nejpoužívanější nástroje pro testování v ekosystému .NET. Než začnete psát první test, ujistěte se, že máte v projektu nainstalovaný balíček NUnit a NUnit3TestAdapter. Testy píšete do samostatné třídy, která je obvykle označena atributem [TestFixture]. Každá testovací metoda pak nese atribut [Test]. Základem je, aby testy byly nezávislé, rychlé a hlavně vypovídající. Pokud test selže, mělo by být okamžitě jasné, která část kódu je rozbitá.<br><br>V CSS nejčastěji chybujete v selektorech a specifičnosti. Pokud píšete příliš obecné selektory, jako div, ovlivníte všechny prvky na stránce. Naopak příliš specifické selektory, jako #hlavni-nadpis .box p, se špatně udržují. Snažte se používat třídy (class) pro opakující se prvky a ID pro jedinečné prvky. Nezapomeňte, že CSS kaskáda znamená, že pořadí pravidel hraje roli. Pokud dvě pravidla mají stejnou specifičnost, vyhraje to, které je v souboru později. To se snadno přehlédne, proto pravidelně kontrolujte vývojářskou konzoli prohlížeče.<br>Základním stavebním kamenem moderního JavaScriptu [https://www.vocabulary.com/dictionary/jsou%20funkce jsou funkce] šipky (arrow functions). Jejich hlavní výhodou není jen kratší zápis, ale lexikální vazba `this`. U klasických funkcí se `this` odvozuje od kontextu volání, což vede k častým chybám, zejména při práci s událostmi nebo časovači. Funkce šipky si `this` dědí z okolního rozsahu, takže odpadá nutnost používat triky jako `const self = this`. Pozor ale na to, že šipkové funkce nemají vlastní `arguments` a nelze je použít jako konstruktor pro `new`.<br><br>Na závěr si osvojte responzivní design. Místo pevných pixelů pro šířku používejte relativní jednotky (%, em, rem, vw, vh). Pro text je vhodný rem, protože respektuje výchozí velikost písma prohlížeče. Vždy nastavte meta viewport v hlavičce, bez něj se mobilní prohlížeče snaží zobrazit stránku jako na počítači. Testujte svůj web ve více prohlížečích a na různých zařízeních, nejen v tom, který používáte. Nástroje pro vývojáře vám umožní simulovat telefony i tablety.<br><br>Prvním krokem je návrh testovatelného kódu. Vyhněte se závislostem na externích službách, databázích nebo souborovém systému. Pokud testujete třídu, která komunikuje s databází, použijte rozhraní a v testech ho nahraďte falešnou implementací. NUnit sám o sobě neumí vytvářet falešné objekty, ale můžete použít jednoduchou ruční implementaci nebo knihovnu jako Moq. Důležité je, aby testy běžely izolovaně. To znamená, že každý test by měl mít vlastní instanci testované třídy a žádný test by neměl záviset na pořadí ostatních.<br><br>Při psaní testů se zaměřte na chování, ne na implementaci. Testujte, co metoda dělá, ne [http://miklagaard.no/index.php?title=Jak_efektivn%C4%9B_ladit_JavaScript_p%C5%99%C3%ADmo_v_prohl%C3%AD%C5%BEe%C4%8Di jak zařídit malou kuchyni] to dělá. Často se setkáváme s testy, které kontrolují interní stavy nebo volání privátních metod. To je špatně. Místo toho testujte veřejné rozhraní třídy. Pokud metoda vrací hodnotu, porovnejte ji s očekávaným výsledkem pomocí Assert.AreEqual nebo Assert.That. Pokud metoda nic nevrací, ověřte, že vyvolává výjimku za předpokladu neplatných vstupů pomocí Assert.Throws. Typickou chybou je testovat pouze šťastnou cestu. Nezapomínejte na okrajové případy: prázdné řetězce, nulové hodnoty, maximální nebo minimální čísla.<br><br>Zaměřte se na cíl, ne na módu Začněte otázkou, co vás na programování vlastně láká. Pokud vás baví tvorba webových stránek a chcete rychle vidět výsledky, je rozumné začít s JavaScriptem. Díky němu okamžitě oživíte stránky v prohlížeči a máte okamžitou zpětnou vazbu. Pokud vás spíš láká analýza dat, automatizace nebo umělá inteligence, zvolte Python. Jeho syntaxe je čitelná i pro úplného nováčka a má obrovskou základnu knihoven pro nejrůznější úlohy. Naopak pokud vás táhne vývoj mobilních aplikací, zvažte Swift pro systémy Apple nebo Kotlin pro Android.<br><br>If you have any kind of inquiries concerning where and ways to use [https://rikkiepedia.nl/index.php?title=Jak_prom%C4%9Bnit_retrospektivu_v_ak%C4%8Dn%C3%AD_n%C3%A1stroj_pro_t%C3%BDm https://rikkiepedia.nl], you can call us at the web page.<br>
Summary:
Please note that all contributions to Rikkiepedia may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Rikkiepedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Navigation menu
Personal tools
Not logged in
Talk
Contributions
Create account
Log in
Namespaces
Page
Discussion
English
Views
Read
Edit
View history
More
Search
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Tools
What links here
Related changes
Page information