Почему метода onDestroyView() нет у Activity

Ответ

Ответ не найден

Ответ 18+ 🔞

А, вот ты где, дружище! Слушай, я тут на днях с одной хуйней столкнулся, прямо волнение ебать. Сижу я, значит, пишу код, всё как обычно, и тут бац — ошибка. Не просто ошибка, а какая-то пиздопроебибна, из серии «хуй с горы». В консоли красуется: Uncaught TypeError: Cannot read properties of undefined (reading 'length').

Ну, думаю, ёпта, опять. Где-то я, распиздяй, накосячил. Начинаю смотреть. А там, понимаешь, функция, которая данные с бэка принимает. Вроде всё просто, блядь:

function processData(response) {
  const items = response.data.results;
  for (let i = 0; i < items.length; i++) {
    console.log(items[i].name);
  }
}

И вроде бы код-то красивый, чистый, а падает, сука, на ровном месте. Оказалось, что иногда этот response.data.results приходит не массивом, а null. Ну, ядрёна вошь! Кто так делает-то? Бэкендеры, блядь, словили гомосеки налетели, что ли? Доверия к ним — ноль ебать.

Пришлось, значит, делать проверку, а то получается — вилкой в глаз или в жопу раз. Переписал на что-то более живучее:

function processData(response) {
  const items = response?.data?.results || [];
  if (items.length === 0) {
    console.warn('Э, сабака сука, массив пустой!');
    return;
  }
  for (let i = 0; i < items.length; i++) {
    console.log(items[i]?.name || 'Без имени, хуй в пальто');
  }
}

Вот так, чувак. Опциональная цепочка (?.) — вещь, конечно, охуенная, спасает от таких вот неожиданных undefined. Но иногда смотришь на этот код и думаешь — э, бошка думай, а не тупо проверки ставить. Может, логику надо пересмотреть, чтобы не полагаться на таких ненадёжных ублюдков с бэка?

Короче, мораль простая: никогда не верь данным извне. Никогда. Они тебя всегда подставят. Подозрение ебать чувствую ко всему, что не из моей собственной базы приползло. Всё проверяй, оборачивай в try/catch, ставь дефолтные значения. Иначе будет вам не хиросима, а настоящие нигерсраки в продакшене. Сам от себя охуеешь, когда в три часа ночи тебе начнут звонить.

Вот так-то. Пиши надёжный код, а не этот высер мартышлюшки, который падает от первого же чиха.