Мога ли да стана софтуерен разработчик?

Защо разработка на софтуер?
Преди да започнем да учим човек на програмиране, по-добре да разберем Howво му дава то.1 Проста и интересна работа.
Софтуерният инженер е проста и интересна работа. Има голямо пространство за творчество. Обичам го. Първоначално полудях при мисълта, че правя това, което ми харесва и ми плащат за това. Но след това свикнах в крайна сметка.2 Добре е платено.
Просто се наслаждавам да гледам How приятелите ми си купуват коли и къщи след 5 години работа.3 Гъвкави часове.
Стриктният работен график е неприятно нещо. Всеки човек, който някога е бил в задръстване в час пик or е бил глобен за 5 minutesи закъснение, може да потвърди това. А Howво ще кажете за възможността да пристигнете на работа в 11 часа сутринта и да си тръгнете в 17 часа? За повечето програмисти това е обичаен график. Просто си вършете работата и никой няма да каже кръстоска. Може дори да работите вкъщи в повечето компании. Винаги можете да постигнете разумно споразумение с вашия работодател.4 Професионално израстване.
В повечето компании трябва да се изкачите по кариерната стълбица, за да получите добро заплащане. Разработчикът на софтуер трябва да бъде само разработчик на софтуер. Няма да се налага да се преквалифицирате от разработчик в мениджър or да се опитвате да заемете водеща позиция. Всичко, което трябва да направите, е да се развивате професионално. Разработчиците, които имат 5 до 10 години опит, получават кралско заплащане.5 Висока международна мобилност.
Има три най-високо платени професии в света: адвокат, лекар и разработчик на софтуер. Това е истинско предизвикателство за адвокатите, работещи в чужбина: различни закони, съдебна практика и т.н. Един лекар трябва да научи езика, други медицински стандарти и да положи изпити. Разработчикът няма да трябва да учи нищо допълнително. Същият език. Същите стандарти. В повечето случаи дори клиентите са едни и същи.Защо Java?
Следните общо три фактора ме накараха да преквалифицирам хората за Java разработчици.1. Java — е един от най-лесните езици за изучаване.
Човек, който току-що е завършил учorще, може да го научи за 3 до 6 месеца, в зависимост от базовите знания и количеството часове, вложени в обучението.2. Високо търсене на пазара на труда.
Можете да получите работа без предишен опит. Компаниите с нетърпение наемат стажанти и продължават да ги обучават.3. Най-високи заплати в сферата.
Един от най-високите. Това е особено важно за младши разработчици.Програмирането е умение

Нов иновативен метод на обучение
Обучението в CodeGym е напequalsо по различен начин от обучението в колежа. Ще го забележите съвсем скоро. Много по-ефективно е. Ученето ви в колежа вероятно е било така: дълги лекции и практика, за да закрепите наученото. Следвайки този подход, подобрявате своите знания, а не умения. Честно казано, вашите умения, придобити по този начин, практически не струват нищо. Имам друг подход. Смятам, че човек първо трябва да задава въпроси и едва след това да получава отговори. Отговор преди въпрос няма стойност. Моите лекции са отговори на вашите въпроси. Така че първо ви давам практически задачи, които са трудни за решаване с вашите настоящи знания. Тези задачи повдигат въпроси и тогава получавате моите отговори, които са знания и лекции. Представям ви нови знания на три етапа:-
Въведение (Минимум теория и няколко практически задачи)
-
Основни блокови знания (трябва да разберете темата напълно)
-
Подробности и нюанси (тук попълвам пропуски)
Ниво 5

1 Ели говори за класове
- Хей, Амиго! - Здравей, Ели! - Днес искам да ви обясня Howво представляват класовете. - Обяснение # 1. Ще започна с аналогия. Всички неща в нашата вселена са напequalsи от атоми. Те могат да бъдат от различни видове: водород, кислород, желязо, уран, ... Комбинирането на атоми позволява създаването на различни неща or предмети. - Същото важи и за вселената на Java. Тук програмите се състоят от обекти от различни типове (където класът е тип): Integer, String, File, Object, … Комбинирането на обекти позволява създаване на различни уеб услуги or програми. - Различните атоми имат различна вътрешна структура. Те съдържат определен брой електрони, протони и неутрони. - Различните класове (типове обекти в Java) също имат различна вътрешна структура. Те съдържат различни променливи и методи. - Да, имам обща представа за устройството на атома. Аз съм робот, нали? - Нека да разгледаме програмата като цяло: обектите са като градивни елементи, които изграждат програмата. Класовете са типове от тези блокове. Блокове от различни типове са обекти от различни класове. - Донякъде го разбрах. - Обяснение # 2. Създаваме нов клас, когато имаме нужда от нов тип обект. В рамките на този клас ние описваме желаното поведение на обектите. - Е, разбрах нещо, но не съм сигурен в това. - Като се има предвид вътрешната структура, класът се състои от методи на клас, които правят нещо, и променливи на клас, където методите съхраняват споделени данни. - Просто казано, класът е набор от методи? - До голяма степен, по-конкретно, класът е група от методи, които работят заедно, и променливи, в които методите съхраняват различни стойности за споделяне. - да За да създадем нов клас, трябва да напишем тези методи... - Да. Трябва също така да решим кои променливи се споделят от различни методи и след това да извадим променливи от метод в класа: да превърнем променливите на метода в променливи на класа. - Класовете се създават по следния модел: 1 Програмистът решава Howви други обекти са му необходими. 2 Програмистът разделя тези обекти на различни типове в зависимост от това Howво правят. 3 Програмистът пише отделен клас за всеки тип. 4 В класа той декларира необходимите методи и променливи. 5Командите трябва да бъдат написани във всеки метод, за да може методът да прави това, което програмистът иска да прави. 6 Класът е готов, сега можете да създавате неговите обекти. - Страхотно! Това е интересна схема. ще го запомня - Трябва да го запомниш, ще ти е от полза. Програмният подход, при който програмата е разделена на обекти, се нарича обектно-ориентирано програмиране ( ООП ). - Java е класически пример за ООП подход, защото в Java всичко е обекти. - Изучаването на Java се състои от две основни задачи: да се научите да пишете свои собствени класове и да се научите да използвате класове на други хора. Днес започваме с най-лесните неща. Ще се научите да пишете прости класове и, разбира се, да създавате техните обекти. Обектите често се наричат екземпляри на класовете. Това са синоними, и двете са правилни. - Схванах го. - За да обобщя, мога да кажа, че класът е минипрограма: набор от данни и функции, които правят нещо с тези данни. Важна характеристика на класовете е възможността за създаване на екземпляри на тези класове (обекти). - За да създадете клас обект, трябва да напишете в codeа «new class_name()» .

2 Риша говори за пакети
- Хей, Амиго! Сега ви разказвам за пакетите. - Файловете в компютъра са групирани в папки. Класовете в Java (всеки клас е в отделен файл) са групирани по пакети, които са папки на диск. Това не е нищо ново. Но има две забележки. - Първо , «уникално пълно име на клас» е «име на пакет» + «име на клас» . Примери:

3 Ким показват видео уроци
- Хей, Амиго! Ето няколко видео урока How да създавате класове и пакети:4 Ели, създаване на обекти, препратки към обекти
- И така, миналия път научихме часовете. Днес бих искал да ви кажа How да създавате обекти. Много е просто: напишете ключовата дума new и името на класа за обекта, който искаме да създадем:


5 Диего, Задачи за създаване на собствени класове и обекти
- Хей, Амиго! Ето някои задачи за създаване на класове и обекти:Задачи | |
---|---|
1 | Създайте клас Cat Създайте клас Cat. Котката трябва да има своето име (name, String), възраст (age, int), тегло (weight, int) и сила (strength, int). |
2 | Внедряване на метод борба Внедряване на метод на булева борба (Cat anotherCat): внедряване на механизъм за борба в зависимост от теглото, възрастта и силата на котките. Създайте зависимост сами. Методът трябва да определи дали текущата котка (обектът, чийто метод за борба е бил извикан) or друга котка е спечелила битката, т.е. връща true, ако текущата котка е спечелила, и false, ако не е спечелила. Трябва да бъде изпълнено следното condition:
|
3 | Гетъри и сетери за класа Dog < Създаване на клас Dog. Кучето трябва да има име - String name and age - int age. Създайте гетери и сетери за всички променливи на класа Dog. |
4 | Създайте три обекта от тип Cat Създайте три обекта от тип Cat в основния метод и ги попълнете с данни. Използвайте класа Cat от първата задача. Не създавайте клас Cat. |
5 | Задръжте три двубоя между котки Създайте три котки с помощта на класа Cat. Проведете три битки по двойки между котки. Не създавайте клас Cat. За битката използвайте метода boolean fight(Cat anotherCat). Показвайте резултата от всяка битка. |
6 Риша говори за инициализация на обект
- Искам да ви разкажа за инициализацията на обекта. Когато се създава обект, е необходимо да се присвоят данни за стартиране на неговите променливи , за да се избегне ситуация, когато се опитате да получите достъп до обект и той няма данни, необходими за правилното функциониране. - Да разгледаме обект от типа File. Минималната необходима информация за file е неговото име. Файл без име е глупост. - Да предположим, че пишете своя собствена version на клас File (например MyFileClass), за да работите с файлове. Каква информация е необходима за всеки обект от този клас? - Името на file, с който ще работи този обект? - Това е вярно. Ето защо добавяме метода initialize() към нашия клас. Ще изглежда така:



7 Диего, Задачи за инициализация на обекти
- Хей, Амиго! Скучно ми е без нашите уроци. Ето някои задачи за инициализация на обекти:Задачи | |
---|---|
1 | Създайте клас Приятел Създайте клас Приятел с три инициализатора (три метода за инициализиране): - Име - Име, възраст - Име, възраст, пол |
2 | Създайте клас Cat Създайте клас Cat с пет инициализатора: - Име - Име, тегло, възраст - Име, възраст (стандартно тегло) - Tagло, цвят, (името, addressът и възрастта са неизвестни, това е алейна котка) - Tagло, цвят, address (това е домашна котка на някой друг) Задачата на инициализатора е да направи обект валиден. Например, ако теглото е неизвестно, трябва да посочите няHowво средно тегло. Една котка не може да има ниHowво тегло, също и възраст. Но може да няма име (null). Същото важи и за address - може да бъде нула. |
3 | Създайте клас Dog Създайте клас Dog с три инициализатора: - Име - Име, височина - Име, височина, цвят |
4 | Създайте клас Circle Създайте клас Circle с три инициализатора: - centerX, centerY, радиус - centerX, centerY, радиус, ширина - centerX, centerY, радиус, ширина, цвят |
5 | Създайте клас Rectangle Създайте клас Rectangle. Неговите данни ще бъдат отгоре, отляво, ширина и височина. Напишете за него възможно най-много методи за инициализиране (...) Примери: - 4 параметъра трябва да бъдат зададени: ляво, горе, ширина, височина - ширина/височина не са зададени (и двете са равни на 0) - височина не са зададени (равно на ширина), създайте квадрат - създайте копие на друг правоъгълник (подава се в параметрите) |
8 Ели говори за конструктори
- Време е да ви разкажа за конструкторите. Много е просто: програмистите изобретиха съкратена нотация за създаване и инициализация на обекти:

- Името на метода на конструктора е същото като името на класа (instead of инициализиране ).
- Методът на конструктора няма тип връщане (изобщо не е посочен тип).
9 Диего, Конструктор задачи
- Предполагам, че сте си починали. Глоба. Ето някои задачи за създаване на конструктор:Задачи | |
---|---|
1 | Създайте клас Приятел Създайте клас Приятел с три конструктора: - Име - Име, възраст - Име, възраст, пол |
2 | Създайте клас Cat Създайте клас Cat с пет конструктора: - Име, - Име, тегло, възраст - Име, възраст (стандартно тегло) - Tagло, цвят (име, address и възраст не са известни. Това е алейна котка) - Tagло, цвят, address (това е домашна котка на някой друг) Задачата на инициализатора е да направи обект валиден. Например, ако теглото е неизвестно, трябва да посочите няHowво средно тегло. Една котка не може да има ниHowво тегло, също и възраст. Но може да няма име (null). Същото важи и за address - може да бъде нула. |
3 | Създайте клас Dog Създайте клас Dog с три конструктора: - Име - Име, височина - Име, височина, цвят |
4 | Създайте клас Circle Създайте клас Circle с три конструктора: - centerX, centerY, радиус - centerX, centerY, радиус, ширина - centerX, centerY, radius, width, color |
5 | Създайте клас Rectangle Създайте клас Rectangle. Неговите данни ще бъдат отгоре, отляво, ширина и височина. Създайте за него възможно най-много конструктори: Примери: - зададени са 4 параметъра: ляво, горе, ширина, височина - ширината/височината не са зададени (и двете са равни на 0) - височината не е зададена (равна на ширината), създайте квадрат - създайте копие на друг правоъгълник (подава се в параметрите) |
10 Професор, Класове и конструктори
- Пак съм аз. Нашите лекции са просто страхотни. Няма да ви давам линкове към скучни лекции. Ето линк към страхотни неща! - Още ли си тук? Върви бързо, чети, а аз трябва да отида в лабораторията. CodeGym Лекция 5 Дискусия11 Хулио
- Хей, Амиго! Аз съм малко изморен. Нека да си починем малко и след това да започнем урока. Намерих нов епизод:12 Джон Катерици
- Здравей, войнико! - Добро утро, сър! - Имам страхотни новини за вас. Ето задачи за затвърждаване на вашите умения. Правете го всеки ден и бързо ще подобрите уменията си. Задачите са специално проектирани за изпълнение в Intellij IDEA.Допълнителни задачи за изпълнение в Intellij Idea | |
---|---|
1 | 1. Три класа 1. Създайте клас Котка и Куче по аналогия с класа Патица. 2. Помислете Howво трябва да върне методът toString в класовете Cat и Dog. 3. В метода main създайте два обекта във всеки клас и ги покажете. 4. Обектите от клас Duck се създават и показват. |
2 | Мъж и жена 1. Създайте публични статични класове Мъж и жена в класа Решение. 2. Класовете трябва да имат полета: име(String), възраст(int), address(String). 3. Създайте конструктори, към които да подадете всички възможни параметри. 4. Използвайте конструктора, за да създадете два обекта от всеки клас с всички данни. 5. Покажете обектите във формат [име + " " + възраст + " " + address]. |
3 | 3. Създайте публични статични класове Куче и Котка. Добавете три полета към всеки клас по ваш избор. Създавайте предмети за анимационните герои на Том и Джери, колкото си спомняте. Пример: Mouse jerryMouse = new Mouse(“Jerry”, 12 (височина, cm), 5 (дължина на опашката, cm)) |
4 | 4. Показване на текущата дата Показване на екрана на текущата дата във форма, подобна на «21 02 2014». |
5 | 5. Прочетете числата от клавиатурата и изчислете общата им сума. Прочетете числата от клавиатурата и изчислете общата им сума, докато потребителят въведе думата «общо». Покажете на екрана общата сума. |
Бонус задачи | |
---|---|
1 | 1. Програмата не се компorра и не стартира. Оправи го. Задача: Програмата трябва да прочете от клавиатурата две числа и да изведе сумата им. |
2 | 2. Добавете нова функционалност към програмата. Стара задача: добавете нова функция, която чете от клавиатурата две числа и показва техния минимум. Нова задача: добавете нова функция, която чете от клавиатурата пет числа и показва техния минимум. |
3 | 3. Разучаване и практикуване на алгоритъм. Задача: Напишете програма, която 1. чете от конзолата номер N, който е по-голям от нула 2. след това чете N числа от конзолата 3. извежда максимума от въведените N числа. |
GO TO FULL VERSION