Ahoj, ako už je vidieť na téme tohto príspevku rád by som sa spýtal na pár rád ohľadom programovania... Chodím na SPŠE odbor ITS a chcem začať programovať no v 1 ročníku to je len celé o algoritmoch a ZAE (kto chodí na ELEKTRO tak vie no ale o to tu n
no doba ide dopredu, teraz uz pomaly najdes internet v priemernej chladnicke, zachode, kupelni atd, urcite by som sa poobzeral po programovacich jazykoch, ktore vyuzijes v mobilnych zariadeniach, predsa len mobilnych zariadeni je viac ako ludi na svete.
Ak sa chces ucit, zacni urcite s Pythonom, ma vybornu syntax na ucenie, je to odrazovy mostik na dalsie jazyky. Ja keby mozem vratit cas, tak by som sa zacal ucit JAVU alebo Ruby on Rails
tak pozdravuj tych profikov, co povedia na Ruby ze je mrtvy jazyk, na Ruby bezia weby ako twitter, soundcloud, twitch.tv, themeforest.net, ask.fm, amazon studios, imgur, one hub alebo zendesk.... ze Ruby mrtvy jazyk,
ja som daaavno zacila s HTML + CSS + javascript, vela som robil weby staticke, potom som sa ucil jquery a priemerne PHP, keby mozem tak by som robil s Javou, ak vies vyborne Javu, o pracu mas v buducnosti postarane, bol som na viacerych pohovoroch a vsade rozpravali iba o Jave
v prvom rade zabudni ze ta nieco naucia na skole. Ja mam tiez elektrotechnicku a odbor pocitacove systemy a v maturitnom rocniku sme preberali for a while cykli a to este tak ze podla mna ani ucitelka tomu poriadne nerozumela.
je to cele o samouceni.
ja ti odporucam ist cestou HTML5. Je to super technologia, stale sa vyvijajuca, ma buducnost a je to zaujimave Nauc a dobre HTML a CSS, potom JavaScript, a nejaky server-side jazyk (Python, Ruby, Node.js alebo bars aj to PHP).
Niekto ti tu mozno povie ze robit weby - to nie je naozajstne programovanie a skor len take gejoske kodenie, ale ti nevedia Ja som si ako-tak presiel celym spektrom informatiky (ze som do vsetkeho strkal nos), a web technologie su naozaj fajn, a castokrat su aj riadna vyzva. Ver mi ze je lepsi job tvorit moderne weby ako nieked v korporacii riesit hardcore enterprise Javu / C#.
Co sa mi najviac paci, ze tvorba webov je ta cast IT ktora je dost spata s ludmi, tym chcem povedat ze priamo tvoje projekty sa dostanu medzi ludi a mozes ich ukazat aj frajerke, kamosom a mame a je sanca ze ich budu pouzivat. Ked skoncis ako programator nejakeho komponentu jadra programu na vypocitavanie otrasov zeme, to je tiez super, ale moc ludi tvoju robotu neoceni.
Neviem ci som sa dobre vyjadril a urcite sa kvoli tomu nechcem pustit do flame-u so sikovnymi FIT-karmi a podobne, ja respektujem ich pracu a vdaka nim je vyvoj webu taky prijemny a jednoduchy, je za tym kopec abstrakcie a roboty sikovnych low-programatorov, len chcem povedat ze vyvoj web. aplikacii nie je ziadnym sposobom podradny oproti inej odnozi IT
Tebe radim ist touto cestou, ak si sikovny tak sa aj dobre zamestnas a hlavne je to vec ktora ma vazne buducnost, web je najvacsia platforma a bude uz len rast.
Obzri si www.codecademy.com , to je top interaktivne ucenie web technologii, komplet zadarmo, alebo ak si ochotny do tohto vzdelania aj zainvestovat peniaze tak www.codeschool.com je TOP, len pre slovenskeho studenta mozno menej financne dostupne. Vypytaj si od rodicov na vianoce Budes len slintat nad tym mnozstvom veci ktore ta tam ludia prijemnou formou naucia.
Python odporucam na zaciatok, neskor mozno PyPy/Django, pochopit aj zaklady back-endu, ak chces riesit viac web develop
Python ako jazyk kazdopadne, priber k tomu jscript/php, ale na pythone urcite sa treba naucit zaklady OOP, procedural a algoritmy. ofkors miesto pythonu to moze byt aj nieco ine, ale je to super jazyk s vybornou a jednoduchou syntaxou
ak chces ist na vyssie jazyky, odporucam C/C++ a ptm C#, ako multi-paradigm je to najviac tool momentalne asi s frameworkami (entity/bootstrap/asp .net atd)
sam momentalne hrotim C#/.NET a je to rezba najvacsia isto
@9 dík ja som tiež o tomto takto presne uvažoval, a je pravda ,že tvorbu ocení veľa ľudí, zas na 2 strane si len INFORMÁTOR a nevyvíjaš ... ja mám zas taký možno dokonca nereálny cieľ ale idem si za tým beriem tvoj názor a na začiatok zárobku ako vidím u ľudí sa s tým dá zarobiť ale keď už treba niečo z vývojárskych cieľov tak tam už nič nespravím ale dík za názor beriem
Python je bozsky jazyk, som jeho velkym milovnikom, ale asi by som ho neodporucal ako prvy jazyk. A to paradoxne prave preto aky je jednoduchy. S viacerymi kamosmi ajtakmi sme sa zhodli ze ked si raz zvyknes na Python, tak potom vsetko ostatne programovanie v inych jazykoch bude pain-in-the-butt.
Python je podla mna taka ceresnicka na torte pre cloveka ktory preluskal 5 - 10 jazykov a odkodil niekoko rokov a teraz si za odmenu dopraje kodenie v takom peknom jazyku, s tym ze vie ocenit mnohe jeho vychytavky a nie iba tu syntax.
Predovsetkym ked si zvyknes na Python tak sa potom pri kodeni v Jave budes pravidelne dogrciavat A to plati aj pre Ruby ktore je podobne Pythonu, akurat ma dnes prakticke pouzitie iba ako serverside v jej jedinom uspesom frameworku (Ruby on Rails).
Nechcem ta ale odhovorit od Pythonu, kludne ho vyskusaj, bude sa ti pacit. Len by som to prirovnal k tomu, ze by si robil autoskolu v luxusnom sportiaku s automatom, ked potom v reale budes povinne jazdit na firemnej Felicii co nema ani posilnovac radenia Snad ste ma pochopili
2.) keď si chce niekto HTML - kom zarobiť tak sa s ním dajú zarobiť veľké prachy a uživiť si stým rodinu a užívať život (viz. FB a ostatné veľké stránky)
nebudem ako @wewo , ze #webislovewebislife alebo @n0win0u , ze #csharpjebuducnost
ak chces byt programator, cvic si algoritmizaciu, riesenie problemov na viac sposobov a poskusaj si viacero prog. jazykov (python, ruby, java, c, c#, php, javascript, perl, objective c, node.js), mozes si to rozdelit na skriptovacie, kompilovane, mozes si k par prihodit frameworky najznamejsie a ked si to zazijes na vlastnej kozi, uvidis aky jazyk ti najviac sedi, aka filozofia toho jazyka (a naucit sa znackovaci jazyk ako HTML, XML, XSD, XSLT a pod. a jeho zakonitosti je fakt len otazka cviku a pamati, takze ked budes na webovo orientovanych skriptovacich jazykoch, tak si to prejdes)
vo volnom case si pozeraj teoreticke zaklady informatiky, aby si chapal viac suvislosti ... a dobre by aj bolo, keby si ovladal UML, design patterny a architekturu systemov
@matwejo tvoj názor sa mi veľmi páči ale.. ide tu aj o to , že ja sa sám neviem rozhodnúť a potrebujem zhromažďovať info a nájsť najlepšie možné prostriedky na učenie sa programovať, a súhlasím algoritmizácia je dôležitá a aj to , že by som mal skúsiť viac alternatív.... no ja sa neviem rozhodnúť čím začať
@gillas neviem ci som ta pochopil ze ked tvoris weby tak si informator a nevyvijas
Praveze vyvyjas A je to edge-technology, teda uplne najnovsie vychytavky a tvoja robota sa dostane priamo k ludom.
Predstav si, ze by si cestoval v case niekede do stredoveku a rozpraval ludom a nasich technologiach. Ze kazdy ma doma a vo vacku zariadenie ktorym dokaze komunikovat s celym svetom, pozerat si obrazky a zvuky hocijake, a zobrazovat si brutalne interaktivne strany plne informacii ake ta len napadnu. A ze ty si priamo ten ktory tieto veci tvori. Bol by si uplny carodej pre nich
Naproti tomu kebyze sa im snazis vysvetlit ze programujes procesor ktory sa pouzije v serveri ktory tvori sucast internetu, znie to sice tiez fajn, ale uz by taki ohureni neboli, lebo je to prilis low technologia, omnoho vacsi magic si ked priamo tvoris ten obsah po ktorom ludia idu
Podla mna je internet akoby na vrchu "IT potravinoveho retazca", to najvyssie vyjadrenie ludskych technologii a vsetko IT k nemu speje a akoby mu sluzi.
A ver tomu ze ako webdev budes vyvijat. Je na tebe ci budes za 100e sekat stranky susedovi a tete alebo ci budes v HTML5 vytvarat 3D vizualizacie a neviem co. Vezmi si ze cely svet sa presuva na internet, webove aplikacie raz najviac ovladnu trh, lebo co dnes dokaze webovy prehliadac bolo pred 10 rokmi uplne nemyslitelne.
A bude ho uz len viac a viac, v podstate web front-end development je najviac NIEmrtva IT technologia.. A bohvie co pride za 10 rokov zase, nejake 3D hologramove weby napr., to bude zaujimave tvorit A nikdy nebude dost koderov.
Ale viem ze si sa skor pytal na konkretny jazyk a nie na platformu, jazyky na webdev som uz vymenoval vyssie
@gillas@matwejo tak akoze ja nie som nejak extremne napichany z webu, len radim chalanovi kadial ist ked chce zacat, ja by som napr. bol velmi rad keby som "v mladi" dostal taketo rady. Samozrejme ale netvrdim ze ucenie sa vsetkych inych veci bol strateny cas, presiel som asi vsetkym co si vymenoval (okrem perl, objective c).
Suhlasim ze v prvom rade je dolezite naucit sa programovat, az potom je dolezite vybrat si CO a ako programovat. Naucit sa rozmyslat ako programtor, pochopit ako funguju technologie uz od uplneho elektrotechnickeho jadra veci az po tu najabstraktnejsiu vrstvu - za co pokladam weby.
A myslim ze aj keby si neskoncil ako vyvojar webov ale kodil hocico co by ta bavilo, tak rozumiet tomu ako funguju weby by si mal, lebo je to nieco co nonstop pouzivas a je velmi prakticke to vediet
@gillas
tak ti poviem, ze ti najlepsi maju proste vlastnu hlavu a vedia tukat do googla, takze nemusia zakladat fora na birdzi a rovno sa do niecoho pustia (hlavne sa do toho pustia)
@wewo
fakt som nechcel ist do tejto debaty, ale neda mi podotknut, ze nesuhlasim, ze len web nutne musi byt cutting edge ... suhlasim urcite, ze na nom dobry user experience, ale to su aj take OS a su kodene v C++ a su cutting edge (alebo android OS kodeny v Jave) ... nedobre skatulkujes oblast len na web a programovanie mikrocipov
na webe napriklad vsetky tie "cutting edge" technologie velmi silno spolupracuju s vymakanymi server side vecami ako su virtualizacne cloudy, big data searche (elastic search a pod.), cachovanie, middleware biznis procesy ... a vlastne aj tie browseri co spominas, ze su rychle a dokazu vselico su napisane v C
akoze necital som to vsetko od wewa, lebo sa tu rozpisuje ako midnajt, ale ak budes mat pocit, ze nekodis ale len "robis stranky", tak vedz, ze back-end mozes robit ako standalone pre niekoho ineho a to je skutocne kodenie a je to fun a este pri tom aj developujes nepriamo
@matwejo áno hľadám info všade kde sa dá a od koho sa dá a aj sa činím to sa neboj... teraz si ma mimoriadne zarazil pretože od tohoto tu tie fóra sú nie? aby si sa pýtal ľudí na potrebné veci ... nie ako kto s kým bol a kto ma s kým aký vzťah nie?
@matwejo samozrejme ako si podotkol .. tak najlepší majú vlastnú hlavu a ja ju mám no lenže je tu vec ,že ťa môžu aj usmerniť nepriamo ja si pozerám len názor ost. a aj tak sa nakoniec rozhodnem čo budem programovať a v čom... názory sú na to aby sa vyjadrovali a môžete mi vsugerovať správne riešenie tohto problému nie predsa?
@21 cloudy su buducnost a praca s nimi je momentalne dost OP. a C# buducnost je
moja finalna rada: nauc sa algoritmy, nauc sa "mysliet ako pocitac", skusat vsetko viacerymi sposobmi (ponuka sa dost iterativny a rekurzivny), ked si osvojis takuto logiku riesenia problemov a rozmyslania, tak naucit sa nejaku syntax je viacmenej np
@gillas
informacny overflow tejto doby vznika hlavne preto, ze ludia sa pytaju tu istu otazku zbytocne velakrat na roznych miestach bez toho aby si uvedomili, ze vlastna konstrukcia odpovede by mala najsilnejsiu vahu ...
co tym chcem povedat je, ze tu dostanes odpoved od 4+- ITckarov a to vcelku subjektivnu aj ... malo ludi vie ist na takuto otazku objektivne, pretoze aj ty to zistis, ze preco, lebo sa v niecom usadis ... keby si pogooglil v studni informacii zvanej Internet, tak zistis, ze uz velakrat sa to niekto pytal a dostal vacsiu variaciu odpovedi na relevantnejsich forach a diskusiach
a prekvapivo, cisto z teoretickeho hladiska ma otazka suvisiaca s tym, kto s kym ma aky vztah a pod. cca taku istu inf. hodnotu vzhladom na odpovede ako otazka vyberu prog. j. a cim zacat. Pretoze v tom vztahu su vzdy ini ludia ako jedinecne entity a kazdy vztah je iny. Dokonca v tvojej otazke su entity take iste, len pri odpovediach teda su zas nazory jedinecne, lebo ludia su jedinecne entity ... ale to len teoreticky, ani neviem ci ma chapes
@wewo nerieš niekto proste potrebuje riešiť to , že sa niekto pýta otázku ktorá je napríklad 2-3x na fóre...
no nikto nesleduje , že ten človek čo to fórum založil potrebuje reakcie priamo naňho... ale z časti má pravdu aj on to nepopieram
na matweja sa kasli ( ), myslim si, ze nejaky info sourcing je vzdy dobre robit, nevidim nic na tom, citat subjektivne komentare a pohlady tak ist ako aj wewo pisal vyssie a typek ma pravdu v @33
ale je to o tebe, ty musis vediet, kt. smerom sa uberat, ako tymi zakladnymi vecami, co sme ti napisali urcite nic nepokazis
@wewo ja len a margo toho webu, nemysliš si že práveže inernet ako taký sa po čase vyčerpá ? Nemyslim že nema buducnosť platforma internetu ako taká...ale...
Jednak už dnes existuje to že jednotlivé vlady ho dokažu zablokovať obmedziť/ zdaniť....v prípade vojenskeho konfliktu internet bude posledna dôležita vec na svete....
Druha vec je že sa témovo sa vyčerpá, lebo jednoducho internet ti naozaj ulahčuje množstvo vecí ale čo ďalej? pre mna by bol internet dnes revolučny keby sme sa nim dokazali teleportovať
Ďalšia vec je že kto ťa dnes zaplatí? Ono tá generacia ludi ktorí si dokážu vyrobiť nejaky web stale rastie a rásť bude, a v buducnosti si už malé dieťa zvladne vyrobiť aplikaciu na mieru a pod.
Nechce sa mi to tu vypisovať, ale davnejšie som nad tým tak uvažoval...a možno by som potreboval počuť nejake povzbudenie
@sumivybanan ja si myslim, ze web bude stale este dost dlho posobit ako idealne platforma k informaciam.
mozes ale o nej rozmyslat ako o platforme aj z hladiska poskytovatela nejakej sluzby.
povedzme, ze nakodis nejaky brutalne nadupany back-end system, kt. bude riesit problematiku niecoho pre niekoho ( tu skutocne moze ist o riesenie donasky potravin do domovov ludi az po ja neviem riadenie firmy etc ) a tento back-end mozes poskytovat pre "front-endakov" ako entry-point do takejto nadupanej platfotmy
a teraz si staci predstavit, ze co vsetko sa da nakodit ako backend a ako k tomu vieme pristupovat
ide skor o to, ze ako makame na postupe samotneho webu tak sa maka na vsetkom okolo aj mimo neho, takze jeho sila ako poskytovatela info-studne je pomerne tazko vycerpatelna (asi natolko vycerpatelna ako to, ze ludia prestanu komunikovat cez net)
just my two cents je, ze web je rozhranie ... Internet je iny pojem ... ak sa naozaj moze stat co pises s netom (co je teda zatial v blizkej dobe min. 20 rokov podla mna nepravdepodobne) , web. technologie podla mna mozu ist aj tak dalej na urovni intranetov (cize uzavreta firemna siet moze mat web rozhranie na svoje business backendy) @n0win0u *wink*
Ahoj. Mna zivi C. Mozno aj najlepsie na tomto fore. Ale samozrejme, nie je to o C ale o znalosti kopec veci okolo. Ako.. necakal som, ze ma bude zivit C, ktore som sa ani poriadne nikdy neucil az teraz, ale jednoducho v tom co robim, tak nema ziadny zmysel to robit v C++, v ktorom som mal robit povodne.
Na margo HTML. To nie je programovanie. Nema v sebe cyklus, tym padom nie je turingovsky uplny jazyk.
Zalezi, preco chces zacat programovat a ci chces skutocne pochopit aj veci okolo alebo budes programovanie vnimat iba ako nastroj na tvorenie svojich veci.
Ak to vnimas iba ako nastroj na vyjadrenie svojich veci, odporucam na zaciatok Python. Kvoli tomu, ze budes musiet s jazykom zapasit iba malo a viac sa budes moc sustredit na myslienky, algoritmy a celkovo, take programatorske myslenie. Python je jednoduchy a je skutocne jedno, v ktorom jazyku pochopis co je to podmienka, cyklus, funkcia, vstup/vystup..
Pokial sa o programovanie zaujimas aj po informackej stranke, mas v sebe nejaku tuzbu, potom Ti odporucam zacat s C. Je to pomerne kompaktny, jednoduchy a priamociary jazyk a okrem jazyku typu Assembler je najblizsie tomu, ako skutocne funguje pocitat vo vnutri a ako sa vykonava program. Co kazdy dobry programator vie. Programatorom myslim cloveka, pre ktoreho nie je jazyk cielom ale prostriedkom a vie premyslat obecne ako programator. Osobne poznam ludi, ktori vedia programovat ale iba v Jave a obecne koncepty im nehovoria nic. Na Javu su dobri ale inac su nepouzitelni..
Potom je tu programovanie OOP, kde je mainstream C#, Java a C++. S tym jazykmi by som neodporucal zacinat, najma nie s C++. Tam sa aj treba divat na to, s cim budes ako zacinajuci student zapasit. Totiz.. Takto.. C je svet, ktory je blizky pocitacu. OOP je svet, ktory je blizsii k tomu, ako ludia premyslaju. Ale to nic nemeni na to, ze nepouziva tie zakladne koncepty ako podmienky, cykly, funkcie (metody v OOP) atd.. Ako.. a ja uz ako skuseny si neuvedomujem tie rozdiely, lebo co mi das do ruky, v tom Ti naprogramujem, ale.. OOP je uplne novy koncept a treba pri nom premyslat inak ako pri C. Asi by niekto povedal diametralne inac ale.. ked uz je clovek skuseneny a je dobry, tak sa mu to uz nejako zlieva.. Ale keby si zvolil jazyk s OOP, okrem zakladnymi myslienkami Tvojich programov, zakladnych konceptov programovania by si musel este zapasit s OOP principmi.. Co ma aj tu nevyhodu, ze by si do svojich programov musel pisat klucove slova, ktorym by si este nerozumel ale musia tam byt lebo OOP, lebo inac by sa ten program nespustil..
Ako.. Kto pozna toho viac, vidi ako je vsetok podobne a programatora netvori jazyk, ale myslenie. Skuseny programator je schopny naskocit do projektu, ktory je pisany v akomkolvek jazyku..
Teda.. v podstatne je jedno, s cim zacnes. Najdolezitejsie je to, aby Ta to neodradilo..Ak chces zacat programovat, Python Ti hned dovoli premienat Tvoje idey na programy. C nie. Ale pri C pochopis, ako asi pocitac funguje a da Ti velmi pevne a dobre zaklady, ktore vyuzijes v kazdom jazyku. C#/Java Ta nutene vrhne do OOP sveta, na ktory najskor este nie si pripraveny ich profesionalnym stylom. A C++ sa vrhne do temneho sveta, kde ak zaciatocnik nebudes vediet vediet ci si program zle navrhol, ale si nespravne v C++ nieco napisal alebo.. C++ je najmocnejsi jazyk z tych vsetkych, ale berie si za to svoju dan..
A potom je spustu jazykov, ktore funguju uplne inac a su vacsinou pre vedecke ucely.. Jo.. este sa zvykne spominat casto Pascal. Poviem to takto. Kto nie je idiot, nepotrebuje Pascal ale moze ist kludne na C. Ale C ako zaciatocneho jazyka sa akademici boja ako cert kriza.. Ale je to fakt jednoduchy, kompakty a priamociary jazyk narozdiel od C++, ktore je zlozite, velke s kopou best practises aby program v nom napisany nenabil hubu.. A samo o sebe je nepouzitelne. Potrebujes sa nauci aj boost alebo Qt..
@Gillas
Ooo... vidím, že chlapci vyššie už asi povedali všetko, tak ja len dodám toľko...
Sústreď sa hlavne na to, aby si sa NAUČIL PROGRAMOVAŤ. Programovací jazyk je len prostriedok na rozvoj programátorského a analytického myslenia. Ten, v ktorom sa učíš teraz tu už za krátky čas nemusí byť, ale schopnosť algoritmicky a analyticky myslieť ti zostane na vždy.
Takisto by nebolo od veci sa venovať Matematike a Fyzike, pretože všetko je postavené na matematike. Tiež odporúčam čo najskôr začať s Angličtinou, keďže ako IT človek je pre teba dôležitá a ak sa chceš zamestnať, tak AJ už vyžadujú skoro všade. Takisto väčšina dobrej odbornej literatúry je práve v Angličtine.
toš, síce tu nevidím že by tu nekdo dával aj priamo zadania, ale ja 1 mám a dám
tak viem že to je pre vás (ovela) skúsenejších je úplné nic, ale ajtak keby ste sa mi na to kukli, pochválili :p a príp. navrhli co tam zmenit al. zlepšit.
Téma úlohy bola Bubble sort algoritmy, a všeličo kolem nich,
to gro zadania mi už jakš-takž ide, ešte tam musím doplnit roztriedovačku (obe - vzostupne aj zostupne) čísiel načítavaních zo súboru
viem, toto celé je ešte docela triviálne, ale všetky tie bublinové_triedičky by som chcela vylepšit a prepojit, doplnit o takéto grafické znázornenie, jako je na tomto webe - tá vizualizácia (stĺpcový graf),
- tak aby bol vždy aktuálny a konkrétny pre tie moje, resp. uživatelem zadané, načítané (alebo náhodne vygenerované) čísla
@lyterka hm..ale polia v C zacinaju od 0, nie?
pokial do for cyklu das ++i, nepojde ti cyklus od 1 az po arrayLength?
nedostane sa ti na konci cyklu mimo toho pola?
@lyterka kod prosim pastnut do pastebin.com . vizualizaciu chces riesit do konzoly, alebo chces aby to bolo seriozne v grafike ? pretoze to je alfa a omega
Roleta je špeciálny inkognito mód, ktorým skryješ obsah obrazovky pred samým sebou, alebo inou osobou v tvojej izbe (napr. mama). Roletu odroluješ tak, že na ňu klikneš.
54 komentov
Ak sa chces ucit, zacni urcite s Pythonom, ma vybornu syntax na ucenie, je to odrazovy mostik na dalsie jazyky. Ja keby mozem vratit cas, tak by som sa zacal ucit JAVU alebo Ruby on Rails
ale kamarát s tým robí weby alebo niečo také
tak pozdravuj tych profikov, co povedia na Ruby ze je mrtvy jazyk, na Ruby bezia weby ako twitter, soundcloud, twitch.tv, themeforest.net, ask.fm, amazon studios, imgur, one hub alebo zendesk.... ze Ruby mrtvy jazyk,
ja som daaavno zacila s HTML + CSS + javascript, vela som robil weby staticke, potom som sa ucil jquery a priemerne PHP, keby mozem tak by som robil s Javou, ak vies vyborne Javu, o pracu mas v buducnosti postarane, bol som na viacerych pohovoroch a vsade rozpravali iba o Jave
je to cele o samouceni.
ja ti odporucam ist cestou HTML5. Je to super technologia, stale sa vyvijajuca, ma buducnost a je to zaujimave Nauc a dobre HTML a CSS, potom JavaScript, a nejaky server-side jazyk (Python, Ruby, Node.js alebo bars aj to PHP).
Niekto ti tu mozno povie ze robit weby - to nie je naozajstne programovanie a skor len take gejoske kodenie, ale ti nevedia Ja som si ako-tak presiel celym spektrom informatiky (ze som do vsetkeho strkal nos), a web technologie su naozaj fajn, a castokrat su aj riadna vyzva. Ver mi ze je lepsi job tvorit moderne weby ako nieked v korporacii riesit hardcore enterprise Javu / C#.
Co sa mi najviac paci, ze tvorba webov je ta cast IT ktora je dost spata s ludmi, tym chcem povedat ze priamo tvoje projekty sa dostanu medzi ludi a mozes ich ukazat aj frajerke, kamosom a mame a je sanca ze ich budu pouzivat. Ked skoncis ako programator nejakeho komponentu jadra programu na vypocitavanie otrasov zeme, to je tiez super, ale moc ludi tvoju robotu neoceni.
Neviem ci som sa dobre vyjadril a urcite sa kvoli tomu nechcem pustit do flame-u so sikovnymi FIT-karmi a podobne, ja respektujem ich pracu a vdaka nim je vyvoj webu taky prijemny a jednoduchy, je za tym kopec abstrakcie a roboty sikovnych low-programatorov, len chcem povedat ze vyvoj web. aplikacii nie je ziadnym sposobom podradny oproti inej odnozi IT
Tebe radim ist touto cestou, ak si sikovny tak sa aj dobre zamestnas a hlavne je to vec ktora ma vazne buducnost, web je najvacsia platforma a bude uz len rast.
Obzri si www.codecademy.com , to je top interaktivne ucenie web technologii, komplet zadarmo, alebo ak si ochotny do tohto vzdelania aj zainvestovat peniaze tak www.codeschool.com je TOP, len pre slovenskeho studenta mozno menej financne dostupne. Vypytaj si od rodicov na vianoce Budes len slintat nad tym mnozstvom veci ktore ta tam ludia prijemnou formou naucia.
Vela stastia!
Python ako jazyk kazdopadne, priber k tomu jscript/php, ale na pythone urcite sa treba naucit zaklady OOP, procedural a algoritmy. ofkors miesto pythonu to moze byt aj nieco ine, ale je to super jazyk s vybornou a jednoduchou syntaxou
ak chces ist na vyssie jazyky, odporucam C/C++ a ptm C#, ako multi-paradigm je to najviac tool momentalne asi s frameworkami (entity/bootstrap/asp .net atd)
sam momentalne hrotim C#/.NET a je to rezba najvacsia isto
Python je bozsky jazyk, som jeho velkym milovnikom, ale asi by som ho neodporucal ako prvy jazyk. A to paradoxne prave preto aky je jednoduchy. S viacerymi kamosmi ajtakmi sme sa zhodli ze ked si raz zvyknes na Python, tak potom vsetko ostatne programovanie v inych jazykoch bude pain-in-the-butt.
Python je podla mna taka ceresnicka na torte pre cloveka ktory preluskal 5 - 10 jazykov a odkodil niekoko rokov a teraz si za odmenu dopraje kodenie v takom peknom jazyku, s tym ze vie ocenit mnohe jeho vychytavky a nie iba tu syntax.
Predovsetkym ked si zvyknes na Python tak sa potom pri kodeni v Jave budes pravidelne dogrciavat A to plati aj pre Ruby ktore je podobne Pythonu, akurat ma dnes prakticke pouzitie iba ako serverside v jej jedinom uspesom frameworku (Ruby on Rails).
Nechcem ta ale odhovorit od Pythonu, kludne ho vyskusaj, bude sa ti pacit. Len by som to prirovnal k tomu, ze by si robil autoskolu v luxusnom sportiaku s automatom, ked potom v reale budes povinne jazdit na firemnej Felicii co nema ani posilnovac radenia Snad ste ma pochopili
ak chces byt programator, cvic si algoritmizaciu, riesenie problemov na viac sposobov a poskusaj si viacero prog. jazykov (python, ruby, java, c, c#, php, javascript, perl, objective c, node.js), mozes si to rozdelit na skriptovacie, kompilovane, mozes si k par prihodit frameworky najznamejsie a ked si to zazijes na vlastnej kozi, uvidis aky jazyk ti najviac sedi, aka filozofia toho jazyka (a naucit sa znackovaci jazyk ako HTML, XML, XSD, XSLT a pod. a jeho zakonitosti je fakt len otazka cviku a pamati, takze ked budes na webovo orientovanych skriptovacich jazykoch, tak si to prejdes)
vo volnom case si pozeraj teoreticke zaklady informatiky, aby si chapal viac suvislosti ... a dobre by aj bolo, keby si ovladal UML, design patterny a architekturu systemov
lebo osvojit si syntax nejakeho jazyka je easy
Praveze vyvyjas A je to edge-technology, teda uplne najnovsie vychytavky a tvoja robota sa dostane priamo k ludom.
Predstav si, ze by si cestoval v case niekede do stredoveku a rozpraval ludom a nasich technologiach. Ze kazdy ma doma a vo vacku zariadenie ktorym dokaze komunikovat s celym svetom, pozerat si obrazky a zvuky hocijake, a zobrazovat si brutalne interaktivne strany plne informacii ake ta len napadnu. A ze ty si priamo ten ktory tieto veci tvori. Bol by si uplny carodej pre nich
Naproti tomu kebyze sa im snazis vysvetlit ze programujes procesor ktory sa pouzije v serveri ktory tvori sucast internetu, znie to sice tiez fajn, ale uz by taki ohureni neboli, lebo je to prilis low technologia, omnoho vacsi magic si ked priamo tvoris ten obsah po ktorom ludia idu
Podla mna je internet akoby na vrchu "IT potravinoveho retazca", to najvyssie vyjadrenie ludskych technologii a vsetko IT k nemu speje a akoby mu sluzi.
A ver tomu ze ako webdev budes vyvijat. Je na tebe ci budes za 100e sekat stranky susedovi a tete alebo ci budes v HTML5 vytvarat 3D vizualizacie a neviem co. Vezmi si ze cely svet sa presuva na internet, webove aplikacie raz najviac ovladnu trh, lebo co dnes dokaze webovy prehliadac bolo pred 10 rokmi uplne nemyslitelne.
A bude ho uz len viac a viac, v podstate web front-end development je najviac NIEmrtva IT technologia.. A bohvie co pride za 10 rokov zase, nejake 3D hologramove weby napr., to bude zaujimave tvorit A nikdy nebude dost koderov.
Ale viem ze si sa skor pytal na konkretny jazyk a nie na platformu, jazyky na webdev som uz vymenoval vyssie
Suhlasim ze v prvom rade je dolezite naucit sa programovat, az potom je dolezite vybrat si CO a ako programovat. Naucit sa rozmyslat ako programtor, pochopit ako funguju technologie uz od uplneho elektrotechnickeho jadra veci az po tu najabstraktnejsiu vrstvu - za co pokladam weby.
A myslim ze aj keby si neskoncil ako vyvojar webov ale kodil hocico co by ta bavilo, tak rozumiet tomu ako funguju weby by si mal, lebo je to nieco co nonstop pouzivas a je velmi prakticke to vediet
tak ti poviem, ze ti najlepsi maju proste vlastnu hlavu a vedia tukat do googla, takze nemusia zakladat fora na birdzi a rovno sa do niecoho pustia (hlavne sa do toho pustia)
@wewo
fakt som nechcel ist do tejto debaty, ale neda mi podotknut, ze nesuhlasim, ze len web nutne musi byt cutting edge ... suhlasim urcite, ze na nom dobry user experience, ale to su aj take OS a su kodene v C++ a su cutting edge (alebo android OS kodeny v Jave) ... nedobre skatulkujes oblast len na web a programovanie mikrocipov
na webe napriklad vsetky tie "cutting edge" technologie velmi silno spolupracuju s vymakanymi server side vecami ako su virtualizacne cloudy, big data searche (elastic search a pod.), cachovanie, middleware biznis procesy ... a vlastne aj tie browseri co spominas, ze su rychle a dokazu vselico su napisane v C
case is closed
moja finalna rada: nauc sa algoritmy, nauc sa "mysliet ako pocitac", skusat vsetko viacerymi sposobmi (ponuka sa dost iterativny a rekurzivny), ked si osvojis takuto logiku riesenia problemov a rozmyslania, tak naucit sa nejaku syntax je viacmenej np
informacny overflow tejto doby vznika hlavne preto, ze ludia sa pytaju tu istu otazku zbytocne velakrat na roznych miestach bez toho aby si uvedomili, ze vlastna konstrukcia odpovede by mala najsilnejsiu vahu ...
co tym chcem povedat je, ze tu dostanes odpoved od 4+- ITckarov a to vcelku subjektivnu aj ... malo ludi vie ist na takuto otazku objektivne, pretoze aj ty to zistis, ze preco, lebo sa v niecom usadis ... keby si pogooglil v studni informacii zvanej Internet, tak zistis, ze uz velakrat sa to niekto pytal a dostal vacsiu variaciu odpovedi na relevantnejsich forach a diskusiach
a prekvapivo, cisto z teoretickeho hladiska ma otazka suvisiaca s tym, kto s kym ma aky vztah a pod. cca taku istu inf. hodnotu vzhladom na odpovede ako otazka vyberu prog. j. a cim zacat. Pretoze v tom vztahu su vzdy ini ludia ako jedinecne entity a kazdy vztah je iny. Dokonca v tvojej otazke su entity take iste, len pri odpovediach teda su zas nazory jedinecne, lebo ludia su jedinecne entity ... ale to len teoreticky, ani neviem ci ma chapes
no nikto nesleduje , že ten človek čo to fórum založil potrebuje reakcie priamo naňho... ale z časti má pravdu aj on to nepopieram
ale je to o tebe, ty musis vediet, kt. smerom sa uberat, ako tymi zakladnymi vecami, co sme ti napisali urcite nic nepokazis
Jednak už dnes existuje to že jednotlivé vlady ho dokažu zablokovať obmedziť/ zdaniť....v prípade vojenskeho konfliktu internet bude posledna dôležita vec na svete....
Druha vec je že sa témovo sa vyčerpá, lebo jednoducho internet ti naozaj ulahčuje množstvo vecí ale čo ďalej? pre mna by bol internet dnes revolučny keby sme sa nim dokazali teleportovať
Ďalšia vec je že kto ťa dnes zaplatí? Ono tá generacia ludi ktorí si dokážu vyrobiť nejaky web stale rastie a rásť bude, a v buducnosti si už malé dieťa zvladne vyrobiť aplikaciu na mieru a pod.
Nechce sa mi to tu vypisovať, ale davnejšie som nad tým tak uvažoval...a možno by som potreboval počuť nejake povzbudenie
mozes ale o nej rozmyslat ako o platforme aj z hladiska poskytovatela nejakej sluzby.
povedzme, ze nakodis nejaky brutalne nadupany back-end system, kt. bude riesit problematiku niecoho pre niekoho ( tu skutocne moze ist o riesenie donasky potravin do domovov ludi az po ja neviem riadenie firmy etc ) a tento back-end mozes poskytovat pre "front-endakov" ako entry-point do takejto nadupanej platfotmy
a teraz si staci predstavit, ze co vsetko sa da nakodit ako backend a ako k tomu vieme pristupovat
ide skor o to, ze ako makame na postupe samotneho webu tak sa maka na vsetkom okolo aj mimo neho, takze jeho sila ako poskytovatela info-studne je pomerne tazko vycerpatelna (asi natolko vycerpatelna ako to, ze ludia prestanu komunikovat cez net)
inak zaujimava uvaha
just my two cents je, ze web je rozhranie ... Internet je iny pojem ... ak sa naozaj moze stat co pises s netom (co je teda zatial v blizkej dobe min. 20 rokov podla mna nepravdepodobne) , web. technologie podla mna mozu ist aj tak dalej na urovni intranetov (cize uzavreta firemna siet moze mat web rozhranie na svoje business backendy)
@n0win0u *wink*
*wink indeed*
Na margo HTML. To nie je programovanie. Nema v sebe cyklus, tym padom nie je turingovsky uplny jazyk.
Zalezi, preco chces zacat programovat a ci chces skutocne pochopit aj veci okolo alebo budes programovanie vnimat iba ako nastroj na tvorenie svojich veci.
Ak to vnimas iba ako nastroj na vyjadrenie svojich veci, odporucam na zaciatok Python. Kvoli tomu, ze budes musiet s jazykom zapasit iba malo a viac sa budes moc sustredit na myslienky, algoritmy a celkovo, take programatorske myslenie. Python je jednoduchy a je skutocne jedno, v ktorom jazyku pochopis co je to podmienka, cyklus, funkcia, vstup/vystup..
Pokial sa o programovanie zaujimas aj po informackej stranke, mas v sebe nejaku tuzbu, potom Ti odporucam zacat s C. Je to pomerne kompaktny, jednoduchy a priamociary jazyk a okrem jazyku typu Assembler je najblizsie tomu, ako skutocne funguje pocitat vo vnutri a ako sa vykonava program. Co kazdy dobry programator vie. Programatorom myslim cloveka, pre ktoreho nie je jazyk cielom ale prostriedkom a vie premyslat obecne ako programator. Osobne poznam ludi, ktori vedia programovat ale iba v Jave a obecne koncepty im nehovoria nic. Na Javu su dobri ale inac su nepouzitelni..
Potom je tu programovanie OOP, kde je mainstream C#, Java a C++. S tym jazykmi by som neodporucal zacinat, najma nie s C++. Tam sa aj treba divat na to, s cim budes ako zacinajuci student zapasit. Totiz.. Takto.. C je svet, ktory je blizky pocitacu. OOP je svet, ktory je blizsii k tomu, ako ludia premyslaju. Ale to nic nemeni na to, ze nepouziva tie zakladne koncepty ako podmienky, cykly, funkcie (metody v OOP) atd.. Ako.. a ja uz ako skuseny si neuvedomujem tie rozdiely, lebo co mi das do ruky, v tom Ti naprogramujem, ale.. OOP je uplne novy koncept a treba pri nom premyslat inak ako pri C. Asi by niekto povedal diametralne inac ale.. ked uz je clovek skuseneny a je dobry, tak sa mu to uz nejako zlieva.. Ale keby si zvolil jazyk s OOP, okrem zakladnymi myslienkami Tvojich programov, zakladnych konceptov programovania by si musel este zapasit s OOP principmi.. Co ma aj tu nevyhodu, ze by si do svojich programov musel pisat klucove slova, ktorym by si este nerozumel ale musia tam byt lebo OOP, lebo inac by sa ten program nespustil..
Ako.. Kto pozna toho viac, vidi ako je vsetok podobne a programatora netvori jazyk, ale myslenie. Skuseny programator je schopny naskocit do projektu, ktory je pisany v akomkolvek jazyku..
Teda.. v podstatne je jedno, s cim zacnes. Najdolezitejsie je to, aby Ta to neodradilo..Ak chces zacat programovat, Python Ti hned dovoli premienat Tvoje idey na programy. C nie. Ale pri C pochopis, ako asi pocitac funguje a da Ti velmi pevne a dobre zaklady, ktore vyuzijes v kazdom jazyku. C#/Java Ta nutene vrhne do OOP sveta, na ktory najskor este nie si pripraveny ich profesionalnym stylom. A C++ sa vrhne do temneho sveta, kde ak zaciatocnik nebudes vediet vediet ci si program zle navrhol, ale si nespravne v C++ nieco napisal alebo.. C++ je najmocnejsi jazyk z tych vsetkych, ale berie si za to svoju dan..
A potom je spustu jazykov, ktore funguju uplne inac a su vacsinou pre vedecke ucely.. Jo.. este sa zvykne spominat casto Pascal. Poviem to takto. Kto nie je idiot, nepotrebuje Pascal ale moze ist kludne na C. Ale C ako zaciatocneho jazyka sa akademici boja ako cert kriza.. Ale je to fakt jednoduchy, kompakty a priamociary jazyk narozdiel od C++, ktore je zlozite, velke s kopou best practises aby program v nom napisany nenabil hubu.. A samo o sebe je nepouzitelne. Potrebujes sa nauci aj boost alebo Qt..
hmm, asi mas pravdu, ze to bude c/c++ , asi som sa zmiatol sam tym, ze vlastne poskytuje sdkcko ktore je java-based pre appky
anyway, si napisal to co ja v @15 inak,
a teda neskôr by som skočil na C#/C++ a JAVU
Ooo... vidím, že chlapci vyššie už asi povedali všetko, tak ja len dodám toľko...
Sústreď sa hlavne na to, aby si sa NAUČIL PROGRAMOVAŤ. Programovací jazyk je len prostriedok na rozvoj programátorského a analytického myslenia. Ten, v ktorom sa učíš teraz tu už za krátky čas nemusí byť, ale schopnosť algoritmicky a analyticky myslieť ti zostane na vždy.
Takisto by nebolo od veci sa venovať Matematike a Fyzike, pretože všetko je postavené na matematike. Tiež odporúčam čo najskôr začať s Angličtinou, keďže ako IT človek je pre teba dôležitá a ak sa chceš zamestnať, tak AJ už vyžadujú skoro všade. Takisto väčšina dobrej odbornej literatúry je práve v Angličtine.
tak viem že to je pre vás (ovela) skúsenejších je úplné nic, ale ajtak keby ste sa mi na to kukli, pochválili :p a príp. navrhli co tam zmenit al. zlepšit.
Téma úlohy bola Bubble sort algoritmy, a všeličo kolem nich,
to gro zadania mi už jakš-takž ide, ešte tam musím doplnit roztriedovačku (obe - vzostupne aj zostupne) čísiel načítavaních zo súboru
viem, toto celé je ešte docela triviálne, ale všetky tie bublinové_triedičky by som chcela vylepšit a prepojit, doplnit o takéto grafické znázornenie, jako je na tomto webe - tá vizualizácia (stĺpcový graf),
- tak aby bol vždy aktuálny a konkrétny pre tie moje, resp. uživatelem zadané, načítané (alebo náhodne vygenerované) čísla
» www.algoritmy.net/article/3/Bubbl...
#include
#include
#include
#include
using namespace std;
const int MAX_RANDOM = 999; /* ? obmedzené len na 19 čísel (prvkov ? */
void fillWithRandom(int array[], const int arrayLength) {
for (int i = 0; i < arrayLength; ++i) {
array[i] = rand() % (MAX_RANDOM + 1);
}
}
void swap(int array[], const int index1, const int index2) {
int tmp = array[index1];
array[index1] = array[index2];
array[index2] = tmp;
}
void bubbleSort(int array[], const int arrayLength, int &comparisonCount;,
int &swapCount;, const bool vzestupne) {
for (int i = 0; i < arrayLength - 1; ++i) {
for (int j = 0; j < arrayLength - i - 1; ++j) {
++comparisonCount;
if (((vzestupne == true) && (array[j+1] < array[j])
|| ((vzestupne == false) && (array[j+1] > array[j]) {
swap(array, j, j + 1);
++swapCount;
}
}
}
}
void printOut(int array[], const int arrayLength) {
for (int i = 0; i < arrayLength; ++i) {
std::cout
pokial do for cyklu das ++i, nepojde ti cyklus od 1 az po arrayLength?
nedostane sa ti na konci cyklu mimo toho pola?
ja vzdy pouzivam i++
@53 tak zatial by stačila aj pre konzolu, serioznejšie riešit grafiku to má čas aj v 2.semstri
proste tak, také neco jako je ten dynamický stlpcový graf na tej www.algoritmy.net