DOU Books: 5 книг для Enterprise Java розробника, які радить Сергій Немчинский
Від редакції: в рубриці DOU Books учасники спільноти розповідають про п'ять улюблених книгах — тих, які змінюють світогляд і можуть бути корисні читачам-колегам. Якщо у вас є бажання поділитися своєю підбіркою, пишіть на [email protected].
[Сергій Немчинский — 20 років працює програмістом. Майже 15 з них — у Java. У минулому Сергій працював Project manager в Ciklum, Team Leader в Luxoft, NetCracker та IntroPro, начальником відділу веб-розробки в Лігабізнесінформ (перша пристойна версія сайту liga.net була зроблена під його керівництвом). Паралельно викладав у навчальних центрах Luxoft, Неткрекер і IntroPro, і навіть працював вчителем у школі. Є Certified Scrum Master. Зараз Сергій — засновник і керівник навчальної компанії Foxminded]
Поділюся з вами п'ятьма книгами, які, на мою думку, варто прочитати Enterprise Java розробника.
Мартін Фаулер: «Рефакторинг. Поліпшення існуючого коду»
Книга на всі часи. Тільки прочитавши її, розробник починає розуміти щось у своєму коді і найголовніше — розуміти, яку фігню він до цього писав. Так, книга трохи важкувата, і занадто розтягнуті приклади заважають, але з пісні слова не викинеш — якщо ви її не читали — прочитайте неодмінно.
Роберт К. Мартін: «Чистий код: створення, аналіз і рефакторинг. Бібліотека програміста»
Перша книжка, яку повинен прочитати будь-який розробник, тільки вилізши з пелюшок. Книга навчить цінувати якість коду, прищепить вірні орієнтири і навчить не їсти жовтий сніг. Мене часто запитують — ось я навчився писати код і що далі? Ось і відповідь — читайте чистий код і буде вам щастя. :)
Роберт К. Мартін: «Agile Software Development: principles patterns and practices»
Друга книга у цьому огляді від Роберта Мартіна. По-хорошому — її однієї було б досить замість усіх попередніх. Книга прекрасна у всьому — строго структурована, ємні, короткі фрази, жодного зайвого слова, авторські ілюстрації з легким і інтелігентним гумором. Але є дві проблеми. Перша — вона огидно перекладена на російську мову. Гірше я перекладу не бачив взагалі, тому назва даю англійською, російською її читати не має ніякого сенсу. Досить сказати, що один принцип там взагалі переведений в протилежному від оригіналу сенсі. Природно, авторське оформлення і малюнки втрачені. А от в оригіналі — мастрид, однозначно. Навіть тримати книгу в руках приємно.
Мартін Фаулер «Шаблони корпоративних додатків»
Наступна книга з нашого огляду підійде для тих, хто вже попрацював на галерах і навіть перестав червоніти за свій код, ну принаймні робить це не часто. У цей момент розробник розуміє, що від вирішення локальних проблем треба переходити до розуміння побудови архітектури прикладних програм в цілому. На жаль, хороших книг, навчальних декомпозиції предметної області я практично не знаю. Ця книга — не про декомпозицію, а про типові рішення для Enterprise розробки. Але і з неї можна зробити велику кількість висновків і багато чому навчитися. Чесно кажучи, я її читав у російському перекладі і був вражений. Перекладена вона істотно гірше, ніж рефакторинг, так що напевно краще читати в оригіналі. До речі, за матеріалом цієї книги я скоро буду проводити тренінг у Києві, приходьте. Буду радий вас бачити. :)
Kent Beck «Extreme Programming Explained: Embrace Change»
Прочитавши цю книгу, я настільки в свій час закохався, що пішов з престижної посади начальника відділу веб-розробки в Лізі в дрібну конторку простим девелопером, лише тому, що вони мені пообіцяли справжній ХР, прямо як у Бека. Прочитайте, Бека читати приємно, у нього відмінний рубаний склад, чітка структура і приємний гумор.
Природно, ХР — це взагалі не про Enterprise, це про організацію всієї команди. Ну і з природних причин — в Enterprise ця тема виникає в першу чергу — великі команди. Завдання довгі і складні. Потрібно як-то в цьому всьому розбиратися. ХР зараз в чистому вигляді зустрічається вкрай рідко, однак принципи Agile розробки — те, що повинен знати будь-розробник. І краще Кента Бека їх не пояснить ніхто, на мій смак.
Опубліковано: 16/03/17 @ 11:00
Розділ Різне
Рекомендуємо:
Кар'єра в IT: посада Program Manager
Java vs. Kotlin для Android. День 1: зістрибує з Java
Як IT-компанії відзначили 8 березня 2017
Front-Еnd дайджест #22: Instagram на React Native, React патерни, Front-End HandBook
Нотатки на полях Java Reflection API