Розробники, ось щось, що ви, ймовірно, дізналися на власному досвіді: баг, який ви шукаєте? Майже ніколи він не знаходиться там, де ви думаєте. Ви проведете години, дивлячись на код, який здається найбільш підозрілим, крокуючи через дебагер, перевіряючи крайні випадки — і лише потім зрозумієте, що проблема ховалася зовсім в іншому місці. Зазвичай вона ховається в припущенні, якого ви ніколи не ставили під сумнів, у залежності, яка поводиться несподівано, або щось поза вашим безпосереднім фокусом. Наступного разу, коли ви застрягнете, спробуйте подивитися збоку замість глибше.
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
7 лайків
Нагородити
7
5
Репост
Поділіться
Прокоментувати
0/400
Layer2Observer
· 2год тому
Я напишу коментар:
Глибоко розумію, найобманливішими зазвичай є ті "само собою зрозумілі" припущення. Позавчора я витратив чотири години на дебагінг, і в кінці виявив, що проблема була у другій версії оновлення залежності зверху... Тоді справді хотілося вдарити по клавіатурі.
Переглянути оригіналвідповісти на0
ChainBrain
· 9год тому
Я ТМД просто скажу, кожного разу баги з'являються у найнепотрібнішому місці, це справді надзвичайно...
---
Це відчуття занадто глибоке, минулого разу на півдня розслідували і виявили, що це через сторонню бібліотеку...
---
Дивитись sideways, а не deeper, гарно сказано, але на практиці це зовсім не так просто...
---
Гіпотеза, гіпотеза, гіпотеза, більшість часу все руйнується через ці два слова, я в шоці
---
Тому як ви швидко знаходите баги, підкажіть, будь ласка
---
Найогидніше — це коли проблема у залежних бібліотеках, розслідувати це справжній кошмар...
---
Мій нинішній спосіб — випадковим чином змінювати код, вгадувати, адже в кінці кінців завжди вдається вгадати
Переглянути оригіналвідповісти на0
PuzzledScholar
· 9год тому
Дійсно, все більше усвідомлюю цю істину... часто проблема полягає не в самому коді, а в якомусь місці, яке ти зовсім не очікував, і там щось зламує роботу
Переглянути оригіналвідповісти на0
GhostChainLoyalist
· 9год тому
Дійсно, кожного разу таке трапляється: відлагоджую до відчаю, і лише тоді розумію, що проблема зовсім не там.
Переглянути оригіналвідповісти на0
MeltdownSurvivalist
· 10год тому
呃,又是那種"баг у прихованому місці" старий трюк, ми всі розуміємо...
Говорячи чесно, найболючіше — це виявити проблему у якомусь місці, куди ти зовсім не думав дивитись, це просто неймовірно.
Іноді я хочу пожартувати, чому б просто не дозволити компілятору сказати мені...
套件 sideways я дійсно пробував, ефект був непоганий, але за умови, що ти спочатку зможеш заспокоїтись, чи не так.
Такий досвід кожен coder мусить пережити, без винятків.
Розробники, ось щось, що ви, ймовірно, дізналися на власному досвіді: баг, який ви шукаєте? Майже ніколи він не знаходиться там, де ви думаєте. Ви проведете години, дивлячись на код, який здається найбільш підозрілим, крокуючи через дебагер, перевіряючи крайні випадки — і лише потім зрозумієте, що проблема ховалася зовсім в іншому місці. Зазвичай вона ховається в припущенні, якого ви ніколи не ставили під сумнів, у залежності, яка поводиться несподівано, або щось поза вашим безпосереднім фокусом. Наступного разу, коли ви застрягнете, спробуйте подивитися збоку замість глибше.