Будь-яке веб-додаток з часом морально застаріває. Звісна річ - технології розвиваються і диктують нові вимоги до програмного продукту. Тут все зрозуміло. Однак це зовсім не означає, що з оновленням програм слід тягнути до переможного кінця і чекати, коли поточна версія перетвориться на музейний експонат.
У той же час ми прекрасно знаємо, що далеко не всі проекти можна назвати бездоганними з точки зору написання коду, якості, краси, тестування і т.д. Через це відповідальним розробникам часто доводиться довго і наполегливо виправляти творчість попередньої команди. Саме на таких проектах процес оновлення представляє найбільшу складність. Одночасно подібні додатки найчастіше відчувають гостру необхідність в оновленні. Як то кажуть: прийшла біда - відчиняй ворота.
Ми хочемо поділитися власним досвідом поновлення Ruby on Rails додатки. Тема досить широка, тому ми розіб'ємо її на кілька частин. У цій статті мова піде про причини необхідності оновлень.
Навіщо це потрібно?
міркування безпеки
Далі ми пропонуємо вашій увазі наочний список наслідків, до яких призводить зневажливе ставлення до оновлень безпеки:
Підвищення продуктивності
Кожна нова версія Ruby працює все швидше. Те ж саме можна сказати і про фреймворку Ruby on Rails. Всякий раз, занурюючись в роздуми про необхідність оновлення, враховуйте: вимоги до часу відгуку додатків зростають з кожним роком. Застарілі технології просто не в змозі їм відповідати. Виникає справедливе запитання: чи варто стояти на шляху прогресу? Та ще й на шкоду самому собі.
виправлення багів
Будь-який продукт в світі містить баги і мова програмування не є винятком. Витоку пам'яті, виправлення роботи збирача сміття - ці та безліч інших проблем розробники вирішують з випуском нових версій. Такі виправлення неймовірно корисні. Вони підвищують стабільність вашого застосування.
нові геми
Якщо ви про це не знаєте, ми підкажемо: одним з найважливіших елементів екосистеми Ruby on Rails є геми. З кожним днем їх стає все більше, а частина з них вирішує дійсно фундаментальні проблеми. Розробники гемов завжди прагнуть бути в тренді і намагаються підтримувати сумісність свого коду з новими версіями фреймворка. Чи не зробивши оновлення Ruby on Rails додатки, ви створюєте розробникам додаткові складності. А саме (найчастіше) - прирікаєте їх на пошуки вже знайденого рішення проблеми. Навіщо витрачати час на маніпуляції з кодом, якщо можна просто оновитися?
Наведений список схематичний. Кожен з перерахованих пунктів можна розбити ще на кілька частин. Однак ми не станемо цього робити, інакше доведеться написати нову статтю, а то й не одну. Більш детальну інформацію можна отримати тут:
Наступна частина буде присвячена проблемам, які можуть виникнути при оновленні Ruby on Rails додатки. Не перемикайтеся!
Рефакторинг як годиться. Частина 2 - покриття тестами
Продовжуємо тему рефакторінга. Ви вже знаєте, як грамотно розпланувати цю процедуру. Сьогодні ми рушимо далі. Отже, який бажаний результат рефакторінга? Більш якісний код, який працює не гірше, ніж раніше. Чому всього лише "не гірше"? Тому що підвищення якості коду попутно вирішує цілий ряд дрібних проблем, про які ми не знали або вважали недостатньо важливими. А [...]
Рефакторинг як годиться. Частина 1 - планування
Нам (і далеко не тільки нам) часто доводиться мати справи з проектами, які писалися дуже давно; писалися швидко і неякісно. Як забезпечити стабільне просування такого проекту? Правильна відповідь на це питання складається з одного слова: рефакторинг. По-перше, він підвищує читаність коду, що економить купу часу. По-друге, гарний код працює більш надійно. Існує маса досліджень, присвячених [...]
PureDocx - як ми створили свій Ruby гем