PROGRAMOVANIE MOVA A YOGO VIDI

Jazykové programovanie je formálny znakový systém určený na zaznamenávanie počítačových programov. Jazykové programovanie znamená súbor lexikálnych, syntaktických a sémantických pravidiel, ktoré definujú vonkajší pohľad programy a činnosti, ktoré váš počítač (počítač) spúšťa pod vašou kontrolou.

Problém spočíva v tom, že počítač obsahuje iba 1 a 0: skúste povedať len 0 a 1, poviete menej ako dve nové veci. 😉. Ak chcete hovoriť s počítačom, musíte použiť možnosť „preniesť“. Existuje veľa „dopravcov“ a každý „prepravca“ má svoj vlastný jazyk. Týmto spôsobom nebudete písať v jazyku počítača, ale v jazyku „prenos“. Preklad, ktorému rozumiete, prevedie všetko na 0 a 1, čo je počítaču úplne zrozumiteľné.

S počítačom neprebieha žiadna diskusia, iba monológ. Sme vodcovia a dostávame tresty. Musíte byť v poriadku. Tieto príkazy sa nazývajú inštrukcie. V programe je teda postupnosť inštrukcií, ako napr.

  • Zobrazuje oblasť, do ktorej môžete zadať svoje meno.
  • Akonáhle používateľ stlačí tlačidlo „zatvoriť“, program sa zatvorí.
Vidíte, pokyny sú jasné. Počítač presne vie, čo má robiť.

Vysokokvalitné jazykové programovanie - jazykové programovanie, vyvinuté pre rýchlosť a jednoduchosť použitia programátorom. Hlavnou myšlienkou jazyka na vysokej úrovni je abstrakcia, aby sa zaviedli sémantické konštrukcie, stručne opíšte také dátové štruktúry a operácie s nimi, ktorých popisy v strojovom kóde (alebo inom nízkoúrovňovom programovaní) sú dlhé a zložité na pochopenie. nnya.

Ako sa interpretuje jazyk?

Naše programovanie nám umožňuje napísať všetky tieto inštrukcie v mojom vlastnom, inteligentnom „preklade“. Potom ich prevod transformuje na 0 a 1, inteligentne a prepočítané počítačom. Celá táto postupnosť inštrukcií sa nazýva „výstupný kód“.


V zásade existujú 2 typy „filmov“. Os dva sú hlavné prevádzkové režimy. Filmy, ktoré sú interpretované kompilovanými filmami. . Jazyk sa tlmočí – jazyk, v ktorom sa číta a prekladá množstvo pokynov na preklad. Okrem toho je tlmočník zodpovedný za prístup k výstupnému kódu.

Nízkoúrovňové jazykové programovanie (low-level language programming) je nízkoúrovňové jazykové programovanie, ktoré má blízko k programovaniu priamo v strojových kódoch vicorizovaného reálneho alebo virtuálneho (napríklad Java, Microsoft .NET) procesora. Ak chcete priradiť strojové príkazy, musíte použiť mnemotechnické priradenia. To vám umožňuje zapamätať si príkazy nie pozeraním sa na postupnosť dvojitých núl a jednotiek, ale pozeraním sa na slová, ktoré sú rýchlo zrozumiteľné v ľudskom jazyku (vrátane angličtiny).

Aká je kompilácia jazyka?

Takto môžeme odhaliť všetko. Tento diagram nám veľa ukazuje. Takže je ľahké to pochopiť. Riadky sa čítajú a prenášajú vo svete nevyhnutnosti, výstupný kód je vinný z prítomnosti na počítači, tlmočník je vinný aj z prítomnosti na počítači. Z mojich kompilácií je to iné. Rozrobník softvérová bezpečnosť Obsahuje operáciu nazývanú kompilácia. Táto operácia, vytvorená pomocou špeciálneho softvéru nazývaného „kompilátor“, konvertuje všetok výstupný kód na strojový kód.

PROGRAMOVANIE FILMOV Z NÍZKA RIEKY

Prvé počítače museli byť naprogramované dvojitými strojovými kódmi. Programovanie týmto spôsobom je však namáhavá a náročná úloha. Na zjednodušenie tejto úlohy sa začalo objavovať nízkoúrovňové programovanie jazykov, ktoré umožňovalo zadávať strojové príkazy zrozumiteľnejším spôsobom pre ľudské oči. Na transformáciu ich dvojitého kódu boli vytvorené špeciálne prekladateľské programy.

Interpretácia jazyka alebo kompilácie: aké sú dôsledky?

Na spustenie softvéru na vašom počítači potrebujete iba tento súbor. Os diagramu, ktorá to všetko zhŕňa. Zakaždým, keď vývojár upraví softvérový program, musí byť program prekompilovaný. Výklady jazyka, kompilácie jazyka: zášť má svoje výhody a zášť má svoje nedostatky.

Výhodou je interpretovať jeho mobilitu tak, aby sa jeho funkčnosť dala použiť na rôznych typoch. Na druhej strane, hlavným problémom je interpretácia vašej likvidity. Efektívne, ako ste povedali, tlmočník prekladá výstupný kód v riadkoch, čo trvá dosť hodinu. Jazyk bol trochu viac interpretovaný a jazyk bol trochu viac skompilovaný. Ak pošlete výstupný kód do počítača, na ktorom bude spustený, bezpečnostný program bude menej chránený pred kopírovaním a výstupný kód sa môže zmeniť.

Obr.1. Pažba strojového kódu a údajov v jazyku symbolických inštrukcií

Prekladatelia sa delia na:

    kompilátory - konvertujú text programu na strojový kód, ktorý je možné uložiť a následne skompilovať bez kompilátora (napríklad zreťazenie súborov s príponami *.exe);

    Tlmočníci – konvertujú časti programov do strojového kódu, dokončia a potom prejdú na ďalšiu časť. V tomto prípade sa pri každom napísaní programu použije tlmočník.

    Vďaka tomu budú efektívnejšie z hľadiska rýchlosti a funkčnosti. A poďme sa rozhodnúť, že budeme úplne kompletní a „zmixujeme“ jazyk. Tieto slová sú zostavené bajtovým kódom a tento bajtový kód bude interpretovaný na vzdialený počítač. Pozrime sa na inú časť tohto článku.

    V Bulharsku si ich môžete dôkladne osvojiť a vybudovať si kariéru. Nie ste povinní byť v Spojených štátoch, aby ste eliminovali najnutnejšie jazykové programovanie do najmenších detailov – dostupné aj v Bulharsku. Éra programovania a inovácií v oblasti softvérovej bezpečnosti práve začína! Podľa údajov amerického štatistického úradu porastú pracovné miesta v IT v priebehu nasledujúcich siedmich rokov až o 8 %. Ak vezmem toto číslo v súčasnosti za tisíce pracovných miest, pokroky budú dosť viditeľné.

Pažbou nízkoúrovňového jazyka je assembler. Nízkoúrovňové jazyky sú orientované na konkrétny typ procesora a zohľadňujú jeho špecifiká, preto môže byť potrebné preniesť programy v assembleri na inú hardvérovú platformu. Existujú rozdiely v syntaxi programov pod rôznymi kompilátormi. Je pravda, že centrálne procesory pre počítače od AMD a Intel sú pomerne jednoduché a vyžadujú len málo špecifických príkazov. A špecializované procesory pre iné zariadenia, napríklad grafické karty, telefóny, majú rovnakú funkčnosť.

Pri kožných problémoch v danej oblasti informačných technológií Dobrá a dôsledná príprava je veľmi dôležitá. A bez ohľadu na nepopierateľnú dominanciu Ameriky a Bulharska je to vynikajúce miesto pre mladých a ambicióznych ľudí, aby získali expozíciu a kariéru v rýchlo rastúcom sektore. Ide o dynamickú a rýchlu expanziu IT sektora v Bulharsku, ktorá podnietila vytvorenie množstva špecializovaných počiatočných investícií. To je neklamný znak toho, že programovanie prebieha dnes a medzi týmito kordónmi.

Garantujeme vám, že nemáte žiadnu povinnosť cestovať do Spojených štátov amerických, aby ste získali úplné informácie. Preto môžu maloobchodníci uspokojiť potreby rôznych a početných kupujúcich. Môžete tiež vytvárať nové webové doplnky bez potreby ďalšieho programovania. Ak sa už venujete kariére programátora, je vo vašom záujme držať krok s aktuálnymi trendmi v programovaní, aby vaše portfólio služieb zostalo aktuálne aj v budúcnosti. Samozrejme, môžete sa naučiť film len tak pre zábavu.

úspechy

Pomocou nízkoúrovňových motorov sa vytvárajú efektívne a kompaktné programy, pretože softvér umožňuje prístup ku všetkým schopnostiam procesora.

nedostatočné

    Programátor, ktorý pracuje s nízkoúrovňovými jazykmi, musí byť vysoko kvalifikovaný a musí dobre rozumieť zariadeniam mikroprocesorového systému, pre ktorý je program vytvorený. Ak je teda program vytvorený pre počítač, je potrebné poznať zariadenia počítača a najmä zariadenia a funkcie jeho procesora;

    Dve slová majú význam, ktorý naznačuje obľúbenosť speváckeho programu. Index sa aktualizuje raz za mesiac a pozíciu jazyka kože určuje množstvo programov, ktoré s ním vo všeobecnosti pracujú, vyučujú kurzy týchto jazykov a, samozrejme, tiež Dovoľte mi povedať vám, koľko cudzincov je uvedenie tohto druhu úsilia na trh. Presná metodika je popísaná tu.

    Dobre, prejdime k samotnému rebríčku. Ale víno môže byť tiež použité ako náhrada za vytváranie prísad. Zmena vo výpočte rieky bola -0,70 %. Vďaka svojim schopnostiam je obľúbený aj na nových platformách. . Onedlho jeden chlapík zrazí rebríček a zastáva najvyššie miesto.

    výsledný program nie je možné preniesť do počítača alebo zariadenia s iným typom procesora;

    významná hodina pre vývoj skvelých a zložitých programov.

Nízkoúrovňové jazyky sa zvyčajne používajú na písanie malých systémových programov, ovládačov zariadení, stick modulov s neštandardným hardvérom, programovanie špecializovaných mikroprocesorov, ak medzi najdôležitejšie výhody patrí kompaktnosť, rýchlosť kódu a možnosť Existuje priamy prístup k hardvérovým zdrojom.

Bez ohľadu na to, ktorý jazyk chcete zdieľať, dá sa povedať spievaným spôsobom – programátor je zodpovedný za to, aby ho vzal do úvahy a poznal ho nový jazyk na rieke

Balík môže pozostávať z niekoľkých súborov a nemusí sa nevyhnutne riadiť pevným pravidlom pri pomenovaní samotných súborov a podadresárov, kdekoľvek sa nachádzajú. Dôvodom je opäť to, že názov balíka vychádza z katalógu, ktorý obsahuje výstupný kód balíka.

Uveďme si príklad, ako sa zostavujú knižnice. Princípom je zistiť všetky podadresáre robota, skontrolovať, aké súbory obsahujú a ako také sa súbory v skine extrahujú z balíka. Krok za krokom cez okno diskutujeme o implementácii balíka pongu. Je to jeden súbor. Bez ohľadu na súbor je tiež potrebné začať s balíkom. Ale import tu vyzerá inak, však?

Assembler je jazyk nízkej úrovne, ktorý je doteraz široko akceptovaný.

PROGRAMOVANIE FILMOV VYSOKÁ RIEKA

Môj prvý program vysokej hodnosti je rešpektovaný počítačový jazyk Plankalkül, ktorý vyvinul nemecký inžinier Konrad Zuse v rokoch 1942-1946. Do 2000 r, translue pre nyoye nebol na 2000 r, filmový prekladač lona rivnya є pp (programovateľná projekcia), rovnaký PP-1 a ubezpečenie z roku 1954 p, kamera PP-2 (1955 r 4th in the SVITI translator ) už optimalizuje zdroj aj editor, knižnicu štandardných postupov a PP translator pre EOM Strila-4 je tiež miestom a linkerom modulov. Široké používanie vysokokvalitných jazykov však začalo vývojom Fortranu a vývojom kompilátora pre tento jazyk (1957).

Keďže importujeme len jeden balík, môžeme si vybrať skrátený formulár; Ak chceme viac, pridáme okrúhle ramená a vrecúška rozdelíme bodkou. Keďže sme názov balíka nedostali, keďže nám ho dal autor, môžeme ho premenovať.

Importovať. Alebo môžete importovať všetky exporty z balíka do pomenovaného súboru. Názov novovytvoreného typu sa uvádza hneď za návrhom k typu. Pri tomto identifikátore, ako aj pri všetkom ostatnom, platí, že akonáhle sa začína od veľkého písmena, je exportovaný z balíka.

Kvalitní ľudia chcú nielen uľahčiť bremeno zložitého softvéru, ale aj zjednodušiť prenosnosť softvéru. Kombinácia rôznych prekladateľov a tlmočníkov zabezpečí, že programy napísané s pomocou špičkových vedcov budú prepojené s rôznymi operačné systémy a držbu, v čase, keď sa ich výstupný kód stratí, v ideálnom prípade nezmenený.

Tento typ je stopou jeho významu. Daný kód má dva typy – blok a pong. Rozhranie je abstraktný typ, čo znamená, že funkcie možno volať cez typy, ktoré implementujú rozhranie. Toto je prázdne rozhranie – na to nemusíte klikať na funkciu nad typom.

Toto rozhranie je konzistentné so všetkými typmi. Štruktúra je typ údajov, ktoré spájajú iné typy údajov s jedným objektom. Štruktúry sa skladajú z členov, z ktorých každý má svoj názov a typ. Pong uloží informácie o pingpongových stoloch. Metódy sú v rámci funkcie rozdelené tak, že medzi funkčným kľúčom a názvom metódy je explicitný „názov“ a typ hodnoty, ktorú môže metóda volať. Takto sú implementované rozhrania.

Tento druh izolácie vysokoúrovňových konceptov od hardvérovej implementácie počítača má okrem absencie výhod aj nevýhody. Zokrema, neumožňuje riadiť sa jednoduchými a presnými pokynmi, kým si ho neosvojíte. Programy napísané v jazykoch na vysokej úrovni sú pre programátora ľahšie zrozumiteľné, ale menej efektívne sú ich analógy, ktoré sa vytvárajú pomocou jazykov na nízkej úrovni. Jedným z dôsledkov toho bolo pridanie podpory pre tento a ďalší nízkoúrovňový jazyk (jazyk assembler) do množstva súčasných profesionálnych vysokoúrovňových programovacích jazykov.

To sa tu nema rozoberat, ale vymenovat, skor odporucit postup, aby zdokumentovala aka je, je krasnejsia, nech sa deje cokolvek. Nebojte sa o svoj hrtan, všetko je optimalizované, takže môžete zarobiť 100 000 bez mihnutia oka a nič sa nestane. Kanály sú metódou rozptyľovania horľavých materiálov.

Teraz môžeme tento význam s radosťou uznať. Operátor: = tieto dva výrazy je možné skomprimovať do jedného - v závislosti od typu rotácie výrazu pravostranný operátor zobrazí typ zmeny, „ozve sa“ a priradí mu hodnotu odhadovaného výrazu. Teraz je však vykonaná zmena, čo znamená, že dodatočný význam je už daný operátorom =.

použiť: C, C++, C#, Java, Python, PHP, Ruby, Perl, Pascal, Delphi, Lisp. Jazyky vysokej úrovne majú schopnosť pracovať so zložitými štruktúrami údajov. Väčšina z nich má integrovanú podporu pre typy reťazcov, objektov, vstupno-výstupných operácií súborov atď. Nevýhodou vysokoúrovňových jazykov je väčšia veľkosť programov na rovnakej úrovni ako nízkoúrovňové programy. Preto sa filmy na vysokej úrovni používajú hlavne na vývoj softvéru pre počítače a zariadenia, ktoré vyžadujú veľkú pamäť. A rôzne typy assemblerov sa používajú na programovanie iných zariadení, kde je veľkosť programov kritická.

Os je klasickejšia pre - nadpis sa skladá z troch častí, medzi ktorými je umiestnená bodka: peregin; mlyn;

na iterácii kože, práca na tele. Potom dokončíme tenis, takže ho pošleme na kanál Níl a odoberieme kanál, aby bolo po všetkom. To je všetko, čo môžeme vedieť v pong balíčku. Ako vždy, súbor začína označením balíka, do ktorého dátumu. Dovoz je tiež jasný. Program bol upravený, čo znamená určité parametre príkazový riadok

, Vikoristické nástroje s balíkom prápor.

Imperatívy sú založené na množstve dôležitých myšlienok, vrátane reprezentácie matematických vzorcov, konceptu dátového typu a vety o štrukturálnej transformácii.

Rozkazovací program s funkciou (podprogram). Programy v jazyku assembler môžu byť tiež zložené do podprogramu a v tom nie je nič nové, ale jazyky na vysokej úrovni vám umožňujú nemyslieť na také problémy, ako je organizovanie kliknutí, prenos výstupných údajov a vrátenie výsledkov. Popis funkcie pozostáva z názvu, zoznamu parametrov (výstupných údajov), typu výsledku a akcií vedúcich k požadovanému výsledku. Jednou z funkcií programu je hlavná, hlavná a program ADVOCACY.

Jednoduchým príkladom je funkcia, ktorá vypočíta sínus čísla. Dá sa to nazvať sin a výstupné dáta sú zložené z jedného reálneho čísla, výsledkom je rovnaké reálne číslo, ktoré je určené spôsobom sčítania segmentu daného neskresleného radu (alebo výstupom príkazu fsin príkazu fsin matematický spinový procesor).

Rozsah akcií, ktoré je možné vykonať uprostred funkcie, je dokonca obmedzený. Pozostáva z výpočtu vzorcových výrazov, volaní iných funkcií (ktoré spolu priamo nesúvisia – volania funkcií sú často zahrnuté vo výraze), priraďovania, rozkladu (skupina akcií, pri ktorých je menej pravdepodobné, že budú pravdivé i akčná myseľ) a cykly (skupina akcií, vytvorená viackrát, počet opakovaní leží v mysli). Akcie môžu byť uložené navzájom. Môžete si myslieť, že súprava čistenia a cyklov je príliš malá, ale nie je to tak. Je dokázané, že akýkoľvek algoritmus pridávania z funkčných blokov (na nízkej úrovni - aritmetické príkazy a príkazy na prenos dát), mentálne a bláznivé prechody je možné previesť na ekvivalentný algoritmus, pridávanie iba Turn of blokov - funkčných blokov, zarovnanie a cykly s revíziou myslite na to. Toto tvrdenie sformulovali Corrado Bohm a Giuseppe Jacopini „Vývojové diagramy, Turingove stroje a jazyky iba s dvoma pravidlami formovania“ (Communications of ACM, zväzok 9 / číslo 5 / máj, 1965).

Ak je tu potrebné uložiť medzivýsledky na vykonanie potrebných akcií, do stredu funkcie sa zadajú špeciálne popisy obsahujúce názvy premenných a prípadne ďalšie informácie. Adresy hlavnej pamäte RAM budú rozpoznané automaticky. V niektorých jazykoch môžu funkcie obsahovať aj určené konštanty a typy. V jazykoch podobných Pascalu je funkcia podobná programom a môže zahŕňať definíciu nielen konštánt, typov a iných funkcií.

Kolekcia údajov je zoznam názvov objektov. Tieto objekty sa nazývajú premenlivé. Niektoré stroje musia špecifikovať typ zmeny, čo znamená množstvo pamäte potrebnej na to a súbor operácií, na ktorých sa môže zúčastniť. Nie je to však také povinné, ako viete, v ktorých typ zmeny nie je špecifikovaný a možno ho zmeniť počas vykonávania programu.

Vaše programovanie poskytuje obmedzenú množinu preddefinovaných typov premenných a prostriedky na vytváranie nových typov. Predurčenie nasledujúcich typov:

    prirodzené a celé čísla rôznych číslic;

    čísla reči;

    symboly - písmená, čísla, aritmetické symboly atď.;

    reťazce znakov;

    logické významy;

    predvádzacie ponuky

K ďalším funkciám a operátorom možno pridať akcie s údajmi.

Napríklad v mov C nie sú definované symboly, riadky a logické hodnoty. Tento typ znakov je v skutočnosti krátky a umožňuje aritmetické operácie.

Nové typy vznikajú spojením viacerých prvkov rovnakého typu (pole, ktorého povrchový prvok nesie sériové číslo) alebo prvkov rôznych typov (štruktúra, povrchová vrstva svojho prvku má rovnaký obsah vlhkosti). Napríklad väčšina našich komplexných čísel nie je definovaná, ale možno ich určiť:

V niektorých jazykoch (napríklad v C++) možno na vytváranie typov použiť operátory hodnôt, čo umožňuje definovať typy premenných rovnakým spôsobom ako typy hodnôt premenných.

A ďalšie spôsoby vytvárania nových typov. Napríklad v jazyku Pascal je možné:

    typové rozsahy (za dodatočnou hodnotou priradenou rozsahu);

    typy nadinterpretácie (výskyt nadmernej interpretácie má možný význam);

    typy-viacnásobné

Na uloženie informácií o množine oprávnení ľubovoľných objektov možno použiť rôzne násobky typov. To isté možno urobiť pomocou ďalších zmien v celom type, ktorého zriadenie znamená prítomnosť podobných vlastností. Možno, vikoristannaya množiť pevnejšie na milosť programátora.

Rôzne programovanie a oblasti ich pôsobenia. Prednáška v Yandex

Náš prvý príspevok, v ktorom sme sa rozhodli venovať úplne základnej téme prednášku na túto tému, bol v Maly Shad. Noví stredoškoláci majú záujem o všetky druhy technológií, vzhľadom na špecifickosť prezentácie – prednáška poslúži najmä tým, ktorí s programovaním len začínajú a rozmýšľajú nad tým, akým smerom sa budú rozvíjať. Pre nich má Yandex kurz „Úvod do programovania (C++)“, ktorý je možné absolvovať na platforme Stepic.org.

Prednášajúci Michailo Gustokashin - kurátor akademických programov Yandex, riaditeľ Centra študentských olympiád na Fakulte informatiky Vysokej školy ekonomickej. Michailo z programu vyškolil desiatky víťazov a víťazov celoukrajinských olympiád.

V rámci prednášky sa dozvedáme, aké sú naše programy, ako sa volajú, ako vznikli a ktoré sú lepšie a horšie. Začnime trochu z histórie jazyka – ako sa objavili smrady, ako ľudia začali programovať, ako sa všetko vyvíjalo, čo sa teraz deje. Na druhej strane to, čo bude zničené, je úloha, ku ktorej by mal človek pristupovať, ako napríklad „vybrať si milovanú osobu a oddeliť spokojnosť od života“. Lektor trochu porozpráva aj o tom, ako sa všetko naučiť a potom sa pustiť do práce.

Ako predtým, nižšie je podrobný prepis prednášky, aby ste sa vedeli zorientovať.

História nášho programovania

Začnime od začiatku. Na samom začiatku počítače nemali klávesnice! Potom bolo všetko ešte horšie - nemali klávesnicu, obrazovku ani dierny štítok (tie maličkosti s malým alebo ničím iným). Očividne, keď tam dali tiene, tak tam svietili. Yakshto є dіrochka (alebo v skutočnosti nie) - to znamenalo nulu alebo jednotku. A programy sa v tej dobe písali pomocou strojových kódov – na každú operáciu v počítači (dodatočné, samozrejmé, zložitejšie operácie) existoval nejaký strojový kód. Tento kód si ľudia sami vybrali z tabuľky, všetky adresy v pamäti, všetko to vyklepali rukami a vložili do čítačky – a všetko bolo rešpektované. Prirodzene, práca programu bola melodicky, potom nie príliš užitočná - na vypracovanie detailov - as rozvojom vedy a techniky, prirodzene, začali prichádzať so všetkými druhmi „tsikavy“ vecí. Napríklad assembler (Assembler), ktorý už uľahčil život.

Ako ste sa cítili lepšie v živote? Namiesto toho, aby sme si pamätali, aký druh „očarujúceho“ kódu mal príkaz, boli obnovené všetky slová podobné „ľudskej“ angličtine – ako add alebo mov – a potom boli registre a pamäťové oblasti znovu vynájdené, nnі, s akoukoľvek potrebou vibračné operácie čchi. Je jasné, že myseľ si vyžadovala veľa úsilia, aby som si v hlave utriedila, v akom registri by sme sa mali nachádzať, aké zmeny boli vykonané a čo sa deje. Prečo sa to stalo? Pretože počítače boli „hlúpe“ a nedokázali pochopiť nič viac ako „rozumné“. Zozbieranie strojového kódu z assembleru si vyžaduje čas a pamäť (v tom čase jej bolo veľmi málo).

Krok za krokom sa ukázalo, že demontáž takýchto veľkých komplexných programov je ešte náročnejšia. Produktivita programátora v týchto tímoch bola extrémne nízka - napísal len niekoľko riadkov za deň (myšlienka) a riadok nerobil nič zvlášť dobre - iba aritmetické operácie. A ľudia chceli, aby sa ich jazyk viac podobal ľudskej reči, angličtine, aby bolo písanie programov jednoduchšie a lepšie zvládnuteľné. A ideme!

Staré a mŕtve filmy

Fortran sa stal jedným z prvých jazykov. Pred prejavom ich dierovali aj na dierne štítky – vo Fortrane boli špeciálne dierne štítky na dierovacie programy. Ak si vezmete tento Fortran naraz - podľa môjho názoru to bude stáť medzi 50-60 rubľov. Ak sa objavíte a pokúsite sa napísať niečo na niekoho iného, ​​budete úplne neakceptovaní, to vám garantujem! Dnešný Fortran stále žije, no stále je veľmi odlišný od toho, čo bolo predtým.

Iný jazyk - hneď napíšem jednu vec o tom, ako spievate a spievate, a potom vám na každom kroku hovoria o histórii programovania - to je COBOL. Toto je jazyk na písanie obchodných doplnkov. Čo sú obchodné doplnky? Niektoré transakcie v bankách boli stále písané v Cobole. Tu, samozrejme, nie je veľmi populárny. Myslím, že ako programátor nájdete veľkú silu na Kobole v Moskve. A keby to nebolo v Moskve, bola by to ešte vyššia cena. Bohužiaľ, je úžasné, že pred 10 rokmi bola viac ako polovica všetkého kódu napísaného ľudstvom napísaná v Cobole. A dodnes sa značná časť všetkých bankových transakcií spolieha na programy napísané v COBOL a ľudia stále píšu v COBOLE.

Ďalší „zábavný“ jazyk s názvom Algol (68. verzia, ktorá charakterizuje rieku jej vzniku). Toto je algoritmický jazyk. Prepáčte, je tam smrad, ale o smrad nám ani nejde. A prečo je naša exkurzia do starých čias a dobrých čias nevikoristické filmy Môžete skončiť a ísť ďalej, kým ešte nebudete nažive (a aktívne nažive).

Stari, ale živé filmy

Algol bol vynájdený v Európe a Fortran sa používal hlavne v štátoch - neexistujú veľké rozdiely. Aký je trend? Všetko bolo spočiatku komplikované a na napísanie by bolo potrebné, aj keď nie ste inžinier alebo elektrotechnik, aby ste pochopili, aké kontakty sú spojené a čo ešte potrebujete na programovanie. Potom bolo treba sedieť s listami a spomínať na spomienku, žasnúť. A krok za krokom bolo pre programátora všetko jednoduchšie, jednoduchšie, jednoduchšie a ešte jednoduchšie – ľudia museli menej premýšľať, ako by mohli pracovať viac automaticky. Približne na konci tohto obdobia (prednášajúci ukazuje na Algol a Kobol) sa začínajú objavovať jazyky, v ktorých zmysly „prežili“ dodnes.

ZÁKLADNÉ. Je možné, že ľudia stále píšu v tomto novom jazyku, aspoň verím, že v niektorých záložkách začnú písať v QBasic. To je modrý koniec, kde je napísané „+1989“. Zagalom, „shchosili“ nažive! Bol vynájdený ako jazyk pre neprogramátorov. V tom čase mal programátor takú vysoko špecializovanú profesiu. A tu vám povedia: „Naša os je skvelý jazyk, Basic, a ak ste rozumný človek, napíšte do neho program – je to jednoduché.“ Zase ten Basic a súčasný Basic - je tam veľký rozdiel. Všetky osi radov očíslované od 10, všetko GOTO a ďalšie veci - smrady až do dnešného Basicu sa už nezdajú byť relevantné a až do 89. skaly Basek sa smrady zdajú byť málo únosné.

Ďalším slávnym príbehom je Pascalov jazyk, ktorý je všeobecne známy na univerzitách, najmä v Rusku a v regiónoch Sovietskeho zväzu. Z väčšej časti bol a bude víťazom navchalny jazyk. Každý iný svet má menšiu expanziu, ale stále žije a prosperuje. Takýmto človekom je Vert – os učenia, teoretik. Po tom, čo sa zúčastnil vyjednávaného Algolu, si nezaslúžil to, čo sa stalo, a prišiel s vlastným jazykom - Pascalom. A potom to vzala spoločnosť Borland (a pred toľkými ďalšími spoločnosťami - Apple bol zapojený, keď na to príde) a schmatla všetko. Mal krásnu teóriu, strunu - "všetko bude dobré" - ale smrad vzal a napchal tam to, čo ľudia potrebujú k práci. No nevyšlo to tak krásne, ako sme chceli.

zistím to. Vymysleli ho inžinieri. Rovnako ako Pascal vynašiel učenie, Si prišiel s Kernighanom a Ritchiem, ktorí pracovali ako inžinieri v Bell. Ako sa to stalo?

V tom jazyku sa nedalo napísať niečo systémové (lektor učí vo Fortrane, COBOL, Algol). Čo je „systematické“? Napríklad operačný systém, ovládače, čokoľvek. Tieto slová boli určené pre matematické štúdiá, pre obchodné štúdiá, pre všetko podobné. A všetci ostatní písali do zhromaždenia. Boli tam všelijaké reči, hneď zomreli, takže jazyk sa neobjavil priamo od Assemblera, ale cez nejaké stredné reči.

Aký to má zmysel?

Kernighan a Ritchie radi hrali hru Asteroids - vesmírna loď letí a sú tam asteroidy, strieľajú na ne a rozpadnú sa. Kedysi mali server, kde hrali, ale bolo tam veľa ľudí a hra sa hrala. A tu vo svojej kancelárii ukázali, že majú taký počítač, o ktorý sa nikto nestará. Vyskytol sa problém - architektúra bola iná a hra bola napísaná v jazyku assembler.

Nové funkcie samozrejme prepísali, aby sa mohli hrať na niečom novom. To ich priviedlo k myšlienke, že by nebolo veľmi rozumné prepisovať skin na novú architektúru. A rozhodli sa napísať jazyk vysokej kvality, ktorý by bol vhodný na programovanie systému, v ktorom by bolo možné spravovať pamäť, v ktorom by bolo možné pochopiť, čo robiť a ako pristupovať k určitým častiam pamäte. A tak sa objavil jazyk Si, ktorý spôsobil majestátny prílev do všetkého. Všetci (prednášajúci ukazuje na Algol, Fortran a ďalšie jazykové znalosti) mali veľký nával a os C - len tak...

Jedným z prvých objavov je jazyk C++. Mova Existuje veľké množstvo nedostatkov (no, je to skvelé) - na tomto môžete robiť všetko, vrátane streľby do nohy, streľby do nohy pomocou stopy, do druhej nohy, streľby do rovnakej nohy na druhej nohe, v zagalnom - čo je veľmi upratané. Ale pri tomto druhu architektonickej reči je ťažké váhať – opäť, ako na zhromaždení, musíme celú hodinu premýšľať, čo a ako si pamätáme; tam celá hodina „tečie“ tam, kde je pamäť – to, čo sme videli, zabudli vidieť, videli nesprávne, preliezli medzi spomienkami, v pozadí – vyhrabali kopu problémov.

C++ začína od začiatku ako doplnok k jazyku C, ktorý uľahčí učenie. V tú hodinu sa stalo módou pre gesto ri - žito, že sa ľudia chúlili, všetko je schopné opísať všetko vo Vygudi ierarhії, Tobto - є máte m'yachik (abstrakt), vid nyogo Popadkovo, futbalový m'yach , volejbal m'yach, oprášil jednu abstraktnú loptu. Potom bolo módou, že „všetko napíšeme naraz do toho, čo sa javí ako hierarchia, a všetko bude dobré, život bude príjemný, všetko sa stane úžasným a všetko“. C++ v akomkoľvek zmysle implementovalo tento objektovo orientovaný prístup - nebol to však prvý jazyk objektovo orientovaného programovania, ale stal sa populárnym a začali sa v ňom objavovať všetky možné funkcie. Zatiaľ čo C++ ušetril časť rovnakej zložitosti (v tom čase) z môjho C, program je napísaný v C v 99% prípadov úspešnej kompilácie ako C++ - rovnakým spôsobom. Toto bolo určené na uľahčenie prechodu z C na C++.

Krém objektívny prístup(V C++) sa rýchlo objavila štandardná knižnica šablón (STL). Myslím, že v škole tí, ktorí už Pascal čítali, ukázali, že v prvom rade nemáte zdedené triedenie (v starodávnom, modrom Borland Pascal, teraz už v r. aktuálne verzie) - je tam príklad (zdroj) triedenia, ktorý je možné skopírovať a vložiť. Ak tu chcete zoradiť celé čísla, tu chcete čísla reči a potom sú riadky, ktoré sa dajú navzájom porovnávať, museli ste napísať tri rôzne druhy, ktoré sú úplne rovnaké, len majú odlišné typy pocty To nie je veľmi dobré a šablóny, ktoré neboli hneď zavedené v C++, tento problém výrazne zmiernili. Takže ste mali abstraktný program, aby ste si ho mohli navzájom porovnávať a úspešne ho triediť.

Filmové scenáre z 90. rokov

Len o hodinu neskôr, bez toho, aby sme stáli na mieste, v 80. rokoch sa stále dialo veľa dobrých vecí. Ale tu, na prelome 80. a 90. rokov, sa počítače stali takými garni, že teraz bolo možné používať veľmi zvláštne až neúčinné reči. Zokrem, to boli naskriptované filmy, ktoré neboli kompilované do strojového kódu, ale interpretované. BASIC sa interpretuje vždy, ale tieto skriptovacie jazyky sa používajú hlavne na spracovanie textov - napríklad Perl, Python (aj keď nie sú veľmi známe), PHP, Ruby - to sú osi týchto skriptovacích jazykov, v oboch a v inych smeroch rypem zit doteraz (vsetky sa zacali objavovat pred rokom 2000, ale ovela skor).

Poďme si ich trochu prejsť, pretože tieto špecifické reči sú bohato devikoristické. Aká je myšlienka? Ak nekompilujeme, môžeme si dovoliť oveľa viac. Napríklad, program sa môže pozrieť na svoj kód a nejako sa stať sebeckým; Vie, že je v tom veľa práce a dá sa za to zarobiť veľa peňazí.

Perl sa používa na spracovanie textov - zároveň sa v počítačoch rozmohla pamäť, takže si tam môžete vložiť ľubovoľný text a pracovať s ním zaujímavejšie (napríklad zapamätať si slová, niečo hľadať). Ale podľa môjho názoru ho navrhli ľudia, ktorí boli trochu mimo, takže o ňom hovoria toto: „Či už je to sada symbolov, hláskovanie alebo správny program v Perle.“ Podľa mňa sa na to dá len písať, ale nie čítať. Ak žasnem nad Pearlovým kódom a pokúsim sa ho pochopiť, nerozumiem ničomu. Možno, keby som ho poznal lepšie, bol by som sa spamätal, ale keby som z týchto ľudí vycítil, že sa ešte potopia, zdalo by sa, že by bolo jednoduchšie to znova prepísať. Takže programy sú krátke a je naozaj jednoduchšie ich znova prepísať, stačí prejsť, čo tam je, a opraviť to.

Približne v tom čase, v polovici 90. rokov, sa objavil internet. Spočiatku tam bola pošta, stránky so statickým HTML, ale ľudia tam chceli pridať nejakú dynamiku, aby bolo u nás všetko dynamické, formuláre, ktoré sa dajú zapamätať, fungujúce knihy hostí atď. Zrejme si to vyžiadalo nejaký druh interakcie, prišli s protokolom na interakciu a hlavne s vygenerovaním týchto statických (inteligentných) stránok, ktoré budú v reakcii na vašu požiadavku „porušovať“.

Žiaľ, v tej chvíli nebolo pre Pearl nič vhodné. Písať kompendium v ​​čistom Si alebo C++ by bol zlý nápad. A kvôli dostupnosti toho najlepšieho, čo v tú hodinu (a trvalo dlho), sa Pearl stal obľúbeným jazykom pre vývoj webových aplikácií. Samozrejme, rozsah nie je porovnateľný s tým, čo sa deje v súčasnosti.

PHP sa ukázalo ako... vipadkovo. Jedna osoba na tom prestala pracovať a prestala robiť svoju prácu – keďže sa vzdala svojej strany príbehu, zostala s niekým Kniha návštev ako, teraz, ako veci. A napísal som sadu makier pre Perl, ktoré boli podobné Si, pretože som to napísal na Si, len preto, že to bolo pre mňa také jednoduché. Nazval som to Osobná domovská stránka. Po zdieľaní a povedali: „Ľudia, čudujte sa tomu, čo som napísal, všetko je tu oveľa inteligentnejšie a môžete to upraviť na Pearl.“ A ľudia si to zaslúžili.

Potom to hodil doprava. Mimochodom, v dôsledku toho PHP ožilo a stalo sa oveľa populárnejším ako Perl. Bohužiaľ, os jeho „pôrodnej traumy“ (myšlienka, ako nastaviť makrá pre Pearl) s ním zohrala zlú úlohu. Jazyk Viyshov je úžasný. Vyvinulo sa to teda samo, bez toho, aby niekoho navrhoval, nikto neadministroval vývojový proces (ani firma, ani nikto), ale bolo tu množstvo skupín, ktorým zlúpli kožu tí, ktorí sa o to zaslúžili. Vo výsledku sa tam funkcie volajú inak, nechýba štýl, všetko je cez kreslá, náhodne, nastavenia sem tam ležia a nie je ani jasné, ako bude všetko fungovať. Potom si môžete sadnúť a o dva roky písať v PHP, len preto, že si to myslíte.

Python a Ruby: Ruby je v súčasnosti menej populárny, zdá sa, že Python je lepší ako ostatné, porozprávajme sa o tom neskôr. Je zrejmé, že v tom čase existovali (prednášajúci používa Perl, Python, Ruby, PHP) vysoko špecializované jazyky na vysoko špecializované účely. V krajnom prípade bez programovania systému je pre biznis logiku potrebné, aby na nich v tom čase nikto nepísal a nedalo sa pri tom veľa pracovať.

Kompilované filmy z 90. rokov

Vyrazíme približne v rovnakom čase, ale iným smerom. V tom čase sa u nás C++ prakticky používal na všetko, čo bolo potrebné napísať nie pre internet, nie na spracovanie textu, ale na jednoduché doplnky, na operačné systémy, na hry - vo všeobecnosti na čokoľvek účel. Ale C++ - toto je naozaj hrozný jazyk. prečo? Pretože v prvom rade boli všetky Siove problémy vyriešené prostredníctvom portálu. Tam sa dalo zvyknúť na milión rôznych metód, tie isté, ktoré boli v C (prirodzene, do C++ pribudli nové metódy). V tomto prípade, ak napíšete všetko dobre a správne, ako to zamýšľali autori C++, potom, samozrejme, už nebolo možné použiť staré metódy a bez ohľadu na to, ako ich je menej. Prote, má veľmi nádherný objektový model. Rozbittya programy na module, na veci, ktoré pochádzajú z C (vrátane, môžete písať v C alebo C ++ - v skutočnosti to bolo určené na jednoduché vloženie textu knižnice do vášho programu, ako výsledok, ak napíšte veľa zahrnutých, máte všetko - je to také „primitívne“, ako to bolo od samého začiatku - všetko vložíte do jedného súboru a potom sa všetko rýchlo skompiluje, takže môžete pokračovať znova a znova stať sa ešte krajším.

Mimochodom, C++ má veľa nedostatkov. Kvalifikácia programátora na písanie v C++ musí byť vysoká a takéto programy sú drahé (a príprava, ba čo viac, je ťažké nájsť programátorov na trhu, musíte ich bohato zaplatiť a Galі tse nie je na právo...). A naše počítače sú stále viac rešpektované, sú stále lacnejšie, ľudia si kupujú nové počítače a chcú viac doplnkov, viac hier pre telefón a vo všeobecnosti viac radosti.

Takto sa javila Java. Je v tom aj skvelý príbeh, keďže tento film dostal svoje meno. Sú tam programy, celú hodinu pijú kava a v tú hodinu bolo módne piť kava, čo je na ostrove Jáva. Mova zamislyuvavsya yak mov pre použitie zariadení, zokrema pre kavi-stroj. Tak sa to začalo volať...
Čo sa s ním stalo, čo v ňom bol granát a prečo si získal takú obľubu? V prvom rade sa zvonku začal objavovať zápach z porážky Sishnogo. Neexistujú žiadne náznaky, existuje oveľa menej spôsobov, ako si vystreliť každú časť tela a všetko zničiť. Inak v pláne zverejnili oveľa viac nových nápadov objektový model- zatiaľ čo C++ sa objavilo podstatne skôr, menej Java a archaickejší, „divoký“ objektový model. No a tu (prednášajúci hovorí v Jave) to bolo ešte premyslenejšie a teoreticky ľudia rozmýšľali a v praxi sa postavili a urobili všetko oveľa lepšie.

Nájdem to, po tretie. Naše Java programy neboli skompilované do strojového kódu, ale do kódu pre virtuálny stroj. Takže ste mali virtuálny stroj (VM) JVM - Java. Vaše programy boli zhromaždené uprostred prezentácie a potom už boli stroje zmontované. čo to dalo? V prvom rade to drelo, inak to bolo ústa s pamäťou so strašnou silou, a po tretie, bolo to prenosné kamkoľvek (teoreticky) - či už do variča na kávu, alebo do mlynčeka, alebo do počítača, alebo do mobilný telefón . Na jednej strane je dobré, že ste jednoducho napísali implementáciu virtuálneho stroja a potom všade spúšťate svoje Java programy. Ale na druhej strane je zlé, že na tom istom telefóne bolo málo pamäte, nízka produktivita a všetko stále začínalo byť nudné a mrzuté.

Ale navіt nestojí za problémy, prečo ste prišli s týmto nápadom? Java Java prišla s nápadom znížiť výhody pre kvalifikáciu programátorov. Takže môžu písať ďalšie špinavé programy dobré programy v Jave, pretože vám neumožňuje písať odpadkové programy- neexistujú žiadne náklady na písanie programov zlým spôsobom. Tam môžete písať len dobré veci, programy. Veľa šťastia, múdrym tvorcom jazyka.

Takže v C, v C ++, v Pythone, čo je dôvod, prečo môžeme ľahko vytvoriť motorizovaný odhad pre náš projekt, kde všetci ležíme vpredu, zbierame ho v priebehu rokov a čo ešte. V Jave je tiež možné vytvoriť smitnik, ale na to je potrebné nahlásiť aj yakihos zusil. Takže podľa mysle to nie je „smitnik“, ktorý tam vychádza, existujú ďalšie problémy, ktoré tam každý zdedil a zdedil - v skrytom rade na jednu osmislenu je desať nepotrebných osmiseleniyas. Potom môže stredne kvalifikovaný programátor napísať produkt s nízkym obsahom kyselín.
Možno sme sa dostali na koniec. Teraz máme to, čo sa objavilo - toto je .Net (bude zverejnený), no, nezabudnime nás volať C # (možno rovnako [prednášajúci ukazuje na Javu], potom sú rozdiely v detailoch, ktorým smerom vyberiete si medzi nimi - čudujte sa, zaplaťte viac halierov).

A ešte jedna vec - JavaScript. Dokiaľ nie je pripojenie film java, Keď sa objavili v rovnakých ústach - slovo bolo módne, mali licenciu ochranná známka, Shchob vikorystuvati.

Prečo do pekla potrebuješ zvyšovať svoj rešpekt? (Lektor kreslí šípky z C++ do Javy, .Net, C#, JavaScript a PHP). Ak chcete napísať jednoduchý program v jednom z týchto jazykov a v mnohých ďalších – keďže ovládate C++, vo všeobecnosti nepotrebujete vedieť nič iné – zoberiete a napíšete v C++ a potom pridáte doláre klas, Stále pracujete na vŕtačke a začínate pracovať na niečom, čo je najlepšie (lektor ukazuje na jazyk pred šípkami umiestnenými pod C ++). Potom je smrad hranične podobný v niektorých jednoduchých rečiach. Ak máte prácu v škole, primárnu prácu atď. (NENAVRHUJETE veľký projekt - máte jeden súbor, ktorý číta čísla, tlačí čísla v konzole, čo ešte robiť), potom medzi nimi nie je žiadny rozdiel movami. Je jasné, že JavaScript a PHP sú špecializované, majú všetko inak. A tu (prednášajúci hovorí v jazyku Java a C #) je veľmi malý rozdiel.

Odteraz sa objavujú všelijaké iné hromové reči, no nevedomky – buď budú žiť, alebo úspešne zomrú. Prečo hneď, pre tých, ktorí majú na starosti chamtivosť?

Vyberte si svoj obľúbený jazyk

Povedzme, že stojíte pred úlohou napísať ovládač pre grafickú kartu. Aký druh bane dnes použijete? (Vigny z publika: Java!) Prečo... Java je skvelá, ale prečo nie v Rubi alebo v PHP? (Zdá sa, že prednášajúci používa sarkazmus.)

nízkoúrovňové programovanie

Ak napíšete niečo nízkoúrovňové, tak krátky výber- tse Sі, ale vzagali niečo I chogos chuv (ale nie bachiv), scho C ++ zastosovať za toto. Ale tomu neverím, pretože v C je možné jasne ovládať - keď ste dali toľko bajtov pamäte, znamená to, že tam bude toľko bajtov. Ako je riadok implementovaný v C++ (STL)? No, nejako sa to implementovalo. A v dôsledku toho nevieme, ako alebo čo sa tam deje; môže nám dôjsť pamäť na našej grafickej karte alebo sa môže stať niečo iné. Preto je stále nažive a neumiera, na to sa dokonale hodí rovnaká úloha programovania systému ako predtým - napísať operačný systém, napísať ovládače, napísať niečo iné. Okrem toho sa teraz objavujú najrôznejšie zariadenia (internet prejavov hovorí, že v budúcnosti), ktoré žijú na batérie (a, prirodzene, budú ich milióny, pričom všetky sa budú motať okolo tohto internetu prejavov), smrad bude dlhšia lacnejšia a silnejšia malá elektrická práca. Zrejme tam budú 2 KB pamäte, 5 kHz procesor, no, je jasné, že to musíte pokaziť virtuálny prístroj Pretože skriptovací jazyk nebude čoskoro k dispozícii, znamená to, že ho budem musieť napísať v C. Zároveň napríklad výpočty na grafickej karte (OpenCL alebo akákoľvek iná technológia) - neexistuje spôsob, ako prísť s novým jazykom na písanie programov pre ne - je tam veľa problémov. Ľudia sa už len pýtajú, čo je nové? Formálne tse, melodicky, tezh, v yakomas sensesi si.

Webové programovanie

Povedzme, že chcete napísať nový Facebook ( sociálne opatrenie). Na čo budeš písať? (Hovorte o HTML a CSS z publika.) HTML, CSS sú dizajn a chceme, aby bolo možné pridávať fotografie, priateľov a komentáre.

Čo sa týka skriptovej časti, tie, ktoré sa vykonajú na strane klienta, sú JavaScript. Okrem toho sa niekedy JavaScript vygeneruje v inom jazyku a zamrzne (stane sa, že skript sa vygeneruje ..., takže je jednoduchšie spracovať akékoľvek zmeny v logike).

Prekvapivo sa na Facebooku veľa píše v PHP a mnoho ďalších skvelých projektov. Mal som, samozrejme, možnosť napísať si vlastné prejavy tak, aby to stále normálne fungovalo, a nie ako „bummer“ to bolo rozdrvené, ale smrady by sa vkrádali dovnútra. V zásade je menej dôležité, na čom píšete, okrem Perlu. Tu a teraz je jasné, že nikto nemôže napísať nič pre internet od nuly. Každý napíše nejaký rámec alebo čokoľvek iné. Internetový obchod?

Vytvorili sme rámec pre internetový obchod – to je všetko, napísali sme internetový obchod.

Potom chcete napísať nejaký nudný dodatok pre banku. Alebo napríklad máte niekoho, kto predáva semená? Možno ste si raz kúpili telefón alebo aj teraz a povedali vám: „Systém visí, nemôžeme nič zarobiť.“ Prečo píšeš takýto dodatok? (Vigny z publika o Pythone) Takto sa v Pythone písať nedá, tak čo?! Pre firmu nie je dobré písať v Pythone. prečo? Pretože ak píšete v Pythone, počas procesu písania nevyhnutne objavíte množstvo chýb. Python všetko dynamicky píše a môžete tam dostať chybu v takej situácii, že nebudete schopní pochopiť, že vytvorili os a pokriveli koristuvach, takže ste všetci zlí amalos. V Pythone je lepšie písať malé skripty pre seba - pochopíte, čo sa deje a čo sa tam deje. No, akosi nie je na škodu nechať sa vyhodiť: chcete byť vyhodení skôr ako vaši konkurenti, no a čo, časom vás to poserie. Napísali ste to v Pythone a to je všetko – dostali ste sa na trh. A ak niečo píšete dlho, napríklad bankový dodatok je taký (aby ste mali vychvaľované kredity, niečo iné) - píšete to v Jave. Lebo napravo je vážna oblasť, papiere, groše, doklady, čo sa deje, ale nemôžeš sa takto pokaziť, lebo všetko sa pokazí, inak sa vytvoria ľudia - ich peniaze odišli a nikam neodišli, lebo pri v určitom bode sa zmenil počet vášho riadku alebo len tak. Takže to znamená, že to metodicky preberieš v Jave a píšeš, píšeš... No, na .Net sa v princípe stávajú rovnaké situácie. Tam, samozrejme, môžete naraziť na problémy, ale vaše sebavedomie je o niečo nižšie.

Programovanie pre armádu, letecký priemysel

A teraz, aby ste pochopili, že vás plánovali poslať do Mesiaca na rakete. Čo by ste chceli robiť, keby ste napísali kód, ktorý riadi raketové motory? čudujme sa. Os, melodicky (prednášajúci demonštruje v jazyku Perl, Python, PHP, Ruby), nie je dobrá - bľabotá, čo sa deje, no, nevadilo by mi lietať na takejto rakete. V C++? Aby som bol úprimný, neveril by som tomu, pretože existuje príliš veľa spôsobov, ako sa dostať do C++. Ak ste tam vo vesmíre, nie je to dobré.

Možno bootovať v Jave? Všetko tam dostanete spoľahlivo a architektúra je dobrá, žiadne divoké typy, žiadne prekračovanie hraníc našich spomienok. Povedzme, že nastala najdôležitejšia chvíľa a naša Java sa rozhodla vziať za nás zásluhu. Musíme pristáť, galmuvat, a ona hovorí: "Nie, odpad sa bude zbierať." Zagalom, len nie toľko.

Aby som bol úprimný, bol by som radšej, keby tento program napísali v Pascale. Pascal mi, samozrejme, až tak nechutí, ale v takomto jedle je to škoda, bolo by to ešte skvelé.

Vikoristannya vidraza dekilkokh mov pre vývoj softvéru

No čo k tomu treba povedať aktuálny jazyk. Je toľko projektov, že sa nedokážu živiť len jedným jazykom, takže čiastočne žijú jedným jazykom, niektoré iným a niektoré tretím. Napríklad, ak máte nejaký webový doplnok, ktorý zhromažďuje divoké množstvo informácií, uložených na diskoch (ale nie v databázach, tie sú také veľké, že tam nie je žiadna databáza, ako je už napísané) melodicky napísaných nejakým nízkym -úroveň C , Divoko rýchlo zapisovať na disk a tak ďalej. Prirodzene, napísať celý projekt v C nie je jednoduché. Možno existuje nejaká stredná logika napísaná v jazyku Java, ktorá sa pre mnohé zvieratá mení na systémovú funkciu. No, frontend (prečo by ste sa mali čudovať), v prvom rade je už napísaný na čomkoľvek, na akomkoľvek druhu skriptov, na niečom, čo môže prehliadač priamo navigovať (JavaScript). A všetko je zároveň živé a úspešne interagujúce.

Rozvoj všemožných talentov, mnohých skvelých, o ktoré sa ľudia niekedy musia obávať? Vezmú to a napíšu prototyp v Pythone (tak bude všetko fungovať), hodia ho a premyslia architektúru. V New je naozaj ľahké písať - dali dohromady prototyp, experimentovali s ním a povedali: „Wow! Axle je tak cool! » Úplne som to prepísal. Zdalo by sa, že pracovali dvakrát, takže to trvalo dvakrát dlhšie (no, opäť). Nie! Často sa ukáže, že takáto metóda hanby, pretože ak okamžite napíšete v niečom ako Java a potom poviete: „Nie, poďme zrefaktorovať, úplne zmeniť architektúru a to všetko,“ strávite 10-krát viac ako hodinu . Takéto reči stále existujú a žijú.

Myslite na úspech bez ohľadu na váš program

Teraz si povedzme o tých ľuďoch, ktorých zdanlivo dobré skutky nemohli žiť, alebo žiť v takto ohraničenom priestore. Keď si Virt uvedomil, že zlé spoločnosti Apple, Borland a všetko, čo na ňom zarobilo Pascal, prišiel s niečím ešte lepším – Oberonom. Bolo to tiež divoko minimalistické - takže príkazov bolo veľmi málo (Riadky? A čo riadky pre nás? Vytvárame pole symbolov!). No, z nejakého dôvodu to nikomu na tomto svete neklapalo, ako by mohli piť.

Ešte jedna vec.

Americká armáda ich požiadala, aby vyvinuli rovnaký cool jazyk, v ktorom všetko funguje a všetko sa dá napísať. V dôsledku toho musíte dokončiť obludný jazyk Ada, v ktorom však musíte stále písať, ale opäť - len pre armádu.

Aký je problém?

Prečo ľudia používali jazyk Python, ktorý ho od začiatku nepodporovala žiadna firma, aby utopili trh? PHP, čo je ďalší zlý dizajn, samo vzalo a premrhalo trh (väčšinu z neho). A všetky tie miliardy dolárov na vkladoch (prednášajúci ukazuje na Adu) nikam nešli, nič sa nestalo. Prečo je to spojené? Je to spôsobené tým, že v okolí týchto miest nie je žiadna infraštruktúra. Jazyk je teda možné upravovať, ale zatiaľ čo neexistuje žiadna dokumentácia, pokiaľ nie je žiadna sila, ktorú možno poskytnúť na výživu (na Stack Overflow) a nakoniec, aj keď nie je veľké množstvo knižníc, zik nevibruje . Takže ste napríklad chceli napísať webovú stránku na Oberon. Čo to je, prečo nie? A problémy začínajú... Na Oberone nemôžete nastaviť webový server, takže môžete ľahko argumentovať, že nemôžete pripojiť knižnice, pretože na Oberone žiadne nie sú. A napriek tomu cez celú políciu bojuješ, alebo ideš a v tme pľuješ a píšeš na čistú stránku svojho webu na mieste Oberon. A žiť láskavo k tým, ktorí sú ochotní používať knižnice z iných jazykov. Na týchto miestach ten istý Python, de vin galmu. Všetky štandardné typy triedenia reči a to, čo je napísané v C a Win (Python), s nimi interagujú.

Java má tiež natívne rozhranie Java. Je to v podstate preto, aby ste tam (podľa môjho názoru chcete neustále chrániť, ale zdá sa, že to ešte nechránili) mohli interagovať s už existujúcimi knižnicami (hlavne Sishnim). A kvôli čomu berú a obchodujú. Myšlienka, ktorú sa vám snažím sprostredkovať, je jasná, však? Nepíšte v týchto jazykoch, pretože nebudete môcť pripojiť aktuálnu knižnicu. No, ak sa chceš zapojiť, budeme v pohode. No postupne získavajú vlastnú infraštruktúru. Žijem tak, ako by to bolo dobré.

Ak chcete písať, možno nemáte v živote žiadne programy, ale ste v pohode v ich navrhovaní, premýšľate o všetkom a zarábate kopu grošov pre tých, ktorých väčšinu hodiny presedíte a riadite (za čo treba zaplatiť, ako jasne môžete áno) , smrad os - Java, .Net. Ideš pracovať do nejakej banky, píšeš, chodíš do práce do deviatej v bielej košeli, vyberieš si výplatu a píšeš s odporúčaniami od top Java driverov, .Net špecialistov a tak ďalej...

Ak chcete napísať nejaké doplnky, nejaký druh prehliadača, nejaký druh hier atď., potom sa C++ skvele hodí. Ak chcete písať webové stránky, potom jazyk podľa vášho výberu (lektor ukazuje v Perl, Python, PHP, Ruby), nie je veľký rozdiel. Jedna vec - PHP je lepšie ako Python, takže ak ste príliš leniví učiť sa niečo nové, potom je Python rovnaký. Nevšimnite si veľký rozdiel, len ho potiahnite dlhšie.

Čo sa stane s Ruby, je tiež nejasné. Ako ste sa už naučili, PHP môžete robiť, našťastie je to také jednoduché, že opätovné učenie nebude trvať tak dlho.

A zistíte, že v našom programovaní je ďalšia oblasť stagnácie - ak s nimi neprogramujete. Je možné, že ste matematik, fyzik, chemik, analytik, kto sa vám páči, a potrebujete rýchlo porozumieť údajom (pre biológov napríklad, koľko arktických líšok žije na veliteľských ostrovoch). Všetko môžete zadať do tabuľky v Exceli alebo analyzovať. Na to je vhodný rovnaký Python s textom a knižnicami všetkého druhu, štatistickými atď. Ak chcete pracovať v nejakom druhu strojového učenia, ak chcete spracovávať dáta, robiť predpovede, potom v Pythone nebudete musieť za všetko platiť oveľa viac. Pravdaže, treba rešpektovať, že je tam ešte viac porážok. Napríklad, ak chcete okamžite vo svojej mysli obchodovať na burze, ak sa kotácie neustále menia, potom bez ohľadu na to, aké skvelé je strojové učenie napísané v Pythone, ľudia, ktorí ho majú napísaný tým najpopulárnejším spôsobom, dostanú všetko , kúp si to skôr, kým máš všetko, čudujem sa, že ich algoritmy sú horšie. O to tu ide strojové učenie(úkony od nich) vydierať vysoká produktivita(A extrémne vysoká) a samozrejme inými slovami.

Jediný spôsob, ako zistiť, čo chcete, je vyskúšať všetko. Teraz vám poviem, že jednou z najdôležitejších vecí je, že môžete vyskúšať všetko. Ako programátor, prečo sme šťastní? Otje. Začíname z čistého arkush. Matematiku, ruský jazyk a ďalšie povinné a nepovinné predmety v škole a znalosti z oblasti programovania na tabuli (lektor ukazuje na prázdnu tabuľu) máte momentálne za sebou. A chcete sa stať šťastným človekom, robiť svoju obľúbenú prácu, zarábať veľa centov a v ničom sa nevidieť a byť šťastný.

Jeden zo spôsobov, ako niekoho získať. A, samozrejme, existujú najrôznejšie pútavé príbehy o ľuďoch, ktorí nikdy nenastúpili na univerzitu, ale opustili ich a stali sa miliardármi, šéfmi firiem atď. Je potrebné poznamenať, že väčšina ľudí, ktorí sa mohli alebo nemuseli stať miliardármi, aj keď je to zlý život, v určitom okamihu ukončila univerzitu.

Aká je naša situácia, keď nastúpime na vysokú školu (začnete v škole)? Kým študujete v škole, musíte pochopiť, že nadchádzajúci termín je vstúpiť a začať. Dajte EDI alebo vyhrajte v olympiáde. Na EDI môžete použiť Pascal, C++ (vrátane čistého C), Python (už ich nebudem spomínať). Na olympiáde - rovnaký Pascal, rovnaký C ++, rovnaký Python (teraz si povieme o ich problémoch) a najčastejšie Java. Na olympiáde je stále všeličo, ale o to nejde.

Ako vyzerá rozpis divízií na celoruskej olympiáde v informatike? Ľudia, ktorí sa zúčastňujú celoruských, najlepších olympijských hier, prečo sa obťažovať písaním? Vyzerá to takto (tu to znamená Pascal a tu je to asi 2000 riq a tu je to asi nula, tu je to C++ a tu je to 2015 riq).

V C++ je 2000 ľudí, ktorí nič nepíšu. Prešlo 15 rokov a nikto nepíše o Pascalovi, nečudujte sa, že Pascal je dnes. Tse mova, pretože rovnakým spôsobom je všetko rovnaké. Je to len tak, že každý je príliš lenivý na to, aby venoval pozornosť všetkému novému vývoju, a každý pokračuje v písaní v Borland Pascal, čo neznamená absolútne nič. V C++ ľudia píšu triediace algoritmy (STL) - samozrejme, napísali sort() a to je všetko. V Pascale, v primárnom, v starom - nie je problém. Napísali nejaký druh sady (keď to potrebovali) - naozaj, napísali to v C++, ale v Pascal je bolesť oveľa väčšia. Je zrejmé, že na nových Pascaloch môžete pracovať, ale budete musieť minúť veľa halierov. Možno ste to nepoznačili, ale nie je to tak.

Є Java, ale v jazyku Java je príliš veľa písmen. To je pre skvelé projekty, ale pre malé, jednorazové programy je to úplná strata, pretože existuje veľa kreatívnych autorov. Aj keď ľudia píšu, môžete sa naučiť písať. Ale na ЄДІ її її немє и і ЄДІ všetko rovnaké, stane sa to z väčšej časti.

Aká je najlepšia cena za všetko pre EDI? Najlepší spôsob pre teba (ak nič nevieš a v škole ťa nič nenaučia) je naučiť sa Python. Všetky úlohy sa budú vykonávať na novom základe. Na olympiáde je vo všeobecnosti C++ najlepšou voľbou, pretože Python je pokročilejší a nie všetko je založené na nových.

Tak ste sa naučili malé množstvo jazykov a rôznych algoritmov (možno) a vyriešili ste veľa problémov, aby ste získali diplom z olympiády a vstúpili na univerzitu, aby ste získali trochu svetla.

Hneď vás budem informovať o kurze, ktorý absolvujeme vo Vyshtsa, v akom poradí máme ísť, ako študujeme aplikovanú matematiku a informatiku na Fakulte aplikovaných vied, s ktorou spolupracujeme s Yandexom. V prvom semestri - Python (nepoužíva sa naplno, pretože sa od vás očakáva, že budete čítať v škole) a C ++ (v širšom zmysle, oveľa širšie, už sa neočakáva, že začne v školách). Poviem vám rovno, aby ste nekričali, že ak chcete zapáliť, poviete si: „Čo, ja už všetko viem, kam pôjdem čítať? Radšej pôjdem na iné miesto." Pre tých, ktorí už vedia dobre programovať, je tu možnosť okamžite pristúpiť k vývoju algoritmov a absolvovať teoretickú prípravu. Vôbec sa na nich nepozeráme, ale (ukáže na dievčatko) na tých, ktorí majú uprostred programu alebo v žiadnom prípade nezomreli.

V prvom semestri sa vyučujú základy Pythonu, práve preto, aby sa ľudia naučili programovať a aby nebol nikto konkrétny. Na školách je málo študentov Pythonu, väčšinou ľudia poznajú Pascal alebo C++. Väčšinou Pascalov príbeh, ako je z mašovskej školy. No, aby nikto nemusel byť domýšľavý, každý by mal začať s novým jazykom (akoby boli v rovnakých myšlienkach). І C ++ jednoducho preto, že z C ++ sa potom môžete presunúť kamkoľvek chcete.

Potom nasleduje kurz „Algoritmy“ a projekt ďalšieho kurzu. Klasické algoritmy s implementáciou. Neboli to tí, ktorí si teoreticky vzali to, čo mali, ktorí si pochvaľovali skladateľnosť. Na prednáške sme si to zobrali, pochválili jeho zložitosť, na seminári sme to zobrali, implementovali algoritmus. Projekt – študenti sú teraz hotový. Napríklad jeden z projektov je: kúpiť... Povedzme, že máte v Moskve veľa bytov a uvedomíte si: „Ach, prečo mám veľa majetku, postavím ho.“ A stanovili takú cenu a nikto si od vás nechce prenajať byt - je to príliš drahé. Alebo stanovili takú cenu, okamžite vám ju vzali a vy si myslíte: „Ach, predal som to lacno“ - a stále máte obavy. Potrebujete teda zistiť, koľko stojí prenájom bytu? Ak zadáte údaje, dostanete známku. Takáto stránka, ktorá vznikla z množstva prejavov: urobte návrhy, analyzujte, sformulujte nejaký algoritmus strojového učenia (samostatne) jednoducho a vytvorte krásnu webovú tvár, v ktorej si môžete vybrať, kam môžete zadať, nejaké metriky, vecí miestnosti, počet sáun, počet jacuzzi vo vašom byte a zhruba zhodnotiť kvalitu. Keď je to hotové, nemusí to byť zložité. Tu to znamená (prednášajúci ukazuje na kurz o algoritmoch), toto je Yadren C ++ s úvodmi do konzoly a displejmi. No tu (prednášajúci ukazuje na písanie „projektu“) pod dohľadom mentora, možno s databázami, možno s parsovaním textu atď.
Potom prebieha tretí semester - tento kurz sa nazýva „Počítačové systémy“. Existuje len niekoľko malých kúskov assembleru na pochopenie (nestačí) a potom, čo je podobné čistému C a interakcii s operačnými systémami, v podstate systémové programovanie. І projekt na seminár - aj na tému všelijakého druhu hraničné vzájomné vzťahy, Dosit nízkoúrovňové: vyviňte utilitu, napríklad rsync (synchronizácia, ako možno viete. V čistom C alebo ešte menej napíšte analóg rsync, ktorý aspoň zosynchronizuje váš počítač so všetkými prístupmi k súborom atď. zapnuté).

Poviem vám, štvrté. Naozaj neviem, ako to nazvať, túto vinaigrettu technológií, ktoré sú potrebné pre skutočný vývoj, napríklad pre vývoj webu. Praktická stagnácia databáz je v tomto prípade opäť podobná tým, ktoré fungovali v projekte (lektor ukazuje projekt študentovi 2. ročníka), ale ešte viac sa stráca. Potom sú takéto viac-menej konkrétne reči praktickejšie ako programovanie. Paralelne s tým poďme s teóriou a potom budeme robiť aj vedu.

A po dvoch kurzoch sa ľudia nechcú zapájať, ale o to nejde, pretože táto vec chce dosiahnuť také základné programovanie a dovtedy ľudia už chápu, že sa zapájať nechcú. počítačové systémy V žiadnom prípade nie (napr. im nefungovalo programovanie systému), ale chcem pracovať na nejakých teoretických algoritmoch, brať do úvahy zložitosť, vymýšľať nové veci, delenie a pod. Alebo si len myslite, že tu nemajú veľa času ( Lektor vedie sériu prvých kurzov s Pythonom a C++) Je to preč, potom ( lektor dáva študentovi tretieho ročníka pokyn, aby sledoval systémové programovanie) - ak to nie je vhodné, importujte bajty a nainštalujte akékoľvek rozhrania na čítanie a zápis, spúšťajte vlákna, vlákna alebo čokoľvek iné. A je jasné, do akej miery sa ľudia rozhodnú priamo a začnú. Takže v zásade, aby ste si nerozvinuli „rolling syndrome“, najprv ste si stiahli Pascal a teraz povedzte „Pascal je sila“; Alebo ak to posuniete ďalej, zvykli ste si na C++ a začali ste o každom hovoriť, že C++ je mocné, ale všetko ostatné tam už nie je.

Os, na ktorú sa musíte pozrieť, je (lektor ukazuje na zoznam kurzov na túto tému) je širšia - jeden zo spôsobov, ako sú voľby, sekrema vo Vyshtsia (nedávno sa objavil, takže môžete dokončiť ten aktuálny). Existujú aj iné spôsoby, ako sa navzájom spoznať. Na iných dobrých univerzitách sú orechy v inom poradí a akcenty sú umiestnené inak. Môžete sa tiež pokúsiť, aby ľudia vedeli, čo sa deje.

Ako môže programátor povedať robotovi?

Vice ( lektor ukáže na zoznam kurzov) Všetci sme pracovali, študovali na univerzite a posledné dva roky sme produktívnejší a treba chodiť do práce. Ako si vybrať niečo pre seba do práce? V prvom rade ste všetko spoznali, niekde sa stratili a už viete, čo máte radi. Musíte si vybrať to, čo máte radi prirodzene. Pretože milujete, budete sa snažiť, budete motivovaní a všetko bude dobré. Pretože vpravo nie sú len centy, vpravo je to preto, aby ste sa cítili príjemne a vítaní. No, chcete sa pripojiť k skvelej spoločnosti a získať prácu. Ako konkrétne chcem byť človekom? Povedzme, že predo mnou príde sto študentov – musím zamestnať dvoch alebo jedného. Prečo prichádzajú, nerozumiem, kto je smrad, čo je smrad, čo je smrad? V najkratšom čase mi ukážte diplom, ktorý ste dostali na univerzite, a ja poviem: „Páni! Toto je skvelý diplom, ale toto nie je také skvelé! „Môžem sa zľutovať, skôr ako prehovorím. Možno ten človek zažil veľa dobrých chvíľ a oveľa lepšie sa naučil.

Čo by bolo skvelé? Po prvé, akýkoľvek open source projekt, ktorý ste napísali od začiatku do konca. Je dôležité, aby som vybudoval všetku infraštruktúru tak, aby boli dáta veľmi rešpektované, potom by samozrejme bolo dôležité, aby som napísal niečo open source. Nevytvorili webovú stránku, ale niečo na túto tému. Prečo ma to zaujíma? Môžem žasnúť nad tvojím kódom, žasnúť nad tým, ako často sa zaväzuješ, môžem žasnúť nad tým, ako si reagoval na chyby ako hackeri, na chyby ako vývojári, ako vikoryisti - všetko je zapísané, stále som prekvapený a myslím si: “ Páni, už tu nie je žiadny chrobáčik." Zavreli dvere a potom ste ľahostajne povedali koristuvachom: "Nič neberiem." Toto je váš špeciálny projekt.

Ďalej, čo by bolo ešte skvelé? Chcel by som sa čudovať, ako si ušetril veliteľský robot. Potom prídete na môj pohovor a poviete: „Ja a chlapci z univerzity sme zmyli niečo extra dobré. Vykrádal som tam databázu, tam ma okrádali mobilná aplikácia, A máme tam aj jedného chlapca, dizajnérku, chlapca, ktorý robí technické práce. Bolo nás päť a vytvorili sme skvelý projekt.“ No, som prekvapený, že váš projekt je efektívny, hovorím: "Aký je váš?" Opäť som ohromený kódom a pochopením, že môžete pracovať v tíme s ľuďmi.

Programátor nie je typ človeka, ktorý sedí sám (naozaj) v garáži, tu s tlmenými svetlami, nemá sa s kým porozprávať, narastie mu brada a predĺži sa tvár. Je to rovnaké, pokiaľ ide o interakciu s ľuďmi. Napríklad so šéfom, ktorý na vás môže občas štekať (šéfovia sú takí, že nikdy nie sú dobrí). A dúfam, že pracujete s ľuďmi a som rád, že máte skvelý tím. Správy nie sú dobré, ale sú horšie, než sú.

Čo iné by som si obzvlášť zaslúžil? Yakbi vi sa ukázali vo skvelých projektoch. Napríklad sa niečoho dopustili linuxového jadra, ktoré sa zaoberá systémovým programovaním, a opravili chybu. Ukázali, že dokážete prečítať kód niekoho iného a môžete vykonať akékoľvek zmeny v kóde niekoho iného. Som ohromený: "Ach, to je skvelé, prišli ste na to, čo vyzerá ako skladacia vec, a opravili ste chyby!" A začínam sa páčiť všetkým. Pretože mám... no, ja neviem... môj program sa ma zbavil, pretože moji konkurenti mi dali vyšší plat a ja nepotrebujem nikoho dosadzovať na svoje miesto – teba. Som tak ohromený, že ste písali iba od začiatku, ale nemôžete čítať a upravovať kód niekoho iného a som v rozpakoch.

No, priznajme si to, v oblasti konkrétnej výsadby sú rôzne ďalšie prejavy. Ak máte na starosti analytika, chcel by som, aby ste si na Kaggle nastavili prácu na analýzu údajov. Ak sa spoliehate na nejaké algoritmické reči, bol by som rád, keby ste prelomili algoritmy v športovom programovaní. A zistili, že premýšľate o profesiách, čítate, ako viesť rozhovor, - počuli, že ľudia tam vyjadrili veľkú nespokojnosť: „Prišiel som, ale opýtajte sa ma, pretože chcem. Sedím takto a neverím tomu, pretože nemám chuť rozmýšľať nad tým, prečo by sa mal personalista takto trápiť. V skutočnosti vám umožňujú pochopiť, akí sú milí a adekvátni. Ak ste nemilosrdní a nevhodní, potom ak ste neboli génius a workoholik, tvrdý fešák s veľkými znalosťami, tím s vami bude ľahko spolupracovať a nebudete môcť projekt po jednom dotiahnuť do konca. Navyše, ak ho vytiahnete, uvidíte, aká dôležitá je spoločnosť. Čo ak zajtra prídeš a povieš: "Zvýši mi plat 10-krát, inak ťa opustím." Je jasné, že firmy sa do takejto situácie nechcú dostať. Preto je dôležité (minimálne) školenie o vlastnej primeranosti a láskavosti, ako aj rozvoj akýchkoľvek profesionálnych zručností.

Súhrnné vrecko, čo poviete? Ktoré jazyky sú dobré a ktoré zlé? Čo by ste si mali vybrať medzi všetkými skupinami, ako sú Ruby, Python a PHP? Samozrejme, vyhlásenie Pythonu je správne, ale v skutočnosti je rozdiel medzi nimi v počte chýb povolený, v niektorých prípadoch - 5%, dobre, možno 10%. Takže, ak už máte hotový projekt napísaný v PHP, potom nikto so zdravým rozumom nepovie: „Prepíšme všetko v Pythone.“ Povedzte: "Najmeme viac vývojárov PHP a začnime písať v PHP." Je jasné, že toto je zlá voľba. Je jasné, že ak chcete napísať akýkoľvek projekt, potom by mohlo byť rozumné vybrať si hneď Python. Chcem to položiť. Možno máte na trhu kopu lacných predajcov PHP a cesty Pythonu a myslíte si: „No, technológia je viac cool, inak ušetrím peniaze na hotových predajcoch.“ A to je všetko, samozrejme, mali by ste tam prísť a pracovať.
Ako si vybrať medzi Java a C++? Takže približne to isté platí. Myslím si, že do tej chvíle, ak sa rozhodnete začať nový skvelý projekt, získate vedomosti z vašej profesionálnej oblasti a budete si môcť zarobiť správna voľba. Zatiaľ nemusíte urobiť takýto výber, a preto vám odporúčam, aby ste urobili tie, ktoré sú vhodné.

Základy, ako som už povedal, základy programovania (čo je funkcia, čo je ak, pre, hmotnosť atď.) sa dá naučiť viac-menej v akomkoľvek jazyku. Napríklad v C ++ je veľa podobností a je tu menej špecifík (na tejto úrovni) a je tu menej písmen, o ktorých je potrebné písať. Ak si teda prečítate všetky druhy zložitých architektonických prejavov, veľa sa naučíte a zažijete bez toho, aby ste museli jazdiť. Tak šup - skúšaj, hľadaj tie, ktoré ti vyhovujú, keď si uvedomíš, že už má 4 roky a sedíš a píšeš pre zábavu, lebo ti to vyhovuje - samostatne, v tom momente si uvedomíš, že si našiel to svoje.