Јава обука. Јава програмирање лекции. Стекнување почетно искуство. Freelancing

Навикнати сме на брз пристап до информации и подеднакво брза апсорпција. Претпочитаме петминутни видеа отколку длабоки предавања и кратки написи наместо книги. Нема да тврдам дека добра книга за програмирање ќе замени која било статија, тоа не е така. И тоа сигурно нема да ја замени практиката. Сепак, за мене лично, вистинското разбирање на основите на програмирањето дојде откако јас, откако решив стотици проблеми на курс за програмирање и прочитав еден тон написи, почнав истовремено да ја проучувам теоријата од книги и добро навлегував во нив. Веќе подолго време го барав мојот личен „најдобар Java туторијал за почетници“. Подолу се дадени неколку книги кои ми беа корисни во поголема или помала мера во различни фази од моите студии.

„За најмалите“

Можете да започнете со читање на следните две книги на почетокот на вашите студии, паралелно со видеото, или, ако учите со JavaRush, заедно со првите нивоа. Тие, особено првиот, се погодни за луѓе со нулта програмска позадина.

Раководител Прво Јава

Почнав со оваа книга не затоа што ми е омилена, туку затоа што е наједноставна. Оваа книга, според многу програмери, е најдоброто упатство за Java од нула. Покрај тоа, тој е навистина и целосно „од нула“, односно е погоден за оние кои штотуку почнуваат и сè уште не разбираат каков вид програмирање ѕвер е. Таа дојде кај мене премногу доцна. Мислам дека затоа не можев да го ценам. Беше многу пријатно да се „прочита“, но морав долго да барам нешто специфично во него. Материјалот таму е претставен сликовито, но прилично површно (затоа што е од нула!) и многу теми и потребни објаснувања едноставно ги нема. Но, мојот пријател, кому му беше наследен, се воодушеви од тоа и викаше дека ова не е само најдобриот Java учебник за почетници, туку вистинско светско ремек дело и вака треба да се претстави сложениот материјал. Предности:
  • Најдобар Java туторијал од нула, за комплетни кукли, напишани на жив јазик;
  • Кул илустрации и хумор;
  • Објаснувања со примери од реалниот живот.
Недостатоци:
  • Многу „вода“ за оние кои веќе навлегле во темата;
  • Не секогаш успешни загатки и вежби.

Херберт Шилд. Java 8 водич за почетници

Откако го разгледав овој учебник, помислив дека ќе биде добро погоден за оние кои сакаат потрадиционална презентација на материјалот отколку во Headfirst, а во исто време бараат туторијал од нула. На некои места, презентацијата во книгата е многу детална, потсетува на проширена и преведена документација со добри визуелни примери. Понекогаш, што се однесува до мене, авторот ја преминува границата и почнува премногу да џвака, читањето станува досадно... и наеднаш - салто - и некое прилично сложено место речиси веднаш се пропушта, а вие сте целосно збунети обидувајќи се да разберете што и каде промаши. Сепак, нема премногу такви пасуси во книгата, а познавам луѓе кои веруваат дека Водичот за почетници е најдобриот туторијал за Java за оние кои сè уште не знаат ништо. Лично, не ми падна многу мазно. Да речеме, почнувам да сортувам низ колекциите и наместо човечко објаснување, ми даваат задача самостојно да креирам Сет врз основа на низи. Кул проблем, но би сакал подобро да разберам кои се прво стандардните колекции! Иако оваа книга, како и претходната, се смета за учебник за почетници, моето искуство како наставник сугерира дека е добра само во комбинација со други материјали: нема сè да биде едноставно и разбирливо за студент по хуманитарни науки. „Водичот за почетници“ најмногу одговара за некој кој барем научил програмирање (на пример, на универзитет), се откажал од него одамна и во исто време го сака стилот на презентација на авторот. Предности:
  • Традиционално промислено презентирање на основите;
  • Добри примери.
Недостатоци:
  • Има „скокови“ од „премногу џвакање“ до „брзо кажано“;
  • Малку досадно на места.
Патем, Херберт Шилд има уште една позната книга за програмирање - „Јава 8. Целосен водич" Ова е сосема поинаков учебник, пофундаментален. Ајде да продолжиме на тоа.

Референци и напредни водичи

Книгите во овој дел ќе бидат корисни за оние кои веќе се вклучиле во потполност и бараат книги за подобро разбирање на теоријата и практиката.

Херберт Шилд „Јава 8. Целосен водич“

Решив да ја преземам оваа книга од Интернет за да ја проценам, а потоа да одлучам дали да ја купам или не. Без шега, 1300 страници текст! Па, цената не е помалку импресивна од обемот. Точно истото го направив и со двотомната „Професионална библиотека“ од Кеј Хорстман (повеќе за тоа подолу). Гледајќи напред, ќе кажам дека го избрав вториот. Зошто? Бидејќи во книгата „Јава. Комплетниот водич“ Ги видов истите недостатоци како во „Водичот за почетници“. Некогаш е џвакано, понекогаш стуткано, но во исто време не е само стуткано, туку некако говорно стуткано. Ова е веројатно стилот на авторот и мислам дека некому ќе му се допадне, поточно, нивниот начин на размислување. Генерално, Java 8: The Definitive Guide е добра референтна книга за Java. Но, лично повеќе ми се допадна претставувањето на истите теми во друга книга. Предности:
  • Комплетен водич. Се чини дека ги има сите теми што треба да ги знае почетник, а не само почетник.
  • Детални објаснувања.
Недостатоци:
  • Многу вода (но на некои луѓе тоа може да им се допадне!);
  • Преводот на руски не е најдобар.

Јава. Професионалната библиотека, Кеј С. Хорстман, Гери Корнел

Книгите на Шилд и Хорстман често се споредуваат една со друга. И двајцата имаат верни фанови. За мене, двотомната книга на Хорстман е најдобриот учебник за Јава. Таа, исто така, стана референтна книга за мене на почетните и средните нивоа на JavaRush. Кога не разбрав тема, најмногу му се обраќав на Хорстман и тој ми разјасни многу работи. Книгата опфаќа сè, од синтакса до програмирање со повеќе нишки, локализација на апликации и работа со XML. И не дозволувајте името „Професионална библиотека“ да ве исплаши (тоа ме исплаши), основите се покриени прилично добро. Покрај тоа, корисно е периодично да го препрочитувате за да го освежите и организирате вашето знаење. Велат дека дури и професионалците наоѓаат нешто корисно за себе во тоа... не знам. Ако станам професионалец, ќе ти кажам! Предности:
  • Со импресивен број на страници, има малку вода (за разлика од Шилд).
  • Содржи се што им е потребно на почетниците.
  • Открива Java 8.
  • Добра презентација на теми за колекции и генерики.
  • Многу добро се спарува со JavaRush. Дојдете до темата, решавајте проблеми, во одреден момент не разбирате нешто - гледајте го Хорстман, обидете се повторно.
Недостатоци:
  • На некои може да им се чини дека книгата е малку сува;
  • Нема пракса;
  • Превод на руски со грешки.

"Јава" Програмски методи“. Блинов, Романчик

Еднаш прочитав на еден форум дека има книга наречена „Индустриско програмирање“ и има некои добри проблеми. Се испостави дека не лажеле. Најдов копија од него во PDF на веб-страницата на белоруската ЕПАМ. Публикацијата таму не е најнова (на Java 6), но книгата е напишана како солиден универзитетски учебник, односно, на места презентацијата е донекаде мачна и академска. НО! Има навистина многу добра колекција на Java програмски проблеми, како и тест задачи. Тие велат дека специјализантите од ЕПАМ учат од оваа книга, а исто така е усвоена од многу офлајн курсеви за Java.

Пристапот кон задачите таму е малку поинаков од оној на JavaRush, односно, во просек, задачите овде се малку покомплицирани и секоја од нив е нешто како... не мини, туку микро-проект. Затоа го препорачувам JavaRush дури и на студентите, бидејќи мислам дека недостатокот на практичната страна на курсот е што сите задачи во него се веќе целосно дизајнирани и има премногу совети. Да речеме, проблемите на ООП од оваа збирка ми помогнаа многу добро да го разберам овој ООП, заедно со книгите за „безвременските класици“ за кои пишувам подолу. Книгата е напишана како за идни „веслачи“, затоа ги опишува Hibernate технологиите за развој на дистрибуирани системи, како и основите на HTML, XML, JavaScript. „Индустриско програмирање“ е, ако не и најдоброто упатство за Java, тогаш многу добар учебник. Но, треба да дојдете до тоа веќе подготвени. Да речеме, по десетина или две нивоа на JavaRush. Подоцна го открив неговото ново и ревидирано издание, веќе под името „Јава. Програмски методи“.

Предности:
  • Одличен избор на проблеми и тест ставки;
  • Има официјална бесплатна верзија (верувам дека е официјална, бидејќи не е на некој root tracker, туку на веб-страницата на EPAM);
  • Споредба со C++.
  • Можност да се разбере што оди во стажирање на ЕПАМ.
Недостатоци:
  • Премногу фундаментална презентација. Но, за повторување со вежбање ќе биде погодно.
  • Нема Java 8.

Безвременска класика

Книгите за кои пишувам подолу може да се наречат свети текстови за почетници и напредни „јависти“.

Ефективна Јава, Џошуа Блох

Тоа е богатство, а не книга, и се фокусира на основните принципи на јазикот од еден од неговите автори, Џошуа Блох. Најверојатно, веќе сте ги користеле нејзините библиотеки (на пример, во колекцијата Java). Веднаш ќе направам резервација: на комплетните почетници, освен за некои чудо-брзински трчачи, не им е потребна книгата Ефективна Јава. Прво, подобро е да ја совладате синтаксата и да стекнете барем малку програмска пракса, така да се каже, „да се справите со тоа“, а потоа да го преземете создавањето на Џошуа Блох. Книгата ќе биде корисна за оние кои сакаат вистински да ја разберат Java, да формираат вистински пристап при програмирање на овој јазик, да разберат не само како да го направат тоа, туку и сè друго што треба да се направи токму на тој начин. И, исто така, за оние кои сакаат длабоко да го разберат OOP (во принцип, ова се меѓусебно поврзани работи). Оваа книга е најдобриот учебник за Java во контекст на објектно-ориентираниот пристап кон програмирањето. Предности
  • Брилијантна презентација на материјал на тема ООП.
  • Обезбедени се најдобри практики за програмирање.
  • Авторот ја познава Java многу добро одвнатре.
Недостатоци
  • Сè уште нема превод на најновото издание на книгата (третото).

Јава филозофија, Брус Екел

Насловот на оваа книга зборува сам за себе. Ова е уште една „алфа и омега“ за секој што сака да знае Јава! Во оваа книга ќе најдете добри и јасни примери, а од нив ќе биде јасно како функционира Java. Тешко ми е да кажам која од двете книги - „Филозофијата на Јава“ или „Ефективно програмирање“ е подобра. Би рекол дека Екел е нешто попријателски настроен кон почетниците, додека Блох бара одредено искуство. Првпат го прочитав поглавјето од „Јава филозофија“ кога само што почнав да учам JavaRush (мислам дека беше наведено како препорачано на едно од раните нивоа). Тогаш таа не ми одговараше. Но, по ниво 10 или 12 - тоа беше песна! И, ќе кажам, многу корисна песна. Подоцна се вратив на тоа, кога дојдов до Ефективното програмирање. Ќе го кажам ова: нека Блох и Екел зборуваат за иста работа, но на различни начини, и нека даваат различни примери. Предности
  • Продлабочена презентација на принципите на Java од професионалец;
  • Ќе биде добро за оние кои се префрлаат од други јазици - има многу споредби со C++, на пример.
  • Ми се чини дека можете да почнете да го читате на ниво 10, но Екел - малку подоцна.
Недостатоци
  • Многу неуспешни руски преводи;
  • Недостаток на ново издание на книгата на руски јазик.

Кратки заклучоци

  1. Најдобар Java туторијал од нула за оние кои воопшто не знаат ништо - Head First Java;
  2. Најдобар Java референтен учебник и референтна книга е „Професионална библиотека“. И, се разбира, документација на Oracle.
  3. Најдобрата колекција на Java програмски задачи - JavaRush. Па, меѓу книгите - „Јава. Програмски методи“.
  4. Најдобрите безвременски класици се „Филозофијата на Јава“ и „Ефективна Јава“. Ова е задолжително читање за секој што решил да разбере сè реално, за длабоко разбирање. Но, подобро е да ги читате постепено и по ред.
  5. Дополнителен заклучок: има можност - прочитајте на англиски јазик. Преводите на руски се генерално многу слаби.
Англиска верзија на овој пост: врвни книги за Java за почетници на CodeGym
Веројатно многумина ќе речат: „Веќе се напишани многу добри книги на Јава, зошто уште една? И за многумина, најверојатно мојата книга нема да даде ништо ново. На крајот на краиштата, неговиот главен читател треба да биде (се претпоставува) личност која воопшто нема искуство со програмирање. Од една страна, се чини дека е доволно да се земе книга со добар, најцелосен опис и тоа е тоа. Но, во пракса тоа е далеку од случајот. Не е доволно да читаш за нешто. Главната работа е да се разбере како да се користи. Бидете способни да прилагодите различен сет на алатки за да решите одреден проблем. Оценете кој од постоечки опцииподобро. Како да се постигне ова? Вежбајте. Многу вежбајте да анализирате тривијални примери и сами да решавате слични проблеми. Сепак, практиката, за жал, не е сè. Покрај него, мора да постои правилно избрана, дозирана теорија. Ова значи дека нема да го фрлам целото знаење на читателот одеднаш. Намерно ќе поедноставам многу за подобро разбирање на суштината на нештата. Се надевам дека професионалците нема луто да ме хулат поради ова. На крајот на краиштата, откако ќе ја прочита мојата книга, читателот ќе може да премине на литература која обезбедува подетално знаење и сам да ја разбере.


Поглавје: Вовед (или приказна за програмирање)

Веројатно, во нашата прогресивна доба, многумина слушнале зборови како „програма“ и „програмирање“. Ајде да откриеме што е тоа, од каде доаѓа и во кои насоки сега се распаѓа.
Прво, да започнеме со терминот „програма“. Ако со едноставни зборови, тогаш програмата е низа од дејства или инструкции до компјутерот што мора да ги изврши. Кога извршуваме програма, ги извршуваме една по една сите команди или инструкции наведени во неа. Програмирањето, соодветно, е процес на креирање или пишување програми.
Како компјутерот ги разбира или дешифрира командите напишани во програма?
Всушност, програмата што ја гледа компјутерот и програмата што лицето ја гледа на екранот се многу различни, бидејќи се напишани на различни јазици. Компјутерската машина го разбира само таканаречениот бинарен код - одредени комбинации на единици и нули. Зошто е тоа? Сè е едноставно ако се свртиме кон механиката на процесот. Командите се пренесуваат до компјутерот преку јамки, составени од множество жици (канали) и таканаречената податочна магистрала. Во каналот има електричен сигнал, што значи дека единицата пристигнала. Нема сигнал - нула.
Меѓутоа, ако го отвориме текстот на програма напишана од програмер, тој нема да изгледа како континуирано множество од единици и нули и ќе биде сосема можно да се „прочита“ и да се анализира во команди. Како тогаш компјутерот ги разбира програмите напишани од луѓе? Но, овде работат таканаречените преведувачи од еден на друг јазик. Овие преведувачи се нарекуваат преведувачи. Преведувачите можат да се поделат на два вида: компајлери и толкувачи. Компајлерите ја преведуваат целата програма и ја зачувуваат во специјални извршни датотеки. За да извршите таква програма, треба да ја извршите добиената датотека. Толкувачите ги преведуваат командите онлајн и ги извршуваат веднаш. Една по една команда: преведена команда - извршена, преведена следната - извршена, итн.
Бројот на команди во бинарниот код зависи од нивото на сложеност на јазикот од кој преведувачот преведува. Ако јазикот е доволно блиску до бинарниот код, тогаш една команда на таков јазик ќе има од 1 (асемблирање) до 10 команди во бинарен код. Таквите јазици вклучуваат, на пример, Pascal, C. За јазици на високо ниво, како што се C++ и Java, бројот на команди во бинарен код по јазична команда на високо ниво може да биде 100 или повеќе.
Од една страна, употребата на компајлери е подобра, бидејќи програмите целосно преведени на машински јазик работат побрзо. Сепак, овие програми работат само на конкретниот оперативен систем за кој се компајлирани. Предностите на толкувачите ја вклучуваат таканаречената крос-платформа, односно независност од специфичен оперативен систем (платформа). Што значи тоа? Факт е дека за извршување на истата програма во различни оперативни системи, ќе се користат различни толкувачи: во Windows еден преведувач, во Linux - друг, во трет оперативен систем - трет итн. Но, текстот на самата програма останува непроменет и јасно, каде и да го отвориме. Со компајлирана програма сè е покомплицирано. Прво, тој е веќе преведен на машински јазик и нема да можеме да го гледаме во вообичаената форма. Второ, програмата е јасно фокусирана на специфично операционен системи тоа е невозможно да се промени во компајлирана програма. За да извлечете таков трик, треба да ја земете изворната програма, која е напишана на јазик разбирлив за програмерот, да ги направите потребните промени и да ја компајлирате за друга платформа (оперативен систем).
Во принцип, и компајлери и толкувачи може да се развијат за кој било јазик. Таквите јазици за кои има и компајлери и толкувачи, на пример, вклучуваат Visual Basic. Сепак, постојат голем број јазици за кои постојат само компајлери или толкувачи. На пример, за јазикот Паскал има многу компајлери, но нема толкувачи (барем јас не сум слушнал за нив). За јазиците VBScript и JavaScript, постојат само толкувачи.
Одделно, можеме да разликуваме програмски јазици кои користат некоја комбинација на принципи на компилација и толкување. Јава исто така може да се смета за таков јазик. Прво, програма напишана во Java се обработува од компајлер. Сепак, излезот не е машински код, туку некој среден код (псевдо-код или бајтекод), кој потоа се толкува од виртуелната машина Java. Јава виртуелната машина е програма што мора да се инсталира на оперативниот систем каде што програмата, претворена во псевдо-код, ќе работи.
Како и каде се пишуваат програмите?
Ајде да размислиме што ни треба за да создадеме работна програма. Прво, некаде треба да го напишеме текстот на програмата. Што значи дека ни треба малку уредувач на текст, во кој ќе го направиме ова и ќе можеме да го зачуваме. Второ, ќе ви треба компајлер или преведувач. Во принцип, ова е потребниот минимум. Сепак! Треба да се напомене дека додека пишуваме програми, ние, како и сите луѓе, правиме грешки. Прво, можеме да направиме грешка во текстот. Би било погодно ако уредувачот на текст може да ги види барем наједноставните грешки во синтаксата на напишаните команди и некако да не извести за ова (на пример, со подвлекување, како што прави Word за обичните текстови). Второ, може да има логички грешки кога се чини дека сè во текстот е напишано правилно, но ништо не функционира како што се очекува. Во овој случај, би било убаво да имате пригодни алатки за наоѓање грешки додека програмата работи.
За погодност на програмерите, сите практични алатки се комбинираат во специјални програми - системи за програмирање. Обично тие имаат специјален уредувач на текст, преведувачи, дебагер (за наоѓање грешки при извршување на програмата) и многу практични алатки за да ја олеснат напорната работа на програмерот. Ваквите „добри“ вклучуваат автоматско генерирање на програмски делови, практично стартување на програми со еден клик (кога самиот програмски систем го стартува саканиот преведувач и добиената извршна програма) и многу, многу повеќе.
Обично за еден јазик не постои еден програмски систем, туку неколку. Секој програмер, природно, го избира најзгодниот систем за себе. На пример, за Java, најчестите програмски системи се „IntelliJ Idea“, „Eclipse“, „NetBeans“.
Бидејќи авторот го претпочита првиот од нив, а другите се уште ви се непознати, за нашата пракса ќе ја користиме „IntelliJ Idea“.


Дел 1. Инсталирање на потребните програми и нивно поставување

Поглавје: JDK - Комплет за развој на Java (комплет за развој на Java)

Да почнеме со најважното нешто - инсталирање сет на потребни програми за развој и извршување на програми напишани во Java. На англиски, името на овој сет е Java Development Kit, или скратено JDK. Тоа е последната кратенка што ќе ја користиме во иднина.
Што е вклучено во JDK?
JDK ги вклучува следните компоненти:
1) JRE - Java Runtime Environment (Java Runtime Environment)
Збир на програми и библиотеки потребни за извршување на псевдо-код. Всушност, ова е виртуелната машина Java потребна за извршување на програми составени за неа.
Забелешка: Ако сакате само да извршувате компајлирани Java програми, а не да ги градите, нема смисла да го инсталирате JDK. Доволно е да се инсталира само JRE.
2) компајлери
3) дебагери
4) специјализирани библиотеки
5) и други развојни алатки
Што се библиотеки и што има во нив?
Програми на јазик високо нивокористете готови, докажани фрагменти од код за да извршите различни стандардни дејства. Таквите дејства вклучуваат: прикажување информации на екранот, внесување податоци од тастатурата, пресметување стандардни математички функции итн. Ваквите фрагменти од кодот се наоѓаат во библиотеки, претставени како посебни датотеки.
Каде можам да добијам JDK?
Секоја верзија на JDK може да се преземе целосно бесплатно од официјалната веб-страница на Oracle. За да го направите ова, прво внесете ги следниве зборови за пребарување во кој било интернет пребарувач: „Преземи JDK“. Првиот сајт на листата е наш.

Во знакот со потребната верзија, прво изберете ја опцијата „Прифати договор за лиценца“ (преведена од англиски како „Се согласувам со договорот за лиценца“), а потоа кликнете на саканата датотека во оваа табела.
Како што веќе знаете, Java е програмски јазик меѓу платформи, односно истата програма напишана во неа работи исто на различни оперативни системи. Последното својство се постигнува поради различни JRE и JDK на различни оперативни системи (платформи).
Секако, мора да ја преземете инсталационата датотека што одговара на вашиот оперативен систем. На пример, ако работите на Linux, изберете ја соодветната датотека за Linux. Ако под Windows - датотека за Windows.
Ако го инсталирате JDK на 32-битен оперативен систем, преземете ја датотеката означена со x86. Ако е 64-битен, тогаш е означен x64.
Забелешка. Можете да го дознаете капацитетот на системот во Windows 7 на овој начин: кликнете на „Start“, кликнете со десното копче на „Computer“, изберете „Properties“. Ја гледаме вредноста на својството „Тип на систем“.

На пример:

За 64-битен оперативен систем Windows и JDK 8u101 потребна датотекаќе го има следното име:
"jdk-8u101-windows-x64.exe"

За 32-битен оперативен систем Windows и JDK 8u101, потребната датотека ќе го има следново име:
"jdk-8u101-windows-i586.exe"

Како да инсталирате и правилно да го конфигурирате JDK (за Windows 7)?
Прва фаза: Инсталирање на JDK
За да го инсталирате JDK, треба да ја извршите инсталационата exe датотека со саканата верзија на JDK. Тогаш само треба да ги следите чекорите за инсталација.
Забелешка: Повеќе верзии на JDK и JRE може да се инсталираат на истиот оперативен систем. Можете да направите некој вид JRE главен (што ќе го користи Java виртуелната машина) во поставките на оперативниот систем. Можете да поставите специфичен JDK за проект и во оперативниот систем (ќе биде заеднички за сите проекти) и во програмскиот систем во кој е напишан овој проект.
Ајде да го погледнеме целиот процес на инсталација на JDK користејќи го примерот за инсталирање JDK 8u102 на 64-битен оперативен систем Виндоус систем 7 (ќе треба да ја извршите датотеката jdk-8u102-windows-x64.exe).

1. Во првиот прозорец, едноставно кликнете на копчето „Следно“.

2. Во вториот прозорец, прво изберете ја папката каде што ќе се инсталира нашиот JDK. За да го направите ова, кликнете на копчето "Промени ..." и изберете ја саканата локација на дискот.

Забелешка: Препорачливо е да се држите до една заедничка локација за сите папки со различни верзии на JRE. Тоа е, структурата на споделената папка треба да биде нешто како следнава:

После тоа, кликнете на копчето „Следно“.

Втора фаза: Поставување променливи на околината
За да може програмскиот систем да знае кој jdk стандардно да го користи за своите програми и оперативниот систем да може да препознава java-датотеки, потребно е да ги конфигурираме системските променливи во нашиот оперативен систем.
За да го направите ова во Windows 7, треба да ги преземете следниве чекори:

1) Одете на следните поставки:
Копче „Start“ --> кликнете со десното копче на „Computer“ --> „Properties“ --> „Advanced Environment Settings“ --> „Advanced“ табот --> „Environment Variables...“ копче

2) Под списокот „Системски променливи“, кликнете на копчето „Креирај“.

3) Внесете ги бараните податоци и кликнете „OK“:
Име на променлива JAVA_HOME
Променлива вредност<путь к папке, куда устанавливалось JDK(не JRE!)>

4) Најдете ја променливата „Пат“ во списокот со системски променливи, изберете ја и кликнете на копчето „Промени“.

5) Одете до крајот на полето „Variable Value“ (не бришете ништо!!!), додадете го следниов дел од текстот и кликнете „OK“:
;%JAVA_HOME%\bin\

6) Кликнете на OK за прозорецот Environment Variables, потоа на картичката Advanced и рестартирајте го компјутерот.


Поглавје: IDE (Integrated Development Environment) „IntelliJ Idea“ - Интегрирана развојна средина (програмски систем) „IntelliJ Idea“

„IntelliJ Idea“ е еден од најчестите програмски системи за Java. Погодно е и има многу алатки кои ја олеснуваат работата на програмерот. Несомнените предности вклучуваат прифатлива цена бесплатни верзииоваа развојна средина на Интернет.

Забелешка. Терминот IDE (интегрирана развојна средина) е идентичен со концептот „програмски систем“, но во професионална средина се користи почесто.

Каде можам да добијам „IntelliJ Idea“?
Овој IDE може да се преземе од официјалната веб-страница на компанијата JetBrains. За да го направите ова, прво треба да ги напишете следните зборови за пребарување во кој било интернет пребарувач: „Intellij Idea“. Првиот сајт во списокот што се појавува е наш.


Во оваа статија ќе се обидам да ги претставам основите на програмирањето во Делфи што е можно поедноставно и јасно.

Јава за кукли. Лекција 1. Здраво свет!

Прво, ќе ви кажам што може да направи Java. Прво, на овој јазик можете да пишувате аплети - програми кои се вградени во веб-страницата на веб-страницата. На пример, тоа може да биде игра, деловен графички систем и многу повеќе. Второ, можете да пишувате полноправни апликации во Java кои не се нужно поврзани со Интернет. Или можете да користите сервлети - програми кои, за разлика од аплетите, се извршуваат не на страната на клиентот, туку на страната на серверот.

Да почнеме со самите основи. Да и оддадеме почит на традицијата и да пишуваме наједноставната програма, кој прикажува поздравЗдраво свету. Ако немате Java, тогаш може да се преземе од официјалната веб-страница http://www.java.com/ru. Потоа инсталирајте го.

Ако Java сте го инсталирале, а потоа напишете го следниов текст во некој уредувач:

Јавен час HelloWorld {

Јавна статична празнина главна ( Стринг аргови ) {

Систем . надвор . печати ( "Здраво свету!" );

}

}

И не заборавајте да го зачувате под иметоЗдраво свету. java- Името на извршната класа мора да одговара на името на датотеката. За компајлирање, користете ја програмата javac.exe вклучени во стандардниот пакетЈава. Вака може да изгледа сериската датотека со компилацијаоваа java датотека:

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

пауза

Ако не се појавија грешки при компилацијата:

тогаш, најверојатно, компилацијата беше успешна кај вас во истиот директориум каде што се наоѓаше HellowWorld.јава Се појави и HellowWorld.класа:

Сега ајде да извршиме друга серија датотека што ќе го повика Java преведувачот заедно со нашата компајлирана датотека:

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

пауза

Ако сè е направено правилно, треба да го добиете овој резултат:

Ако го примивте, тогаш можам да ви честитам - ја напишавте вашата прва програма во Java. Во иднина ќе научиме како да пишуваме Java аплети и многу повеќе. И сега неколку зборови за самата програма. Како што забележавте, започнува со зборот јавност. Ова е модификатор што значи дека објавуваме нешто јавно достапно: класа, метод на класа или променлива. Постојат и други модификатори, на пример: приватен, заштитен, пријателски, конечен, апстрактен, статичен.Некои од нив може да се комбинираат едни со други. На пример, приватно значи дека променливата што сакаме да ја декларираме е приватна за другите класи. Но, ќе дојдеме до модификаторот подоцна. Сега да го погледнеме следниот клучен збор, класа. Тоа значи дека објавуваме класа. Во java сè е засновано на класи. Една од класите е нужно основната. И основната класа мора да биде јавна. Во овој пример, тоа е класата HelloWord. Засега тој е единствениот што го имаме.

Сега ќе се обидам да објаснам со едноставни зборови што е тоа Класаи што е објект.

Да се ​​потсетиме на училишниот курс по зоологија. Како се класифицира живиот свет? Прво, се воведува концептот на „кралство“.

1. Кралство на едноклеточни организми,

2. растително царство

3. Животинско царство.

Ајде да земеме животни. Тие можат да се поделат по тип. На пример:

1. Тип coeleterates.

2. Вид на рамни црви.

3. Вид на школки.

4. Филумски хордати.

Последните се поделени на цицачи, влекачи, водоземци, птици итн. Можете да одите уште подалеку во класификацијата, но ние нема да го сториме тоа сега, туку ќе преминеме директно на програмирање.

Во јазикот Јава, можете, слично на класификацијата на живиот свет, да ги класифицирате објектите (парчиња програма и податоци). Има часови за ова.

Стоп запре! - велите, - зошто да ги класифицирате овие предмети?

Замислете дека вие, како некој демиург (создател, бог), создавате живот на Земјата. Прво ги развивте наједноставните органски соединенија. Значи, за доброто на експериментот, што ќе се случи. Потоа ги споиле во сложени молекули, од кои, како тули, ги собрале наједноставните микроорганизми. Но, вашата крајна цел е создавање на интелигентен живот. Затоа, не застанавте тука, туку создадовте повеќеклеточни организми. Потоа почнаа да ги подобруваат и развиваат. Некои видови се покажаа остварливи, некои изумреа (диносаурусите). И конечно целта беше постигната - се појави Хомо Сапиенс - Хомо сапиенс.

Сега да се спуштиме на земјата и да го замислиме програмирањето како креација, каде што ја принудувате вашата програма да еволуира до одредена состојба кога може да се користи, а потоа понатаму, постепено зголемувајќи ја и подобрувајќи ја функционалноста.

Сега да замислиме дека атомот е наједноставната програмска команда или единица на информации (кои, гледате, се неразделни едни од други, бидејќи програмата работи со нешто - така е, со информации).

Тогаш молекулата е потпрограма. Или некој предмет.

Така создадовме еден куп објекти во нашата програма. Треба некако да ги класифицираме за да не се збуниме. Ова е она за што Java обезбедува часови. Користејќи ги, опишуваме класа на објекти (општ концепт, на пример птици), а потоа, имајќи ја опишаната класа, можеме да создадеме објект - пример од оваа класа. Односно, класата е самиот збор Birds, а објектот е некоја специфична птица, ако продолжиме со нашата аналогија.

Понатаму, птиците доаѓаат во различни видови. Но, сите тие имаат некои заеднички карактеристики, наследени од концептот „Птици“. Слично на Java, од класа можете да креирате друга класа која ги наследува нејзините својства и методи (карактеристики). Тоа се нарекува наследство.

Различни птици имаат различни бои на пердуви, облици на клун и крила. Слично на класите, при креирање на нова класа, наследените карактеристики може да се променат. Тоа се нарекува полиморфизам.

Значи, ги сфативме основните концепти на Java. Сега да поминеме низ програмата.

Вака прогласуваме класа:

јавен час HelloWorld {

Во овој случај, има само една класа во нашата програма, а тоа е основната класа, односно класата одговорна за стартување на програмата. Затоа неговото име мора да одговара на името на датотеката, така што толкувачот „знае“ каде да започне со извршување на програмата.

Основната класа (HelloWorld) има основен метод: main. Го прогласивме за јавен и статичен. Првиот покажува дека методот е јавен. Да не беше така, тогаш нашата програма едноставно немаше да започне. Има и методи кои не се јавно достапни, но за нив ќе зборуваме во следните лекции.Засега, само запомнете дека основниот метод (кој се активира кога ја стартуваме програмата) мора да биде јавен. И неговото име треба да биде главно, така што толкувачот знае каде да започне со извршување на програмата.

Сега што е статично. Ова е модификатор што покажува дека методот е статичен. Односно, работи дури и кога не е креиран примерок од класата (објектот). Општо земено, полињата и методите со статичкиот модификатор се заеднички за сите објекти од класата. Ние исто така ќе зборуваме за ова подоцна.

Секој метод може или нема да има повратна вредност. Ако го прави тоа, тогаш тоа е функција. Типот на повратна вредност е вклучен и во декларацијата на методот. Ако не, тогаш поставете го на void (како во нашиот пример).

Пристапот до полињата и методите на објектот се случува преку точка. Има и вградени објекти, на пример, Систем, кои ги користиме во нашиот пример:

Систем . надвор . печати ( "Здраво свету!" );

во овој случај, пристапуваме до полето за излез, кое исто така е објект наменет за излез на податоци, и го повикуваме неговиот метод за печатење, кој прикажува текст на екранот (како командата PRINT во старата добра BASIC).

(В) Шуравин Александар

А креирањето веб-страници станува сè попопуларно и го привлекува вниманието на огромен број луѓе. Дури и лице без специјално образование може да започне да развива програми; главната работа е желбата и желбата да научи нов материјал и постојана практика.

Опции за студирање

Каде да започнете да учите програмирање од нула Постојат неколку начини да го совладате новиот материјал во оваа област. Приватните наставници ќе ви покажат како да започнете да учите програмирање од нула и ќе ве научат на важни аспекти на градење код. Сепак, овој метод е прилично скап, па затоа главно се користат следните наставни методи:

  1. Специјализирани курсеви. Нивната цена е многу помала од лекциите од личен учител. Вреди да се напомене дека многу работодавци реагираат позитивно на достапноста на различни сертификати за завршување на обука во компјутерски академии. Обрнете внимание на курсевите на светски познатите компании Microsoft и Cisco.
  2. Далечински бесплатни курсеви. На интернет има многу голем број услуги со кои можете да гледате предавања од Оксфорд, Харвард и други познати образовни институции во светот. Постојат и посебни платформи за обука на практични програмски вештини. Прочитајте повеќе за далечинско учење и корисни интернет услуги понатаму во статијата.
  3. Самоучење. Каде да започнете да учите програмирање од нула ако не планирате да се запишете на курсеви и да трошите пари? Во овој случај, најлесниот начин е да се едуцирате. Треба да започнете со учење со читање на основите, не навлегувајте во теоријата, веднаш започнете со вежбање, бидејќи само во процесот на креирање програма ќе ги стекнете потребните вештини.

Откако ќе ја изберете опцијата за обука што ви одговара, треба да одлучите за предметната област, бидејќи програмирањето има прилично широк опсег на различни гранки.

Како да се избере вистинската насока?

Директно зависи од типот на софтвер што ќе го креирате во иднина:


Ако платата е најважниот фактор за вас, свртете го вашето внимание на пазарот на труд. Во денешно време, најбарани се програмерите кои се специјализирани за јазиците Java, C#, ASP.NET, C++.

Јазици на ниско и високо ниво. Разлика и апликации

Се верува дека сите програмски јазици се поделени на високо и ниско ниво. Кодот на ниско ниво е полесен за обработка на компјутерот, но потребно е долго време да се запише и бара повеќе знаење за доменот. Таквите јазици (на пример, склопување) се користат за пишување софтвер за дигитални чипови и микроконтролери. Тие не се многу погодни за учење програмирање од нула. Корисните услуги и литература од светски познати автори дадени подоцна во статијата ќе ви кажат каде да започнете да ги пишувате вашите први програми.

Јазиците на високо ниво се многу полесни за употреба бидејќи користат вградени библиотеки за да го поедностават и визуелизираат кодот. Повеќето модерни софтвери се пишуваат со употреба на јазици на високо ниво.

Програмирање од нула: каде да започнете апликации?

Процесот на креирање мобилни програми им овозможува на програмерите да работат со најновите алатки и, како резултат на тоа, да заработат пристојна сума пари преку монетизација. Прво треба да ја изберете страницата каде што ќе работите:

  1. Google Play. Продавница за апликации за корисници на оперативниот систем Андроид. Овој ОС има најголем удел на корисници на пазарот. Јазиците Java и C/C++ се користат за развој на апликации и игри. Најпопуларните се апликациите за месинџер и клиентите. социјалните мрежи, облак складирање, игри.
  2. Продавница за Windows Mobile. Оваа продавница брзо се здобива со популарност заедно со паметните телефони од Microsoft. Во земјите на ЗНД, повеќето корисници претпочитаат таблети базирани на платформата Windows Phone. Програмирање на апликации за таква продавница ви помага да заработите повеќе пари од монетизација, бидејќи, за разлика од Android, скоро сите програми во продавницата на Windows се дистрибуираат на платена основа.
  3. Продавница за Апликации. Друга профитабилна платформа за развој (јазик - Objective-C). Процесот на креирање програми за уредите на Apple бара претходно инсталирана развојна околина наречена Xcode. Следниот чекор е да го научите програмирањето на Objective-C од нула. Книгата на Дејвид Марк „Учење C за Mac“ ќе ви каже каде да започнете да пишувате код. Второ издание“.

Јава јазик

Повеќето професионални програмери препорачуваат да го започнете вашето програмско знаење со јазикот Java. Лесно е за учење и во исто време барано на пазарот. Користете ги советите подолу ако одлучите да научите програмирање од нула. Каде да започнете со развојот на Java?

Јава е објектно-ориентиран програмски јазик на високо ниво кој е потребен за развој на повеќето модерни веб апликации и игри. За време на процесот на компилација (претворање на пишаниот код во јазик разбирлив за уредот), кодот се претвора во низа од бајти, така што програмата може лесно да се тестира на кој било Виртуелна машинаЈава.

Програмирање од нула. Каде да започнете со Java и веб-кодирање?

Јазикот Јава е широко користен во веб-развојот. Пред да започнете со целосниот процес на програмирање, треба да научите Java, PHP, MySQL, HTML, CSS. Подетално објаснување на овие концепти е дадено подолу:

  1. Java - се користи за пишување алатки за веб-страници и пишување на логиката на функционалноста на веб-страницата.
  2. PHP е јазик за креирање лични веб-страници. Има скрипта структура. Водечки јазик во креирањето на динамични веб-страници кои се популарни денес. PHP е потребен за да се разбере скриптирањето и програмирањето од нула. Каде да се започне? Од читањето на книгата на Џош Локхат „PHP: The Right Way“.
  3. MySQL е систем за управување со основите на податоците. Широко се користи при креирање веб-страници кои бараат складирање на големи количини на групирани податоци.
  4. HTML не е програмски јазик. Ова е јазик за означување што се користи за пишување на основата на веб-страница (градежни блокови, дистрибуција на текст и параграфи, и така натаму).
  5. CSS - Каскаден стилски лист. Се користи само во врска со HTML за да се даде стил и изглед на јазикот за означување.

Само со учење на основните концепти на пресвртниците на овие технологии, можете да започнете да креирате професионални динамични веб-страници кои се многу барани денес.

Веб програмирање. Релевантност и карактеристики

Темата за веб програмирање е особено актуелна денес. Како што е наведено погоре, за да започнете да развивате веб-елементи, треба да имате прилично големо знаење за јазиците за означување, создавање скрипти, логика и стилови.

Во денешно време никого нема да изненадите со сајтови кои се креирани само со користење на HTML и CSS, така што веб-програмерите кои можат да направат страница визуелно убава, како и да ја пополнат со сета функционалност неопходна за корисниците, станаа барани.

Овој тип на развој бара создавање на два типа на иста програма: серверски и клиентски делови. Програмерот мора да го разбере принципот на работа на таканаречените сокети - податочни пакети кои овозможуваат пренос на потребните текови на информации преку мрежата помеѓу серверот и клиентот.

Креирање апликации за оперативниот систем Виндоус

За да развиете такви програми, ќе ви треба познавање на јазикот C#. Бесплатната услуга од Microsoft наречена Виртуелна академија ќе ви овозможи да ги научите сите карактеристики на овој јазик и да вежбате пишување едноставни апликации.

Според новата политика на Мајкрософт, сите апликации се поставуваат во продавницата за софтвер, за да можете да добиете пристап за да го монетизирате вашиот проект.

Семејството на јазици C (C, C++, C#). Особености

Програмирање од нула - од каде да започнете да избирате јазик? Одговорот на ова прашање може да се добие со подетално навлегување во видовите технологии за креирање апликации. Треба да се земе предвид и релевантноста на одреден јазик.

Јазиците C, C++, C# имаат едно заедничко - присуство на функции OOP (објектно-ориентирано програмирање). Оваа технологија ви овозможува значително да го поедноставите процесот на пишување програмски код. Секој софтверски објект е опишан во одредена класа и има свои параметри, методи и својства. Така, програмерот не мора да пишува огромни парчиња код секој пат ако истиот објект треба да се користи неколку пати.

Корисни интернет услуги за учење на основните принципи на програмирање и структурата на кодот на која било апликација

Во првата фаза од обуката, речиси секоја веб-услуга ќе ви понуди да ги испробате своите можности користејќи Паскал, наједноставниот од јазиците на високо ниво. Се користи за образовни цели и се изучува во училиштата и техничките факултети за студентите да можат да го разберат програмирањето од нула. Каде да започнете со кодирањето на Pascal? Пред сè, треба да ја преземете развојната околина на вашиот компјутер. Ова е мала извршна датотека во која ќе биде запишан програмскиот код. Користете TurboPascal, бидејќи тоа е најпопуларната средина за учење на овој програмски јазик.

HourOfCode е веб-услуга од Microsoft. Наменет е јасно да им покаже на учениците што се циклус, променлива, класа и услови. Процесот на учење е како игра.

CodeAcademy е моќен ресурс за учење на речиси секоја технологија за кодирање. Посветувајќи само еден час дневно, нема ни да забележите како ќе научите да програмирате и да креирате свои проекти.

Udacity е сервис кој на своите корисници им овозможува бесплатен пристап до предавања од познати професори и програмери.

Стекнување почетно искуство. Freelancing

Откако ќе ги научите основните принципи на избраниот јазик, можете безбедно да ги започнете вашите први проекти. Започнете да се занимавате со хонорарци, бидејќи вака ќе го пополните вашето портфолио и ќе стекнете искуство во комуникацијата со клиентите. Ваквите вештини ќе ви бидат корисни во иднина доколку сакате да се вработите во компанија како официјален развивач на софтвер.

Крајна линија

Програмирање од нула: од каде да започнете? За кукли, професорите од светски познатите универзитети советуваат да вежбаат со основните структури кои ја формираат основата на секој програмски јазик. Запишете се на специјализирани курсеви или самостојно студирајте слушајќи ги предавањата преку Интернет.

Јава од денес е најпознат и најпопуларен меѓу сите програмски јазици. Почна да постои во 1996 година, првично развиен од Sun Microsystems. Со текот на времето, таа беше апсорбирана од Oracle Corporation. Програмерите планираа да го направат Java универзален јазик применлив за речиси сите задачи.

Во текот на изминатите 23 години, Java се прошири и значително се подобри. Тековната верзија денес е Java 11, објавена во септември минатата година. Во ова време, Java стана повеќе од јазик за општа намена. Може да се нарече полноправна платформа која има свој екосистем. Денес, јазикот навистина може да се користи за се: од создавање мали програми до колосални интернет портали. Често се користи за развој на софтвер за сите познати компјутери, паметни телефони и паметни апарати. Повеќето од сите апликации на Android се напишани на Java.


Карактеристики на Java

Има многу карактеристики, но клучната е принципот на преведување на кодот во посебен бајтекод, кој не е врзан за платформата. Последователно, овој бајтекод се обработува на JVM. Овој фактор ја разликува Java од другите толкувани јазици како Перл, итн. Во нив шифрата веднаш оди кај толкувачот. Од друга страна, Java исто така не е чисто компајлиран јазик (како оние што се слични на C).

Поради необичната архитектура, се постигнува крос-платформа и преносливост на Java-базирани апликации. Таквите производи може да се извршуваат на Windows, Linux, Mac OS и дури не бараат прекомпилација на код. Имплементацијата на JVM на сите платформи може да се разликува, но принципот и извршувањето остануваат исти.

Синтаксата на Јава е блиска до јазиците C; ние многу потсетуваме на и. Ако имате познавање на еден од јазиците слични на C, разбирањето на Java нема да биде тешко.

Следната важна карактеристика на јазикот- автоматски го собира целото ѓубре и го отстранува од меморијата. Во пракса, ова значи дека Java ги отстранува неискористените и застарени објекти од меморијата без дополнителни команди. На други јазици, ова треба да се направи рачно, периодично пишувајќи ги соодветните команди.

Јава е класифициран како објектно-ориентиран јазик. Постои поддршка за наследување, полиморфизам и многу повеќе. Овој пристап помага да се создадат големи проекти кои се лесни за размерување, проширување и уредување.

Тоа е релативно едноставен јазик што може да се научи прилично брзо. Благодарение на рамките на него, можете да креирате стандардна функционалност за веб-локации, игри и апликации на компјутери и паметни телефони во неколку команди, без да се мешате со кодот на ниско ниво.


Врв