Чому саме книжки?

В наші дні є купа способів вивчати програмування: курси, відео, блоги… Але, на мою думку, книги залишаються найкращим джерелом знань. Вони дозволяють глибше зануритися в тему, а також відпочити від екрана.

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

Кожна книга без перебільшення заслуговує на окрему статтю, але тут будуть короткі рецензії.


1. «Прагматичний програміст» Ендрю Ханта та Девіда Томаса

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

Саме ця книга, мабуть, найбільше вплинула на мій підхід до розробки. Головна теза що вʼїлась в голову до болю проста - «Думай!».

Ключові ідеї:

  • Підходить для всіх мов програмування та технологій.
  • Вчить ефективним практикам розробки.
  • Допомагає краще організовувати роботу.

ISBN: 9789353949433

2. «Чистий код» Роберта Мартіна

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

Один із найкорисніших уроків, що я почерпнув з книги, – принцип «Код має розповідати історію». Читаючи код, ми не повинні концентруватись на аспектах синтаксису чи алгоритмів, а маємо зрозуміти, що саме хотів сказати автор.

Ще одна фундаментальна ідея що підіймається в книзі - код пишеться один раз, але читається сотні, а то і тисячі разів. Подумайте про це, коли ви пишете наступний рядок коду.

З мого досвіду, «Чистий код» стане в пригоді як початківцям, так і досвідченим програмістам.

Деякі розділи книги досить теоретичні, тому я рекомендую зосередитися на практично корисних частинах – розділи 1-10 та 17. Вони містять найцінніші поради щодо написання чистого коду, які можна застосувати у будь-якому проєкті.

Ключові ідеї:

  • Навчитеся давати речам імена.
  • Навчитеся писати зрозумілі функції та класи.
  • Зрозумієте, чому код має “запахи” і як їх уникати.

ISBN: 0132350882

3. «Рефакторинг» Мартіна Фаулера

Рефакторинг це невіддільна частина життєвого циклу будь-якого проєкту.

Ця книга допоможе вам зрозуміти, що таке рефакторинг, як до нього підступитися та які підводні камені варто уникати.

Не раджу брати книгу наскоком. Читайте поступово, усвідомлюйте матеріал, практикуйтесь.

Ключові ідеї:

  • Навчитеся розуміти, коли потрібно рефакторити.
  • Навчитеся рефакторити безпечно.
  • Познайомитесь з основними прийомами рефакторингу.

ISBN: 0134757599

4. «Шаблони проєктування» Еріха Гамми, Річарда Хелма, Ральфа Джонсона та Джона Вліссідеса

Книга про ті самі «ГоФ-івські» патерни. ГоФ - з англійської Gang of Four, банда чотирьох - за кількістю авторів.

Я б назвав цю книгу «Довідником програміста». Вона містить 23 шаблони проєктування про які просто варто знати. Кожен шаблон це додатковий інструмент у вашому арсеналі. Більше інструментів - більше можливостей.

Мені пощастило дістати оригінальне видання книги в ідеальному стані. Це одна з тих речей, які хочеться тримати на видному місці.

Книгу не потрібно читати від А до Я. Ознайомтесь з шаблонами та періодично повертайтеся до книги, за потреби.

ISBN: 0201633612

Ключові ідеї:

  • Познайомитесь з основними шаблонами та їх призначеннями.

5. Профільна книга з конкретної мови програмування

Останню книгу вибирайте вже залежно від вашого напрямку та обраної мови програмування.

Для кожної мови є своя “канонічна” книга, яка допоможе вам зрозуміти особливості мови та її екосистему. Це дуже важливо, аже чим комфортніше ви відчуваєте себе у вибраній мові, тим легше перекладатимете свої ідеї на код.

Спеціально не вказую конкретні книги й залишаю це на розсуд читача.