0. Теорія теж важлива

Теорія, звісно, — річ теж украй важлива. Якби фізики не систематизували свої теоретичні знання, а займалися виключно експериментами, це було б вельми весело, але навряд чи дуже корисно! Програмування тут не виняток. На JavaRush ми зосередилися переважно на практиці й задачах, які дадуть змогу щонайшвидше досягти прогресу. Втім ви можете (і ми настійно радимо!) черпати знання також із інших джерел інформації, насамперед із книг.

Усі люди різні: комусь досить прочитати одну коротку лекцію на JavaRush, і все відразу зрозуміло; іншим зручніше отримувати інформацію з різних джерел, узагальнювати й робити висновки.

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


1. Head First Java

Кеті Сієрра, Берт Бейтс, «Вивчаємо Java» (ориг. «Head-First Java»)

Однозначно найкраща книжка з Java для початківців! Head First — серія з кількох десятків книжок із різних мов програмування. Автори дотримуються оригінальної манери подання матеріалу, завдяки чому книжка читається швидко й дуже легко. А писати код і розв'язувати задачі можна просто в книзі!

Її можна читати з будь-якого рівня JavaRush, навіть з нульового:)


2. Thinking in Java

Брюс Екель, «Філософія Java»

Біблія Java-програміста. Це не перебільшення — кожен Java-розробник повинен її прочитати. Книжка досить об'ємна, і на те є причина. Таку назву їй надано недарма: тут не тільки розглядаються конкретні теми з мови Java, а й пояснюється її філософія, ідеологія; причини, з яких створювачі мови зробили щось по-своєму, не так, як в інших мовах.

Вона не підходить для програмістів-новачків, але пройшовши половину курсу JavaRush, ви вже можете за неї братися.

Це основні книжки з мови Java, які ми рекомендуємо прочитати (хоча є також багато інших). За допомогою книг можна не тільки вивчити мову, а й розширити кругозір і поглибити розуміння основних принципів програмування. Нижче надамо список книжок, які підходять для цього найкраще.


3. Герберт Шилдт

Герберт Шилдт, «Java. Повний посібник»

Ця книжка також сподобається новачкам. Від попередньої вона відрізняється насамперед манерою викладення матеріалу: тут воно більш строге й послідовне (багато хто віддає перевагу саме такій формі подання матеріалу, а не ігровій). До її безперечних плюсів можна віднести «розжовування» матеріалу до найменших дрібниць, іноді — багаторазове.


4. Чарльз Петцольд

Чарльз Петцольд, «Код. Таємна мова інформатики»

Рейтинги цієї книжки на Amazon (4,7/5), Ozon (5/5) і захоплені відгуки говорять самі за себе.

Чудова книжка для тих, хто давно забув шкільний курс інформатики або взагалі ніколи його не проходив. Важливі речі про роботу комп'ютера й коду пояснюються буквально на пальцях. Наприклад, як комп'ютер взагалі виконує написаний програмістом код? І як він розуміє з тексту коду, що від нього хочуть?

Відповіді на всі запитання — в цій книжці, яка вже стала класикою. Вона прекрасно поповнить знання тих, хто вивчає програмування без профільної освіти.


5. Грокаємо алгоритми

Адіт'я Бхаргава, «Грокаємо алгоритми».

Алгоритми й структури даних — тема дуже важлива та потрібна. Значна частина роботи програміста полягає в їх використанні, і воно має бути ефективним! Як, наприклад, відсортувати за зростанням 1000 чисел, записаних у випадковому порядку?

Насправді для цього є безліч способів! І всі вони аж ніяк не однаково ефективні. Книжок і курсів з алгоритмів і структур даних дуже багато, але для людей, які тільки почали вивчати програмування, книжка Бхаргави, без сумніву, найкраща. Легка мова, докладні пояснення з картинками та не дуже великий обсяг — те, що треба для початку!

Однак життя не стоїть на місці: постійно виходять нові версії Java, нові книжки, нові переклади. На сайті JavaRush регулярно з'являються огляди й добірки нових книжок. Ось, наприклад, стаття, в якій один із студентів JavaRush виклав свої рекомендації щодо книжок для початківців. І це чудова стаття та відмінна добірка.

Вивчайте Java на JavaRush, читайте книжки та беріть участь у житті спільноти JavaRush, а все інше додасться.