Koncepty programovacích jazyků
Když jsem se začal učit koncepty programovacích jazyků, neznal jsem nic takového jako základy. Znal jsem jen základy A + a Network +. Ale C, Java, Python pro mě byly úplně jiným světem. Kromě toho mi sotva někdo pomohl, protože jsem byl jediný z mých přátel z IT prostředí. Nakonec jsem se tedy rozhodl začít se učit od nejběžnějších konceptů programovacích jazyků. Pak jsem se dozvěděl o C a C ++. Začal jsem se učit C, ale od importu modulů jsem byl vlastně hlavou nad patami, a všechny ty věci mi obvykle vyhazovaly. Naučil jsem se C měsíc, pak jsem si myslel, že C je trochu tvrdý, a tak se začal učit Bash.
Ačkoli bash je skriptovací jazyk a ne koncepty programovacího jazyka, bylo to opět trochu obtížné pochopit. Uvízl jsem v práci cronu a tak. Nakonec, kam jít, jsem se začal učit Python. Ale sakra ne … Bylo to nejhorší. Když jsem psal kódy v C, musel jsem psát každý kus kódu. Ale v Pythonu šlo kolem magie, aby skutečně pochopili, co se děje. A ano, tato magie se liší od těch, o kterých přemýšlíte, a „magie“ je oficiální slovo v Pythonu. Magie v Pythonu znamená, že chcete něco udělat a že se něco stane, ale nevíte, jak se to stalo. Jo, a to byly pythonové tendence se komplikovat.
Když jsem se začal učit všechny tyto koncepty programovacího jazyka, nejdůležitější věcí, které jsem nedokázal pochopit, bylo, proč bych měl importovat nějaký konkrétní modul. Například řekněme, když píšeme program hello world v C, obvykle píšeme 'include stdio.h' nebo 'include conio.h'. Takže moje otázka byla, proč jen tohle. Dokonce jsem viděl, jak někteří lidé ani nepíšou do části conio. Podobně v pythonu pro komplexní matematiku importujeme cmath, ale proč vývojáři již kombinují matematiku a cmath a zkracují celý proces importu dvakrát? Ale pak jsem si myslel, udělejme jednu věc. Začněme se samotnými základy pojetí programovacího jazyka.
Rozhodl jsem se zasáhnout dno skály a začít odtamtud. A nyní mohu psát jakýkoli program v téměř jakémkoli konceptu programovacího jazyka, jako je Java, C, C ++, Haskell, Scala, Python, Ruby a mnoho dalších. V průběhu let jsem byl schopen vybudovat pevný základ v programovacích koncepcích. A hlavním důvodem je to, že jsem vyjasnil všechny své základní základy v pojmech programovacích jazyků. Sotva slyšíte někoho, kdo mluví o základních základech, ale jsou nejdůležitější pro to, abyste své koncepty dostali přímo do koncepcí programování, a to je hlavní důvod, proč jsem si myslel napsat tento blog. Pojďme tedy začít se základy a terminologiemi konceptů programovacího jazyka.
Pseudokódy, matematika a komentáře k pojmům programovacích jazyků
Pokud víte, matematika, pak většina věcí přijde snadno. Psaní programu se příliš neliší od řešení matematického problému. Kromě toho, když se učíme funkční jazyky, jako je Haskell, matematika je jediná věc, která může být předpokladem pro učení se konceptům programovacích jazyků. Většina problémů lze vyřešit jednoduchou matematikou a pseudokódy. Matematické a pseudokódy jdou ruku v ruce. Například, kdykoli chcete vyřešit konkrétní problém, jednoduše jej zapište do jednoduchého algebraického a geometrického formátu ve formě věty, a tedy osvědčených formátů. Nyní si tyto části kódu zapište ve formátu pseudokódů. Když říkám pseudokódy, mám na mysli program napsaný tak, že když píšete skutečný program, stačí změnit jen některé hodnoty a slovníky a program bude fungovat. Například řekněme, že pro výpočet součtu všech čísel od 1 do dosažení 20, lze napsat pseudokód následujícím způsobem: -
nechte x = 1x = x + 1if x = 20, pak zastavte a pokračujte v tisku xelse a vše opakujte znovu |
Nyní je tento kód trochu buggy, ale nejsme tu. Jak vidíte, nejprve jsem přiřadil hodnotu x na 1 a pak jsem přidával 1, 2, 3, dokud nedosáhne 20. Pokud x dosáhne 20, program se zastaví a vytiskne výstup, jinak bude pokračovat a bude se opakovat ta samá věc. Když tedy píšete tento druh pseudokódu, je velmi snadné jej jednoduše převést na skutečný program. A také nezapomeňte napsat komentáře vedle všech řádků, které považujete za matoucí. Hlavním důvodem pro psaní komentářů je to, že nejprve se nedostane popravený, a za druhé, můžete vždy poukázat na to, co jste udělali, kde jste udělali a proč jste něco udělali. Komentáře nejsou příliš užitečné v 5-10 řádcích kódu, ale pokud máte v každém souboru více souborů s přibližně 40-50 řádky kódu, je snadné zjistit, kde leží chyba nebo proč byl nějaký soubor importován právě při pohledu na komentáře.
Doporučené kurzy
- Online školení Windows 10
- Certifikační školení v balíčku testování softwaru
- Trénink programování v Pythonu
- Online certifikační školení v Djangu
Proměnné, konstanty a datové typy pojmů programovacích jazyků
Proměnná je něco, co lze použít k ukládání dat, řetězce, čísla nebo téměř cokoli. Sběr takových dat je znám jako pole. Pokud se odvolávám na předchozí příklad, vidíte, že jsem na začátku přiřadil X jednu hodnotu, takže X je proměnná. Zde je celé číslo a X je přiřazená proměnná. Podobně mohu také zadat řetězec do proměnné. Jednoduchým příkladem by bylo: -
X = 'Ahoj world'echo $ X |
Nyní je výše uvedené skutečné pojetí programovacích jazyků, které lze spustit v bashu, což je úžasný linuxový terminál. X je přiřazena hodnota řetězce 'hello world' a echo tiskne, co je uvnitř X. Symbol dolaru slouží k vyjádření toho, že zde nazýváme hodnotu X.
Podobně jsou konstanty také proměnné, ale na rozdíl od proměnných nelze konstanty změnit. V prvním příkladu konceptů programovacích jazyků jsem přidělil hodnotu jedna X, pak jsem ji zvyšoval vzestupně. Ale pro konstantu bude X vždy jedna a hodnota nemůže být změněna, dokud nebudou koncepty programovacích jazyků ukončeny. Datové typy jsou pouze rozdvojením různých typů dat. Například reálná čísla, celá čísla, plováky nebo dokonce booleovské řetězce a řetězce. Boolean odkazuje na True a False a je často reprezentován 1 a 0.
Funkce a postupy týkající se pojmů programovacích jazyků
V této koncepci programovacího jazyka jsou funkce jen přiřazeny hodnoty velkým částem kódů. Obvykle jsou vyrobeny tak, aby člověk nemusel znovu a znovu zapisovat celý kód a celý kód jednoduše zavolat pomocí jediné jednoduché syntaxe. Funkce je pouze zapouzdřená úloha, která obsahuje více řádků instrukcí, které mají být provedeny. Při psaní velkých kusů kódů jsou funkce obvykle předem vyvíjeny a ukládány do samostatných souborů uvnitř složky. Později, kdykoli je tato část kódu vyžadována, může být kdykoli požadováno jméno souboru nebo název funkce, který je definován, a celý kus kódu v souboru bude proveden.
Funkce mají svůj vlastní pracovní prostor, což znamená, že všechny proměnné uvnitř funkce jsou použitelné pouze do dokončení provádění kódu. Jakmile bude dokončena, proměnná bude nedefinovaná (s výjimkou případu sběru odpadu, o kterém jsem se zde nezmínil, protože o tom je velmi velké téma). A také funkce mohou být vnořeny do funkce. To znamená, že jedna funkce může zavolat i jakoukoli jinou funkci, včetně samotné. Ale ten druhý se nedoporučuje, protože to povede k bootovací smyčce, dokud nebude provedeno jinak akutním způsobem.
Procedury jsou naproti tomu téměř podobné funkcím s tou výjimkou, že funkce vždy vracejí hodnotu, zatímco procedura je pouze vykonávání příkazů. Většinou, když se začnete učit programovací koncepty, můžete vidět, že mnoho lidí používá termíny funkce a postupy zaměnitelně. Ale není tomu tak, pokud se začnete učit funkční koncepty programovacích jazyků, jako je Haskell nebo Scala. Při psaní funkcí je třeba mít na paměti, že nemají vedlejší účinky.
Podmínky a opakování pojmů programovacích jazyků
Stav a smyčky jsou něco, co jsem vysvětlil dříve v příkladu. Jdou po způsobu něčeho takového. „Pokud prší, budu mokrý. Jinak nebudu. “ Jo, to zní jako hloupý příklad, ale to je to nejjednodušší, jak to dokáže. Podmíněné příkazy závisí na sobě. Obvykle jsou vzájemně propojeny a jdou ve formě „pokud tedy, jinde a elif“. Lze vnořit i podmíněné příkazy. Podmínky v podmínkách jsou v těchto dnech velmi běžné, ale pokud nebudou odsazení a komentáře provedeny správným způsobem, program bude extrémně buggy a těžko pochopitelný.
Na druhou stranu se smyčky používají k opakování provádění kódů, funkcí a procedur, dokud se nevrátí požadovaný výsledek. Když zkontrolujete můj první příklad, uvidíte, že jsem něco řekl, abych vše znovu opakoval. Smyčky jsou tedy velmi silné a činí koncepty programovacích jazyků velmi kompaktními. Ale příliš mnoho použití smyček způsobí, že program bude pomalý. Měly by být použity pouze v případě potřeby. Smyčky probíhají ve formě „smyčky pro, zatímco, do-while a pro každou smyčku“. Cykly while, do-while a for for jsou nejčastěji používanými smyčkami. Pseudokódy pro chvíli, do-while a pro smyčku by šly následujícím způsobem: -
Zatímco smyčka: - |
Když je podmínka nepravdivá, (spusťte kód a zkontrolujte, zda je podmínka pravdivá) Zastavte, jakmile se podmínka stane pravdou. |
Úkol - Zatímco smyčka: - |
Proveďte ( execute code ) while ( zkontrolujte, zda je příkaz pravdivý, jinak opakujte postup ) |
Pro smyčku: - |
pro (a, b, c) (spuštění kódu) |
Ve výše uvedeném kódu je a podmínka, která se provede jednou a první, b je podmínka smyčky, a c je kód, který se provede, jakmile se smyčka zastaví. |
Řídicí struktury pojmů programovacích jazyků
Řídicí struktury v programovacích koncepcích jsou pouze kombinací podmínek, smyček a dalších sad kódu. Řídicí struktura je blok kódů, který analyzuje celou strukturu konceptů programovacího jazyka a poté rozhoduje, který má jít dále; jako v tom, zda zastavit, opakovat nebo volat funkci nebo provést další blok kódů. Stručně řečeno, řídicí struktury v pojmech programovacích jazyků jsou jen rozhodovacím procesem, který rozhoduje o toku programu. Jedna celá část kódu se provádí následujícím způsobem:
Struktura předkontrolyEnd of Control StructurePost Condition |
Objektově orientované programování a funkční programování
Nyní je to jedno z nejvíce diskutovaných témat od vývojářů. Objektově orientované programování se zabývá pouze „objekty“. Neberte toto prohlášení příliš doslova. Objektově orientované programování nebo OOP se v zásadě zabývá daty, která obsahují pole, atributy, procedury a metody. C je koncept objektově orientovaného programovacího jazyka. Python není založen pouze na objektech. Existují však knihy, kde někteří lidé říkají, že Python může také pracovat objektově. Nyní je podobné objektově orientovanému programování také něco, co se nazývá pojetí funkčních programovacích jazyků. Funkční jazyky jsou spíše založeny na matematice. Čistě funkční koncepty programovacích jazyků, na které si pamatuji, je Haskell. Další z nich je Scala, ale není plně funkční, ale lze tak učinit. Haskell naproti tomu nemá tendenci pracovat jako jiné koncepty programovacích jazyků a je založen na čisté logice. Mít chybu v Haskellu je velmi méně, protože na rozdíl od Java, C, Pythonu nebo většiny jiných jazyků není v Haskellu méně vedlejších účinků funkcí.
Celkově vzato, programovací koncepty se velmi snadno učí. Jeden potřebuje vložit správnou logiku do problému a najít více způsobů řešení problému, spíše než jen jeden k vyřešení problému. Jakmile máte základní znalosti, vývoj softwaru nebo výukových rámců na nich založených by byl jen kousek koláče.
Doporučené články
Toto je průvodce po pojmech programovacích jazyků, o kterých jsme hovořili, jak se snadno naučí programovací koncepty, pokud má člověk správnou představu o řešení problémů více způsoby. Další informace naleznete také v následujících článcích -
- Důležité vlastnosti programovacího jazyka Haskell
- Jaké jsou výhody Cheat sheet pro programovací jazyk C ++ (Základy)
- 12 nejlepších kroků k instalaci programovacího jazyka R (Stručný průvodce)
- Kariéra v programování R
- 13 nejlepších otázek a odpovědí na programovací pohovor