» Poradna » Ostatní

Efektivní cesta na naučení programování?

 |   |  Android Chrome 85.0

Dobrý podvečer,Studuji SŠ, kde máme jazyk C. Tudíž bych se vás rád zeptal, jak nejlépe a nejefektivněji se naučit lépe programovat?Resp. Jaký zdroj je dobrý? Zkouším ITNetwork, ale přijde mi, že z tama toho moc nevím a hlavně úlohy jsou placené...Sice se mi nejlépe učí z výkladu, ale je mi jasné, že se tomu potřebuji věnovat i mimo školu (což chci), ale právě moc nevím "jak". (a na YT jsem nenašel moc videí na C) Je lepší se učit pomocí stránek jako ITNetwork, nebo si říct - chci napsat určitý program na něco a na internetu si hledat cestu jak na to?Popřípadě nějaké doporučení na programy co psát ze začátku?Předem děkuji.

Mohlo by vás také zajímat

Odpovědi na otázku

 |   |  Microsoft Windows 7 Firefox 81.0

v dnešní době existuje tak obrovský množství technologií, že "učit se něco" je poměrně nesmysl .. asi bych se snažil najít si nějakou firmu a pracovat pro ně nebo spíš s nima... programovací jazyk C je dneska spíš na Linux, a programování mikroprocesorů ARM, 8/16 bit apod. zkus třeba tohlehttps://jobs.hw.cz/Asi se budeš muset rozhodnout jestli pudeš na vš a nebo pracovat .. a pracovat jako .. webový programátor ? frontend (html+Javascipt) ? backend (java, ASP, python) nebo desktopový programátor (WPF,WCF, RestAPI, Entity) ? a tisíce dalších a dalších směrů ........

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Je mi jasné, že praxe je zkrátka nejlepší, akorát když si vezmu, že ze školy dojdu denně až na pátek kolem 17,tak jsem rád, když budu zkoušet něco doma a jdu spát :D Ale rozhodně když bude volno, tak se snažím někam dostat. Naposled jsem byl minulý rok u soukromníka v okolí, ale bylo to ohledně HW (skládá pc, atd atd) Každopádně na VŠ mám v plánu jít, to si myslím, že v tomto oboru není na škodu a je to celkem vhodné.Díky za skvělou odpověď.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Každopádně abych ještě odpověděl k tomu C... Vzhledem k tomu, že ho máme na škole, tak to je jedna z možností k maturitní práci...Poté jsou samozřejmě webový, databáze, ale spíš mě táhne udělat nějaký program, než web.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Chrome 85.0.4183.121

Hlavne si rozmysli co chces programovat. Podla toho si upravis portfolio jazykov a potom uz len programovat, programovat a opet programovat. To je jedina a najefektivnejsia cesta ako sa naucit programovat. Vymysli si projekt(y), stanov si nejaky hmatatetlny ciel a toho sa drz.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Díky za odpověď , nějak takto si to sám představuji...Akorát že začátku je právě vůbec umět ty příkazy, abych vůbec dokázal něco udělat :D

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Chrome 85.0.4183.121

nacit sa prikazy je triviualna vec. Ale! V kazdom programovacom jazyku su podstatne: podmienky (if...else) , polia (arrays) a cykly (for, while atd). Ak sa naucis toto, tak to mas polovicu zvladnutu. Ostatne pride postupne.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Podmínky, cykly už umím, pole spíš jen základy, ale snažím se to zlepšit.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Chrome 85.0.4183.121

Musíš prostě programovat, programovat, programovat. Na začátek je vhodné začít algoritmizací. Zkusit si různé třídící, grafové či matematické algoritmy. Přemýšlet, jak je napsat ještě lépe, proč jsou některé pomalejší než jiné a podobně.To tě dokáže zaměstnat na poměrně dlouhou dobu.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Díky za odpověď.Úplný začátek už mám za sebou a právě se chci dostat dál, akorát spíš nevím, čím začít. Nechci dělat nějaké zbytečnosti a proto se raději zeptám chytřejších.Nějaké doporučení, jaké cíle (jaké programy) že začátku napsat, aby to právě bylo na přemýšlení, delší dobu, a zároveň musel hledat na internetu, jak co udělat ->abych poznal různé příkazy, atd atd?

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Unknown Mozilla 81.0

Zkus si napsat jednoduchou databazi / katalog na evidenci neceho, co te zajima -knihy, pisnicky, fily... Na tom se dost naucis.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Díky za radu, zkusím. 😀

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Firefox 78.0

Literatúra je pre teba fuj?Ak potrebuješ doporučenie, tak toho v živote moc nenaprogramuješ.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Spíš chci různá doporučení od chytřejších lidí, kteří se tomu třeba věnují. Přeci jen, literatury je na internetu hodně a jak si mám vybrat, podle čeho ?

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Chrome 85.0.4183.121

vyberas si podla toho co potrebujes. ked potrebujes nieco do zaciatku, tak si najdes nieco pre zaciatocnikov. Ked potrebujes sa nieco detailnejsie ako je napriklad objektove programovanie, funkcionalne programovat, databazy, hry proste si najdes co potrebujes. Su veci, ktore sa za tie roky co sme my starsi zacinali, velmi zmenili. Nebol internet alebo bol v plienkach, neboli diskusne fora, nebol stackoverflow, nic z toho neexistovalo. Mali sme iba samych seba a velmi zriedka skusenesjsich ludi po boku. Ty mas k dispozicii vsetko! Ale co sa nezmenilo je pristup k praci, ale hlavne schopnost si poradit, sam si vyhladat potrebne informacie, oloveny zadok prilepeny k stolicke a hlavne makat....

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Firefox 78.0

Myslel som knižnú literatúru, ktorá je overená a uznávanými odborníkmi redigovaná.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Nějaké konkrétní doporučení - autor?

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Firefox 78.0
 |   |  Android Chrome 85.0

Díky

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Firefox 78.0

Tak prezraď akú si vybral, nech môžme pokračovať v diskusii aspoň na 99 komentov.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Vybral jsem - Programovací jazyk C od Brian Kernighan Popřípadě ještě jedna, ale tam nevím, jak bych tomu porozuměl, když je v AJ - C traps and Pitfalls.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Firefox 78.0

Programovací jazyk C od Brian Kernighan som kupoval keď som potreboval nejaké veci pre sálový počítač SMEP SM 52/12. Pekná história. Chystáš sa písať programy pre 40 rokov staré počítače?

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

"Existují dvě vydání - starší vydání nedoporučuji používat."Takže ani to nové není vhodné?Asi jsem to tím pádem špatně pochopil.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android AppleMAC-Safari 5.0

Mám velké podezření, že tebe baví akorát o tom mluvit, ale reálná snaha žádná. Ono totiž programování má jednu obrovskou výhodu, nepotřebuješ k němu vůbec žádné vybavení, kromě běžného počítače a nepotřebuješ k němu ani žádné odborné vzdělání, stačí jen snaha, logické myšlení a schopnost hledat si sám informace. Minimálně ta poslední věc ti naprosto chybí a bez toho se nikam nehneš. Žádný slušný programátor nezačíná tak, že by vyzvídal v diskuzích, co se vlastně má učit. Těch možností jsou mraky a záleží hlavně na tom, co vlastně chceš dělat. A to ty nejspíš sám netušíš, takže se obávám, že je to jen marná snaha.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Ono spíš určitou vizi mám, i toho, co bych chtěl udělat, ale jako začátečník nevím jak to napsat - princip fungování, chod, chápu, ale chybí ta znalost jazyka, daných příkazu, které potřebuji - a jak je různých tutoriálů hromada, stránek hromada, tak nevím, kterého se chytnout (jak jsem psal, tak dělal jsem třeba podle ITNetwork)Každopádně neboj, nebaví mě o tom mluvit, rád bych to dotáhnul k nějakému bodu, kdy už dokážu něco složitějšího napsat a budu mít z toho dobrý pocit :D

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android AppleMAC-Safari 5.0

Napřed bys to měl dotáhnout k bodu, kdy dokážeš napsat něco úplně jednoduchého. Ale takhle to nepůjde

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Například? (nevím, co si Vy pod pojmem jednoduchého představujete) Něco samozřejmě dokáži, co se týče podmínek, cyklů, polí, popř. různých matematických funkcí (knihovna math.h).

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Chrome 85.0.4183.121

napriklad piskvorky....

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Piškvorky jsem zkoušel a s trochou pomoci internetu to dokázal (měl jsem špatně hned ze začátku hráče - to že jsou dva, jednička a dvojka... Teď už mi to je jasné a nevím, co jsem na tom nevěděl :D) Vzhledem k tomu, že toho moc neumím, tak jen 3x3 přes pole, a pomocí podmínek se do pole doplňuje daný znak hráče X/OAle chci to ještě vylepšit - větší tabulka a zároveň aby to vypadalo lépe a nebylo to takové nepěkné.+samozřejmě chci zkusit i jiné jednoduché hry/prográmky, kde ale bude potřeba více uvažovat a naučí mě to další věci.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Chrome 85.0.4183.121

pokial vies co chces, tak preco sa potom pytas, ze co by si mal programovat?

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Nějaké jednoduché hry vím, ale ne nějaké prográmky, na kterých se naučím - což mi zde byly doporučeny jednoduché databáze /katalog.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Chrome 85.0.4183.121

to je myslim kazdemu jasne,ze vies toho malo a ze sa potrebujes doucit. V tom problem nie je. Moja otazka ale znela a stale znie, ze ak je ti jasne akym sposobom sa budes zdokonalovat v programovani, tak preco vznikol tento dotaz?

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Je to i původním dotazu - zda má vůbec smysl učit se dle stránek jako je ITNetwork, popř. dát si cíl a podle toho se učit to, co k tomu potřebuji (což jsem šel trochu podle ITNetwork, ale tam právě tolik nevidím ten posun a vesměs tam nemám cíl) A k tomu navazovalo, jaké programy ze začátku psát, abych se na tom naučil a například v budoucnu se to dalo rozvíjet, vylepšovat (že se k tomu po nějaké době vrátím, využiji znalosti z jiného programu a použiji je do toho "starého").

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Chrome 85.0.4183.121

Na ucenie mozes pouzit akykolvek relavantny zdroj, ktory ti poskytne informaciu, ktoru potrebujes a pokial nemas iny zdroj, tak zmysel to samozrejme ma. V tom problem nie je.. Ale samozrejme sa najlepsie naucis praxou, ktora je pre programatora absolutne nevyhnutna a musis programovat od prvej sekundy co sa rozhodnes stat programatorom. Stranky ako google.com ci este lepsie stackoverflow.com sa stanu tvojim kamaratom a hlavnym poradcom. Ako programator sa totiz nemozes spoliehat na pomoc, ale musis byt schopny si sam najst informacie . Profesionalne programovanie je 5% pisanie koduy a 95% riesenia nejakeho problemu, ktorych bude bambilion....

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Jasně, díky za odpověď.Na stackoverflow jsem se již díval včera, jak jsi ho tu zmínil... A musím říct, že hned se mi hodil a našel jsem si pár odpovědí... Neznal jsem, takže díky.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Chrome 85.0.4183.121

nemas za co , rad som poradil :)

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Chrome 85.0.4183.102

No...po tomto blábolu se na programování vykašli. Víš co je algoritmizace? Jen o tom kecáš, to má kolega pravdu.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Ano, vím. Jsou mi jasné kroky, že kterých se algoritmus skládá, včetně vývoj. diagramu

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Podle téhle odpovědi netušíš, co je algoritmizace. Možná víš, co je algoritmus, ale sám ho vytvořit nedokážeš.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Tak obecně algoritimizace je postup při vytváření programu, který vychází z algoritmu, ne?Minulou odpověď jsem napsal špatně, místo algoritmus tam mělo být algoritimizace.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Ne. Dostaneš problém, zanalyzuješ ho, vytvoříš algoritmu, který ho řeší, ten potom implementuješ v daném jazyce. Ty možná tak zvládáš tu poslední část. Ale "kouzlo" programování je v tom, co je před tím. Jinak nejsi programátor, ale jenom kodér.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Díky tedy za objasnění, budu se snažit zlepšit I tuto část.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Linux Chrome 84.0.4147.89

"...Studuji SŠ, kde máme jazyk C..." Zajímavá škola, nebo zajímavý školák. Zatím to vypadá, že víš pověstné Velké Kulové, motáš vše dohromady. tušíš vůbec, pokud jsi ve škole v hodině výkladu nešmatlal šmatlací placku, proč a hlavně k čemu slouží jazyk "C"? Nápověda: Navštiv kernel.org...Jazyk je v případě programování irelevantní.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Linux Chrome 84.0.4147.89

Já to také vidím na "srandičky", asi bude i tohle:https://www.zive.cz/poradna/mini-pc-umax-u-bo... https://www.zive.cz/poradna/samovolne-klikani... I ty čtyři stovky za hodinu vypadá také na něj.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Android Chrome 85.0

Ne, to fakt ne :DVážně jsem si nepořídil nějaký mini pc a myš mi samovolně nekliká :)Každopádně řekl bych, že v Česku není pouze jeden člověk se jménem Martin, ale nevadí.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Linux Chrome 85.0.4183.121

0. Ze všeho nejdřív bych doporučoval přečíst si tenhle slavný blogpost: http://www.catb.org/esr/faqs/hacker-howto.html Hlavně odkazovaná kapitola je důležitá, ba klíčová. Ale i celý blogpost od začátku do konce je velice poučné čtení a odpovídá celkem jasně na několik otázek typu "jak".1. Nemá smysl zaměřovat se na jeden konkrétní jazyk. Se solidními obecnými znalostmi z oblasti programování se člověk naučí další jazyk za odpoledne (byť jsou samozřejmě výjimky typu C++, u kterých to bude několik odpolední). Naopak je výhodou znát několik jazyků různých druhů a různých úrovní abstrakce, protože taková znalost výrazně rozšiřuje schopnost efektivně řešit problémy. Podstatné je především správné pochopení algoritmů a dovednost psát kvalitní, přehledný, dobře testovaný a dobře testovatelný kód.2. Když už C, tak jednoznačně nejlepším kandidátem bude cokoliv kolem POSIXu. Open-source systémy, které takový standard splňují (ať už oficiálně či neoficiálně), jsou všude kolem, každý je může používat, jak se mu zlíbí, a dá se na nich naučit ohromná spousta věcí kolem C a různých standardních knihoven, včetně mírně pokročilejších témat jako zpracování asynchronních událostí, správná kombinace správy paměti s vícevláknovými programy atd. atp. Osvojit si samotné základy, například jak správně použít obyčejný read() a write(), případně jak správně ošetřovat chyby, aby se program choval vždy korektně a hlásil je, může být solidní začátek.

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: Naučení, Cesta


Určitě si přečtěte

CZ.NIC bezplatně naděluje USB/NFC klíče. Jak jej získat?
Lukáš Václavík
CZ.NICeGovernment
Cableporn: Podívejte se na úžasná díla umělců z podnikových serveroven

Cableporn: Podívejte se na úžasná díla umělců z podnikových serveroven

** Uspořádání kabelů můžete vnímat i jako podivný druh umění ** To nejkrásnější se skrývá v datacentrech a serverovnách ** Podívejte se na skutečné „cableporn“ z optiky i kroucené dvojlinky

Vojtěch Malý | 52

Vojtěch Malý
DatacentraServery
Japonská MANA může být 80× výkonnější než sebelepší tranzistorový procesor

Japonská MANA může být 80× výkonnější než sebelepší tranzistorový procesor

** Tranzistory současných počítačů vyzařují při přepínání teplo ** Na Tokijské univerzitě proto vyvíjejí adiabatické procesory ** Využívají supravodivost a jsou 80× úspornější

Jakub Čížek | 44

Jakub Čížek
TranzistoryProcesoryTechnologie
Google chystá funkci, která z chytrého Gmailu udělá hloupý Gmail
Lukáš Václavík
SoukromíGmailGoogle

Aktuální číslo časopisu Computer

Megatest herních monitorů

Jak zabezpečit mobil v rukou dítěte

Radíme s nákupem grafické karty