Програмування - важка робота або легкий спосіб зрубати грошей

Програмування - важка робота або легкий спосіб зрубати грошей?

Як стати Java розробником?

Мабуть, найважливіший пункт. У зв'язку з економічною кризою, багато людей намагаються знайти спосіб забезпечити себе фінансово. А тут з'являється "IT", в якому всі отримують багато грошей за те, що можуть написати 10 рядків коду. До того ж, "програмування - це легко".

На жаль, це не так. Хоч як би намагалися засновники різних курсів пояснити, що будь-хто може стати розробником за 3 місяці, це не так.

В першу чергу, необхідно пам'ятати, що розробник програмного забезпечення - це інженер. Тому і вимоги відповідні.

По-друге потрібно розуміти, що саме являє собою робота програміста? Перш за все - це перманентне вирішення проблем. У Вас не буде моменту, коли всі проблеми будуть вирішені. Це процес постійний. По-друге - це величезна кількість рутинної роботи, виконувати яку по 3-4 години в день без любові до справи, якщо не невожможно, то вже точно вимагає величезного зусилля над собою.

Отже, якщо Ви відчуваєте, що розробка програмного забезпечення - це те, чим би ви хотіли займатися більше 40% часу свого життя, то йдемо далі.

2. Що саме необхідно для того, щоб називатися Java-розробником?

Для того, щоб Ви з гордістю могли назвати себе Java Developer з більше літери "J" необхідно мати, хоча б, загальне розуміння наступних речей:

Java Core

Сюди входить знання і розуміння ієрархії класів в Java, методи класу Object і, звичайно Collection Framework. Які інтерфейси, хто і кого імплементує і т.д.

Ось цю картинку, java-розробник повинен намалювати в 3 ранку під арт-обстрілом:

Програмування - важка робота або легкий спосіб зрубати грошей

У вивченні Java Core допоможуть такі книги, як:

Java 8. Повне керівництво (Шілтд)
Філософія Java (Еккель)
І звичайно ж, нікуди не дітися від

Java Platform API Specification

Тут матеріалу вкрай багато, тому краще не стрибати між книгами, а взятися за одну і "довбати" її "до посиніння".

Від новачка не потрібно більше, ніж знання і розуміння трьох принципів ООП (деякі вважають, що їх 4, але тут вже як потрапите і це не так істотно).

Уміння на практичному прикладі пояснити кожен з них.

Основи баз даних і SQL

MySQL 5.0 (Віктор Гольцман)

Ця книга легко і доступно пояснює базові поняття з ілюстрацій прикладів і покрокові інструкції.

Крім розуміння того, що таке база даних, необхідно розуміти, як Ваше Java програма з нею взаімодейтсвіе.

JDBC 4.1 Specification найбільш повно розкриває всі особливості роботи JDBC.

У книгах по Шілтда і Еккель Servlet-и описуються "побіжно", для більш глибокого розуміння, що ж це таке необхідно вивчити щось по-серйозніше.

Java Servlet Specification
і
JavaServer Pages Specification
Ці дві специфікації дають вичерпне розуміння тих технологій.

Як JDBC, так і Servlets використовуються розробниками в повсякденній роботі тільки в рідкісних випадках. Але вони лежать в основі всіх популярних Framework-ів і розуміння того, як ці framework-і потроєні "всередині" допоможе Вам уникнути дуже багатьох дурних помилок, які допускають ті, хто вивчав тільки framework-й.

Книга, яка є гордістю світу Java - це Java Persistence with Hibernate.

Багато розробники, які використовують інші технології (зокрема C #), читають цю книгу для того, щоб глибше зрозуміти що таке ORM і які проблеми воно вирішує.

Якщо Ви вмієте созлать відносини one-to-one, one-to-many і many-to-one і написати простий запит на HQL - ваших знань вистачить для рівня новачка.

Web - Framework (наприклад, Spring)

Після того, як освоєно все, що є вище можна вже замахнутися на Spring. Для початку написати просте CRUD додаток, а потім дізнатися, що таке Spring Pet Clinic. Тепер Ваших знань буде достатньо для того, щоб з розумінням того, що відбувається створювати більш-менш пристойне додаток, яке ходить в базу даних, щось там робить і т.д. і т.п.

Вітаю, тепер Ви можете написати те, що можна вже і "помацати" і показати.

Але базове розуміння всього цього бути повинно.

Цього Вам вистачить з головою.

Будь-який проект, в якому працює більше 0 розробників не робиться без ВКВ (системи контролю версій). GIT - найбільш зручна і часто застосовується, конкурує з нею SVN. Будете знати одну з них - і буде Вам щастя.

За підсумком модно сказати, що порого входу в Java вкрай високий. Кількість необхідних знань для того, щоб влаштуватися на роботу або почати писати більш-менш солідні додатки просто величезна. Але на виході отримуєте просто неймовірні перспективи.

Важливо розуміти, що попит на новачків вкрай низький, незважаючи на всі спроби показати, що програмістів не вистачає. Бракує висококваліфікованих розробників з досвідом роботи від 3-х років, а новачків з надлишком.

Для того, щоб зачепитися і "увійти в IT" Вам допоможе пекельна праця протягом від 6 місяців до 1 року. Але якщо це Ваше і Ви готові для цього вкласти таку кількість зусиль, то дерзайте.

- Від себе хотів би додати, що реально для вивчення java core нічого кращого javarush, по-крайней мере в рунеті - немає. ИМХО.

Всім удачі ще раз.