6 způsobů, jak se stát programátorem

Obsah:

6 způsobů, jak se stát programátorem
6 způsobů, jak se stát programátorem

Video: 6 způsobů, jak se stát programátorem

Video: 6 způsobů, jak se stát programátorem
Video: Как проверить генератор. За 3 минуты, БЕЗ ПРИБОРОВ и умений. 2024, Smět
Anonim

Stát se programátorem je kumulativní proces, který každý den a rok od roku zvyšuje vaše dovednosti a programování může být zábavné a obohacující (mentálně, duchovně i finančně). Tato příručka neslibuje magicky snadný způsob, jak se stát programátorem, a řazení kroků není posvátné, ale získáte obecný přehled o tom, jak se stát programátorem v jednom z moderních programovacích oborů.

Kroky

Staňte se programátorem Krok 1
Staňte se programátorem Krok 1

Krok 1. Udělejte úvodní kurz v jedné (nebo ve všech) následujících disciplínách:

  • Logika
  • Diskrétní matematika
  • Programovací jazyk (zúčastněte se různých programovacích paradigmat, počínaje sekvenčním/procedurálním až objektově orientovaným, po funkčním a logickém programování. Preferovaný Ruby/Python/Pascal pro začátečníky a po dobrém porozumění přejděte hlouběji do C ++/C#/Java)

ODBORNÁ TIP

Gene Linetsky, MS
Gene Linetsky, MS

Gene Linetsky, MS

Startup Founder & Engineering Director Gene Linetsky is a startup founder and software engineer in the San Francisco Bay Area. He has worked in the tech industry for over 30 years and is currently the Director of Engineering at Poynt, a technology company building smart Point-of-Sale terminals for businesses.

Gene Linetsky, MS
Gene Linetsky, MS

Gene Linetsky, MS

Zakladatel a technický ředitel spouštění

Nebojte se, že byste museli získat titul v oboru kódování.

Zatímco může být užitečné absolvovat kurzy v programovacím jazyce, Gene Linetsky, softwarový inženýr a zakladatel startupů, říká:"

Staňte se programátorem Krok 2
Staňte se programátorem Krok 2

Krok 2. Naučte se pojmy databáze, jako jsou tabulky, pohledy/dotazy a postupy

K tomu můžete použít jakýkoli jednoduchý databázový balíček, například:

  • MS Access
  • DB V
  • Fox Pro
  • Paradox
  • MySQL je dobrá databáze k učení, protože je zdarma, běžně se používá a k databázím se běžně přistupuje pomocí dotazů SQL
Staňte se programátorem Krok 3
Staňte se programátorem Krok 3

Krok 3. Rozhodněte se, jaký typ programátora chcete být

Programátoři obecně spadají do jedné z následujících kategorií:

  • Webový programátor
  • Desktopový programátor aplikací

    • Programátor orientovaný na operační systém (OS) (vázaný na jeden operační systém nebo sadu operačních systémů)
    • Programátor nezávislý na platformě
  • Programátor distribuovaných aplikací
  • Knihovna/platforma/framework/základní programátor
  • Systémový programátor

    • Programátor jádra
    • Programátor ovladačů
    • Programátor kompilátoru
  • Vědec programování
Staňte se programátorem Krok 4
Staňte se programátorem Krok 4

Krok 4. Naučte se technologie a programovací jazyky související s vámi zvoleným programovacím polem

Následující části rozdělují úkoly pro různé typy programování.

Metoda 1 ze 6: Webové programování

Staňte se programátorem Krok 5
Staňte se programátorem Krok 5

Krok 1. Zjistěte, co programování webu obnáší

Webové aplikace jsou softwarové komponenty navržené tak, aby fungovaly nad rámec internetové architektury. To znamená, že aplikace jsou přístupné prostřednictvím softwaru webového prohlížeče, jako je Firefox nebo Internet Explorer. Postavení nad architekturou internetu nevyžaduje nutně aktivní připojení k internetu. To znamená, že webové aplikace jsou postaveny na standardních webových technologiích, jako jsou:

  • HTTP
  • FTP
  • POP3
  • SMTP
  • TCP
  • IP protokoly
  • HTML
  • XML
  • Studená fúze
  • ASP
  • JSP
  • PHP
  • ASP. NET
Staňte se programátorem Krok 6
Staňte se programátorem Krok 6

Krok 2. Procházejte mnoho různých webů, abyste se dozvěděli, jak obvykle vypadají

(Klikněte pravým tlačítkem, potom klikněte na Zobrazit zdroj nebo stiskněte F12.) Hledejte rozmanitost v typu/obsahu webu, nikoli v počtu navštívených webů. Obecně budete muset navštívit alespoň jeden z následujících typů webů:

  • Firemní zastoupení (komerční korporace, neziskové korporace/organizace, vládní organizace)
  • Webové indexovací stroje (vyhledávače, meta vyhledávací weby, specializované vyhledávače, adresáře)
  • Stránky pro těžbu dat
  • Osobní stránky
  • Informační/encyklopedické stránky (wiki, datové listy, technické specifikace a příručky obsahující seznamy adresářů, blogy a časopisy, weby zpravodajských a zpravodajských agentur, žluté stránky atd.)
  • Sociální weby (sociální portály, stránky se záložkami, stránky s poznámkami)
  • Společné weby (to zahrnuje další výše uvedené kategorie, například wiki a blogy)
Staňte se programátorem Krok 7
Staňte se programátorem Krok 7

Krok 3. Naučte se alespoň jednu techniku/metodu brainstormingu a software, který se používá k implementaci této metody

Například: diagramy brainstormingu a MS Visio.

Staňte se programátorem Krok 8
Staňte se programátorem Krok 8

Krok 4. Seznamte se se strukturováním webových stránek

To vytváří koncepční webové diagramy, mapy stránek a navigační struktury.

Staňte se programátorem Krok 9
Staňte se programátorem Krok 9

Krok 5. Absolvujte nárazový kurz grafického designu

Zkuste se naučit alespoň jeden softwarový balíček pro úpravu/manipulaci s grafikou (volitelný, ale důrazně doporučený)

Staňte se programátorem Krok 10
Staňte se programátorem Krok 10

Krok 6. Naučte se základy internetové infrastruktury

To zahrnuje získání základní představy o:

  • Základní protokoly webových služeb (HTTP, FTP, SMTP a POP3 nebo IMAP4)
  • Software webového serveru (nejlépe jeden pro platformu, na které budete většinou pracovat)
  • Software pro procházení webu.
  • E -mailový server a klientský software
Staňte se programátorem Krok 11
Staňte se programátorem Krok 11

Krok 7. Naučte se jazyky HTML a CSS

Možná budete chtít také získat softwarový balíček „What You See Is What You Get (WYSIWYG)“pro úpravu HTML.

Staňte se programátorem Krok 12
Staňte se programátorem Krok 12

Krok 8. Naučte se XML a technologie související s XML, jako je XSL a XPath (volitelné, ale doporučené)

Staňte se programátorem Krok 13
Staňte se programátorem Krok 13

Krok 9. Vytvářejte jednoduché statické webové stránky, dokud nebudete obeznámeni s HTML a nebudete se v něm vyznat

Staňte se programátorem Krok 14
Staňte se programátorem Krok 14

Krok 10. Naučte se skriptovací jazyk na straně klienta

Většina uživatelů se učí JavaScript. Někteří se učí VBScript, ale to není kompatibilní s většinou prohlížečů.

Staňte se programátorem Krok 15
Staňte se programátorem Krok 15

Krok 11. Seznamte se se skriptovacím jazykem na straně klienta, který jste se naučili

Pokuste se dosáhnout svého potenciálu pouze pomocí tohoto jazyka. K dalšímu kroku přejděte až poté, co se alespoň seznámíte se svým skriptovacím jazykem na straně klienta.

Staňte se programátorem Krok 16
Staňte se programátorem Krok 16

Krok 12. Naučte se alespoň jeden programovací jazyk na straně serveru

Pokud se rozhodnete omezit na jeden serverový software, naučte se jeden z programovacích jazyků, které tento software podporuje. Pokud ne, naučte se alespoň jeden programovací jazyk pro každý serverový software.

Staňte se programátorem Krok 17
Staňte se programátorem Krok 17

Krok 13. Vytvořte pilotní projekt poté, co se naučíte programovací jazyk na straně serveru.

Staňte se programátorem Krok 18
Staňte se programátorem Krok 18

Krok 14. Získejte vlastní webové stránky a začněte online experimentovat na své vlastní stránce

Metoda 2 ze 6: Programování desktopových aplikací

Staňte se programátorem Krok 19
Staňte se programátorem Krok 19

Krok 1. Zjistěte, do čeho jdete s programováním desktopových aplikací

Většina desktopových programátorů píše kód pro obchodní řešení, takže získat představu o firmách, jejich organizační a finanční struktuře bude velkou úsporou času.

Staňte se programátorem Krok 20
Staňte se programátorem Krok 20

Krok 2. Seznamte se s různými architekturami hardwaru počítače

Užitečný je úvodní kurz v oblasti návrhu digitálních obvodů a další v počítačové architektuře; někteří to však považují za pokročilé ve výchozím bodě, takže by stačilo přečíst si dva nebo tři výukové články (například tento a tento). K tomuto kroku se pak můžete vrátit později, poté, co se naučíte svůj první programovací jazyk.

Staňte se programátorem Krok 21
Staňte se programátorem Krok 21

Krok 3. Naučte se programovací jazyk vstupní úrovně (pro děti)

Nebojte se naučit se takový jazyk jen proto, že jste starší, než by se vám říkalo „dítě“. Příkladem těchto programovacích jazyků může být Scratch. Tyto programovací jazyky mohou zmírnit bolest při osvojování si prvního programovacího jazyka. Tento krok je však volitelný. To lze také provést před předchozím krokem.

Staňte se programátorem Krok 22
Staňte se programátorem Krok 22

Krok 4. Získejte úvod do procedurálního řízení, objektově orientovaný, a paradigmata funkčního programování.

Staňte se programátorem Krok 23
Staňte se programátorem Krok 23

Krok 5. Absolvujte úvodní kurz v jednom z procedurálních programovacích jazyků

Bez ohledu na to, jaký jazyk si později vyberete jako svůj zvolený jazyk, bude vyžadovat procedurální programování na určité úrovni. Také procedurální programování uvádí většina programátorů jako nejjednodušší použití jako výchozí bod k získání představy o programování obecně.

Staňte se programátorem Krok 24
Staňte se programátorem Krok 24

Krok 6. Naučte se alespoň jednu pokročilou modelovací techniku, jako je UML nebo ORM

Staňte se programátorem Krok 25
Staňte se programátorem Krok 25

Krok 7. Začněte psát nějakou malou konzoli nebo konzole podobné aplikace

V knihách programovacích jazyků můžete využít běžná malá cvičení. K tomu si vyberte nástroj pro psaní programů v programovacím jazyce, ve kterém píšete.

Krok 8. Absolvujte pokročilejší kurz ve zvoleném programovacím jazyce

Než budete pokračovat, ujistěte se, že dobře rozumíte následujícím pojmům a že je můžete relativně snadno aplikovat:

  • Zadávání a vydávání informací uživatelům programu.
  • Logický tok a tok provádění programů v procedurálních jazycích.
  • Deklarace, přiřazování a porovnávání proměnných.
  • Větvení programovacích konstrukcí, jako je if..then..else a select/switch..case.
  • Smyčkové konstrukce jako while..do, do.. while/until, for..next.
  • Syntaxe vašeho programovacího jazyka pro vytváření a volání procedur a funkcí.
  • Datové typy a manipulace s nimi.
  • Uživatelem definované datové typy (záznamy/struktury/jednotky) a jejich použití.
  • Pokud váš jazyk podporuje funkce přetížení, porozumějte mu.
  • Metody přístupu do paměti vašeho zvoleného jazyka (ukazatele, pokukování atd.)
  • Pokud váš jazyk podporuje přetížení operátorů, pochopte to.
  • Pokud váš jazyk podporuje delegáty/ukazatele funkcí, rozumějte mu.
Staňte se programátorem Krok 27
Staňte se programátorem Krok 27

Krok 9. Použijte pokročilé techniky, které jste se naučili

Staňte se programátorem Krok 28
Staňte se programátorem Krok 28

Krok 10. Udělejte úvodní kurz v alespoň jednom dalším programovacím jazyce v jiném programovacím paradigmatu

Doporučuje se naučit se jeden programovací jazyk každého paradigmatu a většina pokročilých programátorů ano, ale obvykle začínáte s jedním, chvíli pracujete, aplikujete své znalosti a procvičujete je, pak se ten druhý naučíte později, poté, co už máte skutečný -životní zkušenosti s programováním. Zkuste jednu z následujících jazykových oblastí:

  • Paradigma logického programování.
  • Paradigma funkcionálního programování.
  • Objektově orientované paradigma.
Staňte se programátorem Krok 29
Staňte se programátorem Krok 29

Krok 11. Zkuste porovnat dva programovací jazyky, které jste se dosud naučili

Vyhodnoťte silné a slabé stránky každého z nich. Obvykle to provádí:

  • Vezměte jednoduché ukázky své rané práce v prvním programovacím jazyce a přepište jej pomocí druhého programovacího jazyka.
  • Vytvořte nový projekt a zkuste jej implementovat pomocí obou jazyků. Někdy v závislosti na vašem výběru projektu a jazyků nemusí být možné implementovat projekt v jednom z jazyků!
  • Psaní cheat-listu nebo souhrnné tabulky srovnání mezi podobnými konstrukty ve dvou jazycích a funkce jedinečné pro každý z jazyků.
  • Zkuste najít způsoby, jak napodobit funkce, které jsou jedinečné pro jeden ze dvou jazyků, pomocí druhého jazyka.
Staňte se programátorem Krok 30
Staňte se programátorem Krok 30

Krok 12. Naučte se koncepty vizuálního programování pomocí jednoho z jazyků, které jste se naučili

Téměř všechny programovací jazyky mají verze/knihovny, které podporují vizuální programování a jiné podporují konzolu nebo programování podobné konzole. Toho lze dosáhnout:

  • Získejte úvod do programování řízeného událostmi. Většina vizuálních programů se do určité míry spoléhá na události a zpracování událostí (pomocí zvoleného programovacího jazyka).
  • Vyzkoušejte co nejvíce softwaru pro stolní počítače a porozumějte tomu, co software dělá. Většina společností zabývajících se vývojem softwaru nabízí beta verze svých produktů, které můžete použít k testování softwaru. Mějte aktuální informace o vylepšeních uživatelského rozhraní.
  • Přečtěte si nějaké články nebo návody na grafická uživatelská rozhraní.
Staňte se programátorem Krok 31
Staňte se programátorem Krok 31

Krok 13. Začněte aplikovat své znalosti na malé softwarové projekty, které navrhujete

Zkuste aplikovat své znalosti programování na problémy, se kterými se setkáváte ve svém každodenním životě. Můžete například psát programy, které hromadně přejmenovávají soubory, vizuálně porovnávají textové soubory, kopírují názvy souborů v adresáři do paměťového/textového souboru a podobné věci. Nejprve to zjednodušte.

Staňte se programátorem Krok 32
Staňte se programátorem Krok 32

Krok 14. Vytvořte virtuální promoční projekt

Dokončete to až do konce a použijte techniky vizuálního programování, které jste se dosud naučili.

Staňte se programátorem Krok 33
Staňte se programátorem Krok 33

Krok 15. Rozšiřte své chápání vizuálního rámce/knihovny/balíčku, který jste se dříve naučili, tím, že se zúčastníte pokročilých kurzů, věnujete zvláštní pozornost detailům a naučíte se další tipy a triky pro svůj rámec z online zdrojů

Staňte se programátorem Krok 34
Staňte se programátorem Krok 34

Krok 16. Vyhledejte další balíčky/knihovny vizuálních prvků pro vaše programovací jazyky a naučte se je

Staňte se programátorem Krok 35
Staňte se programátorem Krok 35

Krok 17. Udělejte si kurz grafiky (ne grafického designu)

Bude to velmi užitečné pro programátory, kteří chtějí psát atraktivní prvky uživatelského rozhraní.

Staňte se programátorem Krok 36
Staňte se programátorem Krok 36

Krok 18. Zvažte možnost stát se herním programátorem (volitelně)

Programování her je ve většině částí považováno za programování na ploše. Pokud se chcete stát herním programátorem, budete se muset po dokončení těchto kroků dozvědět více o programování her. Grafický kurz je pro herní programátory nutností a druhým jazykem, který jste si vybrali v předchozích krocích, by měl být logický/funkční programovací jazyk (nejlépe Prolog nebo Lisp).

Metoda 3 ze 6: Programování distribuovaných aplikací

Staňte se programátorem Krok 37
Staňte se programátorem Krok 37

Krok 1. Řešit programování distribuovaných aplikací

Distribuované programování aplikací je mnohými považováno za jedno z nejnáročnějších na učení a vyžaduje různorodé znalosti v oblasti počítačových a komunikačních technologií.

Staňte se programátorem Krok 38
Staňte se programátorem Krok 38

Krok 2. Rychle se seznamte s telefonními systémy a jejich hardwarem

Tento krok je volitelný. Je však velmi užitečný v porozumění topologii sítě.

Staňte se programátorem Krok 39
Staňte se programátorem Krok 39

Krok 3. Seznamte se se síťovými hardwarovými architekturami a zařízeními, jako jsou rozbočovače, přepínače a směrovače

Staňte se programátorem Krok 40
Staňte se programátorem Krok 40

Krok 4. Absolvujte kurz síťových protokolů a základů

Než začnete programovat distribuované aplikace, musíte dobře porozumět modelu Open Systems Interconnection (OSI), ethernetu, IP, TCP, UDP a

Staňte se programátorem Krok 41
Staňte se programátorem Krok 41

Krok 5. Naučte se jazyk XML a seznamte se s ním

Staňte se programátorem Krok 42
Staňte se programátorem Krok 42

Krok 6. Začněte tím, že se naučíte skriptovací jazyk shell

Pro programování na bázi Windows by to byl jakýkoli skript, který funguje s Windows Scripting Host. Pro programování založené na Linuxu budou stačit Bash skripty a Perl. K tomu je na obou platformách důrazně doporučován JavaScript z následujících důvodů:

  • Je podporován téměř jakýmkoli skriptovacím hostitelem v jakémkoli operačním systému (Windows Scripting Host standardně podporuje JavaScript, většina distribucí Linuxu má balíček pro podporu skriptovací konzoly JavaScript).
  • Mnoho vývojářů to považuje za snazší se naučit.
  • Má syntaxi odvozenou od ALGOL, která vás seznámí s mnohem více dalšími programovacími jazyky, když potřebujete zvolit druhý programovací jazyk (C, C ++, C#, Java a J# mají syntaxi odvozenou od ALGOL).
  • Naučením se JavaScriptu se seznámíte se skriptováním webových stránek na straně klienta, což je bonusový vedlejší efekt!
Staňte se programátorem Krok 43
Staňte se programátorem Krok 43

Krok 7. Nejprve použijte pouze procedurální programování pomocí zvoleného skriptovacího jazyka

Později můžete použít pokročilejší programovací techniky a paradigmata podle skriptovacího jazyka a toho, co podporuje. Všechny skriptovací jazyky mají na určité úrovni určité procedurální programovací aspekty.

Staňte se programátorem Krok 44
Staňte se programátorem Krok 44

Krok 8. Použijte skriptovací jazyk, který jste se naučili, k psaní skriptů, které provádějí komunikaci mezi počítači

Zjistěte, co je k tomu nutné. Jednoduchá komunikace bude stačit.

Staňte se programátorem Krok 45
Staňte se programátorem Krok 45

Krok 9. Proveďte převod do skriptovacího/programovacího jazyka pro stolní počítače

Výhodně je to jazyk s více paradigmaty, jako je Python. Udělejte si jednoduchý úvod do toho druhého jazyka. Java je většinou programátorů považována za zvolený jazyk z mnoha důvodů. C# však v této oblasti rychle nabírá na obrátkách. Java a C# jsou upřednostňovány z následujících důvodů:

  • Jsou to objektově orientované programovací jazyky, které chrání programátory ve velkých týmech před detaily implementace, protože oba podporují komponenty (jednotky kódu, předkompilované, které provádějí určitý úkol a lze je použít v jiných programech).
  • Podporují programování založené na událostech, stejně jako OO a procedurální programování na určité úrovni.
  • Rámec, na kterém je jazyk postaven, je distribuován od přírody (v případě Javy).
  • Dostupnost mnoha hotových balíčků, které se zabývají sítí, jako open-source kód a integrované rámce balíčků; to programátorům usnadňuje stavět na práci ostatních.
Staňte se programátorem Krok 46
Staňte se programátorem Krok 46

Krok 10. Soustřeďte se více na základní funkce jazyka, zejména na ty, které podporují vytváření sítí

Věnujte menší pozornost prvkům uživatelského rozhraní, jako je výstup, design a techniky oken a prvky uživatelského rozhraní.

Staňte se programátorem Krok 47
Staňte se programátorem Krok 47

Krok 11. Absolvujte kurz o návrhu a architektuře distribuovaných aplikací

To lze provést pomocí knih, online tutoriálů nebo akademických kurzů. Pochopení architektury distribuovaných aplikací a jejích konceptů je však nezbytné.

Staňte se programátorem Krok 48
Staňte se programátorem Krok 48

Krok 12. Přečtěte si o budování servisních komponent a služeb pomocí zvoleného programovacího jazyka

Staňte se programátorem Krok 49
Staňte se programátorem Krok 49

Krok 13. Naučte se jednu nebo více z následujících technologií

Doporučuje se, abyste se se všemi alespoň seznámili. Většina distribuovaných programátorů aplikací se nezastaví u jednoho nebo dvou programovacích jazyků, ale naučí se alespoň jeden programovací jazyk pro každý operační systém. Důvodem je, že pokud chcete, aby vaše aplikace byla „distribuována“, měli byste poskytnout její verzi alespoň pro každý hlavní operační systém.

  • Common Object Request Broker Architecture (CORBA)
  • Simple Object Access Protocol (SOAP)
  • Asynchronní JavaScript a XML (AJAX)
  • Objektový model distribuovaných komponent (DCOM)
  • Vzdálená komunikace. NET
  • Webové služby XML

Metoda 4 ze 6: Knihovna/platforma/rámec/základní programování

Staňte se programátorem Krok 50
Staňte se programátorem Krok 50

Krok 1. Zjistěte, co je základní programování

Základní programátoři jsou pouze pokročilí programátoři, kteří provedli přenos z programovacích aplikací do programovacích kódových jednotek, které mají používat jiní programátoři.

Staňte se programátorem Krok 51
Staňte se programátorem Krok 51

Krok 2. Naučte se programovací jazyk, který podporuje vytváření opakovaně použitelných komponent/balíčků, pokud jste tak ještě neučinili

Staňte se programátorem Krok 52
Staňte se programátorem Krok 52

Krok 3. Absolvujte pokročilý kurz UML a ORM

Většina vývojářů knihoven používá jeden nebo oba.

Staňte se programátorem Krok 53
Staňte se programátorem Krok 53

Krok 4. Absolvujte kurz softwarového inženýrství

Staňte se programátorem Krok 54
Staňte se programátorem Krok 54

Krok 5. Naučte se alespoň modulární, komponentní, objektově orientované a událostmi řízené programovací techniky a koncepty

Čím více programovacích paradigmat a jazyků pokryjete, tím budete úspěšnější jako programátor knihoven/balíčků.

Staňte se programátorem Krok 55
Staňte se programátorem Krok 55

Krok 6. Zjistěte více o různých operačních systémech a programovacích rámcích podporovaných těmito operačními systémy

Staňte se programátorem Krok 56
Staňte se programátorem Krok 56

Krok 7. Zaměřte své učení na rámce, programovací jazyky a technologie nezávislé na platformě

Staňte se programátorem Krok 57
Staňte se programátorem Krok 57

Krok 8. Pokud programovací jazyky, které jste se dosud naučili, mají ANSI/ISO/IEEE/Standardní verze W3C, zvládněte standardy.

Pokuste se použít standardní kód, kdykoli je to možné.

Staňte se programátorem Krok 58
Staňte se programátorem Krok 58

Krok 9. Zkuste napodobit jednoduché, již zavedené knihovny, zejména open-source

To je užitečné v rané fázi stávání se programátorem knihoven/balíčků. Začněte s jednoduchými balíčky, jako jsou převody jednotek a balíčky pro pokročilé vědecké výpočty. Pokud jste vysokoškolák, využijte svých neprogramovacích kurzů tím, že se pokusíte implementovat jejich rovnice a vědecké jádro jako knihovny.

Staňte se programátorem Krok 59
Staňte se programátorem Krok 59

Krok 10. Vyhledejte a vyzkoušejte balíčky open source ve svém oboru programování

Nejprve stáhněte binární soubory/spustitelné soubory balíčku. Zkuste ji využít a najít její silné i slabé stránky. Až to uděláte, stáhněte si zdroj a zkuste zjistit, jak to bylo provedeno. Zkuste tyto knihovny nebo jejich části znovu vytvořit. Nejprve to udělejte poté, co jste viděli kód, a později, než uvidíte kód. V pozdějších fázích zkuste tyto knihovny vylepšit.

Staňte se programátorem Krok 60
Staňte se programátorem Krok 60

Krok 11. Naučte se různé přístupy používané k distribuci a nasazení komponent programátorům

  • Programátoři knihoven/balíčků mají obvykle tendenci myslet rekurzivně a/nebo iterativně na všechny problémy, se kterými se setkávají. Pokuste se každý problém považovat za soubor menších problémů (sled jednodušších úkolů) nebo za opakovaný proces redukce rozsahu problému na menší rozsahy a poté hromadění těchto rozsahů na sebe.
  • Programátoři knihoven/balíků mají tendenci zobecňovat. To znamená, že když je jim předložen jednoduchý konkrétní problém, obvykle je napadne obecnější problém a pokusí se vyřešit obecný problém, který automaticky vyřeší ten menší.

Metoda 5 ze 6: Programování systému

Staňte se programátorem Krok 61
Staňte se programátorem Krok 61

Krok 1. Pochopte, co programování systému obnáší

Systémoví programátoři se zabývají vědou o programování, nikoli jeho konkrétními implementacemi. Nevazujte se na konkrétní platformu.

Staňte se programátorem Krok 62
Staňte se programátorem Krok 62

Krok 2. Postupujte podle prvních tří kroků pro programátory desktopových aplikací

Staňte se programátorem Krok 63
Staňte se programátorem Krok 63

Krok 3. Absolvujte úvodní kurz lineární algebry

Staňte se programátorem Krok 64
Staňte se programátorem Krok 64

Krok 4. Udělejte si kurz v kalkulu

Staňte se programátorem Krok 65
Staňte se programátorem Krok 65

Krok 5. Absolvujte kurz logiky a/nebo diskrétní matematiky

Staňte se programátorem Krok 66
Staňte se programátorem Krok 66

Krok 6. Představte se s různými holými operačními systémy

To lze provést:

  • Získání představy o tom, jak jsou nainstalovány operační systémy.
  • Naučte se instalovat různé operační systémy na jeden počítač (volitelné, ale doporučené).
  • Instalace více než jednoho operačního systému. Neinstalujte do systémů žádné pomocné balíčky; místo toho použijte holé funkce poskytované operačními systémy.
Staňte se programátorem Krok 67
Staňte se programátorem Krok 67

Krok 7. Absolvujte kurz (nebo alternativně čtěte knihy) o architektuře počítačového hardwaru

Staňte se programátorem Krok 68
Staňte se programátorem Krok 68

Krok 8. Rozvíjet porozumění různým platformám počítačového hardwaru

Staňte se programátorem Krok 69
Staňte se programátorem Krok 69

Krok 9. Získejte úvodní seznámení s jazykem sestavení zvolené hardwarové platformy/operačního systému

Později se naučíte sestavování dalších platforem/systémů.

Staňte se programátorem Krok 70
Staňte se programátorem Krok 70

Krok 10. Naučte se jazyky ANSI C a C ++ spolu s koncepty procedurálního programování

Staňte se programátorem Krok 71
Staňte se programátorem Krok 71

Krok 11. Porozumět a procvičovat standardní knihovny C/C ++ na zvolené platformě

Věnujte zvláštní pozornost knihovně standardních šablon (STL) a možná knihovně aktivních šablon (ATL).

Staňte se programátorem Krok 72
Staňte se programátorem Krok 72

Krok 12. Vyhledejte online zdroje, knihy a kurzy, abyste porozuměli chuti C vaší konkrétní platformy

Staňte se programátorem Krok 73
Staňte se programátorem Krok 73

Krok 13. Procvičte si vytváření pokročilého kódu v jazycích C a C ++

Staňte se programátorem Krok 74
Staňte se programátorem Krok 74

Krok 14. Naučte se pokročilejší sestavení

Staňte se programátorem Krok 75
Staňte se programátorem Krok 75

Krok 15. Absolvujte kurz v oblasti návrhu operačních systémů

Staňte se programátorem Krok 76
Staňte se programátorem Krok 76

Krok 16. Najděte a přečtěte si dokumentaci vaší konkrétní platformy, kterou si vyberete

To bude snazší, pokud zvolíte operační systém založený na Unixu. Pochopte systém, se kterým budete později pracovat, velmi dobře.

Staňte se programátorem Krok 77
Staňte se programátorem Krok 77

Krok 17. Procvičte si získané znalosti

Nejprve vytvořte malé systémové nástroje. Obvykle je užitečné:

  • Pokoušíte se znovu vytvořit malé nástroje, které již ve vašem systému jsou.
  • Pokoušíte se portovat nástroje dostupné v jiných operačních systémech do vašeho.
Staňte se programátorem Krok 78
Staňte se programátorem Krok 78

Krok 18. Učte se jazyky v nejužitečnějším pořadí

Toto je jediné místo, kde záleží na prvním programovacím jazyce. Nejprve se naučte ANSI C, ne C ++, ne C#, ne Java a ne D. Pak se naučte C ++.

  • Omezení prvního jazyka pouze na C a C je proto, že programování systémů vyžaduje, aby byl programátor obeznámen s následujícími pojmy:

    • Skutečná a úplná kompilace zdrojového kódu.
    • Výstupní soubory nízkoúrovňových objektů.
    • Propojení binárních souborů.
    • Programování strojového jazyka/sestavení na nízké úrovni. Říká se, že jazyk C je některými maskovanou/snadněji naučitelnou montáží. Podporuje také vkládání kódu jazyka sestavení do kódu, kdykoli chcete, a je pouze procedurální (jako sestavení).

Metoda 6 ze 6: Věda o programování

Staňte se programátorem Krok 79
Staňte se programátorem Krok 79

Krok 1. Vědět, co dělá programátor

Vědci z programování jsou velmi pokročilí programátoři, kteří místo práce na vývoji aplikací pracují na vývoji výpočetních technologií, jako je šifrování, programovací jazyky a algoritmy dolování dat. Této úrovně se jen zřídka dosáhne bez akademického studia a obětavosti.

Staňte se programátorem Krok 80
Staňte se programátorem Krok 80

Krok 2. Shromážděte vědecké znalosti ekvivalentní čtyřletému titulu z počítačové vědy

To lze provést buď:

  • Získání skutečného akademického titulu (což se obvykle stává).
  • Získání obrysů kurzů pro takový stupeň z jedné z moderních univerzit a absolvování kurzů buď samostudiem, nebo jako samostatné kurzy. Toho by bylo možné dosáhnout teoreticky, ale doporučená cesta je první.
Staňte se programátorem Krok 81
Staňte se programátorem Krok 81

Krok 3. Rozhodněte obor

Čím konkrétnější, tím lepší. To závisí na vašich preferencích. Zde je však seznam některých hlavních témat počítačové vědy:

  • Návrh algoritmu (několik příkladů je vyhledávání, třídění, šifrování, dešifrování a detekce chyb v komunikaci)
  • Programovací jazyky/návrh kompilátoru/optimalizace
  • Pole umělé inteligence (rozpoznávání vzorů, rozpoznávání řeči, zpracování přirozeného jazyka, neuronové sítě)
  • Robotika
  • Vědecké programování
  • Super výpočetní výkon
  • Počítačem podporovaný návrh/modelování (CAD/CAM)
  • Virtuální realita
  • Počítačová grafika (Počítačová grafika je obvykle mylně zaměňována s grafickým designem nebo návrhem grafického uživatelského rozhraní. Počítačová grafika je obor, jak reprezentovat a manipulovat s grafikou v počítačových systémech.)
Staňte se programátorem Krok 82
Staňte se programátorem Krok 82

Krok 4. Zvažte získání vyššího akademického titulu

Možná budete chtít pokračovat v magisterském nebo doktorském studiu.

Doporučuje: