V súčasnosti je Java jedným z najrozšírenejších a najpopulárnejších programovacích jazykov. Prvá verzia filmu sa objavila už v roku 1996 na vrchole spoločnosti Sun Microsystems, ktorú neskôr nahradila spoločnosť Oracle. Java má byť univerzálnym jazykovým programom, ktorý možno použiť na všetky druhy úloh. A doteraz bol jazyk Java a Veľkej cesty videný bez nich rôzne verzie. streamovacia verziaє Java 8, oficiálne vydanie bolo vydané na jar 2014. A Java sa pretransformovala z obyčajného univerzálneho jazyka na celú platformu a ekosystém, ktorý kombinuje rôzne technológie, ktoré sa používajú v celom rade úloh: od tvorby desktopových aplikácií až po písanie skvelých webových portálov a služieb c. Okrem toho jazyk Java aktívne stagnuje pre tvorbu softvérová bezpečnosť pre celý rad zariadení: základné PC, tablety, smartfóny a mobilné telefóny a zavedenie každodenného vybavenia. Len si spomeňte na popularitu mobilného OS Android, pre ktorý je väčšina programov napísaná v jazyku Java.

Funkcie Java

Kľúčovou vlastnosťou Javy je, že jej kód je spočiatku preložený do špeciálneho bajtkódu, ktorý je kompatibilný s rôznymi platformami. A potom sa tento bajtkód prevedie na virtuálny stroj JVM (Java Virtual Machine). V tomto ohľade sa Java líši od štandardných jazykov, ako je PHP alebo Perl, ktorých kód tlmočník okamžite preloží. Medzitým Java hodina Nie je to čisto zostavené mnou, ako napríklad C alebo C ++.

Takáto architektúra zaisťuje medziplatformovú a hardvérovú prenosnosť programov Java, takže takéto programy je možné kompilovať na rôznych platformách bez rekompilácie – Windows, Linux, Solaris atď. Každá platforma vzhľadu môže mať svoju vlastnú implementáciu virtuálny prístroj JVM alebo obe môžu zostaviť rovnaký kód.

Java má syntax podobnú C a je v tomto ohľade blízka C / C ++ a C #. Ak poznáte jeden z týchto jazykov, bude jednoduchšie používať Javu.

ešte jeden kľúčová vlastnosť Java podporuje automatické zhromažďovanie poznámok. To znamená, že nemusíte manuálne prideľovať pamäť pre objekty, ktoré sa predtým používali na vytváranie objektov, ako v C++, pretože sa rozhodnete vytvoriť ju automaticky za vás.

Java je objektovo orientovaná. Podporuje polymorfizmus, rozpad a statickú typizáciu. Objektovo orientovaný prístup umožňuje riešiť problémy v duchu veľkých, no zároveň malých škálovateľných a rozširujúcich doplnkov.

Inštalácia Java

Pre robotické programy Movi Java Cieľový počítač musí mať nainštalované prostredie JRE (Java Runtime Environment). JRE predstavuje minimálnu implementáciu virtuálneho stroja, ako aj knižnicu tried. Pretože chceme spúšťať programy, musíme si nainštalovať JRE. Každá konkrétna platforma má svoju vlastnú verziu JRE.

Keďže však chceme programy nielen spúšťať, ale aj vyvíjať, budeme potrebovať špeciálny kit na vývoj JDK (Java Development Kit). JDK je už rovnaký ako JRE a tiež obsahuje niekoľko doplnkové programy a pomocné programy vrátane kompilátora Java - javac.

Existuje množstvo typov platforiem Java. Základnú funkcionalitu zabezpečuje štandardná verzia Java SE (Standard Edition). Výhra je určená na vytváranie malých prírastkov v rozsahu malých podnikov.

Okrem toho je nová platforma Java EE (Enterprise Edition) zameraná na vytváranie komplexnejších doplnkov a je spojená s webovým serverom Glassfish.

Pre naše účely budeme potrebovať Java SE, aby sme si mohli stiahnuť a nainštalovať najnovšiu verziu JDK z oficiálnej webovej stránky Oracle: http://www.oracle.com/technetwork/java/javase/downloads/index.html

Názov vydania JDK zvyčajne odráža jeho verziu a verziu aktualizácie. V súčasnosti je napríklad dostupný balík s názvom Java SE 8u5 8 znamená 8. verziu Java a 5 znamená aktualizovanú verziu. Keďže tím Oracle pravidelne vydáva nové aktualizácie, vaša verzia aktualizácie sa môže líšiť. Nie je na tom nič strašné, ale je škoda, že samotná verzia filmu je 8.

Takže po nainštalovaní JDK môžeme vytvoriť program v Jave.

Java je jazykový softvér vyvinutý spoločnosťou SunMicrosystems. Java programy Ak sú skompilované do špeciálneho bajtkódu, možno ich aplikovať na akýkoľvek virtuálny stroj Java (JVM) bez ohľadu na architektúru počítača. Oficiálny dátum vydania je 23. máj 1995. Dnešná technológia Java poskytuje nástroje na transformáciu statických webových stránok na interaktívne, dynamické dokumenty a vytváranie oddelení, ktoré neležia mimo platformy rozšírenia.

Java programy sú preložené do bajtkódu, ktorý je skompilovaný do Java virtuálneho stroja (JVM) - programu, ktorý analyzuje bajtový kód a prenáša inštrukcie ako interpret.

Výhodou tohto spôsobu sťahovania programov je, že bajtový kód je úplne nezávislý od operačného systému a inštalácie, čo umožňuje sťahovať doplnky Java na akékoľvek zariadenie, pre ktoré existuje primárny virtuálny stroj. Ďalšou dôležitou vlastnosťou technológie Java je jej bezpečnostný systém vďaka tomu, že nainštalované programy sú prísne kontrolované virtuálnym strojom. Akékoľvek operácie, ktoré zahŕňajú inštaláciu nových programov (napríklad pokus o neoprávnený prístup k údajom alebo pripojenie k inému počítaču), môžu viesť k častým prerušeniam.

Bežnou kritikou konceptu virtuálneho stroja je, že pridanie bajtkódu do virtuálneho stroja môže znížiť produktivitu algoritmických programov implementovaných v jazyku Java. IN Zvyšok času Došlo k niekoľkým vylepšeniam, ktoré ešte viac zvýšili flexibilitu softvéru v jazyku Java:



Vývoj technológie na prevod bajtkódu do strojového kódu bez prerušenia pri behu programov (technológia JIT) s možnosťou ukladania verzií tried do strojového kódu,

Široko dostupný prenosný - orientovaný kód (natívny kód) v štandardných knižniciach,

Hardvérové ​​funkcie, ktoré zabezpečujú rýchlejšie spracovanie bajtkódu (napríklad technológia Jazelle, podporovaná rôznymi procesormi ARM).

Hlavné vlastnosti jazyka:

Automatická správa pamäte;

Rozšírené možnosti vyhýbania sa obviňujúcim situáciám;

Bohatá sada funkcií vstupnej/výstupnej filtrácie;

Sada štandardných kolekcií, ako je pole, zoznam, zásobník atď.;

Dostupnosť jednoduchých metód na vytváranie rozšírení hraníc (vrátane použitia protokolu RMI);

Dostupnosť tried, ktoré vám umožňujú ukončiť požiadavky HTTP a podtypy procesov;

Do jazyka sa zaviedlo vytváranie bohatých tekutých prísad;

Jednotný prístup k databázam:

Medzi ďalšie SQL dotazy založené na JDBC, SQLJ;

Na rovnakej úrovni ako koncept objektov, ktorý umožňuje ukladať dáta do databázy – na báze Java Data Objects a Java Persistence API;

Podpora šablón (od verzie 1.5);

Paralelný wiki program.

1.4.3 Programovanie jazyka C #

Okolo prelomu roku 2000 sa osud dozvedel o novom jazykovom programe, ktorý sa zrodil v rámci spoločnosti Microsoft. Stať sa súčasťou nových technológií Microsoft s názvom .NET (čítaj „Dot Net“). V rámci tejto technológie bol prenesený jeden stredný jazyk programov (Common Language Runtime, CLR) napísaný v rôznych programovacích jazykoch. Jeden z týchto jazykov, hlavný v jeho strede, je C # (C #, čítaj „C sharp“, „C Sharp“). Nazvem to jazyk, samozrejme, chceli zdôrazniť jeho kontroverziu s C++ a dokonca # - tieto dva predbehli plusy. Ale najväčší nový jazyk podobne ako Java. A niet pochýb o tom, že jedným z dôvodov jeho vzhľadu bola reakcia spoločnosti Microsoft na požiadavku spoločnosti Sun.

Autori C# síce nie sú oficiálne menovaní, no v názve sú jedno z predchádzajúcich vydaní editora podľa môjho zadania Anders Hejlsberg - tvorca Turbo Pascalu a Delphi, ktorý prešiel do Microsoftu v roku 1996 a Scott Wiltamuth .

Jadro programu je založené na prostrednom jazyku IL (Intermediate Language), ktorý plní rovnakú úlohu ako bytecode virtuálneho stroja Java. V rámci technológie .NET kompilátory z rôznych jazykov prekladajú programy do kódu IL. Takže rovnako ako bajtový kód Java, kód IL sú príkazy hypotetického stroja na výpočet zásobníka. Rozdiel je aj v zariadení a rozdielnom IL.

Po prvé, v JVM nie je IL viazaný na jeden z vašich programov. Na sklade najnovšie verzie Microsoft.NET obsahujú kompilátory z C++, C#, Visual Basic. Nezávislí vývojári môžu do kódu IL pridať ďalšie jazyky, ktoré môžu kompilátori vytvoriť z týchto slov.

Inými slovami, priradenia IL nie sú na interpretáciu programu, ale na ďalšiu kompiláciu do strojového kódu. To vám umožní prístup k veľkému počtu programov. Súbory kódu IL obsahujú dostatočné informácie na to, aby optimalizačný kompilátor fungoval.

„C# je jednoduchý, priamočiary, objektovo orientovaný jazyk s bezpečným typovým systémom, ktorý je podobný C a C++. C# bude jednoduché a inteligentné pre programátorov, ktorí poznajú C a C++. C# prináša produktivitu jazyka Visual Basic a silu C++. » Týmito slovami sa začína popis C#.

Pozrime sa technické vlastnosti film:

Kompilačná jednotka je súbor (ako v C, C++, Java). Súbor môže obsahovať jeden alebo viacero popisov typov: triedy (trieda), rozhrania (rozhranie), štruktúry (struct), enum (enum), typy delegátov (delegát) s (alebo bez) priradenia o nich, pričom sa delia podľa pomenovať priestory;

Menný priestor reguluje viditeľnosť objektov programami (ako v C++). Medzera mien môže byť uzavretá. Je povolené importovať objekty do programov bez explicitného označenia rozsahu mien, ktoré patria objektu. Stačí odstrániť záhadnú hádanku o zástupnom priestore mien v príkaze using (ako v Turbo Pascal). Prenos aliasov na pomenovanie názvov priestorov v direktíve using (ako vo filme Oberon);

Základné dátové typy: 8-bitové (sbyte, byte), 16-bitové (short, ushort), 32-bitové (int, uint) a 64-bitové (long, ulong) so znamienkom a bez znamienka, jedna reč (float ) a dvojitá presnosť, znaky Unicode (char), logický typ (bool, bez celých čísel), typ desiatky, ktorý zabezpečuje presnosť 28 platných číslic (desatinné);

Štruktúrované typy: triedy a rozhrania (ako v Jave), jednosvetové a viacsvetové (v doméne Java), polia, riadky (reťazec), štruktúry (možno rovnaké ako triedy, ale neumiestňujú sa bez nákupu a bez straty) , prepoistenie, nezmysel s cieľmi (ako v Pascale);

Typy delegovania alebo jednoducho „delegáty“ (podobne ako procedurálne typy v Module-2 a Oberon, vyjadrujúce funkcie v C a C ++);

Typy sa delia na typy výkonu (triedy, rozhrania, polia, delegáti) a typy hodnôt (elementárne typy, zmeny usporiadania, štruktúry). Objekty významných typov sa nachádzajú v dynamickej pamäti (nákupy) a meniteľné typy sú v podstate indikátormi tohto objektu. V niektorých typoch významu premenné nie sú indikátory, ale samotné hodnoty. Implicitné úpravy typov sú povolené len pre nehody, pokiaľ nenarúšajú typový bezpečnostný systém a nevedú k strate informácií. Všetky typy, vrátane elementárnych, súvisia s typom objektu, ktorý je základnou triedou všetkých ostatných typov. Implicitná transformácia hodnotových typov na typ objektu, nazývaná boxing, a explicitná spätná transformácia - unboxing - boli prenesené;

Automatické upratovanie odpadu (ako v Oberon a Yav);

Veľký súbor operácií so 14 úrovňami priority. Preradenie operácií (ako v ALGOL-68, Adi, C++). Pomocou dodatočných začiarknutých a nezaškrtnutých operátorov môžete ovládať kontrolu opakovania pri výbere operácií s cieľmi;

Metódy s parametrami hodnôt, odosielanými parametrami (ref) a výstupnými parametrami (out). Slová ref a out je potrebné napísať pred parameter nielen v popise metódy, ale aj pri volaní. Viditeľnosť výstupných parametrov umožňuje kontrolovať dáta a určovať priradenie. Podľa pravidiel jazyka je zaručené, že akákoľvek zmena bude pred dokončením testu odstránená;

Kľúčové operátory: if, switch, while, do, for, break, continue (ako v C, C++ a Java). Operátor foreach, ktorý vytvára slučku pre prvok vzhľadu „kolekcie“, je množstvo rôznych typov operátora prechodu goto;

Spracovanie vín (ako na Jave);

Mocniny sú prvky tried (objektov), ​​prístup ku ktorým funguje rovnako ako k poliam (môžete pridávať alebo odstraňovať hodnoty), ale sú implementované implicitne cez podprogramy get a set (ako v Object Pascal - vstup (Movi systémy Delphi) ;

Indexery sú prvky tried (objektov), ​​ktoré umožňujú prístup k objektom, ako aj k poliam (priradeným indexu v štvorcových ramenách). Implementované implicitne rutinami get a set. Napríklad k prístupu (na čítanie) k znakom riadka je možné pristupovať ako k prvkom poľa, rovnako ako indexer pre štandardnú implementáciu triedy reťazcov;

Podії - prvky tried (polia alebo moc) procedurálneho typu (delegáti), do ktorých sú priradené triedy, stagnujúce operácie + = i - =, ktoré vám umožňujú pridávať alebo odstraňovať vyhľadávače metód Podіy pre objekty tejto triedy ;

Nebezpečný kód, ako sú indikátory wiki a aritmetika adries, je lokalizovaný v častiach programov označených modifikátorom nebezpečných;

Preprocesor, ktorý prenáša, je nahradený C a C++, len ako výsledok mentálnej kompilácie.

Je zrejmé, že sa diskutovalo o niekoľkých veciach. C # vôbec nezlepšuje vyhliadky na jazyk. Vin je oveľa krajší ako C++. Existuje hlboká nespokojnosť s mojím C++, čo je samotný vzhľad nového jazyka, jednej z hlavných zmien v úspechu C#.

Po C# z Javy môžete mať veľa celej ryže. Je pravda, že keďže systémy Java sú multiplatformové, implementácia C # je v súčasnosti iba pre operačný systém Windows a iba jeden. Bez ohľadu na dostupnosť však môžete zistiť, že bude implementovaný aj pre iné systémy. Navyše aj ona sama platforma Microsoft.NET s jedným jadrom je možné implementovať na alternatívnych architektúrach, najmä na systémoch UNIX.

C# sa mi zdá realistickejšie, nižšia Java. Na strane Yavi je sebestačný. Takže v C # môžete napísať akýkoľvek program bez toho, aby ste museli ísť do iných jazykov. To môže viesť k odhaleniu „nebezpečných“ blokov kódu, ktoré umožňujú priamy prístup k hardvéru. V Jave je pre prístup k nízkoúrovňovým funkciám potrebné spoliehať sa na „natívne metódy“ (natívne metódy), keďže je potrebné programovať v iných jazykoch.

A samozrejme, vyhliadky pre C# súvisia predovšetkým s týmito pokrokmi, ako, samozrejme, v správe spoločnosti Microsoft o jeho vývoji.

Pohľad autora: Celkovo moje programovanie poháňa približne 3 miliardy smartfónov, 125 miliónov televízorov a každý jeden prehrávač Blu-Ray na svete. Tento jazyk sa pravidelne umiestňuje na popredných miestach v hodnoteniach dodávateľov softvéru a je najvyhľadávanejším medzi najväčšími IT spoločnosťami. Je to technický fenomén a funguje úplne na akomkoľvek zariadení, ktoré demonštruje svoj princíp „zapíš raz, spusti kdekoľvek“ (WORA - „raz napíš, spusti kdekoľvek“). Kto uhádol, nech zdvihne ruky! Zvichaino dobre, tse mova Java. A dnes vám odkryjem všetky karty a poviem vám celú pravdu o tom, ako sa stať Java programátorom od nuly! Vlasttovayutsya lepšie!

Pár faktov o Jave

Aby som vás nenudil ďalšími teoretickými kázaniami, zhrnul som informácie o Jave do zoznamu, po prečítaní ktorého jasne pochopíte, čo to je a aká je jej úloha v naprogramovanej divočine:

Java je „módny“ a bohatý platformový jazyk programovania. Vin funguje na akomkoľvek zariadení s operačným systémom. Všetky doplnky Google a Android som napísal ja. V žiadnom inom jazyku nenájdete toľko informácií a počiatočných materiálov;

Oficiálny dátum vydania filmu je 23. máj 1995. Pôvodne som uvažoval o interaktívnom káblovom televíznom kanáli, ale „nedozrel“. Vlajkovou loďou Java je Sun Microsystems, ktorá kúpila Oracle v roku 2010;

Mnoho ľudí si mýli Javu a JavaScript. Ak chcete niečo urobiť (webové stránky, webové doplnky), vyberte si inú možnosť. Java je back-end, t.j. plnenie doplnkov;

Súčasné webové technológie

AngularJS, Webpack, NodeJS, ReactJS, TypeScript, Gulp, Git, Github...
Zistite všetko o súčasných technológií na webe

Ide o objektovo orientované programovanie, ktorého kód zostavuje špeciálny virtuálny stroj Java (JVM). V USA má JVM nainštalovaný približne 9 z 10 počítačov;

Názov mova prevzala od značky cavy – preto je na oficiálnom znaku zobrazený pretekajúci pohár.

Ste stále tu alebo ste sa ponáhľali, aby ste si dali šálku aromatického cava? Todi pokračuje Rozmovom o tých, ktorí sa stávajú Java programátormi.

Inštalácia softvérového middlewaru

Nie je prekvapujúce, že ľudia majú problémy aj vo fáze inštalácie softvéru Java. Na to musíte prejsť na oficiálnu webovú stránku maloobchodnej spoločnosti - Oracle. posilannya na aktuálna verzia Pozrite si to úplne hore na stránke. Potrebujete Java SE (Standard Edition) a Java Development Kit – sadu nástrojov pre vývoj. Upozorňujeme, že existujú rôzne distribúcie pre rôzne operačné systémy.

Povedzme, že máme Windows. Ideme do „System Power“ a je úžasné, že náš systém je 32-bitový alebo 64-bitový. Stiahneme súbor, ktorý nám kapacitne vyhovuje. Ak vyberiete nesprávnu distribúciu, pri kompilácii kódu opravu odstránite. Po potvrdení súhlasu s licenčnou zmluvou kliknite na tlačidlo stiahnuť.

Ktorá sada nástrojov pre vývojárov Java?

Programátor trávi väčšinu času v IDE (IntelliJ IDEA, Eclipse, WebStorm, NetBeans). IDE je integrované vývojové centrum, špeciálne rozhranie pre programovanie. Pomáha vám nielen písať kód, ale pomáha vám aj používať ďalšie programovacie nástroje. Aby ste potešili tých, ktorí sa chcú stať Java programátormi od nuly, najprv si napíšte svoje programy do základného poznámkového bloku alebo Notepad ++.

Možno viete písať základné programy a písať v editore. V budúcnosti stále dôrazne odporúčam používať IDE. Má funkcie automatického dokončovania kódu, kontroly syntaxe, prechodu na priradenie metódy a mnoho ďalších. A inteligentné výzvy vás ušetria od potreby pamätať si všetky názvy funkcií a ich parametre, čo je jednoducho fyzicky nemožné.

pri tímová práca Keď na tom istom programe pracuje viacero ľudí, je potrebné použiť to, čo sa nazýva systém správy verzií (Perforce, Git, Subversion atď.). Systémy na správu verzií sú však veľmi manuálne a fungujú jeden po druhom.

Približný algoritmus Java

Naučte sa základy Java. Prvou lekciou je rozvoj schopností logického myslenia a osvojenie si základných vedomostí o syntaxi jazykového programovania. Keď budete mať knihu, článok alebo základné video, naučte sa vytvárať jednoduché objekty Java pomocou IDE alebo textového editora, ktoré obsahujú rôzne možnosti správania v závislosti od vstupných údajov.

Skúmanie pokročilých možností jazyka Java. V tejto fáze zvážte syntax, knižnice a rámce, ktoré vám pomôžu pri vytváraní flexibilnejších doplnkov s praktickým zvratom. Dobrý program sa nemusí zaoberať len rôznymi knižnicami, ale vie, ako sú na tom uprostred. Okrem toho také pojmy ako vstupno/výstupné operácie, redukcia a abstrakcia, serializácia, generické typy, regulárne výrazy, ktoré pre vás nie sú nevinné, ale prázdne.

Jemné programovanie. Nevadí ťažkopádna dokumentácia a žargón programovania v jazyku Java. V tejto fáze ste už vinní z „mutácie“ na zrelého programátora. Poraďte sa s Java guru, ktorých nájdete na tematických fórach a na iných miestach, kde vznikajú programy. Ukážte im svoj kód, radujte sa a potešte ostatných – „hromadte karmu“. Môžete si založiť vlastný blog, publikovať na novej verzii kódu autora a zaujímať sa, čo povedať o novom programe.

Ako začať s programovaním?

Pre tých, ktorí sa snažia stať sa programátorom Java od nuly, poviem vám, ako napísať svoj prvý program.
Ó, drahá, povedzme si úprimne textový editor A píšeme:

Trieda HelloWorld(public static void main(String args)(System.out.println("Ahoj svet!");))

Súbor je uložený pod názvom HelloWorld.java. Oceňujem, že Java rozlišuje veľké a malé písmená, takže slová „helloworld“ a „HelloWorld“ sú odlišné. Ak je názov súboru a trieda v kóde narušená, program sa jednoducho nespustí. Prosím, buďte opatrní, aby kód bol ANSI.

Teraz musíme skompilovať program pomocou kompilátora javac s JDK. Kým nezaložíme stred vývoja, budeme naďalej hľadať ďalšiu pomoc príkazový riadok cmd kliknutím na її v ponuke Štart. V okne napíšte cmd a stlačte Enter.

Keďže sme uložili súbor HelloWorld.java do priečinka Prog na disku C, zadajte príkaz:

Cd C:\Progа

A stlačte Enter. Týmto spôsobom sme zmenili katalóg na ten, kde bol náš program odinštalovaný. Potom zadajte:

Javac HelloWorld.java

Znovu stlačím Enter. Ak systém kompiláciu nevidel, znamená to, že kompilácia bola úspešná a v priečinku Prog uvidíte súbor HelloWorld.class. Dovoľte mi vysvetliť, prečo je potrebné víno. Súbor s príponou .java je len „nákladom“ kódu, ktorý neuberá z „technickej časti“, ktorá nesúvisí s funkciami, ale so spúšťaním programov. A súbor .class obsahuje bajtkódy, čo vám umožňuje písať kód cez interpret Java.

Ak ste urobili všetko správne, uvidíte svoj výtvor na obrazovke a objaví sa elektronická myseľ, ktorá vás pozdraví: „Ahoj svet!“


Tak a to je na dnes všetko, milí priatelia. Dúfam, že ste si sami uvedomili, ako je možné stať sa Java programátorom od nuly. V mojom ďalšom článku vám poviem, ako zarobiť peniaze ako program Java. Takže nás sledujte a ešte lepšie sa prihláste na odber aktualizácií nášho blogu. Poď!

Dobrý deň, milý čitateľ. Už dlho som chcel napísať podobný článok, ale nemal som čas, pretože som bol príliš lenivý. Bohužiaľ, ako keby to tam nebolo, stále som si stihol pozbierať myšlienky, aby som napísal tie, ktoré vám prinesiem, určite po tom túžim. S radosťou sa podelím o svoje poznatky a dôkazy, ktoré vám poskytnú čas a rešpekt. Podľa mňa je táto publikácia dobrá pre tých, ktorí sú pripravení brať do úvahy svoje záujmy a chcú svoj život prepojiť s IT – tak či onak. Hej, poďme!

Programovanie filmu Vibir

Publikácia sa začína podobať na množstvo podobných materiálov. Podľa zákona žánru budem povinný napísať názov troch párov nášho programovania, vymenovať pár plusov a mínusov a medzitým, bez toho, aby som dostal nejakú výživu, prejsť na ďalšiu časť. Čiastočne je na tom niečo pravdy a aj jazyk, ktorý je mu najbližší, si vyberá sám na základe poznania, akým typom vinárskych produktov sa chce v budúcnosti zaoberať. Väčšina z vás sa učila na škole Turbo Pascal a pravdepodobne pre vás bude novinkou, že v tomto jazyku je prakticky nemožné napísať čokoľvek. Takže v tejto situácii si musíte vybrať jazyk múdro, ak nechcete veľa vedieť, ale ak sa chcete efektívne zaradiť medzi programátorov v krátkom čase, pred výberom jazyka musíte to múdro. Len si pamätajte hneď od začiatku: dobrý programátor Nikdy nebudete hladní a vo väčšine prípadov si budete môcť kúpiť veľa kaviáru(Toto je dôležitá voľba pre akúkoľvek profesiu, ale žiadna špecializácia vám nedá takú slobodu pri výbere miesta výkonu práce, a to ako z hľadiska spoločností, tak najmä programu v Indii).

Je logické, že čím obľúbenejší jazyk a dopyt, tým väčšia šanca nájsť si v budúcnosti prácu, v takom prípade bude jazyk ťažko zvládnuteľný. Pretože chcem napísať veľa peňazí v C++ a zarobiť si za to dobré peniaze, nováčikovia, ktorí už nepoznajú OOP (objektovo orientované programovanie), o tom budú písať skôr veľmi dlho. Nižšie je uvedený zoznam najpopulárnejších softvérov v roku 2014 a ako môžete vidieť, Java je na prvom mieste, nasleduje C, potom Phyton, JavaScript, PHP, Ruby atď. Ak si takúto štatistiku vyhľadáte sami, uvidíte, že na rôznych miestach budú miesta obsadené rôzne, ale vo všeobecnosti sa prvých 10 miest zaplní všade.

Ak prejdete na inú úroveň, na základe analýzy voľných pracovných miest zverejnených na Twitteri nájdete situáciu podobnú prvému príkladu. A tak, urazený anglickým článkom, zavolajte komukoľvek, ak sa chcete stať programátorom, nezabudnite, že takmer všetka dokumentácia je rovnaká základné informácie písanie v angličtine, takže ak sú vaše znalosti tohto jazyka slabé, pridajte sa do zoznamu referencií na zajtra a učte sa a precvičujte si angličtinu v budúcej budúcnosti. Myslím, že konečne napíšem článok venovaný náboženstvu cudzincov.

Po opustení týchto dvoch krajín už sami vidíme, že naše programovanie je teraz „v móde“. Ako je už z názvu zrejmé, autor článku si pre seba vybral Javu. Hoci ho považujem za najlepšieho človeka pre rozvoj OOP, nájde sa veľa ľudí, ktorí ma nebudú mať radi a je to logické - koľko ľudí, toľko myšlienok. Tu sa vyberieme na malú cestu: vyberte Java, C # (dokonca podobné Java), Phyton, ak chceme pracovať s programovými výplňami a doplnkami (back-end) alebo PHP, JavaScript, HTML, ak chceme robiť vývoj webu (front-end). V prvej epizóde by som si vybral Javu a v druhej by som si vybral PHP, ale ak by som to chcel zopakovať, je toho viac, musíte si o nej zistiť informácie sami. rôzne jazyky A začal si zisťovať, čo chceš robiť. Pre vaše myšlienky tu je zoznam informácií, ktoré si môžete pozrieť v najväčších internetových spoločnostiach na svete.

Sú 2 hlavné dôvody, prečo by som si vybral Javu alebo PHP. Persha - najpopulárnejší film Poznám robot, ktorý zodpovedá robotovi je ťažký, a jeho priateľ, v tom je, v priateľovi priateľa, nepoznáte materiály materiál Yak pre Tsimi Koom, yak je v Rosіyskiy, takže ja na Angliyskiy.


navchannya

No a dostali sme sa do štádia, kedy bez problémov dosiahneme najviac a toto obdobie je právom jedno z najťažších v kariére programátora. Ak programátor začne tráviť celý svoj život, potom hodina, keď začne zarábať svoju prvú mzdu, znamená veľa z toho, čo znamená jeho budúci podiel. Na začiatku si ľudia overia svoju dôležitosť, čo je samozrejmé, aby o mesiac nestratili záujem (ako sa to niektorým ľuďom stáva), aby mohli ísť až do konca a osvojiť si základné vedomosti, ktoré potom využijú sa zaoberáme iba účelom informácie.

No, mám vlastnú teóriu, ktorá sa v praxi viackrát potvrdila: Za 1 Rika sa môžete naučiť úplne čokoľvek.. Verte mi, je to pravda, niekto to bude potrebovať za menej ako hodinu, ale keďže ľudia sa nikdy neprestanú vzdávať a siahať po osude múdro sa blížiť k začiatku, bez toho, aby ste začali, je to prakticky nemožné. Nie je to len v naprogramovanej, úplne v akejkoľvek sfére: ak chcete hrať na gitare - žiadny problém (nemám veľa času a energie), naučiť sa argentínske tango, ísť surfovať - ​​všetko, čo musíte urobiť, je hrať jeden kameň. Golovne - získajte to!

Tentokrát sa pozriem na jazyk Java, keďže je mi stále bližší. Našťastie je na internete veľa ľudí, ktorí pomáhajú iným v učení zadarmo, takže nájsť ten správny materiál pre vás nie je ťažké. Ako sa môžete s perom a papierom pozerať cez steny svojho tichého bytu (stále len ruského). Pre tých, ktorí si len potrebujú prečítať materiál, ponúka internet skvelé príležitosti a iba jednu zo všetkých stránok s lekciami Java. Teórie, rád by som dodal, ale nemôžem povedať dosť o takej úvodnej stránke, ako je Coursera.org, kde nájdete úvodné kurzy v rôznych jazykoch a v rôznych oblastiach vrátane programovania - opäť je všetko absolútne neškodné . Existuje viac ako jedna alebo dve takéto stránky, žartovanie stojí príliš veľa.

Aj keby išlo o kognitívnu teóriu, programovanie nie je možné bez praxe. Tu už za nás urobili celý výskum a nie je potrebné prechádzať všetkými detailmi, aby ste zlepšili svoje zručnosti, služba ako JavaRush vám môže pomôcť. Vo všeobecnosti táto stránka poskytuje teóriu aj prax, počnúc jednoduchým kopírovaním kódu na obrazovke a končiac zložitými úlohami a medzi tým si môžete oddýchnuť a žasnúť nad animovaným seriálom. Autori, ktorí sa v službe dostali do 20. storočia, majú dostatočné znalosti na to, aby sa mohli angažovať v IT spoločnosti. .

Pomoc v praxi

Ako už bolo spomenuté, prax je neviditeľnou súčasťou každého učenia, najmä programovania. Tu budete musieť kódovať a kódovať, až po prsty. To je, samozrejme, trochu priveľa, ale spočiatku budete musieť skutočne veľa stláčať klávesy, aby ste si zapamätali význam rôznych štruktúr, takže v budúcnosti budete môcť pracovať takmer automaticky.

Mnoho programátorov v ranom štádiu má spočiatku veľmi obmedzenú stravu, najmä ak sa potrebujú vzdať svojej nezávislosti. Je to v poriadku. Ale v takýchto situáciách musíte pochopiť, že prakticky akékoľvek jedlo, ktoré máte, nájdete na internete. Pravdepodobne ste prvým človekom, ktorý sa s ňou pohráva, takže sa neponáhľajte s otázkami na rôznych softvérových fórach (napíšem o nich trochu neskôr). Pokojne si sadnite, v hlave správne sformulujte problém a veselo ho hľadajte v ozvučnici. Väčšina ľudí bude vtipkovať o ruskom jazyku, ale nezabúdajte, že jazykom programátorov nie je angličtina, pretože ste nepoznali odpoveď na veľké a mocné, potom žartujte o jazyku, ktorý sa každý učil v škole, ale tak neverili tomu. Ak sa ukáže, že na vašu otázku neexistuje žiadna odpoveď, prichádzajú na rad najlepšie fóra na internete:
Dokumentácia jazyka, ktorý by ste mali napísať. Popisuje, ako fungujú tieto ďalšie triedy a rozhrania, ako aj dokumentáciu a jediné zariadenie, ktoré vám môže pomôcť s rôznou výživou a dokonca aj v štádiu klasu sa dá všetka podobná výživa bez problémov nájsť. pripravený na rozhodnutie, Ak pôjdeš ďalej do siete, nájdeš dôkazy stále zložitejšie, potom sa musíš spoľahnúť na seba, verím, že dám rozum do hlavy.

kompilovateľný kód

Keď som už napísal veľa, je ťažké obsiahnuť takú skvelú tému v rámci jedného článku, ale myslím, že prvých pár dní je už za sebou a na vine je smrad vašich myšlienok. Myslím, že toto je prvý článok zo série „Ako sa stať programátorom“ a zrejme „čo ďalej?“, Ak stojíte na križovatke a ešte neviete, ktorou cestou sa vydať. Tentokrát sa dotknem problémov v materiálnej rovine reči a nie je žiadnym tajomstvom, že ľudia nie sú chudobní ľudia, ale uvidíme, do akej miery sa ten smrad odstráni, uvidíme tentokrát.

Poďte, pre tých, ktorí sa chcú efektívne stať programátorom, vám radím, aby ste vzali býka za rohy, zhromaždili všetku svoju vôľu v päsť a pracovali na tom, čo by ste mali. Už to bolo povedané tisíckrát, ale zopakujem to znova, je to hanba a hanba. Potom vám všetko vyjde. Zapamätaj si to: Myslite na vývoj nášho programovania a rôznych technológií nie ako meta, ale ako ŠKODU. Stačí si uvedomiť, aké príležitosti sa pred vami otvárajú. Možno sa aj vy sami stanete jedným z tých, ktorí menia svetlo v reálnom čase. Tak veľa šťastia a ďakujem za rešpekt!

Video bonus

Štítky: Pridajte štítky

Jazyk Java. Vstup

Dlho bolo dôležité rozpoznať počítačový časopis bez štatistík venovaných jazyku Java. Písali o ňom také populárne noviny a časopisy ako The New York Times, The Washington Post a Business Week.

Nie je možné si predstaviť, že by Národný verejnoprávny rozhlas niekedy venoval filmu desaťtýždňový program. Je dobré alebo zlé, ležať pod uhlom pohľadu. A investície predstavujú 100 miliónov dolárov do vývoja softvéru, ktorý je vytvorený navyše k vášmu špecifickému programu?! Televízne spoločnosti CNN, CNBC a ďalšie médiá hovorili o tom, ako to Java dokáže a ako to môže fungovať.

Táto kniha je však určená pre serióznych programátorov a fragmenty jazyka Java sú seriózne programovacie jazyky, len to musíme vedieť. Nebudeme sa utápať v analýze reklamných posolstiev a pokúsime sa prísť na to, čo je pravda a čo je v nich pokrytectvo. Namiesto toho chceme stručne opísať samotný jazyk Java, ako aj jeho programovanie (samozrejme vrátane funkcií, ktoré vám umožňujú používať ho na prácu na internete, napríklad vo svete, a kliknúť na štýl reklamný kanál). Potom sa pokúsime odlíšiť realitu od fantázie vysvetlením toho, čo Java dokáže a čo nie.

Spočiatku bola medzi reklamným humbukom a reálnymi možnosťami jazyka Java priepasť. Vo svete sa vyspelá technológia stávala stále stabilnejšou a spoľahlivejšou a ceny klesli na rozumnú úroveň. Softvér Java sa čoraz viac používa na vytváranie „middleware“, ktorý uľahčuje spojenie medzi klientmi a serverovými zdrojmi (napríklad databázami).

Napriek tomu, že tieto dôležité programy neodporujú realite, v tejto oblasti sa javila ako najvýhodnejšia samotná Java vďaka svojej strojovej nezávislosti, bohatému závitovaniu a možnosti programovania od okraja po okraj. Okrem toho Java získala vedúce postavenie v oblasti vstavaných systémov a stala sa de facto štandardom pre prenosné zariadenia, virtuálne kiosky, palubné počítače v aute atď. Avšak prvé pokusy o prepísanie v Jave značne rozšírili programy pre osobné počítače neboli úspešné - ukázalo sa, že odstránenie suplementov vyžadovalo málo úsilia a príliš veľa úsilia. S príchodom novej verzie systému boli tieto problémy vyriešené a stále je potrebné vedieť, že kupujúci sú vo všeobecnosti úplne istí, že moje písanie a programy, ktoré si kúpili. Oceňujeme, že hlavné výhody Javy sa prejavujú vo vytváraní nových typov zariadení a doplnkov, a nie v prepisovaní existujúcich programov.

Jazyk Java ako sa naučiť programovať

Yak jazyk Java programovanie redizajn svojich reklamných bannerov. Toto je bezpochyby jeden najlepší jazyk, Dostupné pre serióznych programátorov. Java môže potenciálne zmeniť názor, aby sa moje programovanie stalo skvelým, ale teraz je už určite neskoro. Keď sa objaví nový softvér, vzniká nepríjemný problém jeho nekompatibility s predtým vytvoreným softvérom. Navyše, akékoľvek zmeny v týchto programoch je možné vykonať bez toho, aby sa ich text odovzdal tvorcom filmu, ktorý je tak obľúbený u verejnosti, ako je napríklad jazyk Java, je ťažké priamo povedať: „Takže, snáď nás vývoj verzie X potešil, inak bude verzia Y krajšia.“ V očakávaní ďalšieho vývoja poznamenávame, že štruktúra jazyka Java sa v blízkej budúcnosti nezmení.

Zjavná otázka znie: " Ako sa vám podarilo vypilovať jazyk Java?"Ukazuje sa, že to nebolo dosiahnuté zlepšeným programovaním, ale dôkladnou zmenou knižníc programov napísaných v Jave. Sun Microsystems zmenil všetko: počnúc názvami niekoľkých knižničných funkcií і (ktoré sa stali zrozumiteľnejšími) і metódami prevádzka grafických modulov (zmena spôsobu spracovania dát a časté prepisovanie pracovných programov) a končiac vytvorením nových autorít, napríklad spôsoby prenosu informácií iným, ktoré v r. verzie Java 1,0. Výsledkom bola predovšetkým veľmi bohatá softvérová platforma predchádzajúce verzie java film.

Spoločnosť Microsoft vydala svoj najnovší produkt s názvom J++, ktorý je podobný jazyku Java. Java J ++ je interpretovaný ako virtuálny stroj, kombinovaný s Java Virtual Machine (Java Virtual Machine) s novým bajtovým kódom, ale rozhrania s externými kódmi sú výrazne odlišné. Movie J++ a Java používajú rovnakú syntax. Microsoft však vytvoril ďalšie návrhy. Všetky z nich môžu mať pochybnú hodnotu kvôli rozhraniu Windows API. Okrem toho majú novú syntax, ich hlavné knižnice (riadky, obslužné programy, funkcie edgewise programovanie, funkcie rich-threading, matematické knižnice atď.) sa v podstate tiež vyhýbajú.

Úplne odlišné sú však grafické knižnice, účely používateľského rozhrania a prístup k vzdialeným objektom. V súčasnosti už Microsoft nepodporuje jazyk J++, pretože vyvinul nový jazyk C#, ktorý je bohatý na Javu, ale je založený na inom virtuálnom stroji. Táto kniha neopisuje jazyk J++ ani jazyk C#.

Výhody Movi Java

1) Jednou z hlavných výhod Movi Java je nezávislosť od platformy, na ktorej sú programy nainštalované: Rovnaký kód možno spustiť pod ovládacími prvkami prevádzky systémy Windows, Solaris, Linux, Macintosh a ďalšie.
To je skutočne potrebné, ak sú programy prístupné cez internet na ďalšiu komunikáciu s rôznymi operačnými systémami.

2) Ďalšia výhoda spočíva v tom, že Syntax jazyka Java je podobná syntaxi jazyka C++ a pre programátorov, ktorí poznajú jazyk C a C++, nie je ťažké sa naučiť. Avšak pre programátorov, ktorí používajú Visual Basic, môže byť táto syntax nepodstatná.

Ak ste nikdy neprogramovali v anglickom C++, pojmy a slovná zásoba v tejto časti vám nebudú zrejmé. V každom prípade môžete jogu vynechať. Keď sa dostanete na koniec 6. kapitoly, tieto pojmy vám budú známe.

3) Okrem toho Java - Úplne objektovo orientovaný jazyk, ako veľký svet, nižší C++. Všetko v Jave je o objektoch, okrem niekoľkých primitívnych typov, ako sú čísla. (Pomocou objektovo orientovaného programovania je ľahké rozbiť zložité projekty, ktoré nahradili dlhoročné štrukturálne neprogramované. Ak nie ste oboznámení s objektovo orientovaným programovaním, kapitoly 3-6 vám poskytnú všetko, čo o ňom potrebujete vedieť.)

Nestačí však vyvinúť iný, trochu zložitejší dialekt jazyka C++. Je zásadne dôležité, že je jednoduchšie vyvíjať programy v jazyku Java ako v jazyku C++. prečo? Vývojári jazyka Java už dlho hovoria o tom, že programy napísané v jazyku C++ sú sakramentsky dobré. Poskytli jazyku Java spôsoby, ktoré vám umožnia vypnúť možnosť vytvárať programy, ktoré by ťažili z najväčších výhod. Pre koho v jazyku Java sú základy?

4) Schopnosť explicitne vidieť a ukladať pamäť je zakázaná.
Pamäť v jazyku Java sa prideľuje automaticky pomocou dodatočného mechanizmu na ukladanie pamäte. Program záruk na opravy spojené s nesprávnym narušením pamäte.

5) Referenčné polia boli zadané a aritmetika indikátora bola zakázaná.
Teraz programy v zásade nemôžu vymazať údaje z pamäte kvôli nesprávnym indikátorom.

6) Možnosť zámeny operátora priradenia s operátorom ekvalizácie je zakázaná.
Teraz môžete zostaviť vírus if (ntries = 3). . . (Programy Visual Basic tu nemusia zaznamenať žiadne problémy, pretože v jazykoch C a C++ existuje veľa nezrovnalostí).

7) Zahrnuté sú viaceré zníženia. Tú nahradili nové koncepty – rozhranie založené na jazyku Objective C.
Rozhranie dáva programátorovi všetko, čo sa dá eliminovať z množstva problémov, ktoré vznikajú pri správe hierarchií tried.

Charakteristika jazyka Java

Prepáč
podlieha výkladu
divízie
spoľahlivý
bezstarostný
Nezávislé od stroja
Objektovo orientovaný
vysoko produktívne
Bohatý prietok
dynamický
Nie zatuchnutý pohľad na architektúru počítačov

Vo zvyšných častiach sme už narazili na množstvo týchto bodov. V tejto časti: uvedieme citáty z literatúry jazyka Java, ktoré odhaľujú osobitosti jazyka; Podeľme sa s čitateľmi o novinky z ťaženia miestnych úradov v jazyku, ukotvení v znalosti diela s jeho zostávajúcou verziou.

Prepáč

Chceli sme vytvoriť systém, ktorý sa ľahko programuje, nevyžaduje pokročilé školenie a dobre sformovanú prax a štandardy programovania. Preto aj napriek tým, ktorí rešpektovali jazyk C++ ako nevhodný pre tieto účely, jazyk Java bude čo najviac rozdelený do nového jazyka, aby bol systém prístupnejší. Jazyk Java nemá veľa zriedka poškodených, nejasných a mätúcich funkcií jazyka C++, ktoré podľa nášho názoru prinášajú viac škody, menej škody.

Syntax jazyka Java je v podstate prečistenou verziou syntaxe jazyka C++. Tento jazyk nemá hlavičkové súbory, aritmetiku indikátorov (a samotných indikátorov), štruktúry, zjednotenie, opätovný preklad operátorov, virtuálne základné triedy atď. (Výhody medzi jazykmi Java a C++ sú popísané v poznámkach o jazyku C++ roztrúsených po celej knihe.) Vývojári sa však neobťažovali opraviť všetky nedostatky jazyka C++.

Napríklad syntax príkazu switch v jazyku Java sa nezmenila. Ak ovládate jazyk C++, bude ľahké prejsť na syntax jazyka Java.
Ak sa spoliehate na vizuálny stred programovania (napríklad Visual Basic), jazyk Java bude pre vás ťažký.
Jeho syntax často vyzerá dosť zvláštne (nie je ťažké pochopiť zmenu). Najdôležitejšie je, že pri práci v Jave musíte oveľa viac programovať. Výhoda jazyka Visual Basic spočíva v tom, že jeho vizuálny programovací stred mu umožňuje automaticky vytvárať aplikačnú infraštruktúru. Aby ste dosiahli rovnaký výsledok s pomocou Javy, musíte ju naprogramovať manuálne, inak skončíte s množstvom krátkych programov.

Existuje však aj tretí typ programovacieho média, ktoré vám umožňuje vytvárať programy pomocou dodatočnej technológie „drag-and-drop“.

Ďalším aspektom jednoduchosti je konzistencia. Jedným z cieľov jazyka Java je zabezpečiť vývoj programov, ktoré je možné zostaviť úplne nezávisle na malých strojoch. Veľkosť hlavného tlmočníka a funkcií podpory triedy sa bude blížiť k 40 KB; Štandardné knižnice a funkcie na podporu vlákien (najmä samostatné mikrojadrá) zaberajú ďalších 17: KB.
To je veľký úspech. Drahé však, že knižnice pokladov podporujú grafiku priradené k používateľskému rozhraniu výrazne väčšie.

Objektovo orientovaný

Jednoducho povedané, objektovo orientované programovanie je metóda programovania, ktorá sa sústreďuje na dáta (objekty) a spôsob, ako k nim pristupovať. Na základe analógie s tesárstvom môžeme povedať, že remeselník sa sústreďuje hlavne na prácu, ktorú pripravuje, a na druhej strane si vyrába potrebné nástroje; Neobjektový stolár zároveň myslí len na svoje náradie. Objektívne autority jazyka Java a C++ sa v podstate vyhýbajú.

Za posledných 30 rokov už objektová orientácia dosiahla svoju hodnotu a bez nej nie je možné rozpoznať súčasné programovanie. Objektovo orientované vlastnosti jazyka Java možno skutočne prirovnať k jazyku C++. Hlavný rozdiel medzi nimi spočíva v mechanizme viacnásobného rozpadu, pre ktorý sa nachádza v jazyku Java najlepšie riešenie, A tiež v modeli s metatriedou Java.

Mechanizmy na zobrazovanie (kapitola 5) a serializáciu objektov (kapitola 12) umožňujú implementovať stabilné objekty a funkcie na vytváranie grafických používateľských rozhraní na základe hotových komponentov.

Ak ste nikdy neprogramovali v objektovo orientovanom jazyku, je dôležité prečítať si kapitoly 4-6. Tieto časti vysvetľujú základy objektovo orientovaného programovania a demonštrujú jeho výhody pri vývoji komplexných projektov oproti tradičným, procedurálne orientovaným jazykom, ako je Basic.

divízie

Java má veľkú knižnicu programov na prenos dát založených na protokoloch ako TCP/IP (Transmission Control Protocol/Internet Protocol), ako je HTTP (Hypertext Transfer Protocol) alebo FTP (File Transfer Protocol). Programy napísané v jazyku Java môžu otvárať objekty a zakazovať k nim prístup prostredníctvom siete tretích strán.URL (Uniform Resource Location - univerzálna adresa zdroja) je také jednoduché ako miestne opatrenia.

Jazyk Java poskytuje silné a manuálne zručnosti pre prácu v strede. Kozhen, ktorý už niekedy skúšal písať programy na prácu na internete v iných jazykoch, poteší, aké ľahké je naučiť sa dôležité úlohy v Jave, napríklad vytváranie soketových spojení. Elegantný mechanizmus za takzvanými servletmi mimoriadne zefektívňuje prácu na serveri.

Servlety sú podporované mnohými populárnymi webové servery. (Práca týmto spôsobom bude popísaná v inom zväzku.) Komunikáciu medzi rôznymi objektmi v jazyku Java zabezpečuje mechanizmus na volanie vzdialených metód (tejto téme sa venuje aj iný zväzok).

spoľahlivý

Jazyk Java sa používa na vytváranie programov, ktoré sa dajú spoľahlivo použiť v každej situácii. Veľká časť zásluh v jazyku Java patrí včasnej detekcii. prípadné odpustky, Dynamická re-verifikácia (pod hodinou programov vikonannaya), ako aj vypínanie situácií, podobne ako milosť... Jediné, na čom záleží, je relevantnosť jazyka Java k jazyku C++ spočíva v modeli indikátorov prijaté v jazyku Java, ako zapnutie Je možné prepísať časť pamäte a poshkodzhennya hold.

Táto sila je tiež veľmi zábavná. Kompilátor jazyka Java zisťuje chyby podobné tým, ktoré sa vyskytujú v iných jazykoch, iba vo fáze vývoja programu. Okrem toho programy, ktoré strávili veľa času snahou zistiť, že k poškodeniu pamäte došlo prostredníctvom nesprávneho indikátora, budú radi, že takéto problémy v Jave v zásade nemôžu vzniknúť.

Ak ste predtým programovali v jazykoch Visual Basic alebo COBOL, v ktorých koncepty zjavne nie sú správne, možno nerozumiete, prečo je to dôležité. Programátori na movі S mali oveľa menej šťastia. Toto sú potrebné indikátory na prístup k riadkom, poliam, objektom a názvom súborov. Pri programovaní vo Visual Basicu nie je nič potrebné a program sa nemusí starať o alokáciu pamäte pre tieto entity. Na druhej strane je v jazyku množstvo dátových štruktúr, ktoré nemajú žiadne indikátory, preto je veľmi dôležité ich implementovať. Pre základné štruktúry, ako sú riadky a polia, sa indikátory nevyžadujú. Všetka sila ukazovateľov sa prejaví len tam, kde sa bez nich nedá zaobísť, napríklad pri vytváraní prepojených zoznamov. Program v Jave vždy odstráni nesprávne indikátory, nesprávny oddiel a tok pamäte.

bezstarostný

Jazyk Java na účely vikoristanya na hranici alebo rozdeleného stredu. Z týchto dôvodov bola neopatrnosť spojená s veľkou úctou. Jazyk Java vám umožňuje vytvárať systémy chránené pred vírusmi a zdrojmi tretích strán.

Keď sme ich prvýkrát videli, napísali: „Nič nehovor“ a hovorili málo. Skupina odborníkov na bezpečnosť napájania z Princetonskej univerzity identifikovala prvé chyby v ochrane systému verzie Java 1.0 po vydaní prvej verzie súpravy nástrojov JDK. Navyše, oni aj ďalší podvodníci čakali a neustále objavujú nové a nové funkcie v bezpečnostných mechanizmoch všetkých aktuálnych verzií jazyka Java.

Pozitívnou stránkou tejto situácie je, že skupina vývojárov Java deklarovala svoju nulovú toleranciu voči akýmkoľvek kompromisom v bezpečnostnom systéme a urýchlene začala opravovať všetky problémy identifikované v bezpečnostnom mechanizme appletu. Zverejnením interných špecifikácií prekladača jazyka Java spoločnosť Sun výrazne uľahčila hľadanie opravných prostriedkov v bezpečnostnom systéme a obrátila pozornosť nezávislých podvodníkov na ich hľadanie.

Tým sa zabezpečilo, že všetky chyby v systéme budú okamžite zistené. Pre každého je mimoriadne dôležité oklamať systém Java. Doteraz nájdené návnady boli akosi nepolapiteľné a ich počet je (zrejme) malý.

Webová stránka spoločnosti Sun o bezpečnosti potravín je dostupná na nasledujúcej adrese URL: http://java.sun.com/sfaq/.

Riešime určité situácie, ktoré sú zodpovedné za bezpečnostný systém Java.

1) Obnova stohu spletitých programov, čo vedie k zhrnutiu „problému“, ktorý sa rozšíril na internet.

2) Poškodenie pamäťových grafov, ktoré existujú mimo priestoru videného v procese.

3) Čítanie a písanie lokálne súbory s použitím bezpečných tried prehliadača, ako je webový prehliadač, ktorý takýto prístup k súborom blokuje.

Všetky tieto bezpečnostné prístupy sú úplne domáce a musia sa vykonávať bezohľadne, aby im vôbec neublížili. Hoci doterajšie zistenia neboli ani zďaleka triviálne a všetky detaily ich pátrania sú často utajované, aby bola zaistená bezpečnosť Java, je to absolútne nemožné.

Za posledný rok pribudli ministerstvu obrany nové povinnosti. Počnúc verziou 1.1 Java zaviedla koncept tried s digitálnym podpisom. Odoslaním triedy s digitálnym podpisom môžete spievať ako autor. Ak mu dôverujete, môžete jeho triede poskytnúť všetky výhody dostupné vo vašom aute.

Alternatívny mechanizmus na doručovanie kódu, registrovaný spoločnosťou Microsoft, sa spolieha na technológiu ActiveX a zabezpečuje iba digitálne podpisy. Je zrejmé, že každý, kto pozná softvér spoločnosti Microsoft, môže potvrdiť, že programy široko používaného softvéru často padajú, čím spôsobujú vážne poškodenie jeho údajov. Bezpečnostný systém v Jave je oveľa spoľahlivejší, využíva najnovšiu technológiu ActiveX, ktorá kontroluje dáta od momentu ich spustenia a nedovolí im dostať sa do problémov.

Nie zatuchnutý typ architektúry

Kompilátor generuje objektový súbor, formát, ktorý nezávisí od architektúry počítača, - kompilovaný program je možné skompilovať na ľubovoľných procesoroch pod kontrolou programového softvérového systému Java. Na tento účel kompilátor Java generuje príkazy do bytecode, ktoré nezávisia od konkrétnej architektúry počítača. Bajtový kód je rozdelený tak, že na akomkoľvek stroji ho možno ľahko interpretovať alebo dokonca preložiť do kódu závislého od stroja.

Toto nie je nová myšlienka. Pred viac ako 20 rokmi bola v systéme implementujúcom jazyk Pascal, ktorý vyvinul Niclaus Wirth, aj v systéme UCSD Pascal nainštalovaná rovnaká technológia. Prepisovanie bajtkódu je veľkým prínosom pre víťazné programy (synchrónna kompilácia to však v mnohých prípadoch kompenzuje). Vývojári v jazyku Java veľmi dobre zvládli sadu príkazov bytecode, čo sa im darí na väčšine súčasné počítače, Ľahko preložené do skutočných strojových príkazov.

Nezávislé od stroja

Okrem C a C++ nie sú v špecifikácii Java žiadne aspekty, ktoré závisia od implementačného systému. Veľkosť hlavných dátových typov a aritmetické operácie s nimi sú presne definované.

Napríklad typ int v jazyku Java vždy znamená 32-bitové celé číslo. V jazykoch C a C++ môže typ int znamenať buď 16-bitové alebo 32-bitové celé číslo, ako aj celočíselné číslo dostatočnej veľkosti, podľa výberu vývojára konkrétneho kompilátora. Jediný rozdiel je v tom, že veľkosť typu int nemôže byť menšia ako veľkosť typu short int a väčšia ako veľkosť typu long int. Oprava veľkosti číselných typov vám umožní odstrániť množstvo nepríjemností spojených so softvérovými programami na rôznych počítačoch. Binárne dáta sa ukladajú a prenášajú v pevnom formáte, čo tiež eliminuje nezrovnalosti spojené s rôznym poradím bajtov na rôznych platformách (konflikt „big endian / little endian“). Riadky sú uložené v štandardnom formáte Unicode.

Knižnice, ktoré sú súčasťou systému, predstavujú strojovo nezávislé rozhranie. Publikovaná je napríklad abstraktná trieda Window a jej implementácia pre operačné systémy Unix, Windows a Macintosh.

Kozhen, ktorý sa niekedy pokúsil napísať program, ktorý by dobre fungoval pod kontrolou operačných systémov Windows, Macintosh a desiatich druhov unixového systému, vie, že táto úloha je ešte dôležitejšia. Verzia Java sa hrdinsky pokúsila vyriešiť tento problém poskytnutím jednoduchého súboru nástrojov, ktorý prispôsobuje základné prvky používateľského rozhrania veľkému počtu softvérových platforiem. Žiaľ, knižnica nám po veľkom vynaloženom úsilí neumožnila dosiahnuť uspokojivé výsledky na rôznych platformách. (Keď na rôznych platformách v grafické programy boli odhalené masakry.)

Bolo to však menej ako klas. V mnohých doplnkoch je nezávislosť od stroja oveľa dôležitejšia ako grafické rozhranie navrhnuté pre používateľa. Tieto doplnky samotné ťažili z vydania Java 1.0. Teraz však sada nástrojov na tvorbu grafického rozhrania po úpravách už neleží v používateľskom rozhraní na hostiteľskom počítači. Nová verzia je to zmysluplnejšie a podľa nás aj prospešnejšie pre profesionála, nižšie.

podlieha výkladu

Interpret jazyka Java je možné preniesť na ľubovoľný počítač a stiahnuť bajtový kód priamo do neho. Úprava odkazov je oveľa jednoduchší proces a vývoj programov môže byť oveľa rýchlejší a efektívnejší.

Možno to dáva výhodu pri vývoji ďalších materiálov, ale citát je zjavne prehnaný. Ak náhodou máte kompilátor Java, ktorý je súčasťou súpravy nástrojov JSDK (Java Software Development Kit), bude to vyžadovať veľa úsilia. (Niektoré kompilátory až do tretej generácie, napríklad kompilátory od IBM, pracujú oveľa rýchlejšie.) Rýchlosť rekompilácie je len jedným z faktorov, ktoré charakterizujú efektivitu programovacieho jadra. Ak ste zažili plynulosť stredného programovania Java a Visual Basic, môžete byť sklamaní.

vysoko produktívne

Hoci bajtové kódy možno interpretovať efektívnejšie, existujú situácie, v ktorých je potrebná ešte väčšia účinnosť. Bytekódy možno preložiť „za behu“ do strojových kódov pre konkrétny procesor, na ktorom je tento program zostavený.

Pretože na písanie bajtkódov sa používa tlmočník bez toho, aby nasledoval slová " vysoká produktivita"Na bohatých platformách je však možný aj iný typ kompilácie, ktorý zabezpečujú synchrónne kompilátory (just-in-time kompilátory-JIT). Prekladajú bajtkód do strojovo závislého kódu, ukladajú výsledok do pamäte a potom ho volajú, keď potrebné Podrobnosti.Fragmenty V tomto prípade je výklad dokončený len raz, tento prístup má mnohokrát väčšiu plynulosť práce.

Aluminizing na tie synchrónne zlúčeniny sú všetci jeden cez, nyzh Mashinosavi-Iskiyshiyatori, páchne zakaždým, keď prazuyu, nabhagato іinterprettator, zabúdajú na aktivity 10- il 20-podvodu. Táto technológia sa neustále zdokonaľuje a ak je to možné, môže dosiahnuť rovnakú rýchlosť bez toho, aby prekonala tradičné kompilátory. Synchrónny kompilátor môže napríklad určiť, ktorá časť kódu sa upravuje častejšie, a optimalizovať, ktorá časť kódu sa upravuje čo najrýchlejšie.

bohato splývavé

Zabezpečuje lepšiu interaktivitu a ovládanie aplikácií.

Ak ste niekedy skúšali organizovať veľké množstvo tokov platieb pomocou nejakého programovania, poteší vás, aké ľahké je zarábať peniaze v Jave. Prúdy v jazyku Java môžu využívať výhody veľkých procesorových systémov, keďže to operačný systém umožňuje. Bohužiaľ, implementácia streamov na väčšine platforiem sa veľmi líši od jedného typu k druhému a vývojári Java nevynakladajú žiadne úsilie na získanie najnovších informácií. Pre všetky počítače sa však stratí iba kód na klikanie na streamy; Jazyk Java posúva implementáciu bohatého vlákna na základ operačný systém alebo stream knižnice. (Vlákna sú popísané v inom zväzku.) Nenechajte sa zmiasť, veľmi jednoduchosť organizácie výpočtov veľkých vlákien v jazyku Java je veľmi užitočná pri vývoji softvérových serverov.

dynamický

V skutočnosti je Java dynamickejšia ako C++ alebo C++. Musíme sa rozbiť, aby sme sa mohli ľahko prispôsobiť stabilne pokojnému strednému životu. Knižnica môže jednoducho pridávať nové metódy a objekty bez toho, aby spôsobila akúkoľvek škodu. Jazyk Java vám umožňuje jednoducho získať informácie o priebehu vášho programu.

V týchto situáciách je to ešte dôležitejšie, ak potrebujete pridať kód do už dokončeného programu. Ukážme si to na príklade tohto kódu, ktorý fascinuje internet, aby sa mohol rozhliadnuť. Vo verzii Java 1.0 nebolo vôbec jednoduché získať informácie o priebehu zbaleného programu, no najnovšia verzia jazyka Java programátorovi odhaľuje štruktúru aj správanie sa objektov zbaleného programu.
To je obzvlášť cenné pre systémy, ktoré sú zodpovedné za analýzu objektov počas vývoja programov. Takéto systémy zahŕňajú vytvorenie grafického rozhrania pre klienta, inteligentné debuggery, meniteľné komponenty a databázy objektov.

Jazyk Java a internet

Myšlienka je jednoduchá: vývojári môžu získať bajtové kódy Java z internetu a stiahnuť si ich do svojich počítačov. Java programy, ktoré fungujú pod kontrolou webových prehliadačov, sa nazývajú applety. Na spustenie tohto apletu potrebujete webový prehliadač, ktorý podporuje Javu a natívnu interpretáciu bajtkódu. Licencia pre Víkendové kódy Za jazyk Java je zodpovedná spoločnosť Sun, kvôli nemennosti jazyka aj štruktúry jeho základných knižníc. Bohužiaľ, v skutočnosti nie je všetko tak. Rôzne verzie Netscape a prehliadačov internet Explorer povzbudiť rôzne verzie Jazyky Java a tieto verzie sú značne zastarané. Táto nešťastná situácia vytvára stále viac chýb vo vývoji apletov, čo umožňuje víťazné výhody zostávajúca verzia java film. Na vyriešenie tohto problému sa Sun pokazil Java program Plug-in, ktorý vám umožňuje vytvoriť najpohodlnejší spôsob spúšťania programov v jazyku Java založených na prehliadačoch Netscape a Internet Explorer.

Príťažlivosť apletu je vyvolaná prenosom obrázka na webovú stránku. Applet sa stane súčasťou strany a text okolo neho obteká a zaberá miesto. Význam však spočíva v tom, že obrázky sú teraz živé. Vono reaguje na príkazy koristuvach, mení svoje vonkajší pohľad Zabezpečí prenos dát medzi počítačom, na ktorom je applet zobrazený, a počítačom, na ktorom je aplet spustený.

Príťažlivosť apletu podnecuje vloženie drobca na webovú stránku. Applet sa stáva súčasťou strany a text okolo neho plynie. Vpravo je, že obrázky sú „živé“. Reaguje na príkazy operátora, mení svoj vonkajší vzhľad a prenáša dáta medzi počítačom, na ktorom je applet umiestnený, a počítačom, na ktorom je aplet spustený.

Na obr. 1.1 ukazuje dobrý príklad dynamickej webovej stránky, ktorá obsahuje zložité výpočty a statický applet na zobrazenie molekúl. Aby ste lepšie pochopili štruktúru molekuly, môžete ju zabaliť alebo zmeniť mierku obrázka, vikorista. Takéto manipulácie nie je možné implementovať na statiku internetové stránky, Nemôžeme sa však vyhýbať apletom. (Tento aplet možno nájsť na http: //jmol.sourceforge.net.)

Malý 1.1. Applet Jmol

Pomocou apletov môžete na webovú stránku pridať nové tlačidlá a textové polia. Takéto applety sú však veľmi vyhľadávané cez telefónnu linku.

Rovnaké výsledky môžete získať aj pomocou dynamického HTML, formulárov HTML (Hypertext Markup Language) alebo skriptov, napríklad JavaScriptu. Zdá sa, že prvé applety boli použité na animáciu: glóbusy, tancujúce kreslené postavičky, podivné texty atď. Väčšina prehnane reagovaných však dokáže pracovať s animovanými súbormi GIF a jazyk Dynamic HTML v kombinácii s podrobnými skriptami dokáže fungovať oveľa viac ako applety.

V dôsledku nejednotnosti prehliadačov a nepohodlnosti procesu prístupu cez spojenie krvácania applety, určené pre webové stránky, sa nestali veľkým úspechom. V prípade lokálnych sietí (intranetov) je situácia úplne iná. Určite nemajú problémy súvisiace s priepustnosťou kanála, a preto sú v sieti potrebné applety. Z lokálnej siete si môžete vybrať požadovaný prehliadač alebo nainštalovať program Java Plug-In. Podporovatelia nemôžu presunúť program dodaný cez bariéru na nesprávne miesto alebo ho nesprávne nainštalovať a systémový administrátor nie je potrebné chodiť na všetky klientske počítače a aktualizovať programy na nich. Na výrobu tovaru, plánovanie zásielok, zber prepravných nákladov a pod. sa používa veľké množstvo programov, ktoré rozkúskovalo veľké množstvo korporácií v podobe appletov a prehliadačov prehliadačov.

Kým sme písali knihu, kyvadlo sa opäť otočilo z klientskych programov smerom k programovaniu na strane servera. Aplikačné servery Zokrema môžu využívať monitorovacie schopnosti Java virtuálneho stroja na automatickú verifikáciu, prepojenie databáz, synchronizáciu objektov a plynulé vypnutie prehliadača a na upútanie pozornosti, ako aj na spustenie ďalších procesov, potrebných na škálovanie servera. vedľajšie doplnky, ktoré možno nebude možné správne implementovať. Programy, ktoré vytvárajú doplnky, teda popreli možnosť kúpiť si tieto skladacie mechanizmy, namiesto toho, aby rozobrali svoje automaty. To zvýšilo produktivitu mnohých programátorov - sústredili sa na logiku svojich programov, nezameriavali sa na detaily spojené s prácou serverov.