Коли я вперше почав вивчати PHP (приблизно 5 або 6 років тому), я дізнався про Ajax , і пройшов "фази":
- Сервер повертає дані HTML , і ви помістіть його в DOM в innerHTML
- Ви дізнаєтесь про формати передачі даних, такі як XML (і кажете "ооо, для чого це використовується)", а потім JSON.
- Ви повертаєте JSON і створюєте свій інтерфейс, використовуючи код ванільного JavaScript
- Ви переходите до jQuery
- Ви дізнаєтесь про API, заголовки, коди статусу HTTP, REST , CORS та Bootstrap
- Ви вивчаєте SPA та фреймворки ( React , Vue.js та AngularJS ) та стандарт API JSON.
- Ви отримуєте деякий застарілий код підприємства і, перевіривши його, виявите, що вони виконують те, що описано в кроці 1.
Під час роботи з цією базовою базою кодів я навіть не вважав, що вона може повернути HTML (я маю на увазі, ми зараз професіонали, правда?), Тому мені важко було шукати кінцеву точку JSON, яка повертала дані, які дзвінки Ajax заповнюються. Лише я не запитав "програміста", що він сказав мені, що він повертає HTML і додається безпосередньо до DOM за допомогою внутрішнього HTMLML.
Звичайно, це було важко прийняти. Я почав думати про способи перевстановити це в кінцеві точки JSON, думаючи про тестування одиниць кінцевих точок тощо. Однак ця кодова база не має тестів. Ні одного. І це понад 200 тис. Ліній. Звичайно, одне з моїх завдань - запропонувати підходи до тестування всього, але наразі ми цього ще не вирішуємо.
Тому я ніде, в кутку, не замислююся: якщо у нас взагалі немає тестів, тож у нас немає конкретних причин для створення цієї кінцевої точки JSON (оскільки вона не є "багаторазовою": вона буквально повертає дані, які відповідають лише тій частині додаток, але я думаю, це вже малося на увазі, оскільки він ... повертає HTML-дані).
Що саме не так у цьому?