Jak zlepšit své programátorské dovednosti

Programování je jednou z nejuniverzálněji využitelných dovedností na dnešním pracovním trhu. Ať už umíte vytvořit pro společnost webové stránky, nebo víte, jak rychle opravit chybu v přesměrování, všechny tyto schopnosti mohou být pro vás i vaše zaměstnavatele neocenitelné. Bez trochy úsilí však mistrovství v programování nedosáhnete, takže pokračujte ve čtení a naučte se, jak si zlepši své programátorské dovednosti.

Postup

  1. 1
    Problém řádně analyzujte.
  2. 2
    Možná řešení problému si dvakrát promyslete.
  3. 3
    Shromážděte všechny požadavky. Dejte si čas na to, abyste sepsali, jakých cílů chcete výsledným produktem dosáhnout a jaká bude vaše uživatelská základna. Když si vše dobře promyslíte už v tomto bodě, v budoucnu tím ušetříte spoustu času.
  4. 4
    Sepište si podrobný plán či model implementace.
    • Pro něco malého a nezávislého může stačit jen základní vývojový diagram, nebo prostá rovnice.
    • U větších projektů pomůže, když si úkol rozdělíte na menší části a zvážíte následující:
      • Jakou úlohu má každá část plnit
      • Jak si budou jednotlivé části předávat data
      • Jakým způsobem bude každá část data využívat
    • Ačkoliv shromažďovat požadavky a plánovat může být únavné a mnohem méně zábavné, než se rovnou vrhnout do kódování, věřte, že ještě mnohem únavnější je strávit hodiny debugováním. Vyhraďte si proto čas na to, abyste si předem vytvořili správný návrh struktury a průběhu programu. Možná při tom dokonce najdete efektivnější způsob, jak úkoly splnit, ještě než napíšete první řádek kódu!
  5. 5
    Svůj kód hustě komentujte. Pokud se vám zdá, že by si kód zasloužil vysvětlení, okomentujte ho. Každé funkci by měly předcházet 1-2 řádky kódu s popisem argumentů a návratových hodnot. Komentáře by měly častěji než co vysvětlovat proč. A při úpravě kódu nezapomeňte upravit také komentáře!
  6. 6
    Při pojmenovávání proměnných používejte konsistentně některý z konvenčních stylů. Pomůže vám to rozpoznávat typ a účel jednotlivých proměnných. Sice budete psát více, než kdybyste používali výrazy jako x = a + b * c, usnadníte si tím však debugování a údržbu kódu. Jednou z populárních konvencí je Maďarská notace, kde jméno proměnné uvozuje prefix jejího typu. Například pro proměnné typu integer můžete použít intRowCounter; pro řetězce strUserName. Je jedno, jakou konvenci při pojmenovávání použijete, vždy ji však musíte bez výjimky dodržovat, a jména proměnných musí být popisná. (Více v sekci Varování níže).
  7. 7
    Kód si organizujte. Pro vyznačení struktury kódu používejte vizuální strukturalizaci. Například kód, který spadá pod podmínku (if,else,...) nebo smyčku (for,while,...) odsazujte. Zkuste také mezi název proměnné a operátor (např. plus, mínus, krát, děleno či rovnítko) vkládat mezeru (maPromenna = 2 + 2). Nejen že tak bude kód vizuálně elegantnější, ale také z něj rychle vyčtete chod programu. (Podívejte se na tipy pro odsazování, uvedené níže.)
  8. 8
    Vše testujte. Začněte s testováním každého modulu zvlášť s pomocí vstupů a hodnot, které lze typicky očekávat. Poté vyzkoušejte vstupy, které jsou možné, avšak méně časté. Tím odhalíte všechny skryté chyby. Testování je samo o sobě umění a vy si v něm postupně tréninkem vybudujete zručnost. Své testy pište tak, aby zahrnovaly následující případy:
    • Extrémy: Nula a hodnoty nad maximem pro kladná čísla, prázdné řetězce pro textové hodnoty a hodnotu null pro všechny parametry.
    • Nesmyslné hodnoty. I když nevěříte, že by uživatel mohl takovou hatmatilku zadat, stejně na ni svůj software otestujte.
    • Nesprávné hodnoty. Pro hodnotu dělitele zadejte nulu, pro výpočet odmocniny či tam, kde je očekáváno kladné číslo, zadejte číslo záporné. Zadejte i nečíselnou hodnotu tam, kde je vstupní typ řetězec, který se má parsovat na číselnou hodnotu.
  9. 9
    Trénujte, trénujte, trénujte. Vody programování nejsou stojaté – vždycky najdete něco nového, co si je třeba osvojit, a také (což je možná ještě důležitější) několik starších znalostí, které je třeba oprášit.
  10. 10
    Buďte připraveni na změny. V reálném pracovním prostředí se požadavky mění. Nicméně, čím jasněji jste s požadavky seznámeni na začátku a čím lepší si sestavíte plán implementace, tím méně je pravděpodobné, že ke změnám dojde kvůli špatnému rozvržení projektu či kvůli nedorozuměním.
    • Při vyjasňování požadavků můžete převzít aktivní úlohu tak, že správně odprezentujete svou dokumentaci a implementační plán ještě dříve, než začnete psát kód. To vám pomůže zajistit, že to, co se chystáte vytvořit, je tím, co od vás bylo požadováno.
    • Projekt si rozložte do série milníku se zkušebním výstupem po dokončení každého bloku, a tyto milníky zpracovávejte jeden po druhém. Čím méně věcí musíte držet v danou chvíli v hlavě, tím lépe.
  11. 11
    Začněte zlehka a propracujte se ke složitějším věcem. Při programování něčeho složitějšího pomáhá, když si nejprve rozestavíte a zprovozníte základní stavební prvky programu. Například řekněme, že chcete vytvořit na obrazovce rozvíjející se tvar, který sleduje směr pohybu myši a mění tvar v závislosti na jeho rychlosti.
    • Začněte tím, že si zobrazíte čtverec a necháte jej sledovat myš, tzn. nejprve vyřešíte samotné sledování pohybu kurzoru.
    • V dalším kroku provažte velikost čtverce s rychlostí myši, tedy vyřešte samostatně převod rychlosti pohybu kurzoru na tvar.
    • Teprve nakonec vytvořte tvary, se kterými chcete skutečně pracovat, a spojte tyto tři komponenty dohromady.
    • Pomocí tohoto přístupu se přirozeně dostanete k modulárnímu psaní kódu, kdy každý komponenta má vlastní samostatný blok. To se velmi hodí z hlediska opětovné využitelnosti kódu (například když budete chtít využít sledování pohybu myši v novém projektu) a velice zjednodušuje debugování a údržbu kódu.

Tipy

  • Používejte IDE (Integrated Development Environment = „Integrované vývojové prostředí“). Dobré IDE nabídne vestavěný barevně zvýrazněný editor kódu, nápovědu a automatické dokončování kódu, díky čemuž můžete psát rychleji a s menší náchylností k překlepům. V IDE obvykle najdete také vestavěný debugger.
  • Nechte svůj kód přečíst spřízněné programátory. Možná přijdou na něco, co vás samotné předtím nenapadlo. Neznáte žádné profesionální programátory? Najděte si online fórum věnované vašemu programovacímu jazyku a zapojte se do diskuse.
    • Pokud se vydáte touto cestou, pročtěte si a prozkoumejte etiketu fóra. Když se slušně zeptáte, určitě se najde spousta dobrosrdečných expertů, kteří se vám pokusí pomoci.
    • Nezapomeňte na slušnost, žádáte přece o laskavost. Nepropadejte frustraci, pokud hned nepochopíte vše, a také neočekávejte, že vám někdo zkontroluje 10.000 řádků kódu. Pokládejte raději úzce zaměřené otázky a přikládejte k nim jen 5-10 řádek relevantního kódu. Takto nejspíše obdržíte přínosné odpovědi.
    • Než začnete posílat otázky, zkuste trochu hledat. Váš dotaz se na fóru téměř jistě již objevil, byl zhodnocen a vyřešen.
  • Skvělým způsobem zlepšení vlastních programátorských schopností je studování cizích zdrojových kódů. Projděte si cizí kód krok po kroku, sledujte tok programu a pozorujte, co se děje s proměnnými. Poté zkuste sami napsat kód, který dělá to samé (nebo jej dokonce zlepšit). Rychle se tak naučíte, proč se určité věci píší daným způsobem, a také pochytíte pár užitečných tipů k efektivnějšímu programování.
  • Zákazníky a šéfy až tak nezajímá, jak váš program funguje, ale spíš to, jak dobře funguje. Myslete proto z jejich perspektivy. Klienti jsou inteligentní, avšak zaneprázdnění lidé. Nebude je zajímat, jaké datové struktury použijete, ale to, zda tím dosáhnete viditelného zrychlení či zpomalení programu.
  • Skvělým zdrojem pro vás jsou i stránky s tutoriály.
  • Kódy své aplikace pravidelně zálohujte na jiný disk nebo na přenosné zařízení, abyste měli k dispozici kopii programu pro případ, že se vám počítač pokazí, nebo se k němu nebudete moci dostat. Nejméně jednu kopii si ukládejte na bezpečné místo.
  • Udržujte svůj kód vizuálně elegantní. Ne proto, že tak vypadá hezky, ale proto, aby se snáze četl. To je zcela zásadní, když potřebujete změnit něco, co jste napsali před půl rokem. Zde si přečtěte něco o odsazování.
  • Dejte si po každé větší porci práce pauzu, zabývejte se něčím jiným a pak s čistou hlavou zhodnoťte to, co jste vytvořili. Znovu si kód promyslete a přepište jej tak, aby byl efektivnější, elegantnější a kratší.
  • Najděte si editor umožňující barevné vyznačování syntaxe. Vidět rozdílně značené komentáře, klíčová slova, čísla, řetězce apod. opravdu hodně pomáhá.
  • Při debugování měňte zaráz jen jedinou věc. Změnu nejprve otestujte a pak se teprve přesuňte na další položku.
  • Používejte nástroje na verzování. Programy jako CVS či SVN vám usnadní sledování změn i chyb v kódu.
  • Dvakrát kontrolujte syntaxi a překlepy. I ty nejdrobnější chybičky vám mohou pěkně zavařit.
  • Svou starší práci si archivujte. Nejen že jde o dobrý referenční materiál, ale také v ní můžete najít kusy kódu, které později znovu využijete.
  • Namísto výrazů pro zobrazování výstupů proměnných v kódu používejte debugger. Nástroj pro debugování vám umožní procházet kód po jednotlivých řádcích, takže zjistíte, kde se program začíná chovat nesprávně.
  • Mluvte s ostatními programátory. Lidé vám často poskytnou skvělý zdroj informací, obzvláště v začátcích. Zjistěte, zda ve vašem okolí existuje skupina programátorů, kteří se někde setkávají, a zapojte se do ní.
  • Začněte s malými projekty, dávejte si dosažitelné cíle a propracovávejte se ke složitějším věcem.
  • Oddělování (balíčkování) opětovně využitelného kódu od kódu specifického pro danou aplikaci vám za čas zajistí rozsáhlou knihovnu debutovaných a opakovaně použitelných užitečných prográmků. Díky tomu budete moci mnohem rychleji psát výkonnější a složitější stabilní aplikace. [1]
  • Dobrým řešením jak pro časté ukládání práce, tak pro uchovávání fyzicky oddělené zálohy jsou verzovací nástroje typu git či mercurial v kombinaci se zdarma dostupnými hostingy, jako jsou GitHub či Bitbucket.

Varování

  • Kopírování a vkládání cizího kódu je obecně vzato špatný návyk, přebírání malých částí open source kódu však může být velmi poučné. Jen se vyvarujte toho, abyste program kompletně okopírovali a pak chtěli převzít ohodnocení. Nekopírujte kód z jiných programů, pokud k tomu nemáte povolení, nebo to nepovoluje licence programu.
  • Práci si často průběžně ukládejte, jinak riskujete, že při zaseknutí či pádu operačního systému přijdete o hodiny a hodiny práce. Pokud toto varování budete ignorovat, dřív nebo později se vám to vymstí!
  • Maďarskou notaci (označování typu proměnné prefixem) byste měli používat opatrně. Při editaci kódu (a obzvlášť při přenosu kódu do jiného jazyka či operačního systému) může docházet k nekonzistenci. Nejčastěji se tato notace využívá při práci se 'slabě typovanými' jazyky, které nevyžadují prvotní deklaraci typu proměnné.

Věci, které budete potřebovat

  • Počítač
  • IDE (Integrated Development Environment = „Integrované vývojové prostředí“)
  • Příručku či web s tutoriály
  • Pokročilou znalost API a/nebo znalost architektury i86x

Informace o článku

Spoluatorem tohoto článku je tým zkušených editorů a badatelů, kteří ověřují jeho přesnost a srozumitelnost.

Kategorie: Software

V jiných jazycích:

English: Improve Your Skills as a Programmer, Italiano: Migliorare le Tue Abilità di Programmatore, Español: mejorar tus habilidades como programador, Português: Melhorar suas Habilidades como Programador, Русский: улучшить свои навыки программиста, Deutsch: Deine Fähigkeiten als Programmierer verbessern, Bahasa Indonesia: Meningkatkan Kemampuan Sebagai Pemrogram, Nederlands: Je programmeervaardigheden verbeteren, Français: développer vos compétences de programmeur, العربية: تحسين مهاراتك البرمجية

Stránka byla zobrazena 1 479 krát.
Byl tento článek přesný?