Programování od nuly - jak začít?
Zdravím,
rozumím tomu, že v nějakých obměnách už tu určitě podobné dotazy byly, ale zkusím moje otázky více specifikovat, tak snad to nebude problém.
Rozhodl jsem se, že bych chtěl začít programovat.
Mám nějaké předpoklady, které by třeba mohli pomoct (slušné logické myšlení, rychle se učím, mám nadstandardní paměť, umím dobře aj), ale jinak bych začínal v podstatě od nuly.
Jako výchozí jazyk, ke kterému bych chtěl směřovat, je (po načtení základních informací) Java. A teď moje otázka tedy směřuje na to, jestli dává smysl, abych se rovnou vrhl na nějaký tutoriál Javy a začal se rovnou učit to nebo jestli bych na to měl jít například jinak. Jestli je třeba něco čemu bych se měl vysloveně věnovat předtím než se vrhnnu na programování. Nějaké technické věci nebo něco takového. Možná se ptám naivně, ale je to spojené s tím, že do toho fakt půjdu od nuly.
Analogicky by mě pak zajímalo do jaké míry má smysl se předtím/paralelně s tím učit kodovací jazyky jako html, css a další, ať už proto že mi to dá nějaký dobrý základ nebo s ohledem na to, že je budu stejně do budoucna potřebovat.
Díky moc za všechny postřehy.
Uč se tak, jak ti bude vyhovovat - klidně pomocí tutoriálů.
A jestli k tomu zvládneš i HTML a CSS, tak klidně paralelně, když si budeš chtít od Javy odpočinout.
Je to jenom na tobě.
HTML a CSS se naučí i děti na základce, časově se dají základy zvládnout velmi rychle a pokročilejší věci v CSS se dají vygůglit. Ještě bych se zamyslel, pokud půjdeš i směrem HTML a CSS, přidat k tomu JavaScript; pak můžeš psát webový aplikace. React, Angular, Svelte, VueJS jsou dnes asi nejpoužívanější.
Ja bych navrhoval zacit tutorialem Javy, protoze vetsina modernich jazyku sice dokaze v podstate to same, ale dela to trochu jinymi prostredky a pristupy.
Pokud jeste nic neznas, tak je pro tebe lepsi zacit rovnou tou javou, aby ses naucil jeji terminologii, jeji zakladni obraty a postupy a jeji zpusob jak veci resit.
At zacnes cimkoli, tak to bude docela slozite, tak proc si to komplikovat tim, ze zacnes vic veci naraz, pricemz kazda resi veci trochu jinak?
Nejake to html+css si pak muzes pridat, az ho budes potrebovat a klidne zacit s naprostym minimem, jen abys zobrazil nejakou stranku nejak a az postupne to dopilovat do stavu, kdy ti to bude stacit. Zatim si tim nekomplikuj zivot.
Hlavni je zacit + vydrzet + zlepsovat se - a dost tomu pomuze, kdyz si po uvodnich prikladech s Hello World a podobnyma hrickama najdes neco, co by ti bylo uzitecne, co se da zacit velice jednoduse aspon nejak a pak to postupne rozsirovat a pouzivat.
Napriklad system, kam by sis psal, kolik jsi s tim stravil casu - nejdriv jen ukladat jen datum a cas a jestli jde o zacatek ci konec, pak pridat nejake popisy, soucty za den, tyden, mesic, pak tam udelat nejakou rozumnou klasifikaci, abys tam mohl mit jak to uceni se jave, tak treba skolni ukoly a zabavu a pocitalo se to zvlast, pak pridat vic uzivatelu, tou dobou uz budes resit ukladani v databazi, uzivatelske rozhrani a budes to mit tak po 10. prepsane od zacatku a lepe a porad budes mit motivaci to vylepsovat a pouzivat a tudiz ti to pujde snaz, nez nejake akademicke priklady.
Nebo treba evidenci krmeni pro rybicky, pokud je chovas, nebo cokoli jineho te zajima. Proste skola hrou a ucit se za pochodu, kdy vylepsujes neco, co sam pouzivas a proto vidis, co by to jeste chtelo a ono to casem naroste tak, ze to stejne obsahne velkou radu veci, ktere se nejak pouzivaji vsude ...
Ono je to dnes uz temer jedno. Jak se naucis v jednom objektove orientovanem jazyku, budes "umet" ve vsech. Jde o to porozumet mechanismum a algoritmum. Na spoustu programatorskych mist ti pak uz staci Google, Stack Overflow a CTRL+C CTRL+V.
Kdysi jsem si usmyslel, že se naučím stroják a assembler 8080 (tehdy se to používalo ve fabrice kde jsem byl zaměstnaný). Tak jsem si vzal příčurku a začal studovat. Když jsem byl na desáté stránce, uvědomil jsem si, že jsem už zapomněl co bylo na prvních pěti. Pak jsem se dostal do situace, kdy jsem potřeboval něco naprogramovat, tak jsem se to metodou pokusu a omylu obstojně naučil. Pak se mi to hodilo, když jsem potřeboval něco na co páni programátoři neměli čas.
Ale za programátora jsem se nepovažoval a neživil jsem se tím.
My měli assembler hluboko za komunistů na VŠ. Dnes už z toho nevím nic (po škole jsem nastoupil mimo obor a k počítačům jsem se dostal až po revoluci a to jen jako uživatel).
Tehdy jsem ale (myslím) velmi slušně uměl Cobol a Fortran.
Za praktický zvládnutí Cobolu na dobré úrovni se dneska platí zlatem Ale kdo to mohl před těma desítkama let vědět, že jo?
Pro případ, že by se nad tou důležitostí Cobolu v dnešní době někdo nevěřícně ušklíbal...
Programátorů COBOL je jako šafránu
Staří programátoři COBOLu vyslyšeli volání o pomoc, IBM také přispěje
COBOL: 60 let starý programovací jazyk, který vám může vydělat obrovské peníze
2020 - V USA "objevili Ameriku": COBOL je i po 60 letech užitečný jazyk
Technologie z doby kamenné
Začal bych asi tak, že bych si nějaké kurzy prohlédl, protože ti dají nejaky komplexní vstup do problematiky a později můžeš na něm stavět a zkoušet si jednotlivé věci sám
Není to přímo odpověď na tvou otázku, ale: spoustu kurzů programování najdeš na Udemy - vidíš tam hodnocení, podíváš se na úvodní video a popis kurzu. Každou chvíli mají slevy, takže pokud chceš ušetřit, hlídej si to. Přístup ke kurzům je po zaplacení bez časovýho omezení.
Jestli chceš spíš zaměření typu Webmaster, tak začni s javascript + HTML5/CSS3. PHP a MySQL se také nevyhneš.
Ale přidal bych určitě i Python, zaprvé se na něm velmi rychle učí (hlavne az dojdes k OOP, ne kterém se hodne lidí ze začátku sekne), je jednoduchý a tvé znalosti budou flexibilnější (o frameworky na bazy Python jako Django, Flask a podobně).
Všechny uvedené jsou multiplatformní.
PS: Určitě bych se vyhl některým tutoriálum typu Youtube a podobne, sice se neco naucis, ale zaroven se muzes naucit i spatné praktiky kterych se pak špatně zbavuje.
(stale existuji i odpoborne knihy pro zacatecniky)
Asi bych začal nějakými výukovými nebo online kurzy, aby si získal základny přehled o problematice a věděl, jak co funguje. Když už budeš mít základy tak bych se vrhl do nějakého programování už a zkoušel věci prakticky a učil se nové věci, když už budeš dobrý a něco odkodené můžeš zkusit nějakou stáž ve firmě, kde budeš už pracovat na reálných projektech.