<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki-babylonsignalis.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=ChristoperY36</id>
	<title>Babylon SIGNALIS Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-babylonsignalis.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=ChristoperY36"/>
	<link rel="alternate" type="text/html" href="https://wiki-babylonsignalis.org/index.php/Special:Contributions/ChristoperY36"/>
	<updated>2026-09-15T04:58:19Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki-babylonsignalis.org/index.php?title=6_z%C3%A1sad,_jak_udr%C5%BEet_v%C3%ADce_feature_v%C4%9Btv%C3%AD_v_%C4%8Distot%C4%9B&amp;diff=189487</id>
		<title>6 zásad, jak udržet více feature větví v čistotě</title>
		<link rel="alternate" type="text/html" href="https://wiki-babylonsignalis.org/index.php?title=6_z%C3%A1sad,_jak_udr%C5%BEet_v%C3%ADce_feature_v%C4%9Btv%C3%AD_v_%C4%8Distot%C4%9B&amp;diff=189487"/>
		<updated>2026-08-29T10:39:56Z</updated>

		<summary type="html">&lt;p&gt;ChristoperY36: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Až budete mít funkční první verzi, nezapomeňte na optimalizaci. Projděte si kód a odstraňte duplicitní logiku. Naučte se používat inženýrské nástroje jako Instruments pro profilování výkonu. Důkladně testujte na reálném zařízení, nejen v simulátoru – rozdíly v chování jsou často překvapivé. A hlavně: pište kód tak, aby mu rozuměl někdo jiný za rok. To znamená srozumitelné názvy proměnných a funkcí, krátké metody a komentáře jen tam, kde je to nezbytné. Když se tyto návyky stanou automatickými, budete schopni přidávat nové funkce rychleji a bez zbytečného stresu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Když se rozhodnete vyvíjet aplikace pro iOS, narazíte na volbu jazyka. Swift je dnes hlavní volbou pro nové projekty, a to z dobrého důvodu. Jeho syntaxe je čitelná a bezpečnost typů vám pomůže chytit řadu chyb už při psaní. Než ale začnete, ujasněte si, co přesně chcete postavit. Bez jasného cíle snadno sklouznete k nekonečnému přepisování kódu a ztrátě motivace. Začněte malou aplikací, která řeší jeden konkrétní problém, a postupně ji rozšiřujte.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Shrnutí: měřte pokrytí v případě, že pracujete na stabilním kódu, který se bude vyvíjet, a kde jsou testy smysluplné. Přestaňte se měřením zabývat, když se stane jen číslem v reportu a [https://Bookmarking.stream/story.php?title=jak-uspesne-komunikovat-odhady-casu-zakaznikovi-bez-zbytecnych-slibu neovlivňuje] to, [http://Www.Sg588.tw/home.php?mod=space&amp;amp;uid=1256472 jak testy] píšete. Dobrý test je ten, který najde chybu, ne ten, který zvýší procento pokrytí. Věnujte energii čtení kódu a psaní scénářů, které pokrývají reálné případy, a metriky používejte jen jako orientační ukazatel, ne jako cíl.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Kdy měření pomáhá a kdy škodí? Měření pokrytí má smysl zejména v kritických částech kódu, jako je zpracování plateb, bezpečnostní logika nebo algoritmy, kde může být chyba drahá. Pomáhá také při refaktoringu – pokud změníte kód, pokrytí vám ukáže, zda jste nezapomněli na nějakou větev. Stejně tak je užitečné při přidávání nové funkcionality do staršího kódu, kdy chcete mít jistotu, že jste nezpůsobili regresi.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Další oblastí, kde se chybuje, je navigace mezi obrazovkami. Mnoho začátečníků plete přechody mezi view controllery s modálním zobrazením. Pro běžné přechody používejte NavigationStack (ve SwiftUI) nebo UINavigationController, a pro zobrazení detailu s možností návratu pak push. Modální prezentace je vhodná pro formuláře nebo potvrzení akcí. Při práci se SwiftUI si dejte pozor na to, že stavové proměnné by měly být private – pokud je použijete jako public, může dojít k nechtěným vedlejším efektům. Také se vyhněte přílišnému používání @ObservedObject tam, kde stačí @State nebo @Binding, abyste nezpomalovali aktualizace.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Vyzkoušejte si to na malém projektu, který publikujete do App Store. Tím získáte cennou zkušenost s certifikáty, podepisováním a procesem review. Nečekejte, že první pokus projde bez připomínek – to je normální. Všímejte si zpětné vazby a postupně aplikaci vylepšujte. Vývoj pro iOS je běh na dlouhou trať, ale s každým dalším projektem budete rychlejší a jistější. Swift je výborný nástroj, který vám umožní realizovat nápady, pokud se nebudete bát chyb a budete se z nich učit.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Základem je krátký životní cyklus větve. [https://Www.Gameinformer.com/search?keyword=%C4%8C%C3%ADm%20d%C3%A9le Čím déle] větev žije, tím větší je pravděpodobnost konfliktů a zbytečné práce. Ideální je, když větev existuje maximálně pár dní. Pokud víte, že vám práce zabere déle, rozdělte ji na menší logické celky a každý z nich mergujte zvlášť. Tím se vyhnete situaci, kdy po třech týdnech mergujete stovky změn a nevíte, která z nich způsobila problém.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[https://Www.google.com/search?q=Kdy%C5%BE%20p%C3%AD%C5%A1ete Když píšete] JavaScript, často narazíte na situaci, kdy stejný kód funguje v jednom prohlížeči, ale v jiném padá nebo vrací neočekávané hodnoty. Příčinou nebývá chyba v syntaxi, ale rozdíly v chování prostředí. Prohlížeč je v podstatě operační systém s vlastními pravidly pro správu paměti, asynchronní operace i zpracování událostí. Než začnete hledat chybu v logice, ověřte si, zda váš kód skutečně běží v kontextu, který předpokládáte. Nejčastější zdroj problémů je mylná představa o tom, kdy se který kód spustí.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Retrospektiva týmu často sklouzne do stereotypu: každý řekne, co ho štve, někdo zapisuje, a za hodinu se rozejdete s pocitem, že se nic nezmění. Příčinou nebývá nezájem, ale chybějící struktura. Bez  se zpětná vazba tříští do obecných stížností, osobních výpadků nebo ticha. Přitom stačí zavést jednoduchá pravidla, která přemění diskuzi v konkrétní akce.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Častou chybou je, že se retrospektiva zaměří pouze [http://legend001.com/bbs/home.php?mod=space&amp;amp;uid=1303463 nábytek na míru] negativa. Přidejte proto povinnou část „Co nám funguje a proč?&amp;quot;. Požádejte každého, aby uvedl jednu věc, kterou chce zachovat, a jednu, kterou chce zlepšit. Tím podpoříte pozitivní atmosféru a zabráníte tomu, aby se z týmu stal věčný kritik. Nezapomeňte také na akční kroky: každý návrh musí mít konkrétního vlastníka a termín. Bez toho se retrospektiva stane jen cvičením z komunikace.&lt;/div&gt;</summary>
		<author><name>ChristoperY36</name></author>
	</entry>
	<entry>
		<id>https://wiki-babylonsignalis.org/index.php?title=Co_v%C5%A1echno_mus%C3%ADte_zv%C3%A1%C5%BEit_p%C5%99ed_v%C3%BDvojem_iOS_aplikace_ve_Swiftu%3F&amp;diff=187304</id>
		<title>Co všechno musíte zvážit před vývojem iOS aplikace ve Swiftu?</title>
		<link rel="alternate" type="text/html" href="https://wiki-babylonsignalis.org/index.php?title=Co_v%C5%A1echno_mus%C3%ADte_zv%C3%A1%C5%BEit_p%C5%99ed_v%C3%BDvojem_iOS_aplikace_ve_Swiftu%3F&amp;diff=187304"/>
		<updated>2026-08-29T09:40:13Z</updated>

		<summary type="html">&lt;p&gt;ChristoperY36: Created page with &amp;quot;Při psaní kódu ve Swiftu narazíte na problém s volitelné typy. Mnoho začátečníků zbytečně používá force unwrap – vykřičník – a pak řeší pády aplikace. Správný postup je používat if let nebo guard let, případně kombinovat s nil-coalescing operátorem. Pokud si nejste jistí, proč je volitelnost důležitá, zkuste si přečíst dokumentaci k optionals. Ale raději si to procvičte na malých příkladech. Uvidíte, že to zlepší kvalit...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Při psaní kódu ve Swiftu narazíte na problém s volitelné typy. Mnoho začátečníků zbytečně používá force unwrap – vykřičník – a pak řeší pády aplikace. Správný postup je používat if let nebo guard let, případně kombinovat s nil-coalescing operátorem. Pokud si nejste jistí, proč je volitelnost důležitá, zkuste si přečíst dokumentaci k optionals. Ale raději si to procvičte na malých příkladech. Uvidíte, že to zlepší kvalitu vašeho kódu. Rozdíl mezi implicitními volitelnými typy a běžnými volitelnými typy je častým zdrojem zmatení – snažte se jim vyhnout, dokud nepochopíte, jak fungují.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;První rok v IT je o růstu, ale taky o tom, že se naučíš říkat si o pomoc. Pokud se ti něco zdá přehnané, jako třeba termíny nebo rozsah úkolů, řekni to včas, ne až na poslední chvíli. Nikdo nečeká, že budeš hned perfektní. Důležité je, že se zlepšuješ a že jsi schopen přinést hotovou práci. Za pár měsíců zjistíš, že věci, které tě na začátku stresovaly, jsou rutina. A to je přesně ten moment, kdy se můžeš posunout na další úroveň.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Další častá chyba spočívá v tom, že se testuje pouze šťastná cesta. Zkuste otestovat i situace, kdy API vrací chybu, nebo kdy je požadavek zrušen. Vytvořte si mock, který vyvolá výjimku, a ověřte, že se dispatchuje správná akce pro chybu. Tímto způsobem získáte jistotu, že vaše aplikace korektně reaguje i na neočekávané stavy. Nezapomeňte také testovat, že se async akce nedispatchuje vícekrát, než je potřeba, což je častý zdroj duplicitních požadavků v UI.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Když se rozhodnete vytvořit web bez redakčního systému, první kroky vedou k HTML a CSS. HTML určuje strukturu – nadpisy, odstavce, obrázky, odkazy. CSS pak řídí vzhled – barvy, fonty, mezery, rozložení. Důležité je pochopit, že tyto dva jazyky pracují společně: HTML nese obsah, CSS mu dává formu. Pro začátek stačí textový editor a prohlížeč, žádný další software nepotřebujete.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Jakmile nastoupíš, neschovávej se za monitorem. Ptej se, ale nejdřív se snaž na problém přijít sám. Když se zasekneš déle než půl hodiny, je čas oslovit kolegu. Piš si poznámky, protože stejné věci se budou opakovat. Další častý omyl je snaha opravit všechno najednou. Místo toho se zaměř na to, aby tvoje změny byly malé a čitelné. Code review je běžná věc, ne útok na tvoje ego. Vnímej ho jako příležitost se učit a jednou budeš zase ty radit někomu mladšímu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Na co se zaměřit při testování na reálných zařízeních Emulátory jsou užitečné pro rychlé ověření základní funkčnosti, ale nikdy nenahradí reálné zařízení. Problémy s pamětí, baterií nebo teplotou se na emulátoru neprojeví. Pokud testujete na fyzickém telefonu, zapněte si sledování výkonu a sledujte vytížení procesoru, paměti a síťovou aktivitu. Typická chyba je testovat aplikaci pouze na Wi-Fi. Přepněte se na mobilní data a vyzkoušejte, co se stane, když signál ztratíte nebo zeslábne uprostřed požadavku.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Testování mobilních aplikací se liší od testování webů hned v několika podstatných ohledech. Jiný výkon zařízení, různá velikost obrazovky, přerušení příchozím hovorem nebo změna připojení k síti. Pokud chcete aplikaci dodat v rozumném čase a bez zbytečných chyb, musíte mít jasnou představu, co a jak testovat. Nejčastější chybou je testovat pouze na jednom emulátoru a spoléhat na to, že všechno poběží stejně i na reálném zařízení. To ale nefunguje.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Při responzivním designu se vyhněte pevným hodnotám jako width: 300px. Místo toho používejte jednotky fr, %, auto, nebo minmax(). Například pro obsah s bočním panelem použijte grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)). Tím zajistíte, že se prvky samy přeskupí, když je obrazovka úzká. U Flexboxu zase hlídáte vlastnost flex-wrap. Pokud ji nenastavíte na wrap, prvky se budou zmenšovat, až se nevejdou. To je druhý nejčastější problém – prvky se mačkají místo toho, aby se posunuly do nového řádku.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Kritickým bodem je také správa paměti. Swift používá ARC, takže nemusíte ručně uvolňovat paměť, ale musíte dávat pozor na silné a slabé reference. Silné cykly mezi třídami můžou způsobit memory leak. Často se to stane při použití closures v kombinaci s self. Řešení je jednoduché – deklarujte self jako weak, pokud víte, že objekt může být uvolněn. Doporučuji si osvojit nástroj Instruments a pravidelně kontrolovat paměť vaší aplikace, zejména před vydáním nové verze.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Async akce testujete pomocí mockované funkce dispatch a mockovaného API klienta. Vytvořte si mock, který vrací předem definovaná data, a poté zavolejte async akci s tímto mockem. Následně ověřte, že dispatch byla volána s akcemi ve správném pořadí – nejprve akce pro start požadavku, pak akce pro úspěch s daty, případně akce pro chybu. Důležité je nezapomenout na to, že thunk vrací Promise, takže v testu počkáte na jeho vyřešení pomocí await.&lt;/div&gt;</summary>
		<author><name>ChristoperY36</name></author>
	</entry>
</feed>