როგორ ვისწავლოთ ჯავის პროგრამირება - სრული გზამკვლევი. როგორ გამოიმუშავოთ ფული, როგორც Java პროგრამისტი: პროფესიონალური განვითარების ვარიანტები Java არის კროს-პლატფორმული ენა

ავტორისგან:გამარჯობა მეგობრებო! დღეს ჩვენს დღის წესრიგში არის ჯავის კოდის მცოდნე ადამიანების გამომუშავების ვარიანტები. თუ დააკავშირებთ, როგორც თქვა აკადემიკოსმა ა.პ. ერშოვი, "ბუღალტერის სიზუსტე, დაზვერვის ოფიცრის გამჭრიახობა, დეტექტიური რომანების ავტორის ფანტაზია და ეკონომისტის ფხიზელი გამჭრიახობა", მაგრამ ამავე დროს, ბევრს მუშაობ და ცოტას გამოიმუშავებ, შემდეგ ეს სტატია შეიძლება ძალიან სასარგებლო იყოს თქვენთვის. მოდით გავარკვიოთ, როგორ გამოიმუშაოთ ფული Java პროგრამისტით.

რატომ ჯავა?

დღეს Java არის ერთ-ერთი ყველაზე პოპულარული და პოპულარული პროგრამირების ენა. მასზე შეგიძლიათ დაწეროთ პროგრამა ნებისმიერი ოპერაციული სისტემისთვის, მათ შორის მობილურისთვის. იმის გათვალისწინებით, რომ ბაზარი მობილური მოწყობილობებიბოლო დროს ექსპონენციურად იზრდება, შეგვიძლია დავასკვნათ, რომ ჯავის ენა ოქროს მაღაროა. თუ "არ შეანელებთ", რა თქმა უნდა. გარდა იმისა, რომ მოთხოვნადია IT ბაზარზე, ამ პროგრამირების ენის უპირატესობებში ასევე შედის:

კარგი ანაზღაურება. იმ ფულზე, რომელსაც ჯავის პროგრამისტს შეუძლია გამოიმუშაოს ქვემოთ ვისაუბრებთ. არ გადახვიდე, უბრალოდ ვიტყვი, რომ ხელფასი ძალიან, ძალიან წესიერია, განსაკუთრებით უფროსი დეველოპერისთვის. მით უმეტეს, თუ ის დოლარის კურსს უკავშირდება;

სწავლის სიმარტივე. იმისდა მიუხედავად, რომ ჯავის წინაპარი არის დიდი და ძლიერი C++, ის ინტუიციურად მარტივია და არ აქვს ასეთი „დახვეწილი“ კოდი. მით უფრო ადვილია მასზე გადასვლა CI ჯგუფის ენების შემდეგ;

განაწილება. როგორც უკვე ვთქვი, Java განკუთვნილია ყველა ოპერაციული სისტემისთვის;

JavaScript. სწრაფი დაწყება

უსაფრთხოება, რომელიც უზრუნველყოფილია ოთხსაფეხურიანი დაცვით, რომელიც ამოწმებს კოდს მავნეობისთვის;

მდგრადობა. თარგმანისა და ინტერპრეტაციის დროს კოდის ფრთხილად შემოწმების წყალობით, მრავალი სინტაქსის შეცდომა შეიძლება გამოვლინდეს განაცხადის შემუშავების ეტაპზე.

მოდით შევადაროთ ხელფასები!

ზოგჯერ საინტერესოა დაკვირვება სხვადასხვა პროგრამირების ენების განვითარების ტენდენციებზე. მაგრამ კიდევ უფრო საინტერესოა ხელფასების მონიტორინგი, რომელსაც თანამედროვე შრომის ბაზარი სთავაზობს პროგრამისტებს, რადგან ამბიციური სპეციალისტი ყოველთვის უფრო პერსპექტიული სამუშაოს უწყვეტი ძიების მდგომარეობაშია.

ხელფასის შეთავაზების საშუალო დონე პირდაპირ დამოკიდებულია პოზიციის დონეზე და პროგრამირების ენაზე, რომელსაც კანდიდატი ფლობს. ვნახოთ, რამდენს შოულობს წამყვანი Java პროგრამისტი: საშუალოდ, 155,000 რუბლი. და ეს არის ყველაზე მაღალი მაჩვენებელი ყველა სპეციალობას შორის, რომელიც წარმოდგენილია Superjob პორტალიდან ცხრილში (2015 წლის მაისი):

ზოგადად, უფრო მაღალი ხელფასების ტენდენცია ჩანს კონკურენციის შემცირებით. ჯავის პროგრამისტებს შორის ყველაზე ნაკლები კონკურენციაა - კარგ პერსონალზე მოთხოვნა აჭარბებს მიწოდებას.

შექმენით კომპეტენტური რეზიუმე.

თქვენი რეზიუმეს დაწერისას ყველაზე საპასუხისმგებლო, თუნდაც ზედმიწევნითი მიდგომა უნდა გამოიჩინოთ. შეამოწმეთ ყველა ასო. თუ წიგნიერებაში ეჭვი გეპარებათ, ნუ მოგერიდებათ დახმარება მცოდნე ადამიანს სთხოვოთ.

თქვენს რეზიუმეში მონიშნეთ თქვენი ცოდნა იმ ტექნოლოგიების შესახებ, რომლებიც მითითებულია სამუშაოს მოთხოვნებში. აღწერეთ პროექტები, რომლებშიც მიგიღიათ მონაწილეობა და თქვენი პასუხისმგებლობა ამ პროექტების ფარგლებში. უბრალოდ ნუ ალამაზებთ რეალობას - დიდი ალბათობით, გასაუბრებაზე მოგიწევთ პასუხის გაცემა თქვენს რეზიუმეში ჩამოთვლილ ყველა ტექნოლოგიაზე.

მოემზადეთ ინტერვიუსთვის.

პროექტზე გამოყენებული ჩარჩოების მიუხედავად, თქვენ უნდა აჩვენოთ Core Java-ს მყარი ცოდნა და, რა თქმა უნდა, JDBC და JEE. უმჯობესია დაიწყოთ Java Enterprise-ის სწავლა JSP-ისა და servlets-ის მუშაობის გაგებით.

გარდა ამისა, თქვენ უნდა იცოდეთ ერთ-ერთი ყველაზე მარტივი და კარგად დოკუმენტირებული აპლიკაციის სერვერი - Tomcat. შეეცადეთ გაიგოთ ეს შესრულების tuning, SLL და დისტანციური გამართვით.

JavaScript. სწრაფი დაწყება

ისწავლეთ JavaScript-ის საფუძვლები ვებ აპლიკაციის შექმნის პრაქტიკული მაგალითით.

თქვენ ასევე დაგჭირდებათ SQL, XML, JSON, XPath-ის მინიმუმ გამვლელი ცოდნა და SOAP-ისა და REST-ის გაგება. რაც შეეხება JavaScript-ს, თქვენ უნდა გქონდეთ კითხვა (ან კიდევ უკეთესი, წერა) ან jQuery.

და თუ სერიოზულად განიხილავთ თქვენი ცხოვრების ჯავას დაკავშირებას, მაშინ ისწავლეთ ინგლისური ენა. ჯერ ერთი, გექნებათ საშუალება დასაქმდეთ საერთაშორისო კომპანიაში და მეორეც, წაიკითხავთ სასარგებლო ლიტერატურას ინგლისურ ენაზე. ნებისმიერ შემთხვევაში, თქვენი, როგორც სპეციალისტის ღირებულება მნიშვნელოვნად გაიზრდება.

იპოვნეთ დამსაქმებელი.

ინტერნეტში უამრავი რესურსია სამუშაოს მოსაძებნად. თქვენ ასევე შეგიძლიათ ნახოთ ვაკანსიების განყოფილებები პროგრამირების ფორუმებზე. და არ დაგავიწყდეთ ჰკითხოთ თქვენს მეგობრებს - შესაძლოა ისინი მუშაობენ კომპანიაში, რომელიც ეძებს Java პროგრამისტს.

კომპანიის არჩევის შემდეგ, წაიკითხეთ მიმოხილვები მის შესახებ ინტერნეტში. ვაკანსია, რომელიც თქვენ გაინტერესებთ, შესაძლოა პერსონალის ბრუნვის შედეგი იყოს და არა ბიზნესის გაფართოების. დიდ კომპანიებში არის მოსაწყენი, ერთფეროვანი სამუშაოს მიღების რისკი. და უფრო რთული იქნება იქ შენი ფასდაუდებელი წვლილი შეამჩნიო. ხოლო მცირე კომპანიები ნიშნავს კრეატიულობისა და რისკის უფრო დიდ დონეს. ნებისმიერ შემთხვევაში, თქვენ შეგიძლიათ ისწავლოთ ბევრი რამ ნებისმიერ კომპანიაში, განსაკუთრებით თუ ეს თქვენი პირველი სამუშაოა Java პროგრამირებაში.

ნუ "ირცხვენთ თავს" ინტერვიუზე.

თავდაპირველად, ინტერვიუს აღიქვათ არა როგორც დაკითხვა, არამედ როგორც ორი სპეციალისტის საუბარი. თუ დაგისვათ შეკითხვა, რომელზეც პასუხი არ იცით, არ ინერვიულოთ. თუ რაიმე პრაქტიკაში არ შეგხვედრიათ, იყავით გულწრფელი და დაპირდით, რომ შეავსებთ ცოდნის ხარვეზებს. მთავარია მოერიდოთ პასუხებს „არ ვიცი“. სანამ კაპიტულაციას დაიწყებდეთ, შეეცადეთ ლოგიკურად მოაგვაროთ საკითხი, დაფიქრდით როგორ მოაგვარებდით ამ პრობლემას დეველოპერები რომ იყოთ.

ინტერვიუს დაწყებამდე გაიმეორეთ თქვენს მეხსიერებაში ყველა პროექტი, რომელშიც მონაწილეობა მოგიწიათ. ამის შესახებ მაინც დაგეკითხებათ, ამიტომ წინასწარ მოემზადეთ ამ ნაწილისთვის.

იფიქრეთ თავისუფალ ან დისტანციურ მუშაობაზე.

რა განსხვავებაა დისტანციურ მუშაობასა და ფრილანს შორის? პირველ შემთხვევაში მოგიწევთ გასაუბრების გავლა, სავარაუდოდ ტელეფონით ან სკაიპით. გასაუბრებაზე მოგიწევთ დამსაქმებელი დაარწმუნოთ, რომ თქვენ ხართ დამოუკიდებელი ადამიანი, რომელსაც შეუძლია საკუთარი თავის ორგანიზება და განვითარება. დისტანციური მუშაობა ხშირად გულისხმობს ხელშეკრულების გაფორმებას ერთი წლის განმავლობაში.

ფრილანსირებისას, როგორც წესი, არავისთან ანგარიშის გაწევა არ გიწევთ - საკუთარ კოდს წერ, როცა გინდა და სადაც გინდა. თუმცა, მოგება ნაკლებად სტაბილურია, ვიდრე დისტანციური მუშაობის დროს. გარდა ამისა, თქვენ მუდმივად უნდა აკონტროლოთ ფორუმები, თავისუფალი ბირჟები და სოციალური ქსელები ახალი შეკვეთების მოსაძებნად.

ღირებული გამოცდილების მისაღებად, შეგიძლიათ შეუერთდეთ ღია კოდის განვითარების გუნდს. იქ შეგიძლიათ ივარჯიშოთ თქვენი თვითორგანიზაციის უნარები და ისწავლოთ სწრაფად ჩაუღრმავდეთ სხვის კოდს.

კიდევ ერთი ვარიანტი, თუ როგორ შეუძლია Java პროგრამისტს ფულის გამომუშავება, არის საკუთარი, მოთხოვნადი აპლიკაციის შექმნა Android-ისთვის. ამისათვის თქვენ მოგიწევთ მსგავსი რამის გაკეთება:

მაშინაც კი, თუ თქვენ ვერ ახერხებთ ფულის გამომუშავებას თქვენი აპლიკაციიდან, ეს მნიშვნელოვნად გაზრდის თქვენს კარმას, როგორც Java დეველოპერს, როდესაც სამუშაოს მიიღებთ, რადგან რეალური გამოცდილება უკეთესია, ვიდრე ნებისმიერი პროგრამირების წიგნი.

Java-ს გარდა, შეგიძლიათ სცადოთ სხვა ენების სწავლა და გახდეთ სრულფასოვანი სრული დეველოპერი. როგორც ზემოთ აღვნიშნე, უმჯობესია ისწავლოთ JavaScript, HTML და CSS.

რომ შევაჯამოთ. Java პროგრამისტები იყვნენ და უახლოეს მომავალში იქნებიან ყველაზე მოთხოვნადი IT სპეციალისტები. პროფესიონალებს აფასებენ მთელ მსოფლიოში, ხშირად მუშაობენ უცხოური კომპანიების სასარგებლოდ და იღებენ ღირსეულ ხელფასს დოლარის კურსზე. და ეს, ხედავთ, საუკეთესო დაცვაა ეკონომიკური კრიზისისგან.

ჯავის პროგრამისტისთვის ფულის გამომუშავების მრავალი გზა არსებობს და ხშირად გიწევთ შრომა და შრომა, რომ დაიწყოთ კარგი შემოსავალი. თუმცა, დიდი სურვილითა და მონდომებით, შეგიძლიათ მიიღოთ პერსპექტიული სამუშაო მსოფლიოს ნებისმიერ წერტილში.

ამ ინსპირირებით დავასრულებ. იმედი მაქვს მოგეწონათ ჩემი სტატია. თუ წინააღმდეგი არ ხარ, მაშინ გაუზიარე მეგობრებს. ჯავას პროგრამისტებს კარგ შემოსავალს ვუსურვებ და ყველას მადლობას გიხდით ყურადღებისთვის!

JavaScript. სწრაფი დაწყება

ისწავლეთ JavaScript-ის საფუძვლები ვებ აპლიკაციის შექმნის პრაქტიკული მაგალითით.

ჯავა. სწრაფი დაწყება
Java ენის საფუძვლები მცირე თამაშის შემუშავების მაგალითის გამოყენებით

ვიდეოკურსი გაგაცნობთ ერთ-ერთ ყველაზე პოპულარულ, ლამაზ, ფართოდ გამოყენებულ, სანდო პროგრამირების ენას - Java-ს. პირველ ნაწილში თქვენ შეისწავლით ენის საფუძვლებს და ისწავლით მარტივი კონსოლის აპლიკაციების დაწერას. შემდეგი, ჩვენ გეტყვით, თუ როგორ შეგიძლიათ შექმნათ მარტივი თამაში გრაფიკული ინტერფეისით რამდენიმე წუთში და მესამე მხარის ბიბლიოთეკების გამოყენების გარეშე. კურსის მიზანი: გამოავლინოს ენის ზოგიერთი შესაძლებლობები და დავანახოთ, რომ ჯავა მარტივი და სახალისოა. კურსის წარმატებით გავლის შემდეგ თქვენ შეძლებთ ჩვენს მიერ შექმნილი მოდელის გამოყენებას საკუთარი თამაშების შესაქმნელად. მასალის ეფექტურად ათვისებისთვის საჭიროა პროგრამირების მინიმალური გამოცდილება, ამიტომ სრული დამწყები დეველოპერებისთვის გირჩევთ, პირველ რიგში გაიაროთ უფასო ონლაინ კურსი „პროგრამირების საფუძვლები“.

გაკვეთილი 1: Java ენის გაცნობა

ენის მოკლე აღწერა; განვითარების საჭირო ინსტრუმენტების დაყენება; პირველი პროგრამის დაწერა.

გაკვეთილი 2. ცვლადები, მონაცემთა ტიპები, განშტოება

Java ენის ფუნდამენტური ცნებების აღწერა მარტივი კონსოლის კალკულატორის მაგალითის გამოყენებით.

გაკვეთილი 3. ციკლები; თამაში "გამოიცანი ნომერი"

ვიწყებთ კონსოლის თამაშის „გამოიცანი რიცხვის“ დაწერას, რომლის გამოყენებითაც გავაგრძელებთ ენის საფუძვლების შესწავლას.

გაკვეთილი 4. მეთოდები

მეთოდების დემონსტრირება თამაშის „გამოიცანი რიცხვის“ გაუმჯობესების მაგალითის გამოყენებით.

გაკვეთილი 5. თამაშის "გამოიცანი რიცხვი" განვითარების დასრულება

თამაშის კოდს მივყავართ საბოლოო ვერსიამდე.

გაკვეთილი 6. თამაშის „დაიჭირე წვეთი“ შემუშავება. Ნაწილი 1

შექმენით თამაშის ფანჯარა.

გაკვეთილი 7. თამაშის „დაიჭირე წვეთი“ შემუშავება. Მე -2 ნაწილი

ისწავლეთ სურათების ჩატვირთვა და დახატვა; მოდით განვახორციელოთ თამაშის ციკლი.

გაკვეთილი 8. თამაშის „დაიჭირე წვეთი“ შემუშავება. ნაწილი 3

ჩვენ ვიჭერთ მაუსის მოვლენებს და ვასრულებთ თამაშის განვითარებას.

გაკვეთილი 9. რეზიუმე

ჩვენ ვაგროვებთ პროექტს ერთ jar ფაილში, რათა მოსახერხებელი იყოს მისი გაშვება განვითარების გარემოს გარეშე; მოდით შევაჯამოთ.

პროგრამისტები არ იბადებიან, ისინი ქმნიან. და ეს ნიშნავს, რომ თქვენ მინიმუმ უნდა სცადოთ. ამ მიზნით შევქმენით ინტერაქტიული კურსი „პროგრამირების საფუძვლები“. თქვენ შეისწავლით ყველა ყველაზე სასარგებლო და რელევანტურ საკითხს თანამედროვე პროგრამირების ენების შესახებ და მიიღებთ პირველ გამოცდილებას კოდის წერაში. ჩვენ ვიფიქრეთ, როგორ შეგვექმნა ასეთი ონლაინ კურსი, რათა ის გახდეს ნათელი და დასამახსოვრებელი მოვლენა ყველა დამწყები პროგრამისტის ცხოვრებაში. ყოველივე ამის შემდეგ, ამ სფეროს შემდგომი ინტერესი დიდწილად დამოკიდებულია კოდის პირველ გაცნობაზე. ჩვენ გეტყვით და ვაჩვენებთ, თუ როგორ მუშაობს ყველაფერი, რა პროფესიებია მოთხოვნადი და განვითარების რა პერსპექტივები არსებობს IT სექტორის თითოეულ სფეროში. კურსის განმავლობაში ჩვენ შევქმნით ვებგვერდს ბრაუზერის თამაშებით და გამოვაქვეყნებთ პროექტს github.com-ზე. ეს საიტი გახდება პირველი შემთხვევა თქვენს მომავალ პორტფოლიოში, რაც ძალიან მნიშვნელოვანია, რადგან პორტფოლიო არის პირველი, რასაც ხალხი ყურადღებას აქცევს სამუშაოზე განაცხადის დროს. ამ კურსის გავლით თქვენ გადადგამთ პირველ ნაბიჯს სერიოზული სწავლისკენ და შეძლებთ მკაფიოდ განსაზღვროთ თქვენი ინტერესების მიმართულება!

გაკვეთილი 1. ალგორითმის, ცვლადების, მონაცემთა ტიპების ცნება.

შესავალი: რას გავაკეთებთ კურსზე?
გავხდები წარმატებული პროგრამისტი?
ალგორითმის კონცეფცია. სამუშაო გარემოს დაყენება. Გამარჯობა მსოფლიო.
ცვლადების შესავალი.
კომპიუტერული არქიტექტურა
მონაცემთა ტიპები: სტრიქონები და რიცხვები. ოპერაციები რიცხვებითა და სტრიქონებით.

გაკვეთილი 2. განშტოება. ციკლები.

ფილიალები: თუ/სხვა
მარყუჟები: ხოლო, ამისთვის
ლოგიკური ოპერაციები. გააკეთე while მარყუჟი.
თამაშის განვითარება "გამოცნობა"

გაკვეთილი 3. მასივები და ფუნქციები

მასივის გაცნობა. მეხსიერების განვითარების პროგრამა.
მასივის სიგრძის შეცვლა. მრავალგანზომილებიანი მასივები. ინგლისური ენის შესწავლის პროგრამა.
ფუნქციების გაცნობა. ფუნქციონირებს დაბრუნების პარამეტრის გარეშე.
ფუნქციები დაბრუნების პარამეტრებით.
რეკურსიული ფუნქციები. შეხებით აკრეფის სწავლების პროგრამის შემუშავება.

გაკვეთილი 4. ვებსაიტის განლაგება: HTML და CSS შესავალი

HTML-ის შესავალი
CSS-ის შესავალი
ვებსაიტზე ვდებთ თავსატეხების თამაშს
გამოცნობის თამაშს ვათავსებთ ვებგვერდზე
ვებსაიტის გამოქვეყნება ჰოსტინგისთვის

გაკვეთილი 5. თანამედროვე პროგრამირების ენების მიმოხილვა

როგორ ავირჩიოთ პროგრამირების ენა და მიმართულება?
პროგრამირების ენის არჩევა: ვებ განვითარება
მობილურის განვითარება. უნივერსალური პროგრამირების ენები
როგორ ვისწავლოთ პროგრამისტი?

კურსი დამწყები დეველოპერებისთვის, მათთვის, ვისაც სურს სწრაფად აითვისოს ობიექტზე ორიენტირებული პროგრამირების (OOP) საფუძვლები და ისწავლოს საკუთარი პროექტების შექმნა. კურსის მთავარი მახასიათებელია ჯავის ენის თეორიული საფუძვლების შესწავლისა და პრაქტიკული ონლაინ ტრენინგის ერთობლიობა მენტორის ხელმძღვანელობით.

გაკვეთილი 1: შესავალი ჯავაში

  1. როგორ მუშაობს ჯავა. JVM. Ზოგადი პრინციპები. ხელსაწყოები.
  2. Გამარჯობა მსოფლიო!
  3. ცვლადები და მონაცემთა ტიპები.
  4. მეთოდები და მათი გამოყენება.
  5. პირობითი განცხადებები.

გაკვეთილი 2. მარყუჟები და მასივები

  1. ციკლების კონცეფცია. ხოლო მარყუჟი;
  2. მარყუჟები for, foreach;
  3. მასივის კონცეფცია;
  4. საშინაო დავალების გადაწყვეტილებების ანალიზი.

გაკვეთილი 3. სახელოსნო. პროცედურული Tic Tac Toe

  1. ალგორითმის შემუშავება;
  2. ლოგიკის შექმნა;
  3. კომპიუტერული მოწინააღმდეგის ლოგიკის შექმნა;
  4. საშინაო დავალების ანალიზი.

გაკვეთილი 4. შესავალი OOP

  1. რა არის OOP და რატომ არის საჭირო? Ძირითადი ცნებები;
  2. კლასების და ობიექტების შექმნა;
  3. კაფსულაცია;
  4. მემკვიდრეობა;
  5. აბსტრაქტული კლასები, ინტერფეისები და პოლიმორფიზმი;
  6. საშინაო დავალების ანალიზი.

გაკვეთილი 5. მეხსიერება, მონაცემთა შენახვა

  1. მონაცემთა შენახვა Java-ში: stack, heap;
  2. ნაგვის შეგროვება;
  3. სიმებიანი კლასები, სიმებიანი აუზები;
  4. საშინაო დავალების ანალიზი.

გაკვეთილი 6. გრაფიკული ინტერფეისები

  1. Swing ბიბლიოთეკა და სხვა გრაფიკული ბიბლიოთეკები. სვინგის საფუძვლები;
  2. განთავსების მენეჯერები და ელემენტების გასწორება;
  3. მოვლენები სვინგში. მენიუები და დიალოგური ფანჯრები;
  4. საშინაო დავალების ანალიზი.

გაკვეთილი 7. სახელოსნო. "Tic-tac-toe" OOP-ში

  1. კლასების და ინტერფეისის განსაზღვრა;
  2. ლოგიკის განვითარება, ნაწილი 1;
  3. ლოგიკის განვითარება, ნაწილი 2;
  4. საშინაო დავალების ანალიზი.

Git-ის შესავალი
Git საფუძვლები

13 ვიდეოს განმავლობაში ჩვენ გაგაცნობთ Git ვერსიის კონტროლის სისტემის საფუძვლებს. მოდით გავარკვიოთ, რატომ არის ეს მნიშვნელოვანი თანამედროვე განვითარებისა და ერთობლივი პროგრამირებისას. მოდით გავეცნოთ Git-ის ძირითად ცნებებს: საცავებს, commits, ფილიალებს და ტეგებს. მოდით ვისწავლოთ ძირითადი ოპერაციები: საცავის შექმნა და კლონირება, ფილიალების გაერთიანება, ცვლილებების ისტორიის მოთხოვნა და მრავალი სხვა. ვნახოთ, როგორ უნდა წარადგინოთ საშინაო დავალება Git-ის გამოყენებით. ეს არის საბაზისო კურსი, რომლის შემდეგაც შეგიძლიათ დაიწყოთ ნებისმიერი პროგრამირების ენის შესწავლა. გარდა ამისა, მომზადებული იქნებით გასაუბრებისთვის, სადაც რამდენიმე კითხვა, როგორც წესი, ფოკუსირებულია ვერსიის კონტროლის სისტემაზე.

გაკვეთილი 1. ვერსიების კონტროლის სისტემების შესავალი

რა არის ვერსიის კონტროლის სისტემა?
ვერსიის კონტროლის სისტემების ტიპები
Git და მისი სარგებელი
დოკუმენტაცია

გაკვეთილი 2. ბრძანების ხაზთან მუშაობა

რა არის ბრძანების ხაზი?
რატომ არის მნიშვნელოვანი ბრძანების ხაზი?
როგორ გავხსნათ ბრძანების ხაზი?
სასარგებლო ბრძანებები

გაკვეთილი 3. ადგილობრივად მუშაობა Git საცავთან

კონსოლის კლიენტის შესავალი
Git-ის დაყენება
საცავის ინიცირება
საცავის კლონირება
გრაფიკული git კლიენტები

გაკვეთილი 4. ძირითადი ოპერაციები

ინდექსირება
ცვლილებების გამოქვეყნება
ავალდებულებს
ინდექსირების გაუქმება
Მიმდინარე სტატუსი

გაკვეთილი 5. git პროექტის ისტორია

ცვლილებების ისტორია
უკან დაბრუნება პროექტის ისტორიის მიხედვით
შეცვალეთ კრედიტები: git blame
.gitignore ფაილების იგნორირება
საიტი gitignore.io
საქაღალდეების შენახვა.keep

გაკვეთილი 6. ფილიალები

ფილიალის მენეჯმენტი
ფილიალების შექმნა და წაშლა
ტოტებს შორის გადართვა
კონფლიქტის მეთოდები და მათი მოგვარება
git შერწყმა

გაკვეთილი 7: დისტანციური Git საცავის შექმნა

Git ჰოსტინგი (GitHub, GitLab, Bitbacket)
შექმენით თქვენი საკუთარი bare-git საცავი
დარეგისტრირდით GitHub-ზე
ცვლილებების გამოქვეყნება დისტანციურ საცავში

გაკვეთილი 8. წაშლილი ტოტები

საცავის სახელები
მრავალი საცავი ერთ პროექტში
.git/config
ფილიალების მართვა დისტანციურ საცავზე

გაკვეთილი 9. ვერსია

ვერსიების მეთოდები
ტეგები და მათი ურთიერთობა ვალდებულებებთან
ტეგის დამატება
ტეგის წაშლა
ტეგის მართვა დისტანციურ საცავზე

გაკვეთილი 10. შერწყმა და გადარიცხვები

ჩვენ ვაერთებთ ცვლილებებს. git შერწყმა
ტოტებს გადავიტანთ. git rebase
გადაადგილება ავალდებულებს. გიტ ალუბლის არჩევანი
ჩვენ ვაერთებთ ვალდებულებას ერთში. git squash
კაკვები
მეტსახელები

გაკვეთილი 11. Gitflow

როგორ გამოიყენება და რატომ?
ტესტის ციკლები
შესაძლოა ლურჯი/მწვანე
გაუშვით ტოტები
ცხელი შესწორებები

გაკვეთილი 12. SSH

SSH პროტოკოლი
რატომ გამოიყენება?
გასაღებების შექმნა
გადამისამართება
SSH აგენტი
ფაილების კოპირება SSH-ის საშუალებით
Windows: Git Windows-ისთვის
SSH-ის გამოყენება Git-თან ერთად

გაკვეთილი 13. საშინაო დავალების წარდგენა Git-ის საშუალებით

მონაცემთა ბაზის საფუძვლები. 20 გაკვეთილი.
მონაცემთა ბაზის დიზაინი და SQL მოთხოვნები

მონაცემთა ბაზები (DB) არის მონაცემთა შენახვისა და დამუშავების სისტემები, რომლებზეც წვდომა ხდება SQL (Structured Query Language) ენის გამოყენებით. ნებისმიერ თანამედროვე ვებსაიტს, თამაშის ან დესკტოპის აპლიკაციას სჭირდება მონაცემთა შენახვა. ამ დროისთვის, არსებობს მრავალი განსხვავებული მონაცემთა ბაზის მართვის სისტემა (DBMS), რომელთაგან ყველაზე პოპულარულია MySQL. „მონაცემთა ბაზის საფუძვლები“ ​​არის 20 ინტენსიური ვიდეო გაკვეთილი (თითოეული 10 წუთი), სადაც ჩვენ გავივლით მონაცემთა ბაზის დიზაინის ყველა ეტაპს ონლაინ მაღაზიის მაგალითზე SQL შეკითხვის ენის გამოყენებით. ამ კურსის შემდეგ თქვენ შეძლებთ გამოიყენოთ სხვადასხვა მონაცემთა ბაზები, როგორიცაა MS SQL და Postgre Sql, რადგან მათთვის SQL სინტაქსი პრაქტიკულად იგივეა.

გაკვეთილი 1: ურთიერთობითი მონაცემთა ბაზები

რა განსხვავებაა მონაცემთა ბაზასა და DBMS-ს შორის; რა მონაცემთა ბაზებს ეწოდება რელატიური; თანამედროვე DBMS-ის მიმოხილვა.

გაკვეთილი 2. DBMS-ის ინსტალაცია

MySql DBMS და Mysql Workbench გრაფიკული აპლიკაციის ინსტალაცია.

გაკვეთილი 3. მონაცემთა ბაზის დიზაინი, ნორმალური ფორმები

მონაცემთა დიზაინი Excel-ში; ნორმალური ფორმები; მთავარი გასაღები.

გაკვეთილი 4. SQL CREATE ბრძანება

ცხრილების შექმნა MySql Workbench GUI-ში; CREATE ბრძანება; მონაცემთა ტიპები; მუშაობა კონსოლში.

გაკვეთილი 5. SQL INSERT ბრძანება

ცხრილების შევსება მონაცემებით გრაფიკული ინტერფეისის გამოყენებით; INSERT ბრძანება; ავტომატური ზრდა.

გაკვეთილი 7. SQL ბრძანებები DISTINCT, ORDER BY, LIMIT

მონაცემების მიღება და გაფილტვრა SQL ბრძანებების DISTINCT და LIMIT გამოყენებით; დახარისხება ORDER BY ბრძანების გამოყენებით.

გაკვეთილი 9: მონაცემთა თანმიმდევრულობა

მონაცემთა თანმიმდევრულობის ან თანმიმდევრულობის ცნება.

გაკვეთილი 10. უცხოური გასაღები

უცხო გასაღების კონცეფცია და სვეტის მნიშვნელობებზე შეზღუდვები; საგარეო ძირითადი შეზღუდვები.

გაკვეთილი 11. ცხრილების შექმნა მრავალი-მრავალთან ურთიერთობით

ონლაინ მაღაზიის მონაცემთა ბაზაში კალათის დამატება.

გაკვეთილი 12. კომპოზიტური პირველადი გასაღები

კომპოზიციური პირველადი გასაღების გამოყენება ცხრილის დიზაინის შექმნისას მრავალი-მრავალთან ურთიერთობით.

გაკვეთილი 13. მონაცემთა შეერთება მრავალი ცხრილიდან

მონაცემთა მოძიება რამდენიმე ურთიერთდაკავშირებული ცხრილიდან; მიდგომის შეუსაბამობა რამდენიმე SELECT-ის გამოყენებით.

გაკვეთილი 14. INNER JOIN ოპერატორი

მონაცემთა შეერთება მრავალი ცხრილიდან INNER JOIN ოპერატორის გამოყენებით.

გაკვეთილი 15. ოპერატორები LEFT JOIN, RIGHT JOIN

მონაცემთა შეერთება მრავალი ცხრილიდან LEFT JOIN და RIGHT JOIN ოპერატორების გამოყენებით.

გაკვეთილი 16. UNION ოპერატორი

მრავალი SQL მოთხოვნის შედეგების გაერთიანება UNION ოპერატორის გამოყენებით.

გაკვეთილი 17. აგრეგაციის ფუნქციები

ფუნქციების აგრეგაცია COUNT, SUM, MIN, MAX.

გაკვეთილი 18. GROUP BY ოპერატორი

დააჯგუფეთ მწკრივების არჩეული ნაკრები GROUP BY პუნქტის გამოყენებით.

გაკვეთილი 19. ინდექსები

გაფილტვრა GROUP-ში HAVING-ის გამოყენებით; ინდექსების გამოყენებით მოთხოვნის შესრულების სიჩქარის გაზრდა.

გაკვეთილი 20. გარიგებები

ტრანზაქციის კონცეფცია; ტრანზაქციის განცხადება; ACID მოთხოვნები ტრანზაქციის სისტემისთვის.

ეს კურსი განკუთვნილია მათთვის, ვისაც სურს გაიმყაროს ცოდნა ჯავაში. კურსის განმავლობაში სტუდენტები ეუფლებიან თეორიას და ამავდროულად, მასწავლებლის ხელმძღვანელობით, ნულიდან ავითარებენ ჯავაში სრულფასოვან პროექტს, რითაც იძენენ პრაქტიკულ გამოცდილებას ენისთვის დამახასიათებელი რთული ობიექტზე ორიენტირებული ცნებების გამოყენებისას. კურსის გავლამდე რეკომენდებულია დამწყებთათვის კურსის დაუფლება: „ჯავა. დონე 1“.

გაკვეთილი 1: ობიექტზე ორიენტირებული ჯავის პროგრამირება

ჯავაში OOP საკითხების სიღრმისეული შესწავლა: OOP-ის ძირითადი პრინციპები, აბსტრაქტული კლასები, ინტერფეისები.

გაკვეთილი 2. გამონაკლისები

გამონაკლისების დამუშავების კონცეფცია, მისი შედარება შეცდომის დამუშავების ტრადიციულ მექანიზმთან, try-catch-finally ბლოკი, გამონაკლისების ტიპები, სტანდარტული გამონაკლისები Java-ში და მათი როლი, გამონაკლისის ამოღება მეთოდიდან

გაკვეთილი 3. კოლექციები

კონტეინერების ტიპები ჯავაში: სია, რუკა, ნაკრები. ძირითადი განხორციელებები და გამოყენების ტექნიკა, კოლექციური ელემენტების გავლა, კოლექციის ელემენტების შედარება და დახარისხება

გაკვეთილი 4: გაფართოებული GUI შექმნა

შექმენით თქვენი საკუთარი კონტროლი. გრაფიკასთან მუშაობა. ღონისძიების მართვა

გაკვეთილი 5. მრავალძაფი

ძაფები ჯავაში, ძაფების მდგომარეობის შექმნისა და მართვის გზები, ძაფებთან მუშაობისას და სინქრონიზაციის ძირითადი პრობლემები.

გაკვეთილი 6. ქსელთან მუშაობა

სოკეტები მარტივი ექო სერვერის და კონსოლის კლიენტის დაწერა.

გაკვეთილი 7. ქსელური ჩატის წერა. ნაწილი I

ჩატის კლიენტისა და სერვერის ნაწილების ჩაწერა. კლიენტის კავშირების მრავალძალიანი დამუშავება.

გაკვეთილი 8. ქსელური ჩატის წერა. ნაწილი II

ინტერფეისის განვითარება კლიენტის მხარისთვის. ავტორიზაცია. კლიენტსა და სერვერს შორის ურთიერთქმედების მექანიზმები.

ჯავა. დონე 3. 2 თვე.
Პროფესიული განვითარება პროგრამული უზრუნველყოფა

კურსი განკუთვნილია მათთვის, ვისაც სურს გაეცნოს Java ენის მოწინავე ფუნქციებს და მიიღოს პრაქტიკული გამოცდილება აპლიკაციების წერაში. კურსის წარმატებით დასასრულებლად, სტუდენტებმა უნდა გაიგონ ძირითადი ცნებებიპროგრამირება და აქვს Java-ს საბაზისო გამოცდილება. კურსი მოიცავს ყველა ძირითად თემას, რომელიც აუცილებელია პროფესიული მუშაობისთვის.

გაკვეთილი 1. განზოგადებები

რა არის გენერიკა, ზოგადი კლასები, მეთოდები და ინტერფეისები, ზოგადი კლასების მემკვიდრეობა, შეზღუდვები ჯენერიკებთან მუშაობისას

გაკვეთილი 2. მონაცემთა ბაზები

რელატიური მონაცემთა ბაზები, SQL შეკითხვის ენა. ოპერატორები SELECT, INSERT, UPDATE, DELETE. მონაცემთა ბაზასთან დაკავშირება JDBC-ის საშუალებით, მოთხოვნის გაგზავნა და შედეგების დამუშავება

გაკვეთილი 3. შეყვანის/გამოსვლის ინსტრუმენტები

შეყვან-გამომავალი ინსტრუმენტების მიმოხილვა. ბაიტი, პერსონაჟი, ბუფერული ნაკადები. ქსელური კომუნიკაცია, ობიექტების სერიალიზაცია/დესერიალიზაცია

გაკვეთილი 4. მრავალძაფი. ნაწილი I

Java-ში მრავალძალიანობა, საერთო მეხსიერება, ძაფების მართვისა და სინქრონიზაციის საკითხები, შესრულების ძაფების ურთიერთქმედება, ჩიხები

გაკვეთილი 5. მრავალძაფი. ნაწილი II

კლასები მრავალძახიანთან მუშაობისთვის, კონკურენტული კოლექციები, პრაქტიკული მაგალითების ანალიზი

გაკვეთილი 6. განვითარების ინსტრუმენტების მიმოხილვა

ხე-ტყე. ტესტირება JUnit-ის გამოყენებით, ტესტების წერა, Assert კლასი

გაკვეთილი 7. Reflection API და Annotations

ასახვის კონცეფცია, კლასის მონაცემთა ტიპი, კლასის მეტამონაცემები, ველებსა და მეთოდებზე წვდომა, ანოტაციები და მათი გამოყენება, საკუთარი ანოტაციების დაწერა.

კურსი ფოკუსირებულია მონაცემთა სტრუქტურებისა და ალგორითმების გამოყენებაზე Java პროგრამირებაში. მონაცემთა სტრუქტურები განსაზღვრავენ, თუ როგორ ინახება მონაცემები კომპიუტერის მეხსიერებაში. კურსი მოიცავს მონაცემთა შემდეგ სტრუქტურებს: მასივებს, სტეკს, რიგს, სიებს, გრაფიკებს, ხეებს, ჰეშის ცხრილებს. თითოეული მონაცემთა სტრუქტურისთვის განიხილება ალგორითმები, რომლებიც უზრუნველყოფენ სხვადასხვა ოპერაციებს ამ სტრუქტურებზე, მაგალითად, ძებნას ან დახარისხებას. კურსი განკუთვნილია სტუდენტებისთვის, რომლებმაც გაიარეს ძირითადი კურსი Java SE-ზე.

გაკვეთილი 1: შესავალი ალგორითმებსა და მონაცემთა სტრუქტურებში

ალგორითმებისა და მონაცემთა სტრუქტურების შესავალი.

გაკვეთილი 2. მასივები და დახარისხება

მასივებთან მუშაობა და მათი დალაგების გზები.

გაკვეთილი 3. დაწყობა და რიგი

მონაცემთა სტრუქტურის, სტეკის, რიგისა და პრიორიტეტული რიგის მიმოხილვა.

გაკვეთილი 4. დაკავშირებული სიები

სიების შექმნისა და გამოყენების სწავლა.

გაკვეთილი 6. ხეები

მოდით შევხედოთ ორობით ხეებთან მუშაობას.

გაკვეთილი 7. გრაფიკები

განვიხილოთ მუშაობა ერთ-ერთ ყველაზე მოქნილ და მრავალმხრივ სტრუქტურასთან.

გაკვეთილი 8. ჰეშის ცხრილები

სწრაფი ძებნა და ჩასმა ჰეშ ცხრილების გამოყენებით.

სტაჟირება GeekBrains-ში. 2 თვე.
ვებინარის ფორმატში

სტაჟირების პერიოდში სტუდენტებს მოუწევთ დისტანციურად მუშაობა ღია კოდის პროექტზე ან სტარტაპზე. სტუდენტებს მოეთხოვებათ აირჩიონ განვითარებისთვის ხელმისაწვდომი პროექტებიდან. სტუდენტები ისწავლიან გუნდში მუშაობას, კომუნიკაციას სხვა დეველოპერებთან, პროდუქტისა და პროექტის მენეჯერებთან, დიზაინერებთან, ისწავლიან მოქნილ მეთოდოლოგიებს, SCRUM ჩარჩოს და დაეუფლებიან დისტანციური მუშაობის პრინციპებს. სტაჟირების შედეგია გუნდში მუშაობის უნარი, პორტფელის დამატება და შესაძლებლობა, თქვენს რეზიუმეში მიუთითოთ პროექტზე მუშაობა, როგორც ძირითადი სამუშაო გამოცდილება. სტაჟირება ხდება ნახევარ განაკვეთზე დისტანციური მუშაობის ფორმატში, ყოველკვირეული სტატუსის შეხვედრები მასწავლებელთან ვებინრის ფორმატში.

გაკვეთილი 1. შესავალი, პროექტის შერჩევა

რა როლები არსებობს განვითარებაში? პროდუქტის მენეჯერი, პროექტის მენეჯერი, დეველოპერი, დიზაინერი. რა არის MVP. თანამედროვე სერვისის არქიტექტურა. როგორ ურთიერთობენ დეველოპერები ერთმანეთთან. REST API, ვებ სოკეტი. Backend, Frontend, მობილური აპლიკაციები. მიკროსერვისის არქიტექტურა. დისტანციური მუშაობის საფუძვლები. დარეგისტრირდით გუნდებში.

გაკვეთილი 2. განვითარების მეთოდოლოგიები

მეთოდოლოგიების მიმოხილვა. კასკადი (ჩანჩქერი), Agile მანიფესტი, Kanban, Scrum. სად და რისთვის გამოიყენება. შერეული მეთოდოლოგიები.

გაკვეთილი 3. SCRUM მეთოდოლოგია

იმუშავეთ SCRUM-ის გამოყენებით. სპრინტის დაგეგმვა. ჩამორჩენილი მოვლა. სპრინტის მიზანი. მატება. მოქნილი მეთოდოლოგია დისტანციურ სამუშაო პირობებში. დავალების ტრეკერები (Trello, Favro)/

გაკვეთილი 4. მომხმარებლის ისტორიის რუკების შედგენა

დავალებების სახეები. ამოცანების დაშლა. მომხმარებლის ისტორიების რუკების შედგენა. მომხმარებლის ისტორიებზე მუშაობა. ტექნიკურ მახასიათებლებთან მუშაობა ჩანჩქერის და მოქნილი მეთოდოლოგიების გამოყენებით.

გაკვეთილი 5. პასუხისმგებლობა, მოტივაცია, პიროვნული ზრდა

რა და როგორ მოახდინოთ საკუთარი თავის მოტივაცია. როგორია მოტივაციის დონეები? როგორ არ დაიწვა სამსახურში. და როგორ არ დაივიწყოთ სამუშაო.

გაკვეთილი 6. რეზიუმეს წერა

როგორ დავწეროთ რეზიუმე ისე, რომ HR არ უარყოს იგი. როგორ დავაინტერესოთ დამსაქმებელი. როგორ გამოავლინოთ სწავლაში შეძენილი უნარები, თუ ჯერ არ გაქვთ შესაბამისი სამუშაო გამოცდილება.

გაკვეთილი 7. წინასწარი შეჯამება, მომზადება პროექტის თავდაცვისთვის

სტუდენტური რეზიუმეების ანალიზი. წინასწარი შეჯამება. ცოტა რამ სტარტაპების, მონეტიზაციის, ინვესტორების შესახებ.

გაკვეთილი 8. შეჯამება, საბოლოო პროექტის დემონსტრირება

სამუშაო პროტოტიპის ჩვენება სტუდენტების მიერ. მიღებული შედეგების განხილვა. გამოხმაურება მასწავლებლისგან. გამყოფი სიტყვები.

როგორ გავხდეთ პროგრამისტი. 13 გაკვეთილი.
ნაბიჯ-ნაბიჯ ინსტრუქციები სამუშაოს მოსაძებნად

პროგრამირების კარიერა არის საინტერესო მოგზაურობა თანამედროვე ტექნოლოგიების სამყაროში. თითოეულ დეველოპერს აქვს საკუთარი ისტორია და გამოცდილება. თუმცა, არსებობს ძირითადი ალგორითმი, რომელიც დაგეხმარებათ პირველი ნაბიჯების სწორად გადადგმაში და მიზნამდე მიყვანაში. ჩვენ მოვამზადეთ 13 ვიდეო გაკვეთილი, რომლებშიც ვუპასუხეთ ყველაზე აქტუალურ კითხვებს პროგრამირების კარიერის შესახებ კომპანიებში და თავისუფალ ბაზარზე. ხშირად ფიქრობთ სამსახურის შოვნაზე და ფიქრობთ, რომ მზად ხართ დაიწყოთ ფულის შოვნა? მაშინ ეს ვიდეო კურსი თქვენთვისაა.

გაკვეთილი 1. პროფესია „პროგრამისტი“

პროფესიის მახასიათებლები; ხშირად დასმული კითხვები; მოთხოვნა შრომის ბაზარზე.

გაკვეთილი 2. კარიერული ხელმძღვანელობა

გავხდები წარმატებული პროგრამისტი? წარმატების ფაქტორები.

გაკვეთილი 3. დავიწყოთ რეზიუმეს წერა

მთავარია პირველი შთაბეჭდილება; რა დავარქვა თანამდებობას.

გაკვეთილი 4. პროგრამირების ენის შერჩევა: ვებ განვითარება

ვებგვერდის განვითარების ენების მიმოხილვა: HTML, CSS, JavaScript, PHP, Python, Ruby, C#, Java; სწორი არჩევანი.

გაკვეთილი 5. მობილურის განვითარება. უნივერსალური პროგრამირების ენები

ენების მიმოხილვა: Java, Objective-C, Swift; C#, C++, Python: სწორი არჩევანი.

გაკვეთილი 6. ეფექტური რეზიუმეს წესები

ტექნოლოგიების ჩამონათვალი; პორტფოლიო; დიპლომები და სერთიფიკატები; პიროვნული თვისებები. მხედველობა ტექნიკური სპეციალისტიდა HR.

გაკვეთილი 7. სამუშაოს ძებნა: რა, სად, როდის

საოცნებო სამუშაო, ფსიქოლოგიური ასპექტები; მოთხოვნის ტექნიკა.

გაკვეთილი 8. გასაუბრება და გამოსაცდელი ვადა

ინტერვიუები პროგრამისტებისთვის: როგორ მოიქცეთ, რა თქვათ, რა მოუსმინოთ; გამოსაცდელი ვადა და მისი გავლის წესი.

გაკვეთილი 9. თავისუფალი პროფესია: პირველი ნაბიჯები

ფრილანსირების პლატფორმების მიმოხილვა; რეგისტრაციის მახასიათებლები; ანგარიშის რეგისტრაცია; როგორ გამოირჩეოდეს შემსრულებელთა უმრავლესობაში.

გაკვეთილი 10. თავისუფალი პროფესია: დაწყება და შეკვეთების მოძიება

შეკვეთის ძიების სტრატეგია; შეკვეთების პრიორიტეტი: რა უნდა აიღოთ; მოლაპარაკება; ტექნიკური მახასიათებლების ამოცანები და ხარვეზები; კლიენტთან დაკავშირების მეთოდები; პასუხების წერა და კლიენტების ყურადღების მიქცევა; სწორი კითხვები.

გაკვეთილი 11. Freelancing: შეკვეთის შესრულება და გადახდა

გადახდის მეთოდები: საბანკო გადარიცხვა ან ნაღდი ანგარიშსწორება; წინასწარი ან შემდგომი გადახდა; სიტუაციების მიმოხილვა, რომელშიც თითოეული მეთოდი უკეთესად იმუშავებს; სამუშაოსთვის მომზადება და კლიენტთან სავალდებულო ხელშეკრულებები; სამუშაო პროცესის თავისებურებები; თანამშრომლობის ბოლო ეტაპები; უკუკავშირის გაზიარება; "კონსულტაციის" ტექნიკა.

გაკვეთილი 12. სპეციალობები IT დარგში

როგორ მუშაობს განვითარება დიდ კომპანიებში? ვინ არიან ანალიტიკოსები, დიზაინერები, ტესტერები, არქიტექტორები, პროექტის მენეჯერები, გუნდის ლიდერები და ა.შ.

გაკვეთილი 13. კარიერული ასვლა IT-ში

როგორ გამოიყურება კარიერული კიბე IT-ში? რომელ სპეციალობებშია უფრო ადვილი მოგზაურობის დაწყება? როგორია განვითარების პერსპექტივები?

კურსი, რომელიც შეიქმნა EnglishDom სკოლასთან ერთად, დაგეხმარებათ დაეუფლონ ძირითად ინგლისურენოვან თემებს, რომლებიც აქტუალურია დამწყები IT სპეციალისტებისთვის. მაქსიმალური პრაქტიკა და ფოკუსირება IT ლექსიკაზე. 10 გაკვეთილი მოიცავს CV-ების, ტექნიკური მახასიათებლებისა და საქმიანი წერილების მომზადებას, ინტერვიუებსა და მოლაპარაკებებს, საერთაშორისო კომუნიკაციას თქვენი პროექტის პოპულარიზაციისას. ინგლისურ ენაზე ცოცხალ დიალოგებში სტუდენტები გააძლიერებენ ფრაზებს, რომლებიც სასარგებლო იქნება მათ მუშაობაში დეველოპერებისთვის და ტესტერებისთვის, მარკეტერებისთვის და დიზაინერებისთვის.

გაკვეთილი 10. დაწყება

ვსაუბრობთ ჩვენს პროექტზე და ვაცნობთ გუნდს ინგლისურად.

ამ სახელმძღვანელოში ჩვენ გავაშუქებთ ყველაფერს, რაც უნდა იცოდეთ სწავლის დაწყებამდე. პროგრამირებაშიჯავა. თქვენ გაეცნობით პლატფორმის შესაძლებლობებს, მის გამოყენებას და როგორ დაიწყოთ Java-ს სწორად სწავლა.

რა არის Java პროგრამირების ენა?

1991 წელს "მწვანე გუნდი", Sun Microsystems-ის განყოფილება, რომელსაც ხელმძღვანელობდა ჯეიმს გოსლინგიშექმნა საყოფაცხოვრებო პროგრამირების ენა ელექტრონული მოწყობილობები. იმ დროს მას მუხა („მუხა“) ერქვა. რატომ "მუხა"? უბრალოდ იმიტომ, რომ ეს ხე გოსლინგის ოფისის ფანჯრის მიღმა გაიზარდა.

მწვანე გუნდმა აჩვენა მუხის გამოყენება ინტერაქტიულ ტელევიზორში. მაგრამ ციფრულისთვის საკაბელო ტელევიზიაიმ წლებში ეს ტექნოლოგია ძალიან განვითარებული იყო. პარალელურად პოპულარობას იძენდა ინტერნეტი, რისთვისაც ახალი პროგრამირების ენა საუკეთესოდ შეეფერებოდა.

გარკვეული პერიოდის შემდეგ ახალ ენას ეწოდა მწვანე და ამის შემდეგ - ჯავა, კუნძულ ჯავის ყავის პატივსაცემად. ამიტომ ჯავის ლოგოზე გამოსახულია ყავის ჭიქა.

Java-ს განვითარების დროს C/C++ პოპულარული იყო, ამიტომ გოსლინგმა ენის სინტაქსი C/C++-ის მსგავსი შექმნა და დანერგა " დაწერე ერთხელ - გაიქეცი სადმე" 1995 წელს Sun Microsystems-მა გამოუშვა პირველი ოფიციალური ვერსიაჯავა. და ამავდროულად გამოცხადდა, რომ ჯავა შევა Netscape Navigator ბრაუზერში.

2010 წელს Sun Microsystems, Java პროგრამირების ენასთან ერთად, Oracle Corporation-მა შეიძინა.

ჯავის ვერსიის ისტორია

  1. 1991 წლის ივნისი – განვითარების პროექტის დაწყება პროგრამირების ენაჯავა.
  2. JDK 1.0 – 1996 წლის იანვარი.
  3. JDK 1.1 – 1997 წლის თებერვალი.
  4. J2SE 1.2 – 1998 წლის დეკემბერი.
  5. J2SE 1.3 – 2000 წლის მაისი.
  6. J2SE 1.4 – 2002 წლის თებერვალი.
  7. J2SE 5.0 – 2004 წლის სექტემბერი.
  8. Java SE 6 - 2006 წლის დეკემბერი.
  9. Java SE 7 – 2011 წლის ივლისი.
  10. Java SE 8 – 2014 წლის 18 მარტი.
  11. Java SE 9 – 2017 წლის 21 სექტემბერი.

Java პროგრამირების ენის მახასიათებლები

ჯავა არის მრავალპლატფორმული ენა

ჯავის კოდი დაწერილი ერთ პლატფორმაზე ( ანუ ოპერაციული სისტემა), შეიძლება გაშვებული იყოს სხვა პლატფორმებზე ცვლილებების გარეშე.

Java გასაშვებად, ვირტუალური ჯავას მანქანა (Java ვირტუალური მანქანა, JVM). JVM ამუშავებს ბაიტის კოდს, რის შემდეგაც პროცესორი ამუშავებს JVM-დან მიღებულ კოდს. ყველა ვირტუალური მანქანა მუშაობს ერთნაირად, ამიტომ ერთი და იგივე კოდი მუშაობს ყველა ოპერაციულ სისტემაზე, რაც ჯავას აქცევს პლატფორმის პროგრამირების ენად.

ობიექტზე ორიენტირებული პროგრამირების ენა

არსებობს პროგრამირების სხვადასხვა სტილი და ერთ-ერთი ყველაზე პოპულარულია ობიექტზე ორიენტირებული პროგრამირება. ამ მიდგომით, ობიექტების შექმნით რთული პრობლემა იყოფა მცირედ. ამის წყალობით, კოდი შეიძლება ხელახლა იქნას გამოყენებული.

ობიექტზე ორიენტირებული ფუნქციები გვხვდება პროგრამირების ბევრ ენაში, მათ შორის Java, Python და C++. თუ თქვენ სერიოზულად აპირებთ პროგრამირების სწავლას, ობიექტზე ორიენტირებული მიდგომები უნდა დაამატოთ თქვენს სასწავლო გეგმას.

ჯავა სწრაფია

ადრეული ვერსიები პროგრამირების ენაჯავას ხშირად აკრიტიკებდნენ ნელი მუშაობის გამო. მაგრამ დღეს სიტუაცია მკვეთრად შეიცვალა. JVM-ის ახალი ვერსიები ბევრად უფრო სწრაფად მუშაობს და პროცესორები, რომლებიც მათ ინტერპრეტაციას უკეთებენ, უფრო და უფრო სწრაფი ხდება.

დღეს Java არის ერთ-ერთი ყველაზე სწრაფი პროგრამირების ენა. კარგად ოპტიმიზებული Java კოდი მუშაობს თითქმის ისევე სწრაფად, როგორც დაბალი დონის პროგრამირების ენები, როგორიცაა C/C++ და ბევრად უფრო სწრაფად, ვიდრე Python, PHP და ა.შ.

ჯავა არის უსაფრთხო პლატფორმა

ჯავა არის:

  • უსაფრთხო პლატფორმა აპლიკაციების შემუშავებისა და გაშვებისთვის;
  • უზრუნველყოფს მეხსიერების ავტომატური მართვის ინსტრუმენტებს, რაც ამცირებს კოდის დაუცველობას;
  • უზრუნველყოფს მონაცემთა უსაფრთხო გადაცემას.

ვრცელი ძირითადი ბიბლიოთეკა

ერთ-ერთი მიზეზი, რის გამოც Java არის ასე გავრცელებული, არის მისი უზარმაზარი სტანდარტული ბიბლიოთეკა. ის შეიცავს ასობით კლასს და მეთოდს სხვადასხვა პაკეტებიდან, რომლებიც აადვილებს ცხოვრებას დეველოპერებისთვის. Მაგალითად,

java.lang არის მოწინავე ფუნქციები სტრიქონების, მასივების და ა.შ.

java.util – ბიბლიოთეკა მონაცემთა სტრუქტურებთან მუშაობისთვის, რეგულარულ გამონათქვამებთან, თარიღთან და დროსთან და ა.შ.

kava.io - ბიბლიოთეკა ფაილის შეყვანის/გამოსვლის, გამონაკლისების დამუშავებისთვის და ა.შ.

Java პლატფორმის გამოყენება

Java-ს სწავლამდე პროგრამირება ნულიდან, თქვენ უნდა იცოდეთ, რომ ამ პლატფორმაზე 3 მილიარდზე მეტი მოწყობილობა მუშაობს მთელ მსოფლიოში. კონკრეტულად რისთვის შეიძლება მისი გამოყენება:

  1. Android აპლიკაციები - ანდროიდის აპლიკაციების შესაქმნელად, Java პროგრამირების ენა ხშირად გამოიყენება Android SDK-თან ერთად ( ინგლისური პროგრამული უზრუნველყოფის განვითარების ნაკრებიდან - პროგრამული უზრუნველყოფის განვითარების ნაკრები).
  2. ვებ აპლიკაციები - Java გამოიყენება ვებ აპლიკაციების შესაქმნელად სერვერის პროგრამების, Struts Framework-ისა და JSP-ის გამოყენებით. Java-ში დაწერილი ზოგიერთი პოპულარული ვებ აპლიკაციაა: Google.com, Facebook.com, eBay.com, LinkedIn.com.

აღსანიშნავია, რომ ეს საიტები სულაც არ არის დაწერილი ექსკლუზიურად Java-ზე და შეიძლება გამოიყენონ სხვა პროგრამირების ენებიც.

  1. პროგრამული უზრუნველყოფის განვითარება– ისეთი პროგრამები, როგორიცაა Eclipse, OpenOffice, Vuze, MATLAB და მრავალი სხვა იწერება Java-ში.
  2. დიდი მონაცემთა დამუშავება – „დიდი მონაცემების“ დასამუშავებლად შეგიძლიათ გამოიყენოთ ჯავაში დაწერილი Hadoop-ის ფრეიმვორი.
  3. სავაჭრო სისტემები- პლატფორმის გამოყენებით Oracle Extreme Java სავაჭრო პლატფორმა, შეგიძლიათ დაწეროთ პროგრამები ვაჭრობისთვის.
  4. ჩაშენებული მოწყობილობები– დღეს მილიარდობით მოწყობილობა, როგორიცაა ტელევიზორები, SIM ბარათები, Blu-ray ფლეერები და ა.შ., დაფუძნებულია Oracle-ის Java Embedded ტექნოლოგიაზე.

ასევე პროგრამირებაშიჯავა გამოიყენება თამაშების, სამეცნიერო აპლიკაციების დასამუშავებლად ( მაგალითად, ბუნებრივი ენის დამუშავებისთვის) და ბევრ სხვა სფეროში.

Java ტერმინოლოგია, რომელიც უნდა იცოდეთ

ჯავა არის ტექნოლოგიების ნაკრები ( პროგრამირების ენა და კომპიუტერული პლატფორმა), შექმნილია პროგრამული უზრუნველყოფის შესაქმნელად და გასაშვებად. თუმცა, ტერმინი Java ხშირად მიუთითებს თავად პროგრამირების ენაზე.

Პროგრამირების ენაჯავა არის პლატფორმა ობიექტზე ორიენტირებული პროგრამირების ენა ძირითადი მიზანიფართო შესაძლებლობებით.

Java 9 არის Java-ის უახლესი ვერსია ამ წერის დროს.

Java EE, Java Me და Java SE - ეს სახელები ნიშნავს Java Enterprise Edition, Micro Edition და Standard Edition, შესაბამისად.

Java EE მიზნად ისახავს აპლიკაციებს, რომლებიც მუშაობენ სერვერებზე. Java ME განკუთვნილია ელექტროენერგიით შეზღუდული მოწყობილობებისთვის, როგორიცაა ჩაშენებული მოწყობილობები. Java SE არის Java-ის სტანდარტული გამოცემა ზოგადი პროგრამების დასაწერად.

თუ ახალი ხარ ჯავის პროგრამირება, ჩვენ გირჩევთ დაიწყოთ Java SE-ით.

JVM - Java ვირტუალური მანქანა (" ვირტუალური ხელსაწყოჯავა") არის პროგრამა, რომელიც კომპიუტერს აძლევს Java-ში დაწერილი პროგრამების გაშვების საშუალებას.

JRE – Java Runtime Environment (“ ჯავის გაშვების დრო") მოიცავს JVM-ს, ასოცირებულ ბიბლიოთეკებს და სხვა კომპონენტებს, რომლებიც საჭიროა პროგრამების გასაშვებად. მაგრამ JRE-ს არ აქვს შემდგენელი, გამართვა ან განვითარების სხვა ინსტრუმენტები.

JDK – ჯავის განვითარების ნაკრები ჯავის დეველოპერი) შეიცავს JRE-ს და განვითარების სხვა ინსტრუმენტებს, როგორიცაა შემდგენელები, გამართვები და ა.შ.

როგორ გაუშვათ Java თქვენს ოპერაციულ სისტემაზე

როგორ გავუშვათ Java Mac OS-ზე

აი, რა უნდა გააკეთოთ Java-სთვის პროგრამირება ნულიდანდა პლატფორმის დაყენება Mac OS X-ზე ან macOS-ზე:

  1. ჩამოტვირთეთ Java-ს უახლესი ვერსია ( JDK) თან Java SE ჩამოტვირთვის გვერდები.
  2. ორჯერ დააწკაპუნეთ გადმოწერილ DMG ფაილზე და მიჰყევით ინსტალერის მითითებებს.
  3. ინსტალაციის დასადასტურებლად, გახსენით ტერმინალი და შეიყვანეთ შემდეგი ბრძანება:

javac - ვერსია

თუ Java სწორად არის დაინსტალირებული, პროგრამის ვერსია გამოჩნდება ეკრანზე ( მაგალითად javac 1.8.0_60).

შემდეგი ნაბიჯი არის IDE-ის დაყენება ( ინტეგრირებული განვითარების გარემო) Java კოდის დასაწერად და გასაშვებად. ჩვენ დავაყენებთ უფასო ვერსია IntelliJ IDEA და გაუშვით Java მასზე. აი, რა უნდა გააკეთოთ ამისათვის:

  1. Წადი IntelliJ ჩამოტვირთვის გვერდიდა ჩამოტვირთეთ უფასო Community Edition.
  1. გახსენით გადმოწერილი DMG ფაილი და მიჰყევით ინსტალაციის ინსტრუქციას. სწრაფი წვდომისთვის შეგიძლიათ IntelliJ IDEA გადაიტანოთ Applications საქაღალდეში.
  2. გახსენით IntelliJ IDEA. აირჩიეთ ვარიანტი "არ შემოიტანოთ პარამეტრები" (" არ შემოიტანოთ პარამეტრები") და დააჭირეთ "OK". ამის შემდეგ მიიღეთ Jetbrains-ის კონფიდენციალურობის პოლიტიკა ღილაკზე „მიღება“ დაწკაპუნებით.
  3. ახლა თქვენ შეგიძლიათ მოაწყოთ ინტერფეისი თქვენთვის. თქვენ ასევე შეგიძლიათ გამოტოვოთ ეს ნაბიჯი და დატოვოთ ყველაფერი ნაგულისხმევად. თუ არ ხართ დარწმუნებული, უბრალოდ გამოტოვეთ ეს ნაბიჯი ღილაკზე „ყველას გამოტოვება და ნაგულისხმევის დაყენება“ დაწკაპუნებით (“ გამოტოვეთ ყველაფერი და დააყენეთ ნაგულისხმევ პარამეტრებზე»).
  1. პროგრამა გაჩვენებთ მისასალმებელ გვერდს. დააჭირეთ ღილაკს "ახალი პროექტის შექმნა" (" შექმენით ახალი პროექტი»).
  2. შემდეგ ფანჯარაში აირჩიეთ "Java" მარცხენა პანელში და დააჭირეთ "ახალი" პროგრამის ფანჯრის ზედა ნაწილში, რათა აირჩიოთ "JDK". აქ თქვენ უნდა აირჩიოთ ადგილი, სადაც დააინსტალირეთ JDK და შემდეგ დააწკაპუნეთ შემდეგი.
  1. თქვენ გექნებათ შესაძლებლობა შექმნათ პროექტი შაბლონიდან („პროექტის შექმნა შაბლონიდან“). ჩვენ უგულებელყოფთ მას და დააჭირეთ ღილაკს "შემდეგი".
  2. ინსტალაციის შემდეგ ეტაპზე პროგრამირების ენა Java შეიყვანეთ პროექტის სახელი და დააჭირეთ ღილაკს "დასრულება".
  3. მარცხენა პანელში ნახავთ თქვენს პროექტს. თუ პანელი არ ჩანს, გადადით მენიუში Views > Tool Windows > Project.
  4. გადადით Hello > New > Java და მიეცით კლასს სახელი. ჩვენ მას პირველს ვუწოდებდით.
  1. იმ პროგრამის გასაშვებად, რომელიც ახლახან დაწერეთ, გადადით Run > Run... დააწკაპუნეთ პირველზე ( ანუ ჩვენ მიერ შექმნილი ფაილის სახელი

როგორ გავუშვათ Java Linux-ზე

მაგალითების გასაშვებად პროგრამირების გაკვეთილები ნულიდანჯავას Linux-ზე დასჭირდება JAVA SE განვითარების ნაკრები ( JDK) და IDE თქვენი პროექტების განვითარებისთვის. მიჰყევით ინსტრუქციებს ეტაპობრივად Java-ს დასაწყებად.

დააინსტალირე ჯავა

  1. გახსენით ტერმინალი და ჩაწერეთ შემდეგი ბრძანება Java-ს დასაყენებლად:

    sudo add-apt-repository ppa:webupd8team/java sudo apt განახლება; sudo apt install oracle-java8-installer

  1. დაეთანხმეთ სალიცენზიო ხელშეკრულებას და გამოყენების პირობებს, შესაბამისად, "OK" და "დიახ" დაწკაპუნებით.
  2. თქვენ დააინსტალირეთ Java. იმის დასადასტურებლად, რომ ინსტალაცია წარმატებით დასრულდა, შეიყვანეთ შემდეგი ბრძანება ტერმინალში:

java - ვერსია

თუ ნაჩვენებია მიმდინარე ვერსია, ინსტალაცია წარმატებით დასრულდა. თუ არა, შეამოწმეთ Oracle-ის დახმარების გვერდი.

IntelliJ IDEA-ს ინსტალაცია

  1. Წადი .
  1. ჩამოტვირთეთ უფასო Community Edition ღილაკზე "ჩამოტვირთვა" დაწკაპუნებით.
  2. ჩამოტვირთვის შემდეგ შეცვალეთ დირექტორია ტერმინალშითქვენს ჩამოტვირთვების დირექტორიაში და ამოიღეთ Java tar ფაილი /opt საქაღალდეში შემდეგი ბრძანებით:

სუდო ტარ xf .tar.gz -C /opt/

  1. გახსნის შემდეგ, შეცვალეთ დირექტორია IntelliJ IDEA პროგრამის ბინ საქაღალდეში:

    cd /opt/ /ურნა

  2. IDE-ის დასაწყებად, შეიყვანეთ შემდეგი ბრძანება:
  3. აირჩიეთ "არ შემოიტანოთ პარამეტრები" (" არ შემოიტანოთ პარამეტრები") და დააჭირეთ "OK". ამის შემდეგ, ჩვენ ვეთანხმებით Jetbrains-ის კონფიდენციალურობის პოლიტიკას ღილაკზე „მიღება“ დაწკაპუნებით.
  4. ახლა პასაჟისთვის პროგრამირების კურსები Java, შეგიძლიათ ინტერფეისის მორგება თქვენთვის. შექმენით მალსახმობი თქვენს სამუშაო მაგიდაზე პროგრამაზე სწრაფი წვდომისთვის. ამის შემდეგ, IDE-ს გასაშვებად, დააჭირეთ "შემდეგი" ყველა შემდეგ ეტაპზე.
  5. პროგრამა აჩვენებს მისასალმებელ გვერდს. დააჭირეთ "ახალი პროექტის შექმნა" (" შექმენით ახალი პროექტი»).
  6. შემდეგ ფანჯარაში აირჩიეთ "Java" მარცხენა პანელში და დარწმუნდით, რომ Java არჩეულია Project SDK ხაზში. თუ არა, მაშინ აირჩიეთ მდებარეობა, სადაც დააინსტალირეთ JDK: /usr/lib/jvm/java-8-oracle.
  1. ორჯერ დააჭირეთ "შემდეგი" და შექმენით პროექტი.
  2. შემდეგ ეტაპზე შეიყვანეთ პროექტის სახელი და დააჭირეთ ღილაკს "დასრულება". ახლა მარცხენა პანელში ნახავთ თქვენს პროექტს. თუ ეს პანელი არ ჩანს, გადადით მენიუში Views > Tool Windows > Project.
  3. დაამატეთ ახალი Java კლასი. აირჩიეთ src მარცხენა პანელიდან დააწკაპუნეთ მარჯვენა ღილაკითდა გადადით New > Java Class-ზე. მიუთითეთ კლასის სახელი. კლასის სახელში არ უნდა იყოს სივრცეები.
  1. ჩაწერეთ ჯავის კოდი და შეინახეთ პროექტი.
  2. პროგრამის გასაშვებად გადადით Run > Run... დააკლიკეთ HelloWorld ( Პროექტის სახელი) - პროგრამა შეადგენს ფაილს და გაუშვებს მას.

როგორ გავუშვათ Java Windows-ზე (XP, 7, 8 და 10)

ჯავას დაუფლებისთვის პროგრამირების საფუძვლებიდა პლატფორმის გაშვება Windows-ზე, დაგჭირდებათ JAVA SE Development Kit (JDK) და IDE პროექტების შემუშავებისთვის. Გაყოლა ნაბიჯ ნაბიჯ ინსტრუქციებიმოცემულია ქვემოთ:

ჯავის ინსტალაცია

  • Წადი ჩამოტვირთვის გვერდი ჯავის სტანდარტული გამოცემის განვითარების ნაკრები.
  1. Java SE განვითარების ნაკრების განყოფილებაში, ცხრილის ზედა ნაწილში, დააწკაპუნეთ "ლიცენზიის ხელშეკრულების მიღება" (" მიიღეთ სალიცენზიო ხელშეკრულება"). შემდეგ დააწკაპუნეთ Windows (x64) ბმულზე, თუ გაქვთ 64 ბიტიანი ოპერაციული სისტემაან Windows (x86) თუ გაქვთ 32-ბიტიანი ოპერაციული სისტემა.
  1. ჩამოტვირთვის შემდეგ გაუშვით ინსტალაციის ფაილი და მიჰყევით ეკრანზე გამოსახულ ინსტრუქციას. დააწკაპუნეთ " შემდეგი" აირჩიეთ ყველა ფუნქცია დაჭერით " ეს ფუნქცია დაინსტალირდება ადგილობრივ მყარ დისკზედა დააკოპირეთ ინსტალაციის ადგილი ( იგი მონიშნულია ყვითლად) Notepad-ში, შემდეგ ისევ დააწკაპუნეთ შემდეგი».
  1. ინსტალაციის პროცესში თქვენ მოგეთხოვებათ დააინსტალიროთ JRE. დააწკაპუნეთ "შემდეგი" და შემდეგ "დასრულება" ინსტალაციის დასასრულებლად.
  2. ახლა თქვენ უნდა შეცვალოთ PATH ცვლადი. Წადი მართვის პანელი > სისტემა და უსაფრთხოება > სისტემა. მარცხენა პანელში აირჩიეთ " სისტემის დამატებითი პარამეტრები“.
  1. დააწკაპუნეთ " Გარემოს ცვლადები". თავში " სისტემის ცვლადები"იპოვეთ PATH ცვლადი და შემდეგ ფანჯარაში დააჭირეთ ღილაკს "რედაქტირება".
  1. აირჩიეთ ყველა ტექსტი " ცვლადი მნიშვნელობა"და დააკოპირეთ ცალკე ტექსტური ფაილი. ეს გაადვილებს შეცდომებზე რედაქტირებას და შემოწმებას. ნახეთ, დაკოპირებული ტექსტი შეიცავს თუ არა ხაზს: C: ProgramData Oracle Java javapath; . თუ კი, მაშინ შეგიძლიათ გადახვიდეთ შემდეგ ეტაპზე. თუ არა, მაშინ ჩასვით ინსტალაციის ადგილი, რომელიც ადრე დააკოპირეთ ცვლადის დასაწყისში და დაამატეთ ბინ სტრიქონის ბოლოს შემდეგნაირად: C : Program Files (x 86) Java jdk 1.8.0_112 bin ; გთხოვთ, გაითვალისწინოთ, რომ თქვენი JDK ვერსია (jdk 1.8.0_112) შეიძლება განსხვავებული იყოს. დააკოპირეთ ცვლადის მნიშვნელობა და ჩასვით PATH ველში.
  1. დააწკაპუნეთ " კარგითქვენი ცვლილებების შესანახად.
  2. იმის შესამოწმებლად, არის თუ არა პლატფორმა დაინსტალირებული სწორად პროგრამირების შესავალიჯავა, გახსენი ბრძანების ხაზიხაზში cmd აკრეფით Windows ძებნაან ბრძანების "Run ..." ( ფანჯრები - რ). შეიყვანეთ java-version ბრძანება. თუ Java-ის მიმდინარე ვერსია გამოჩნდება, ინსტალაცია წარმატებით დასრულდა. თუ არა, შეამოწმეთ Oracle-ის დახმარების გვერდი.

IntelliJ IDEA-ს ინსტალაცია

  1. Წადი IntelliJ IDEA ჩამოტვირთვის გვერდი.
  2. ჩამოტვირთეთ უფასო Community Edition დაწკაპუნებით "ჩამოტვირთვა".
  1. ჩამოტვირთვის შემდეგ გაუშვით ინსტალაციის ფაილი და მიჰყევით ეკრანზე გამოსახულ ინსტრუქციას. შემდეგ შექმენით დესკტოპის მალსახმობი 64-ბიტიანი ვერსიისთვის და დაამატეთ ასოციაციები .java გაფართოებით. დააჭირეთ "შემდეგი" და გააგრძელეთ ინსტალაცია.
  1. ინსტალაციის შემდეგ გახსენით IntelliJ IDEA დესკტოპის ხატულაზე დაწკაპუნებით.
  2. აირჩიეთ "არ შემოიტანოთ პარამეტრები" (" არ შემოიტანოთ პარამეტრები") და დააჭირეთ "OK". ამის შემდეგ, ჩვენ ვეთანხმებით Jetbrains-ის კონფიდენციალურობის პოლიტიკას „მიღებაზე“ დაწკაპუნებით.
  3. ახლა თქვენ შეგიძლიათ მოაწყოთ ინტერფეისი თქვენთვის. თქვენ ასევე შეგიძლიათ გამოტოვოთ ეს ნაბიჯი და ყველაფერი ნაგულისხმევად დატოვოთ ღილაკზე „ყველას გამოტოვება და ნაგულისხმევის დაყენება“ დაწკაპუნებით.
  4. პროგრამა აჩვენებს მისასალმებელ გვერდს. დააჭირეთ "ახალი პროექტის შექმნა" (" შექმენით ახალი პროექტი»).
  1. შემდეგ ფანჯარაში აირჩიეთ "Java" მარცხენა პანელში და დააჭირეთ "ახალი" პროგრამის ფანჯრის ზედა ნაწილში, რათა აირჩიოთ JDK. აქ თქვენ უნდა აირჩიოთ ადგილი, სადაც დააინსტალირეთ JDK Java ინსტალაციის დროს და შემდეგ დააწკაპუნეთ "შემდეგი".
  2. IntelliJ IDEA იპოვის JDK-ს და ამოიცნობს მას. არ არის საჭირო სხვა პარამეტრების მონიშვნა, უბრალოდ დააჭირეთ "შემდეგი".
  3. შემდეგ ეკრანზე შეიყვანეთ პროექტის სახელი: HelloWorld და დააჭირეთ Finish. თუ პროგრამა ამბობს, რომ დირექტორია არ არსებობს, დააწკაპუნეთ OK. თუ მარცხენა პანელს ვერ ხედავთ, გადადით Views > Tool Windows > Project.
  4. კლასის სახელის დასაყენებლად აირჩიეთ src საქაღალდე მარცხენა პანელში. დააწკაპუნეთ მასზე მარჯვენა ღილაკით, გადადით New > Java და დააყენეთ კლასის სახელი. კლასის სახელში არ უნდა იყოს სივრცეები.
  1. ჩაწერეთ კოდი და შეინახეთ Java პროექტი პროგრამირების გაკვეთილი.
  2. პროგრამის გასაშვებად გადადით მენიუში Run > Run... დააწკაპუნეთ HelloWorld-ზე - პროგრამა შეადგენს ფაილს და გაუშვებს მას.

თქვენი პირველი Java პროგრამა

მომხმარებლებისთვის ახალი პროგრამირების ენის გასაცნობად, ისინი იყენებენ Hello World პროგრამას (“Hello, World!”). ეს არის მარტივი პროგრამა, რომელიც აჩვენებს სიტყვებს Hello, World! ამ განყოფილებაში გასწავლით წერას ამ პროგრამას Java-ში IntelliJ IDEA-ს გამოყენებით.

  1. გახსენით IntelliJ IDEA.
  2. გადადით ფაილი > ახალი > პროექტი ... > Java ( მარცხენა ნავიგაციის ზოლში).
  3. დააყენეთ პროექტის სახელი პროგრამირების კურსიჯ ა ვა. ჩვენ მას დავარქმევთ Hello World და დააჭირეთ Finish-ს.
  4. ახლა ჩვენ უნდა შევქმნათ ახალი Java კლასი.
  5. აირჩიეთ src საქაღალდე მარცხენა პანელში, შემდეგ გადადით File > New > Java Class და დაარქვით ახალ კლასს HelloWorld.
  6. დააკოპირეთ შემდეგი კოდი HelloWorld.java ფაილში და შეინახეთ იგი.

საჯარო კლასი HelloWorld ( public static void main (String args) ( // ბეჭდავს "Hello, World!" System.out.println ("Hello, World!"); ) )

  1. დააჭირეთ დაწყება ღილაკს ( გაიქეცი). თუ ყველაფერი რიგზეა, ეკრანზე დაინახავთ Hello, World!

როგორ ვისწავლოთ ჯავა?

ოფიციალური Java დოკუმენტაცია

Oracle, კომპანია, რომელიც ფლობს Java-ს, აქვეყნებს ხარისხის გაკვეთილებს. ოფიციალური დოკუმენტაცია მოიცავს Java-ს ყველა მახასიათებელს და რეგულარულად განახლდება.

შენიშვნა: ერთადერთი უარყოფითი ის არის, რომ Java-ს ოფიციალური დოკუმენტაცია ყოველთვის არ არის დაწერილი უმარტივეს ენაზე.

თუ მართლა გინდა სწავლა პროგრამირებაშიჯავა, იყიდე კარგი წიგნი. რა თქმა უნდა, 1000 გვერდი ერთ დღეში ვერ იკითხება. მაგრამ კარგი გაკვეთილი დაგეხმარებათ პროგრამირების სწავლაში.

ჯავა: სრული გზამკვლევი(მე-10 გამოცემა)

შესანიშნავი წიგნი მათთვის, ვინც ახლახან იწყებს Java-ს სწავლას. უახლესი გამოცემა მოიცავს Java 8 გამოშვების ყველა მახასიათებელს.

წიგნში აღწერილია ყველაფერი, რაც უნდა იცოდეთ Java-ში პროგრამირების შესახებ, სინტაქსის ჩათვლით, საკვანძო სიტყვებიდა პროგრამირების საფუძვლები, პლუს Java API ბიბლიოთეკა, Java აპლეტები და სხვა.

ჯავის ფილოსოფია (მე-4 გამოცემა)

თუ Java-ზე გადადიხართ სხვა პროგრამირების ენიდან, ეს წიგნი თქვენთვისაა. თუ ნულიდან იწყებთ, უმჯობესია წაიკითხოთ ის მეორესთან ერთად.

Java 8. ჯიბის გზამკვლევი: პირველი დახმარება ჯავის პროგრამისტებისთვის

ეს წიგნი შეიცავს ნათელ პასუხებს კითხვებზე, რომლებიც ჩნდება ჯ ava პროგრამირება ნულიდან. ის მოკლედ მოიცავს Java-ს ყველა ძირითად კონცეფციას (მათ შორის ჯავა 9). არ გსურთ ასობით გვერდის გადაფურცვლა სწორი ხაზის მოსაძებნად? იყიდე ეს წიგნი.

დასკვნის ნაცვლად

თუ Java-ს სწავლას დაიწყებთ, ვერ შეცდებით - ეს არის პერსპექტიული პროგრამირების ენა, სავსეა მრავალფეროვანი შესაძლებლობებით.

სანამ Java-ს სწავლას დაიწყებთ, აქ მოცემულია რამდენიმე რჩევა:

  • ნუ წაიკითხავთ საგანმანათლებლო სტატიებს და მაგალითებს რომანივით. Ერთადერთი გზაკარგი პროგრამისტი რომ გახდე ბევრი კოდის დაწერაა.
  • თუ თქვენ მოდიხართ პროგრამირების სხვა ენიდან (ვთქვათ, C#), თქვენ არ გჭირდებათ კოდის დაწერა C# სტილში.
  • იპოვეთ ჯავის თემები ონლაინ. როცა წერას ისწავლი მარტივი პროგრამები Java-ში იპოვეთ ჯავისადმი მიძღვნილი პოპულარული ვებსაიტები და ფორუმები. შეეცადეთ მოაგვაროთ პრობლემები, რომლებიც სხვა პროგრამისტებს აქვთ. ეს შესანიშნავი გზაა საკუთარი ცოდნის გასაფართოებლად. გარდა ამისა, თუ გაჭედავთ, გეცოდინებათ სად მიმართოთ დახმარებას.

ვიმედოვნებთ, რომ ეს სტატია დაგეხმარებათ ისწავლოთ Java და დაგეხმაროთ დაიწყოთ მუშაობა თქვენს პირველ პროგრამებზე.

ეს პუბლიკაცია არის სტატიის თარგმანი ისწავლეთ ჯავის პროგრამირება. საბოლოო გზამკვლევი“, მომზადებული მეგობრული პროექტის გუნდის მიერ

Სალამი ყველას! მე არ მაქვს იმის თქმა, თუ რამდენად რთულია პროგრამისტად დასაქმება გამოცდილების გარეშე 2019 წელს. კონკურენცია "გამოცდილების გარეშე" ბოლო დროს ძალიან გაიზარდა (პირველ რიგში ისეთი რესურსების წყალობით, როგორიცაა JavaRush, GeekBrains და ა. და პრობლემა სულაც არ არის გასაუბრების კარგად გავლა. პრობლემა ხდება უბრალოდ იქ მისვლა.

როგორ შეიძლება JavaRush-ის კურსდამთავრებული გამოირჩეოდეს სამუშაოს მაძიებელთა ბრბოსგან? მე არ დავწერ საწარმო ტექნოლოგიებზე, როგორიცაა Spring და Hibernate, რომლებიც აშკარაა ჯავაისტისთვის, რადგან ისინი თავისთავად სავალდებულოა და მათ გარეშე სამუშაოს პოვნა ძალიან რთული იქნება. ქვემოთ მოცემულია 5 რეკომენდაცია დამწყებ დეველოპერებისთვის, რომლებიც გსურთ იპოვოთ სამუშაო 2019 წელს, თითოეული მათგანი აუცილებლად მოგანიჭებთ თქვენს რეზიუმეს უამრავ დამატებით ქულას.

1. ისწავლეთ JavaScript.

Პაემანზე JS არის ყველაზე პოპულარული პროგრამირების ენა დამსაქმებლებს შორის. პორტალმა HackerRank-მა ჩაატარა გამოკითხვა კომპანიებს შორის მათი „სურვილების“ შესახებ და ის პირველი ადგილი დაიკავა დამსაქმებლების მოთხოვნის მიხედვით.

მიზეზი მარტივია - JavaScript-ს ამჟამად არ აქვს სერიოზული ალტერნატივა frontend-ის შემუშავებისას. თუ თქვენ დაეუფლებით "სუფთა" JS-ს და ერთ-ერთ პოპულარულ ფრეიმევიკს (ძირითადად React ან Angular), გაიზრდება თქვენი შანსი გახდეთ პროგრამისტი. ფაქტორი. პირველ რიგში, ნებისმიერი კომპანია, რომელიც ეძებს Java დეველოპერს, გაუხარდება, თუ მან იცის JavaScript. ამის მიზეზები საკმაოდ მარტივია: ძალიან ხშირად არის პროექტში მცირე ამოცანები - მაგალითად, გარკვეული ფუნქციების დაფიქსირება. ღილაკ A არ უნდა ეწოდოს A, და B, განთავსდეს არა მარჯვნივ, არამედ მარცხნივ და გამოიძახეთ ფუნქცია X და არა Y, უკანა მხარეს "e". მაგრამ ამ შემთხვევაში, როგორც ბექენდი, ასევე წინა ნაწილი უნდა გამოსწორდეს. და მაშინაც კი, თუ ამოცანა ელემენტარულია, მის გადასაჭრელად მაინც ორი ადამიანია საჭირო: უკანა ხაზის მუშაკი და ფრონტის მუშა. მაგრამ თუ გუნდს ჰყავს ადამიანი, რომელიც ორივეს იცნობს (აუცილებლად არა გამორჩეულ დონეზე), ასეთი ამოცანების შესასრულებლად რესურსების რაოდენობა მნიშვნელოვნად მცირდება. მეორეც, უმცროსი და სტაჟიორთა ვაკანსიები უფრო ხშირად ჩნდება წინა მუშაკებისთვის, ვიდრე მუშაკებისთვის. მაგალითად, HeadHunter-ის ძიების შემდეგ დღეს ჩემს ქალაქში ვიპოვე 1 Java Junior ვაკანსია, მაგრამ Frontend Junior - 3. ზოგადად, JS არის თქვენი სერიოზული შანსი მიიღოთ თქვენი პირველი სამუშაო. იშოვე სამუშაო ჯავაისტად - შესანიშნავია, მათთვის JS არასდროს არის ზედმეტი. ის არ იმუშავებს ჯავასთან (ბევრ ქალაქში ვაკანსიების ნაკლებობაა) - სავსებით შესაძლებელია, რომ IT-ში მოხვდეთ "ფრონტის" საშუალებით. JavaRush-ზე მახსოვს ერთი „წარმატების ისტორია“ წავიკითხე იმ ადამიანისგან, რომელიც აქ სწავლის შემდეგ გადავიდა ფრონტ-ენდის განვითარებაზე. JS-ის სწავლის შესანიშნავი პორტალია https://learn.javascript.ru/. ეს არ არის ისეთივე კარგი, როგორც JavaRush, მაგრამ თქვენ მიიღებთ მყარ ბაზას. ასევე არის კურსები ყველა პოპულარულ ჩარჩოებზე (ისინი უკვე ფასიანია).

2. ისწავლეთ SQL მოთხოვნების დაწერა.

როგორც ჩანს, SQL არანაკლებ აშკარაა და არ შედის სიაში. სინამდვილეში, განსხვავებაა: დიდი რიცხვიდეველოპერებმა იციან როგორ გამოიყენონ SQL „ზედაზე“ - ჩაწერეთ „SELECT * FROM table_name“ ან შეუერთდით რამდენიმე ცხრილს. გირჩევთ, საფუძვლიანად გაეცნოთ მათ და ნუ მოგერიდებათ ამის მითითება თქვენს რეზიუმეში. თუ თქვენ გესმით და შეგიძლიათ სწრაფად დაწეროთ ასეთი რამ, დამსაქმებლის თვალში თქვენი ღირებულება მნიშვნელოვნად გაიზრდება. წარსულში ჩემი რამდენიმე კოლეგა მუშაობდა ისეთ სფეროებში, სადაც მათ ბევრი SQL შეკითხვის დაწერა უწევდათ და როდესაც მათ გადაწყვიტეს ველი შეეცვალათ Java-ს განვითარებაზე, ეს უნარები დაეხმარა მათ დამსაქმებლის თვალში ძალიან მიმზიდველად გამოიყურებოდნენ. და java-dev-ის მუშაობაში, რა თქმა უნდა, ეს ძალიან სასარგებლო უნარია. მე თვითონ რეგულარულად ვეშვები მათთან რჩევების მისაღებად :) შეგიძლიათ დაიწყოთ სწავლა „Head First SQL“-ით, შემდეგ უბრალოდ აირჩიოთ ერთ-ერთი პოპულარული DBMS (Portgres ან Oracle). მაგალითად) და წაიკითხეთ რამდენიმე წიგნი მასზე. როგორც პრობლემურ წიგნს, გირჩევთ პორტალს http://www.sql-ex.ru/. როგორც ჩანს, მარტივია, მაგრამ საკმაოდ კარგად უმკლავდება თავის ფუნქციას.

3. შექმენით GitHub პროფილი

თქვენი GitHub არის ალბათ ყველაზე მნიშვნელოვანი რამ, რასაც პოტენციური დამსაქმებელი შეამჩნევს თქვენი რეზიუმეს შემდეგ. პროფილი რამდენიმე მიმდინარე პროექტით აუცილებლად მიიპყრობს დამატებით ყურადღებას. უფრო მეტიც, "GitHub ანალიზატორები" სულ უფრო პოპულარული ხდება რეკრუტირების სერვისებს შორის - სპეციალური პროგრამები, რომლებიც GitHub-ში შენახული კოდის გამოყენებით პოულობენ დეველოპერებს კომპანიებისთვის საჭირო ტექნოლოგიური დასტა. თუ მათ სჭირდებათ ადამიანი, რომელმაც იცის Spring Security, ასეთი პროგრამა აანალიზებს GitHub-ს და ირჩევს მომხმარებლებს, რომლებსაც აქვთ კოდი ამ ტექნოლოგიის გამოყენებით თავიანთ საცავებში. გასაგებია, რომ თავიდან საამაყო არაფერი იქნება განსაკუთრებული, მაგრამ სავსებით შესაძლებელია დავიწყოთ იქ JavaRush-ის „დიდი ამოცანების“ ატვირთვით. თუ სტაჟირების საგამოცდო დავალება დაასრულეთ, იქაც წადით. ჩვენ ავითვისეთ ReactJS/AngularJS და შევქმენით რამდენიმე ერთგვერდიანი აპლიკაცია - იქაც. ყველაფერი, რაც თქვენ საკუთარი ხელით შექმენით, მუშაობს და შეიძლება იყოს დამსაქმებლისთვის საინტერესო და უნდა გამოჩნდეს თქვენს gh პროფილში.

4. მიიღეთ Oracle-ის სერთიფიკატი.

JavaRush-ის შემქმნელები არ მაძლევენ მოტყუების უფლებას: ყველაზე მეტად ხშირად დასმული კითხვა, რომელი პოტენციური სტუდენტები ეკითხებიან მათ - „გაძლევენ თუ არა რაიმე სახის სერთიფიკატს სწავლის შემდეგ? JR-ის სერთიფიკატები არ გაიცემა და, ზოგადად, არის მარტივი მიზეზი - დამსაქმებლები არ არიან დაინტერესებულნი. მათ საკმაოდ შეუძლიათ შეამოწმონ ის, რაც თქვენ იცით და შეგიძლიათ გააკეთოთ გასაუბრებაზე ონლაინ კურსის სერთიფიკატების გარეშე. განსხვავება Oracle სერტიფიკატს შორის არის ის, რომ ის არის - ოფიციალური დადასტურება Java-ს შემქმნელებისგან, რომ თქვენ ფლობთ ამ ენას.მისი ქონა ძალიან იქნები სერიოზული უპირატესობააუთსორსინგის კომპანიებისთვის, ე.ი. მათთვის, ვინც თავის დეველოპერებს სხვა კომპანიებს „ქირაობს“ გარე პროექტებზე სამუშაოდ. მაგალითად, ბანკმა უნდა შექმნას ახალი ინტერნეტ კლიენტი. მისთვის მომგებიანი არ არის დეველოპერების საკუთარი ურდოს შენარჩუნება ამისთვის - ერთჯერადი პროექტისთვის უფრო ადვილია გუნდის პოვნა გარედან. ასეთ შემთხვევებში ისინი მიმართავენ აუთსორსინგის კომპანიებს. ისინი შეარჩევენ ბანკისთვის საჭირო უნარების მქონე ადამიანებს და შექმნიან გუნდს. თუმცა, ძალიან მნიშვნელოვანია მომხმარებლისთვის იმის გაგება, რომ ის იხდის ფულს (და ბევრს) ნამდვილად ჭკვიანი დეველოპერებისთვის. და სწორედ აქ გახდება Oracle-ის სერტიფიკატი თქვენი უპირატესობა. ყოველივე ამის შემდეგ, სინამდვილეში, ეს არის ერთადერთი შესაძლებლობა, რომ დაადასტუროთ ჯავის პროგრამისტის კვალიფიკაცია ფურცლით. სხვა სიტყვებით რომ ვთქვათ, კომპანიისთვის ბევრად უფრო ადვილია "მიყიდოს" სერტიფიცირებული დეველოპერი თავის მომხმარებლებს. Oracle-ის სერთიფიკატები რამდენიმე დონეზეა. პირველი დონის (OCAJP8) მიღება საერთოდ არ იქნება რთული. გამოცდა მოიცავს კითხვებს მხოლოდ 8 თემაზე:

  • ჯავის საფუძვლები(ცვლადები, პაკეტები, main() მეთოდი და ა.შ.);
  • Java მონაცემთა ტიპებთან მუშაობა(პრიმიტივები, ლინკები, შეფუთვები);
  • ოპერატორებისა და გადაწყვეტილების კონსტრუქციების გამოყენება(+-*/ , ასევე if-esle, switch და ა.შ.);
  • მარყუჟის კონსტრუქციების გამოყენება(ციკლები);
  • მეთოდებთან და ინკაფსულაციასთან მუშაობა(მეთოდები, კაფსულაცია);
  • მუშაობა მემკვიდრეობით(მემკვიდრეობა);
  • დამუშავების გამონაკლისები(გამონაკლისები);
  • Java API-დან შერჩეულ კლასებთან მუშაობა(მუშაობს რამდენიმე პოპულარულ კლასთან - LocalDateTime, ArrayList, String).
არ არის ისეთი რთული თემები, როგორიცაა მრავალსართულიანი, IO/NIO და ა.შ. ბევრი თემა შეკვეცილია (მაგალითად, სიის ყველა განხორციელებიდან<>კითხვები იქნება მხოლოდ ArrayList-ის შესახებ<>). გამოცდისთვის მომზადება შეგიძლიათ რომელიმე სპეციალური წიგნის გამოყენებით, მათი