Naučte sa programovať v jave od začiatku. Školenie programovania v Jave

V tomto článku sa pokúsim čo najjednoduchšie a najjasnejšie vysvetliť základy programovania v jazyku Delphi.

Java pre atrapy. Lekcia 1. Hello World!

Najprv vám poviem, čo Java dokáže. Po prvé, v tomto jazyku môžete písať applety - programy, ktoré sú vložené na webovú stránku webovej stránky. Môže to byť napríklad hra, podnikový grafický systém a ďalšie. Za druhé, v Jave môžete písať plnohodnotné aplikácie, nie nevyhnutne súvisiace s webom. Alebo sú možné aj servlety - programy, ktoré sa na rozdiel od apletov nespúšťajú na strane klienta, ale na serveri.

Začnime úplnými základmi. Vzdajme hold tradícii a píšme najjednoduchší program ktorý zobrazí uvítaciu správu Ahoj Svet. Ak nemáš Javu, potom sa dá stiahnuť z oficiálnej webovej stránky http://www.java.com/ru. Potom ho nainštalujte.

Ak Java nainštalovali ste, potom v nasledujúcom editore zadajte nasledujúci text:

Verejná trieda HellowWorld {

Verejná statická prázdnota hlavná ( Sláčikové argumenty ) {

Systém . von . vytlačiť ( „Ahoj, svet!“ );

}

}

A určite si ho uložte pod názvom HellowWorld. java - názov spustiteľnej triedy sa musí zhodovať s názvom súboru. Na kompiláciu použite program javac.exe súčasťou štandardného balenia Java. Takto môže vyzerať dávkový súbor kompilácie tohto súboru java:

"c: \ Program Files \ Java \ jdk1.7.0 \ bin \ javac" HellowWorld.java

pauza

Ak sa počas kompilácie nevyskytli žiadne chyby:

potom bola s najväčšou pravdepodobnosťou kompilácia úspešná a máte ju v rovnakom adresári, kde sa nachádzal HellowWorld. java bol aj HellowWorld.trieda:

Teraz spustíme ďalší dávkový súbor, ktorý zavolá interpret Java a náš kompilovaný súbor:

"c: \ Program Files \ Java \ jdk1.7.0 \ bin \ java" HellowWorld

pauza

Ak je všetko vykonané správne, mali by ste získať nasledujúci výsledok:

Ak ste ho dostali, môžem vám zablahoželať - napísali ste svoj prvý program Java. V budúcnosti sa naučíme písať aplety Java a mnoho ďalších. A teraz pár slov k samotnému programu. Ako vidíte, začína sa slovom verejný. Toto je modifikátor, ktorý znamená, že deklarujeme niečo verejné: triedu, metódu triedy alebo premennú. Existujú aj ďalšie modifikátory, napríklad: súkromné, chránené, priateľské, konečné, abstraktné, statické. Niektoré z nich je možné navzájom kombinovať. Súkromné ​​napríklad znamená, že premenná, ktorú chceme deklarovať, je súkromná pre iné triedy. K modifikátoru sa však dostaneme neskôr. Teraz zvážte nasledujúce kľúčové slovo trieda. Znamená to, že vyhlasujeme triedu. V Jave je všetko postavené na triedach. Jedna z tried je nevyhnutne základná. A základná trieda musí byť verejná. V tomto prípade ide o triedu HelloWord. Zatiaľ je u nás jediný.

Teraz sa pokúsim vysvetliť jednoduchými slovamičo je to Trieda a čo je objekt.

Pripomeňme si školský kurz zoológie. Ako je klasifikovaný živý svet? Najprv je predstavený koncept „kráľovstva“.

1. Kráľovstvo jednobunkových organizmov,

2. Rastlinná ríša

3. Kráľovstvo zvierat.

Zoberme si zvieratá. Môžu byť kategorizované podľa typu. Napríklad:

1. Zadajte coelenteráty.

2. Druh plochých červov.

3. Druh mäkkýšov.

4. Chordátový typ.

Posledne menované sú rozdelené na cicavce, plazy, obojživelníky, vtáky atď. Môžete ísť hlbšie do klasifikácie, ale teraz to neurobíme, ale prejdeme priamo k programovaniu.

V jazyku Java môžete, podobne ako klasifikácia živého sveta, klasifikovať objekty (kúsky programu a údajov). Na to existujú triedy.

Prestaň prestaň! - hovoríte, - prečo tieto objekty klasifikovať?

Predstavte si, že ako istý demiurg (tvorca, boh) tvoríte život na Zemi. Najprv ste vyvinuli najjednoduchšie organické zlúčeniny. Čo sa teda stane kvôli experimentu. Potom ich spojili do komplexných molekúl, z ktorých boli zostavené najjednoduchšie mikroorganizmy, ako z tehál. Ale vašim konečným cieľom je vytvoriť inteligentný život. Preto ste sa tam nezastavili, ale vytvorili ste mnohobunkové organizmy. Potom ich začali vylepšovať a rozvíjať. Niektoré druhy sa ukázali ako životaschopné, niektoré vyhynuli (dinosaury). A nakoniec bol cieľ dosiahnutý - objavil sa Homo Sapiens - Homo sapiens.

A teraz zostúpme z neba na zem a predstavme si programovanie ako stvorenie, kde prinútite svoj program, aby sa vyvinul do určitého stavu, keď ho možno použiť, a potom ďalej, postupné zvyšovanie a zlepšovanie funkčnosti.

A teraz si predstavme, že atóm je najjednoduchší príkaz programu alebo jednotky informácií (ktoré, musíte súhlasiť, nie sú navzájom oddeliteľné, pretože program pracuje s čím - správne, s informáciami).

Potom je molekula podprogram. Alebo predmet.

Tu sme v našom programe vytvorili veľa objektov. Je potrebné ich nejako zaradiť, aby nedošlo k ich zámene. Preto Java poskytuje triedy. S ich pomocou popíšeme triedu predmetov (všeobecný pojem, napríklad vtáky) a potom, keď máme popísanú triedu, môžeme vytvoriť objekt - inštanciu tejto triedy. To znamená, že trieda je samotné slovo Vtáky a predmet je nejakým konkrétnym vtákom, ak budeme pokračovať v našej analógii.

Okrem toho sú vtáky rôznych typov. Ale všetky majú niektoré spoločné črty zdedené z konceptu „vtákov“. V Jave teda z triedy môžete vytvoriť inú triedu, ktorá zdedí jej vlastnosti a metódy (znaky). To sa nazýva dedičnosť.

Rôzne vtáky majú inú farbu peria, tvar zobáka a krídel. Podobne v prípade tried je možné pri vytváraní novej triedy zmeniť zdedené vlastnosti. To sa nazýva polymorfizmus.

Zistili sme teda základné pojmy Java. Teraz si prejdeme program.

Takto deklarujeme triedu:

verejná trieda HellowWorld {

V tomto prípade je v našom programe iba jedna trieda, a to je základná trieda, to znamená trieda zodpovedná za spustenie programu. Preto sa jeho názov musí zhodovať s názvom súboru, aby tlmočník „vedel“, kde začať vykonávať program.

Základná trieda (HelloWorld) má základnú metódu: main. Máme to deklarované ako verejné a statické. Prvý naznačuje, že táto metóda je verejná. Ak by to tak nebolo, program by sa jednoducho nespustil. Existujú aj metódy, ktoré nie sú verejne dostupné, ale o nich si povieme v nasledujúcich lekciách, zatiaľ si však pamätajte, že základná metóda (ktorú spustíme pri spustení programu) musí byť verejná. A jeho názov by mal byť hlavný, aby tlmočník vedel, kde začať vykonávať program.

Teraz, čo je statické. Toto je modifikátor, ktorý naznačuje, že metóda je statická. To znamená, že funguje, aj keď trieda (objekt) nie je vytvorená. Polia a metódy so statickým modifikátorom sú vo všeobecnosti spoločné pre všetky objekty triedy. Aj o tom si povieme v budúcnosti.

Každá metóda môže, ale nemusí mať návratovú hodnotu. Ak áno, je to funkcia. Typ návratu je tiež nastavený v deklarácii metódy. Ak nie, zadajte prázdno (ako v našom prípade).

Odkaz na polia a metódy objektu prechádza bodkou. Existujú aj vstavané objekty, napríklad System, ktoré používame v našom prípade:

Systém . von . vytlačiť ( „Ahoj, svet!“ );

v tomto prípade odkazujeme na pole out, čo je tiež objekt určený na výstup údajov, a nazývame jeho metódu tlače, ktorá zobrazuje text na obrazovke (ako v starom dobrom príkaze BASIC PRINT).

(C) Shuravin Alexander

Vzdelanie by nemalo byť svätou kravou, o tom sme si istí! Musí a môže byť zmenené. Presne to sme urobili a vyvinuli sme kurz programovania CodeGym, ktorý je na rozdiel od akéhokoľvek iného online kurzu. Neobsahuje dlhé videoprednášky a zoznam úloh, z ktorých nie je jasné, kto a ako bude kontrolovať. Existuje však jasne definovaný cieľ špeciálne prostriedky na štúdium a stanovte výsledok, ktorý sa má dosiahnuť.

Najlepších 12 funkcií lekcií CodeGym

Online kurzy programovania sú zvyčajne návody alebo video návody. U nás to tak nie je. Vytvorili sme sériu krátkych lekcií Java, naplnili sme ich praktickými úlohami a poskytli sme inteligentné nástroje na kontrolu správnosti riešenia. A to všetko formou konzistentného a uceleného kurzu!

Čerpá vás ako programátora. Nie sú to len hodiny Javy pre začiatočníkov - je to príležitosť na upevnenie získaných znalostí v praxi „tu a teraz“. Budete mať krátke prednášky, potom tam problém vyriešite a dostanete za to odmenu. Je to logické a pochopiteľné. Budete riešiť najrozmanitejšie úlohy. Najbežnejšími úlohami sú písanie kódu na vyriešenie problému. Ale okrem nich sa budete musieť naučiť čítať kód niekoho iného, ​​opravovať chyby v ňom, vylepšovať ho (refaktoring), pridávať nové funkcie. Niekedy budete nútení sledovať zaujímavé videá o IT špecialistoch a pre tých, ktorí učia, úlohy pri písaní kódu bude užitočné. Tí, ktorí sa pohybujú dostatočne ďaleko, budú mať veľké úlohy, sú to tiež miniprojekty: ich splnením ich napíšete niekoľko zaujímavé programy vážnejšie (malé hračky, online chat a podobne).

2. Lekcie Javy, nič nadbytočné!

Java a akýkoľvek iný programovací jazyk sa dá naučiť veľmi dlho. Aby sme sa nehrabali v hlbokej džungli na úplnom začiatku cesty, odstránili sme z kurzu témy, ktoré sú pre začiatočníkov nepotrebné a ktoré sú často plné hodín programovania. Na CodeGym zostane len to najnutnejšie. A nie sú to prázdne slová: toto je výsledok analýzy stoviek voľných miest. Tvrdíme teda, že kurz obsahuje presne tie témy, ktoré budúci vývojár Java Junior potrebuje vedieť, aby si našiel prácu. Proces získania Java Junior vám bude trvať tri mesiace až jeden rok, v závislosti od toho, koľko času strávite štúdiom. Bude vhodné študovať kedykoľvek počas dňa alebo v noci: na webe je k dispozícii svetlá a tmavá téma - vyberte si akúkoľvek.

Svetelná téma CodeGym

Prejdite na „svetlú stránku“ (ak chcete, samozrejme!). Všetci ľudia sú iní. Niekomu vyhovuje pracovať so zapnutým ľahkým textom tmavé pozadie, niekomu - naopak. Zohľadnili sme priania našich používateľov a teraz sa môžete v ktorejkoľvek sekcii CodeGym prepnúť na svetlý motív („svetlé pozadie, tmavý text“)!

Dátum odovzdania: 2017-11-17T13: 19: 00


3 500 miniprednášok a 1 200+ praktických úloh.

V tomto kurze je veľa praxe. Veľmi, veľmi, veľmi veľa praxe! Kurz obsahuje 500 miniprednášok (jedná sa o krátke hodiny Javy) a viac ako 1200 praktických problémov. V drvivej väčšine sú úlohy malé, ale „tisíce z nich!“ Ich vyriešením získate minimálne skúsenosti potrebné na to, aby ste sa dostali do rúk a vysporiadali sa s vážnejšími problémami. Kurz navyše obsahuje takzvané „veľké úlohy“ (v skutočnosti ide o miniprojekty) a užitočné videá.

4. Štyri úlohy, štyridsať úrovní, tony praktických znalostí.

Kurz je rozdelený na 4 úlohy, pričom každá úloha má 10 úrovní, ktoré je potrebné splniť. Prvá úloha obsahuje základy Javy od začiatku, syntax jazyka a obrovské množstvo úloh na túto tému. Medzi úlohami sú veľmi jednoduché, na asimiláciu odovzdaného materiálu existujú ťažšie úlohy, na ktorých riešenie budete musieť bežať dopredu a googliť. Pre tých najtrúfalejších existujú aj úlohy zvýšenej zložitosti. „Preskočiť“ na ďalšiu úroveň môžete len vtedy, ak vyriešite väčšinu úloh aktuálnej úrovne. Ak sa niektorí z nich nevzdajú, môžu byť bezpečne odložení na neskôr. Týmto spôsobom, ak sa dostanete na koniec, budete mať asi 500 hodín praktických skúseností s programovaním. Takáto solídna aplikácia pre úspešného Java práca Junior!
JavaSyntax Quest Pre začiatočníkov. V tejto úlohe vám úlohy a lekcie Java pomôžu zvládnuť základné jazykové konštrukcie jazyka (premenné, podmienečné vyhlásenia, slučky, metódy, triedy, základné informácie o zbierkach a objektoch)
Java Core Quest V tejto úlohe sa naučíte základy OOP, zoznámite sa so serializáciou a preťažovaním metód.
Java Multithreading Quest Multithreading je hlavné slovo tejto úlohy. Ale tu budeme hovoriť nielen o tom, ale aj o štruktúre tried Object a String a oveľa viac. Túto úlohu, ako aj ďalšiu, je možné študovať súčasne.
Zbierky úloh Zbierky sú pre programátora Java to, čo je dynamit pre prospektora. Musíte ich poznať, ale je dôležité pochopiť, ako ich používať. Aj v tomto queste je veľa informácií o práci s JSON, Git, RMI, DynamicProxy a trochu o JavaScripte.

5. Online stáž a príprava na pohovor

Počnúc úrovňou 35 CodeGush a ešte lepšie po úrovni 40 môžu študenti absolvovať špeciálnu online stáž, počas ktorej získajú užitočné lekcie jazyka Java o pokročilých technológiách a vytvoria seriózny projekt, ktorý je možné pridať do životopisu. A tiež v tejto fáze, ku koncu školenia, vám naši špecialisti pomôžu s prípravou vášho životopisu. Nájdete tu tiež užitočné články o zamestnaní a úspechoch tých, ktorí si už prácu našli. Títo chlapci pre nás často píšu zaujímavé materiály a ochotne sa delia o svoje dobré i zlé skúsenosti s ostatnými študentmi.

6. Riešenie problémov tam, kde je to vhodné.

Problémy môžete vyriešiť a odoslať na overenie:
  • priamo na stránke. CodeGym nie sú len lekcie Javy pre začiatočníkov s úlohami. Je to tiež interaktívne prostredie na riešenie problémov. Pohodlné: analyzujete príklad na prednáške a teraz musíte splniť veľmi podobnú úlohu. Také malé úlohy na konsolidáciu materiálu je možné vykonať priamo na webovej stránke CodeGym: na tento účel sme vyvinuli nástroj WebIDE;
  • pre úlohy, ktoré vyžadujú viac času, odporúčame použiť profesionálne vývojové prostredie IntelliJ IDEA. Aby sme to uľahčili študentom CodeGym, vytvorili sme funkčný doplnok pre toto populárne IDE. Doplnok vám umožňuje získať stav problému jediným kliknutím a rovnako jednoducho a rýchlo odoslať riešenie na overenie;
  • po odoslaní na overenie sa kód riešenia, ktorý ste zadali, synchronizuje, ak pracujete z rôznych počítačov / tabletov.

7. Okamžité overenie riešení.

Študenti sú so situáciou oboznámení na vlastnej koži: problém je pripravený, ale učiteľ ho nijako nekontroluje. Presne to je prípad kurzov face-to-face, kde je jeden učiteľ, ktorý učí programovanie v jazyku Java od začiatku, v kontakte s dvoma desiatkami študentov (alebo dokonca viac) naraz a jednoducho nemá čas kontrolovať zadania každého z nich. Na CodeGym sa okamžite dozviete o správnom / nesprávnom rozhodnutí. Ty:
  • písanie riešenia v Jave;
  • kliknite na tlačidlo „skontrolovať“: vaše riešenie sa odošle na server CodeGym!
  • sekunda - a v prípade chýb získate informácie o správnosti svojho rozhodnutia a odporúčania.
Pre začiatočníka je veľmi ťažké zachytiť logické chyby, ktoré kompilátor neprejde. Riešite problém, ale neviete, či je riešenie správne? Nevadí: Systém odporúčaní CodeGym vám ukáže, kde sa vo vašom riešení skrýva chyba.

9. Stránka pomoci.

Ak vám ani odporúčací systém CodeGym nepomohol a pevne sa snažíte vyriešiť nejaký ťažký problém, pozrite sa na stránku pomocníka - táto služba vás nenechá s problémom osamote. Niekto zo študentov alebo tímu CodeGym vám určite pomôže.

10. Skupiny podľa záujmov a miest.

Komunita - záujmové skupiny, v ktorých si môžete prečítať články od spolužiakov a odborníkov z priemyslu, písať vlastné témy, zúčastňovať sa súťaží, komentovať a diskutovať o témach Javy alebo programovania.

11. Sociálne siete a CodeGym

Prihláste sa na odber skupín CodeGym na VK a Facebooku. Môžete v nich diskutovať o novinkách v oblasti IT, lekciách programovania v jazyku Java, podeliť sa o úspechy s priateľmi, sledovať videonávody v jazyku Java alebo požiadať o pomoc. V kontakte s:

V Jave programujem už 7 rokov. Ale v práci je často potrebné vycvičiť novú generáciu. V tejto súvislosti som sa rozhodol urobiť nejaký cheat, ktorý, dúfam, bude pre habrchana užitočný. Ak niekto môže pomôcť pridať niečo k informáciám z tohto článku, napíšte! Takže:

Základné zdroje pre počiatočné vzdelávanie

  • www.javable.com - stránka s článkami a návodmi o Jave, väčšinou v ruštine.
  • www.exampledepot.com je veľmi užitočný zdroj, ktorý obsahuje krátke príklady použitia tried pre určité balíky
  • java.sun.com - bez primárneho zdroja sa nezaobídete. Pre každého programátora Java by mal byť JavaDoc konečnou pravdou. Tiež tu nájdete sériu návodov na všetky možné témy.

Základné balíky Java

Nasleduje zoznam balíkov Java, v ktorých by mal programátor ovládať. Odporúča sa zoznámiť sa s nimi v JavaDoc aj pomocou www.exampledepot.com. Všetky balíky sú usporiadané v odporúčanom poradí na štúdium. Takže:
  1. java.lang je chrbticou základov. Každá trieda v tomto balíku potrebuje osobitnú pozornosť.
  2. java.io - žiadny program sa nezaobíde bez operácií I / O.
  3. java.util - balík v zásade obsahuje všetko, čo potrebujete na prácu so zbierkami: Zbierka, Enumerácia, Sada, Zoznam, Mapa atď. atď.
  4. java.net - Obsahuje základné triedy sietí.
  5. java.text - všetko, čo potrebujete na formátovanie textu
  6. java.lang.reflect - Java by nebola Java. „Ak nie pre Reflection. Reflection stiera hranicu medzi údajmi a kódom.
  7. javax.sql - všetko, čo potrebujete na prácu s databázami
  8. javax.xml. *, org.w3c.dom. *, org.xml.sax. * - práca s XML je bez týchto balíkov jednoducho nemysliteľná

Zdroje, ktoré vám rozšíria obzory

  • onjava.com - skôr alebo neskôr sa sem dostanú všetky správy zo sveta Java
  • www.javaspecialists.eu - zdroj je užitočný pre začiatočníkov aj pokročilých programátorov, pretože obsahuje mnoho článkov o zložitosti práce s jazykom Java.
  • www.theserverside.com - Odporúča sa prihlásiť sa na odber RSS, pretože v Jave často preskakujú veľmi zaujímavé veci.

Knižnice Java by mal vedieť každý

Java nekončí iba znalosťou schopností JSDK. Aby ste sa cítili príjemne, potrebujete vedieť ešte dve desiatky knižnice tretích strán používaný Java programátori všade. Začnime teda tými najdôležitejšími:
  • Commons Lang - niečo, čo „zabudol“ zahrnúť do JDK
  • Commons Math je skvelým doplnkom k súboru java.math
  • Commons Logging - ťažba dreva musí byť kompetentná. Aby systém System.out.println zobrazoval protokoly, mali by si začínajúci programátori po týždni tréningu odrezať ruky.

Dobrý deň, drahý čitateľ. Dlho som chcel napísať taký článok, ale buď nebol dostatok času, alebo prekážala zradná lenivosť. Ale nech je to akokoľvek, napriek tomu sa mi podarilo zhromaždiť myšlienky a napísať niečo, čo vám, dúfam, prinesie nejaký úžitok. Rád sa podelím o svoje znalosti a skúsenosti, na oplátku si zaslúžite čas a pozornosť. Podľa mňa je táto publikácia vhodná pre tých, ktorí sú pripravení určiť svoje záujmy a chcú prepojiť svoj život s IT - tak či onak. Tak, poďme!

Voľba programovacieho jazyka

Publikácia začína vyzerať ako mnoho podobných materiálov. Podľa žánrového zákona budem musieť napísať názov niekoľkých troch programovacích jazykov, pomenovať pár pre a proti a na záver bez odpovede na otázku prejsť k ďalšej časti. Čiastočne je na tom niečo pravdy, pretože každý si sám zvolí jazyk, ktorý mu je bližší, podľa toho, aký typ produktu chce v budúcnosti vyvíjať. Väčšina z vás študovala Turbo Pascal v škole a bude pre vás sotva novinkou, že teraz sa v tomto jazyku nepíše prakticky nič. V tomto prípade teda musíte kompetentne zvoliť jazyk, hoci znalostí nie je nikdy veľa, ale ak sa chcete v krátkom časovom období efektívne rozšíriť o rady programátorov, musíte byť pri výbere jazyka múdri. Na začiatku si pamätajte: dobrý programátor nikdy neostane hladný a vo väčšine prípadov si bude môcť kúpiť veľa kaviáru(Táto definícia je vhodná pre akúkoľvek špecializáciu, ale žiadna špecialita vám nedá takú slobodu pri výbere pracovného miesta, a to z hľadiska spoločností aj krajín - je programátor a programátor v Indii).

Je logické, že čím obľúbenejší je jazyk a dopyt, tým väčšia je šanca nájsť si prácu v budúcnosti, pričom jazyk by sa mal ľahko naučiť. Pretože aj keď je veľký počet hier napísaných v C ++ a dostávajú za to dobré peniaze, začiatočník, ktorý sa obzvlášť nevyzná v OOP (objektovo orientované programovanie), bude lepšie tento jazyk na chvíľu odložiť. Nasledujúci odkaz prináša zoznam najpopulárnejších programovacích jazykov roku 2014 a ako vidíte, na prvom mieste je Java, potom jazyky C, potom Phyton, JavaScript, PHP, Ruby atď. Ak si takú štatistiku vyhľadáte sami, uvidíte, že v rôznych zdrojoch sú miesta obsadené rôznymi spôsobmi, ale vo všeobecnosti bude prvých 10 miest z hľadiska obsahu všade rovnakých.

Ak sa obrátite na inú, na základe analýzy pracovných miest zverejnených na Twitteri uvidíte veľmi podobnú situáciu s prvým príkladom. A áno, oba články sú v angličtine, zvyknite si na to, ak sa chcete stať programátorom, pamätajte na to, že takmer všetka dokumentácia a zdroje užitočná informácia sú napísané v angličtine, takže ak sú vaše znalosti tohto jazyka slabé, pridajte sa do svojho zoznamu úloh na zajtra a v blízkej budúcnosti, aby ste sa naučili a precvičili angličtinu. Myslím, že dokonca napíšem samostatný článok venovaný učeniu sa cudzieho jazyka.

Na základe týchto dvoch zdrojov si už vieme predstaviť, ktoré programovacie jazyky sú teraz „v móde“. Ako naznačuje názov, autor článku si vybral Java pre seba. Aj keď si myslím, že je to najlepšie na učenie sa OOP, existuje veľa ľudí, ktorí so mnou nesúhlasia, a to je logické - koľko ľudí, toľko názorov. Tu stojíme na malej križovatke: zvoľte si Javu, C # (veľmi podobné Jave), Phyton, ak chceme pracovať s výplňami programov a aplikácií (back-end), alebo PHP, JavaScript, HTML, ak chceme robiť vývoj webových aplikácií (front-end). V prvom prípade by som svoju voľbu zastavil v Jave a v druhom - v PHP, aj keď tu je to opäť podľa vášho vkusu, informácie o rôznych jazykoch si musíte vyhľadať sami a vo všeobecnosti porozumieť tomu, čo chcieť urobiť. Na zamyslenie je tu výber jazykov, ktoré používajú najväčšie internetové spoločnosti na svete.

Existujú 2 hlavné dôvody, prečo som si vybral buď Java alebo PHP. Prvý z nich je veľmi populárny jazyk a nebude ťažké nájsť si vhodnú prácu, a druhým je, že v žiadnom inom jazyku nenájdete toľko učebných materiálov v týchto dvoch jazykoch, v ruštine ani v ruštine. v angličtine.

Vzdelávanie

Dostali sme sa teda do fázy, keď sa tam väčšina ľudí dostane bez problémov, ale toto obdobie je právom jedným z najťažších v kariére programátora. Napriek tomu, že sa programátor učí celý život, čas, kedy začne robiť prvé kroky, do značnej miery určuje jeho budúci osud. Tréning vo všeobecnosti človeka preverí na sile, či vydrží, či o mesiac nestratí záujem (ako sa to pri niektorých stáva), či dokáže dosiahnuť koniec a zvládnuť základné znalosti, na ktorých sa celé vrstvy informácie budú potom vrstvené.

Vo všeobecnosti mám vlastnú teóriu, ktorú som v praxi opakovane potvrdil: za 1 rok sa dá naučiť úplne všetko.... Verte mi, toto je absolútna pravda, niekto bude dokonca potrebovať menej času, ale ak to človek neprestane vzdávať a pristupuje k učeniu múdro, je takmer nemožné, že sa nepoučí. To nie je len v programovaní, absolútne v akejkoľvek oblasti: ak chcete hrať na gitare - žiadny problém (nezabralo mi to toľko času a úsilia), naučiť sa argentínske tango, jazdiť na surfe - to všetko bude stačiť na jeden rok . Hlavná vec je naučiť sa!

V tomto prípade zvážim jazyk Java, pretože je mi stále bližší. Našťastie je internet plný ľudí, ktorí bezplatne pomáhajú druhým pri školení, takže nájsť materiál, ktorý vám vyhovuje, nie je ťažké. , ktoré si môžete prezerať perom a papierom v stenách vášho útulného bytu (zatiaľ iba v ruštine). Pre tých, ktorí sú zvyknutí čítať zjazdný materiál, opäť poskytuje internet skvelé príležitosti, a to je len jedna zo všetkých stránok s lekciami jazyka Java. Existuje veľa teórie, ale nemôžem povedať o takom vzdelávacom webe, akým je Coursera.org, kde nájdete školenia v rôznych jazykoch a v rôznych oblastiach vrátane programovania - opäť je všetko úplne zadarmo. Neexistujú žiadne dve webové stránky, stačí hľadať.

Ale bez ohľadu na to, aká teória je kognitívna, programovanie je bez praxe nevyhnutné. Ale aj tu je už polovica práce za nás urobená a nie je potrebné hľadať rôzne úlohy na zlepšenie vašich schopností, taká služba, ako je CodeGym, s tým veľmi pomôže. Všeobecne platí, že táto stránka poskytuje teóriu aj prax, počínajúc duplikáciou kódu z obrazovky a končiac zložitými úlohami, a medzitým dokonca ponúka relaxáciu a sledovanie známych animovaných seriálov. Podľa uistení autorov budú mať tí, ktorí v službe dosiahli úroveň 20, dostatočné znalosti, aby získali prácu v IT spoločnosti.

A samozrejme, niekto sa pýta, ale čo s knihou? Nemali by ste ich čítať a ak by ste mali, čo potom? Na to odpoviem, že nikto nečítal z čítania kníh. Existuje aj veľa kníh, ale uvediem len malú časť z nich:

Pomoc v praxi

Ako už bolo spomenuté, prax je základnou súčasťou každého učenia, obzvlášť programovania. Tu musíte kódovať a kódovať až do svalovej pamäte prstov. To je, samozrejme, trochu prehnané, ale spočiatku budete musieť skutočne veľa stlačiť klávesy, aby ste si zapamätali významy rôznych štruktúr, aby ste ich v budúcnosti mohli používať takmer automaticky.

Mnoho začínajúcich programátorov má spočiatku veľa otázok, najmä keď potrebujú splniť nezávislú úlohu. Toto je fajn. Ale v takýchto situáciách musíte pochopiť, že takmer každú otázku, ktorú máte, je možné zodpovedať na internete. Je nepravdepodobné, že by ste boli prvým, kto sa s tým stretne, preto si urobte čas a položte si otázky na fórach rôznych programátorov (o ktorých budem písať trochu neskôr). Posaďte sa, správne formulujte problém v hlave a pokojne ho vyhľadajte vo vyhľadávači. Väčšina bude určite hľadať v ruštine, ale nezabúdajte, že programátorským jazykom je angličtina, takže ak ste nenašli odpoveď vo veľkom a silnom, mali by ste sa pozrieť do jazyka, ktorý sa zdalo, že sa každý naučil v škole, ale nikdy Učil sa. Ale aj keď sa v tomto prípade ukázalo, že nikde nie je odpoveď na vašu otázku, do bitky vstupujú najlepšie internetové fóra:

  • Cyberforum - podľa mňa najpopulárnejšie fórum v IT v ruskom jazyku, kde nájdete odpovede na otázky, a to nielen v oblasti programovania;
  • Fórum programátorov - veľké fórum v ruskom jazyku;
  • Searchengines je známe fórum, ale špecializuje sa viac na webové programovanie;
  • Pretečenie zásobníka - a to je to, nebojím sa týchto slov, najpopulárnejšieho fóra IT na svete, práve tu nájdete odpovede na takmer všetky svoje otázky;
  • Dev shed je tiež veľké fórum v angličtine;
  • Quora je fórum, ktoré sa priamo nešpecializuje na programovanie, ale je vysoko pravdepodobné, že dostanete odpoveď od skutočného profesionála.

Fóra samozrejme nie sú jediným spôsobom, ako získať odpovede na vaše otázky. Vo svojej praxi programátori všade pracujú s úradníkom dokumentáciu jazyk, v ktorom píšu. Popisuje, ako fungujú určité triedy a rozhrania. Niekedy je dokumentácia jediným zdrojom, ktorý môže pomôcť pri riešení problémov, pretože je to len pre počiatočná fáza každý má podobné otázky a už môžete bez problémov nachádzať hotové riešenia, ale čím ďalej sa do džungle nachádzate, tým ťažšie a ťažšie je nájsť odpovede, takže sa musíte spoľahnúť na svoju, dúfam, že už inteligentnú hlavu.

Zostavovanie kódu

Už som toho napísal dosť veľa, samozrejme, je ťažké pokryť takú veľkú tému v rámci jedného článku, ale myslím si, že prvé kroky už boli urobené a mali by vo vás vyvolať patričné ​​myšlienky. Myslím si, že toto je len prvý článok zo série „Ako sa stať programátorom“ a podľa toho „prečo?“ Ak stojíte na rázcestí a ešte neviete, ktorý spôsob si vybrať. Nabudúce sa dotknem zaujímavejších vecí v materiálnom zmysle, pretože nie je tajomstvom, že programátori nie sú chudobní ľudia a kde a koľko dostanú, uvidíme nabudúce.

Nakoniec, pre tých, ktorí sa skutočne chcú stať programátormi, by som chcel vziať býka za rohy, zhromaždiť všetku vôľu v päsť a robiť, čo sa vám páči. Už predo mnou hovorili tisíckrát, ale budem sa opakovať, hlavnou vecou je túžba a práca. Potom vám všetko vyjde. Pamätajte si to najdôležitejšie: brať štúdium programovacích jazykov a rôznych technológií nie ako cieľ, ale ako NÁSTROJ. Predstavte si, aké príležitosti sa vám otvárajú. Možno sa stanete jedným z tých, ktorí v reálnom čase menia svet. Tak veľa šťastia a ďakujem za pozornosť!

Video bonus

Značky: Pridajte značky

Pravdepodobne si mnohí povedia: „Na Jave už bolo napísaných veľa dobrých kníh, prečo ďalšia?“ A pre mnohých s najväčšou pravdepodobnosťou moja kniha neprinesie nič nové. Koniec koncov, jeho hlavným čitateľom by mal byť (pravdepodobne) človek, ktorý s programovaním vôbec nemá skúsenosti. Na jednej strane sa zdá, že stačí vziať knihu s dobrým, väčšinou celý popis to je všetko. V praxi to však zďaleka nie je. Nestačí o niečom čítať. Hlavnou vecou je pochopiť, ako ho používať. Byť schopný prispôsobiť inú sadu nástrojov na riešenie konkrétneho problému. Zhodnoťte, ktorá z existujúcich možností je lepšia. Ako to možno dosiahnuť? Prax. Veľa praxe s analyzovaním triviálnych príkladov a riešením podobných problémov vlastnými silami. Prax však, bohužiaľ, nie je všetko. Okrem nej musí existovať aj správne zvolená, dávkovaná teória. To znamená, že nebudem všetky znalosti naraz vsypať na čitateľa. Zámerne veľa zjednoduším, aby som lepšie porozumel podstate vecí. Dúfam, že sa mi za to profesionáli nebudú hnevať. Po prečítaní mojej knihy bude čitateľ skutočne schopný prejsť k literatúre, ktorá poskytuje podrobnejšie znalosti, a porozumieť jej sám.


Kapitola: Úvod (alebo príbeh o programovaní)

Pravdepodobne v našom progresívnom veku mnohí počuli slová ako „program“ a „programovanie“. Poďme zistiť, čo to je, odkiaľ pochádza a do akých smerov sa teraz láme.
Najprv začnime pojmom „program“. Jednoducho povedané, program je postupnosť akcií alebo pokynov do počítača, ktoré musí vykonať. Keď spustíme program, spustíme postupne všetky v ňom uvedené príkazy alebo pokyny. Programovanie je proces vytvárania alebo písania programov.
Ako počítač porozumie alebo dekóduje príkazy napísané v programe?
Program, ktorý vidí počítač, a program, ktorý človek vidí na obrazovke, sú v skutočnosti veľmi odlišné, pretože sú napísané v jazyku rôzne jazyky... Počítačový stroj rozumie iba takzvanému binárnemu kódu - určitým kombináciám jednotiek a núl. Prečo je to tak? Je to jednoduché, ak sa obrátime na mechaniku procesu. Príkazy do počítača sa prenášajú prostredníctvom slučiek, ktoré pozostávajú zo sady káblov (kanálov) a takzvanej dátovej zbernice. Ak je v kanáli elektrický signál, prišla jednotka. Žiadny signál - nula.
Ak však otvoríme text programu napísaného programátorom, nebude to vyzerať ako súvislá množina jednotiek a núl a bude celkom možné ho „čítať“ a analyzovať na príkazy. Ako potom počítač porozumie programom napísaným ľuďmi? A tu fungujú takzvané prekladače z jedného jazyka do druhého. Tieto translátory sa nazývajú translátory. Prekladače možno rozdeliť do dvoch typov: prekladače a tlmočníky. Kompilátory preložia celý program a uložia ho do špeciálnych spustiteľných súborov. Na spustenie takého programu je potrebné spustiť výsledný súbor. Tlmočníci prekladajú príkazy online a okamžite ich vykonávajú. Jeden príkaz naraz: preložil príkaz - vykonal, preložil nasledujúci - vykonal atď.
Počet inštrukcií v binárnom kóde závisí od náročnosti jazyka, z ktorého prekladač prekladá. Ak je jazyk dostatočne blízky binárnemu kódu, potom jedna inštrukcia takého jazyka vygeneruje 1 (assembler) až 10 inštrukcií v binárnom kóde. Medzi tieto jazyky patrí napríklad Pascal, C. V prípade jazykov vyššej úrovne, ako sú C ++ a Java, sa môže počet pokynov v binárnom kóde na jeden príkaz jazyka na vysokej úrovni rovnať 100 alebo viac. .
Na jednej strane je použitie kompilátorov lepšie, pretože programy preložené úplne do strojového jazyka bežia rýchlejšie. Tieto programy však fungujú iba v jednom operačný systém pre ktoré boli zostavené. Medzi výhody tlmočníkov patrí takzvaná multiplatformová platforma, to znamená nezávislosť na konkrétnom operačnom systéme (platforme). Čo to znamená? Faktom je, že na spustenie rovnakého programu v rôznych operačných systémoch sa použijú rôzne tlmočníky: v systéme Windows jeden tlmočník, v systéme Linux - iný, v treťom operačnom systéme - tretí atď. A samotný text programu zostáva nezmenený a jasné, kdekoľvek to otvoríme. S kompilovaným programom je všetko komplikovanejšie. Po prvé, už bol preložený do strojového jazyka a nebudeme si ho môcť prezrieť v bežnej podobe. Za druhé, program je jasne orientovaný na konkrétny operačný systém a nie je možné to v zostavenom programe zmeniť. Aby ste mohli tento trik zmeniť, musíte vziať zdrojový program, ktorý je napísaný v jazyku zrozumiteľnom programátorovi, vykonať potrebné zmeny a skompilovať ho pre inú platformu (operačný systém).
V zásade je možné kompilátory aj tlmočníky vyvinúť pre akýkoľvek jazyk. Medzi jazyky, pre ktoré existujú kompilátory aj tlmočníky, patrí napríklad Visual Basic. Existuje však niekoľko jazykov, pre ktoré existujú iba prekladatelia alebo tlmočníci. Napríklad pre jazyk Pascal existuje veľa prekladačov, ale žiadni tlmočníci (aspoň som o nich nepočul). Pre VBScript, JavaScript existujú iba tlmočníci.
Samostatne je možné vyčleniť programovacie jazyky, ktoré používajú určitú kombináciu princípov kompilácie a interpretácie. Medzi tieto jazyky patrí Java. Program napísaný v jazyku Java najskôr spracuje kompilátor. Výstupom však nie je strojový kód, ale nejaký intermediálny kód (pseudokód alebo bajtový kód), ktorý potom interpretuje virtuálny stroj Java. Java Virtual Machine je program, ktorý musí byť nainštalovaný v operačnom systéme, v ktorom bude spustený program s pseudokódom.
Ako a kde sú programy napísané?
Zamyslime sa nad tým, čo potrebujeme na vytvorenie pracovného programu. Najprv musíme niekde napísať text programu. Takže nejaké potrebujete textový editor, v ktorom to urobíme a môžeme ušetriť. Za druhé, potrebujete prekladač alebo tlmočník. V zásade ide o nevyhnutné minimum. Ale! Malo by sa pamätať na to, že pri písaní programov robíme chyby, ako všetci ľudia. Po prvé, môžeme urobiť chybu v texte. Pre textový editor by bolo vhodné, keby dokázal vidieť aspoň najjednoduchšie chyby v syntaxi napísaných príkazov a nejako nás na to upozornil (napríklad podčiarknutím, ako to robí Word pri bežných textoch). Za druhé, môžu sa vyskytnúť logické chyby, keď sa zdá, že je všetko v texte napísané správne, ale nič nefunguje podľa očakávania. V takom prípade by bolo vhodné mať praktické nástroje na vyhľadávanie chýb počas spustenia programu.
Pre pohodlie programátorov sú všetky praktické nástroje kombinované do špeciálnych programov - programovacích systémov. Obvykle majú špeciálny textový editor a prekladače a debugger (na hľadanie chýb počas vykonávania programu) a veľa šikovných nástrojov na uľahčenie tvrdej práce programátora. Medzi tieto „dobroty“ patrí automatické generovanie programových skladieb, pohodlné spúšťanie programov jediným kliknutím (keď samotný programovací systém spustí požadovaný prekladač a výsledný spustiteľný program) a mnoho ďalších.
Obvykle neexistuje jeden programovací systém pre jeden jazyk, ale niekoľko. Prirodzene, každý programátor si vyberie najvhodnejší systém pre seba. Napríklad pre Javu sú najbežnejšími programovacími systémami „IntelliJ Idea“, „Eclipse“, „NetBeans“.
Keďže autor uprednostňuje prvé z nich a ostatné sú vám stále neznáme, pre našu prax použijeme „IntelliJ Idea“.


Časť 1. Inštalácia požadovaných programov a ich konfigurácia

Kapitola: JDK - Java Development Kit (Java Development Kit)

Začnime najdôležitejšou vecou - inštaláciou súpravy požadované programy na vývoj a vykonávanie programov napísaných v jazyku Java. V angličtine názov tejto sady znie ako skrátene Java Development Kit alebo JDK. Je to posledná skratka, ktorú budeme v budúcnosti používať.
Čo je v JDK?
JDK obsahuje nasledujúce komponenty:
1) JRE - Java RuntimeŽivotné prostredie
Na spustenie pseudokódu je potrebná zbierka programov a knižníc. V skutočnosti je to tak virtuálny prístroj Java vyžaduje spustenie programov, ktoré sú pre ňu kompilované.
Poznámka: Ak chcete spúšťať iba kompilované programy Java a nie ich vytvárať, nemá zmysel inštalovať JDK. Stačí nainštalovať JRE.
2) kompilátory
3) debuggery
4) špecializované knižnice
5) a ďalšie vývojové nástroje
Čo sú to knižnice a čo v nich je?
Jazykové programy vysoký stupeň pomocou hotových, testovaných fragmentov kódu vykonávajte rôzne typické akcie. Medzi tieto akcie patrí: zobrazenie informácií na obrazovke, zadávanie údajov z klávesnice, výpočet štandardných matematických funkcií atď. Také fragmenty kódu sa nachádzajú v knižniciach prezentovaných ako samostatné súbory.
Kde môžem získať JDK?
Akúkoľvek verziu JDK je možné stiahnuť úplne zadarmo z oficiálnych webových stránok spoločnosti Oracle. Za týmto účelom najskôr zadajte do ľubovoľného internetového vyhľadávača nasledujúce hľadané slová: „stiahnutie JDK“. Prvá stránka v zozname je naša.

Na tanieri s správnu verziu najskôr vyberte možnosť „Prijať licenčnú zmluvu“ (z angličtiny preložené ako „Súhlasím s licenčnou zmluvou“) a potom kliknite na požadovaný súbor v tejto tabuľke.
Ako už viete, Java je multiplatformový programovací jazyk, to znamená, že rovnaký program v ňom napísaný funguje rovnakým spôsobom na rôznych operačných systémoch. Posledná uvedená vlastnosť je dosiahnutá vďaka rôznym JRE a JDK na rôznych operačných systémoch (platformách).
Prirodzene, musíte si stiahnuť inštalačný súbor ktorý sa zhoduje s vašim operačným systémom. Ak napríklad používate Linux, vyberte príslušný súbor pre Linux. Ak je v systéme Windows - súbor pre Windows.
Ak inštalujete JDK pod 32-bitový operačný systém, stiahnite si súbor s označením x86. Ak je 64 bitový - označený x64.
Poznámka. Bitovú hĺbku systému v systéme Windows 7 nájdete takto: kliknite na „Štart“, kliknite pravým tlačidlom myši myšou „Počítač“, zvoľte „Vlastnosti“. Pozeráme sa na hodnotu vlastnosti „Typ systému“.

Napríklad:

Pre 64-bitový operačný systém Windows a JDK 8u101 požadovaný súbor bude mať nasledujúce meno:
"jdk-8u101-windows-x64.exe"

V 32-bitovom operačnom systéme Windows a JDK 8u101 bude mať požadovaný súbor nasledujúci názov:
"jdk-8u101-windows-i586.exe"

Ako správne nainštalujem a nakonfigurujem JDK (pre Windows 7)?
Prvá etapa: Inštalácia JDK
Aby ste mohli nainštalovať JDK, musíte spustiť inštalačný exe súbor s požadovanou verziou JDK. Potom stačí postupovať podľa inštalačných krokov.
Poznámka: Do toho istého operačného systému je možné nainštalovať viac verzií JDK a JRE. V nastaveniach operačného systému môžete urobiť hlavný JRE (ktorý bude používať virtuálny stroj Java). Konkrétnu JDK pre projekt môžete nastaviť tak v operačnom systéme (bude spoločný pre všetky projekty), ako aj v programovacom systéme, v ktorom je tento projekt napísaný.
Prejdeme si celý proces inštalácie JDK na príklade inštalácie JDK 8u102 na 64-bitovú operačnú sálu. Systém Windows 7 (budete musieť spustiť súbor jdk-8u102-windows-x64.exe).

1. V prvom okne stačí kliknúť na tlačidlo „Ďalej“

2. V druhom okne najskôr vyberte priečinok, kde bude nainštalovaný náš JDK. Ak to chcete urobiť, stlačte tlačidlo "Zmeniť ..." a vyberte požadované miesto na disku.

Poznámka: Odporúča sa držať sa jedného spoločného umiestnenia pre všetky priečinky s rôzne verzie JRE. To znamená, že štruktúra zdieľaného priečinka je nasledovná:

Potom stlačíme tlačidlo „Ďalej“.

Druhá fáza: nastavenie premenné prostredia
Aby programovací systém vedel, ktorý jdk má štandardne používať pre svoje programy a operačný systém dokázal rozpoznať súbory java, je potrebné v našom operačnom systéme nastaviť systémové premenné.
Ak to chcete urobiť v systéme Windows 7, musíte vykonať nasledujúce kroky:

1) Prejdite na nasledujúce nastavenia:
Tlačidlo Štart -> pravým tlačidlom myši kliknite na „Počítač“ -> „Vlastnosti“ -> „ Extra možnosti prostredia “-> karta„ Rozšírené “-> tlačidlo„ Premenné prostredia ... “

2) V zozname „Systémové premenné“ kliknite na tlačidlo „Vytvoriť“

3) Zadajte požadované údaje a kliknite na tlačidlo „OK“:
Názov premennej JAVA_HOME
Variabilná hodnota<путь к папке, куда устанавливалось JDK(не JRE!)>

4) V zozname systémových premenných nájdite premennú „Cesta“, vyberte ju a kliknite na tlačidlo „Zmeniť“.

5) Prejdite na koniec poľa „Hodnota premennej“ (nič nevymažte !!!), pridajte nasledujúci text a kliknite na tlačidlo „OK“:
;% JAVA_HOME% \ bin \

6) V okne Premenné prostredia kliknite na tlačidlo OK, potom na kartu Rozšírené a reštartujte počítač.


Kapitola: IDE (Integrované vývojové prostredie) „IntelliJ Idea“ - Integrované vývojové prostredie (programovací systém) „IntelliJ Idea“

„IntelliJ Idea“ je jedným z najbežnejších programovacích systémov Java. Je užívateľsky príjemný a má mnoho nástrojov, ktoré uľahčujú prácu programátora. Medzi nepochybné výhody patrí cenovo dostupný bezplatné verzie tohto vývojového prostredia na internete.

Poznámka. Pojem IDE (integrované vývojové prostredie) je identický s pojmom „programovací systém“, ale v profesionálnom prostredí sa používa častejšie.

Kde môžem získať „IntelliJ Idea“?
Toto IDE je možné stiahnuť z oficiálnej webovej stránky JetBrains. Ak to chcete urobiť, musíte najskôr do akéhokoľvek internetového vyhľadávacieho nástroja zadať nasledujúce hľadané slová: „Intellij Idea“. Prvá stránka v zobrazenom zozname je naša.