Щоб покращити та додати нові функції до програмного забезпечення, розробники також повинні проаналізувати складності вихідного коду, який уже існує.
Це не простий процес, особливо для великих проектів зі складним кодом.
Хоча такі програми, як «Знайти всі посилання» та налагоджувачі полегшують переміщення між файлами чи перевірку певних розділів коду, вони не можуть надати повного перегляду.
Без достовірного огляду вашого коду та всіх залежних від нього компонентів розробка буде повільнішою, ризикованішою та важчою для контролю.
У цьому може допомогти візуалізація коду.
Візуалізація коду заповнює прогалину між тим, як ви хочете організовувати вашу систему, і тим, як вона організована насправді, спрощуючи співпрацю та впевнену організацію.
У цій публікації ми окреслимо переваги візуалізації ваших систем кодування, а також найкращі інструменти для цього у 2022 році, а також їхні переваги та недоліки.
Чому візуалізація складного коду важлива?
Щоб розробка була організованою, ефективною та ефективною, її необхідно візуалізувати. Працюючи над деталями складної архітектури, легко втратити загальну картину.
Теоретичні статті та кілька папок можуть допомогти вам зрозуміти майбутній стан вашого коду, але вони не допоможуть вам зрозуміти, як виглядає ваш код зараз.
Ваш код має бути візуально задокументований, щоб гарантувати, що деталі не лише впорядковані, але й задумані у більш зрозумілий спосіб.
Коли ви візуалізуєте код, ви можете:
- Знайдіть помилки та виправте їх.
- Створіть діаграму залежностей.
- Розпізнайте потік користувачів.
- Працюйте разом з іншими.
- Створюйте широкі концепції проекту.
Іншими словами, візуалізація коду полегшує моделювання того, як ви хочете виглядати код, розуміння того, як він виглядає насправді, а також визначення проблем і можливостей для спрощення дизайну.
Кращі інструменти для візуалізації коду
1. Джерело маршруту
Кросплатформенний засіб перегляду вихідного коду для C/C++ і Java називається Sourcetrail.
Він поєднує в собі інтерактивну візуалізацію графіка, згорнутий вигляд коду та потужний алгоритм пошуку, об’єднані в простий у використанні кросплатформний інструмент розробника, щоб увімкнути розробники програмного забезпечення швидко та повністю вивчати незнайомий вихідний код.
Щоб індексувати вихідні файли, до коду C, C++, Java і Python застосовується статичний аналіз. Потім, використовуючи інтерфейс користувача Sourcetrail, який поєднує відображення коду та візуалізацію графіків, розробники можуть переглядати кодову базу.
Коли проект створено, Sourcetrail індексує вихідні файли для визначення класів, функцій і типів у кодовій базі. Використовується онлайн-індексація. Після цього потрібно перезавантажувати лише оновлені файли.
риси
- Усі визначення та посилання у ваших вихідних файлах виявляються шляхом ретельного статичного аналізу. Існує кілька доступних варіантів налаштування проекту.
- Ви можете швидко знайти будь-який символ у всій кодовій базі за допомогою поля пошуку. За допомогою лише кількох натискань клавіш нечітка відповідність ключових слів забезпечує найкращі результати.
- Швидкий огляд будь-якого класу, методу, поля тощо та всіх його зв’язків можна швидко отримати за допомогою графічної візуалізації. Він повністю інтерактивний.
- Підключіть Sourcetrail до бажаного редактора джерел через плагін. Це полегшує перехід між дослідженням і написанням.
- У акуратно організованій колекції фрагментів коду вікно перегляду коду зберігає всі деталі реалізації елемента, що знаходиться у фокусі.
профі
- Простота встановлення (просто розпакуйте його та запустіть сценарій встановлення). Досить привабливий з чудовим дизайном.
- Він бездоганно сканує та дає бездоганні результати. Крім того, схематичний вихід корисний для надання точної інформації про класи абонентів і викликів.
- Автоматично створює діаграми, які зображують залежності, виклики методів і з’єднання класів. дуже чітко демонструє, як кожен елемент взаємодіє з іншими елементами програмного забезпечення.
мінуси
- Немає жодної підтримки мов, окрім C++, JavaScript і Python, але незабаром вона має з’явитися.
Ціни
Він безкоштовний для всіх.
2. Підбадьорити
Статичний аналізатор загального призначення під назвою Embold допомагає програмістам знаходити важливі недоліки коду, перш ніж вони спричинять проблеми.
Це найкращий інструмент для ефективного вивчення, визначення, зміни та керування програмним забезпеченням.
Поєднуючи технологію машинного навчання та штучного інтелекту, Embold зможе аналізувати кілька проблем одночасно, пропонувати рекомендації щодо їх вирішення та за потреби змінювати програмне забезпечення.
Запустіть його в тандемі з вашим поточним стеком Dev-Ops незалежно від того, чи є він локальним, у хмарі чи обома, приватно чи публічно.
риси
- Він пропонує прості візуальні ефекти та автоматично визначає пріоритети гарячих точок у коді. Використовуючи технологію багатовекторної діагностики, він аналізує програмне забезпечення за допомогою різноманітних лінз, включаючи дизайн програмного забезпечення, і дозволяє користувачам прозоро підтримувати та покращувати якість програмного забезпечення.
- Для користувачів IntelliJ IDEA безкоштовний плагін можна завантажити та налаштувати безпосередньо у вашому IDE. Крім того, Embold можна запустити в хмарі.
- Вбудований AI дозволяє користувачам отримувати доречні поради та продовжувати ефективну роботу.
профі
- Потужний механізм рекомендацій на основі ШІ використовується на додаток до аналітики, теплових карт і дерев залежностей, щоб допомогти процесу прийняття рішень.
- Просте підрахунок балів і можливість ранжування стосується певних параметрів
- Кольорове кодування та теплові карти спрощують виявлення проблем і, можливо, складних компонентів.
- Прямий доступ до коду для швидкої дії з огляду проблемної частини.
мінуси
- Мови C/C++, C#, Objective C і Java працюють без проблем. Однак деякі скарги, в тому числі щодо дизайну, не визнаються іншими мовами.
Ціни
Ви можете почати користуватися платформою безкоштовно, і вона також пропонує преміальні ціни, які починаються від 4.99 євро.
3. Розуміння від Scitools
Understand — це інструмент для статичного аналізу коду та інструмент візуалізації, який спрямований на повну навігацію по коду, створення графів потоку керування, створення показників, порівняння коду, перевірку дотримання певних стандартів кодування, як-от MISRA, і реінжиніринг коду для різноманітних мов програмування, як-от C , C++, Java, Jovial, Pascal, ADA, .NET тощо.
Підтримка 19 різних мов, у тому числі підтримка змішаних мовних проектів, таких як Ada, Python, C/C++, C#, Delphi та багато інших, забезпечується за допомогою потужних і адаптованих парсерів.
риси
- SciTools Understand пропонує повний огляд вашої програми простим і швидким способом, і до нього можна отримати доступ через скорочений інформаційний браузер.
- Ви можете дізнатися більше про свою програму, використовуючи численні види графіків, які пропонує Understand.
- Завдяки включенню інструментів для збереження та розуміння коду редактор було створено для порівняння з найкращими редакторами програмування та IDE.
- Функція порівняння файлів і папок дозволяє швидко порівнювати сутності, файли та папки без необхідності синтаксичного аналізу, а вбудований режим «перегляду» перетворює редактор на веб-браузер для коду та пропонує безліч інформації.
- Ви можете швидко та просто шукати мільйони рядків вихідного коду за допомогою функції миттєвого пошуку Understand.
профі
- Потрібна мінімальна настройка інтерфейс користувача є прямим. потрібен, а інтерфейс користувача простий.
- Чудовий інструмент для створення діаграм архітектури з коду та візуалізації коду.
- Створює складні звіти, анотує коди та відображає кілька додаткових показників. Він також розуміє та вивчає HTML і CSS.
- Серед іншого знаходить складний код, сутності, файли, великі класи та функції.
- Візуалізує аналіз залежностей і забезпечує подальшу деталізацію залежностей.
- Численні мови програмування підтримуються, включаючи C#, Java, PHP, Assembly, Python і Typescript.
мінуси
- При створенні звітів це займає більше часу; наприклад, програма WordPress потребувала більше години для підготовки звітів.
Ціни
Будь ласка, зв’яжіться з постачальником, щоб дізнатися ціну.
4. Джерелограф
Sourcegraph — це інструмент пошуку коду загального призначення, який дає змогу знаходити та виправляти проблеми в УСІМ коді, незалежно від мови, хосту коду чи сховища.
Використовуйте розумні фільтри, щоб залишатися зосередженим і швидко знаходити свої відповіді, серед іншого. Інструмент Sourcegraph технічного стеку належить до підкатегорії Code Search.
Те, що ви не можете знайти, ви не можете виправити. Знаючи, що ви знайшли кожен екземпляр вразливого коду, ви можете впевнено виправляти вразливості.
Завдяки автоматичним виправленням і запитам на вилучення ви можете контролювати хід своїх проектів відновлення. Своєчасне вирішення – це лише пошук із Sourcegraph.
риси
- Шукайте свій особистий або публічний код серед сотень сховищ на GitHub, GitLab та інших місцях.
- Регулярні вирази та зіставлення шаблонів із урахуванням синтаксису підтримуються видимим інтерактивним конструктором запитів, який дозволяє швидко отримувати результати.
- Відкрийте для себе все в коді, включно з визначеннями, посиланнями, прикладами використання тощо, за межами пакетів, залежностей і сховищ.
- Зробіть спостереження щодо вашої кодової бази, щоб визначити широкі закономірності
профі
- Знайти певні змінні (або інші рядки), які використовуються в сховищах вихідного коду організації, дуже просто.
- Не вимагаючи часу на індексування, він може шукати в кількох різних сховищах.
- Ви можете безперешкодно й точно відстежувати будь-що у своїй кодовій базі, від міграції до запахів коду. Використовуйте візуалізації, побудовані на потужності та точності Sourcegraph Code Search, щоб робити вибір на основі даних.
мінуси
- Наразі проблем немає.
Ціни
Ви можете почати користуватися платформою безкоштовно.
5. Graphbuddy
Graph Buddy — це програма, призначена для відображення структури коду у вигляді 2D/3D графіків.
Його мета — допомогти процедурам розуміння коду, а також прискорити читання та перегляд вихідного коду. Однак це лише одне з багатьох майбутніх застосувань ширшої концепції графів семантичного коду.
Graph Buddy розроблений, щоб допомогти вам швидше читати та вивчати вихідний код. Плагін Graph Buddy містить низку зручних функцій і стратегій для навігації складними залежностями коду.
У той же час це допомагає вам зрозуміти структуру коду вашої кодової бази.
риси
- Основними технологіями проекту є TypeScript, Scala, Neo4j (база даних графів), React і Vis.js (бібліотека, яка допомагає у візуалізації). У Graph Buddy створюється візуальний графік.
- Це робить його максимально простим у використанні та створенні та базується на протоколі мовного сервера.
- Натиснувши на свій код або представлення графіка, ви можете виконувати візуальні дії.
профі
- Розробники можуть краще зрозуміти код за допомогою GraphBuddy.
- Ведіть візуальний запис місць, які ви нещодавно відвідали, і легко інтегруйте редактор коду.
- Верхнє меню панелі Graph Buddy дозволяє фільтрувати компоненти за певним типом. Вузли на полотні можна організувати за допомогою макетів.
мінуси
- Поки що жодних проблем не виявлено.
Ціни
Він безкоштовний для всіх.
6. Вісустин
Розробники програмного забезпечення можуть створювати блок-схеми за допомогою Visustin. Завдяки автоматизованій візуалізації коду зменшіть зусилля з документування. Ваш вихідний код перетворюється на блок-схеми або діаграми активності UML за допомогою Visustin.
Visustin повністю автоматизує читання операторів if та else, циклів, переходів і побудови діаграм. Немає необхідності в ручному малюванні.
Ada, ASP, асемблер, BASIC, C/C++, C#, Clipper, COBOL, ColdFusion, Delphi, Fortran, Java, JavaScript, JCL (MVS), JSP, LotusScript, Matlab, Pascal та багато іншого – лише деякі з них мови вихідного коду, які блок-схеми Visustin.
Під керуванням Windows працює Visustin. Ваш вихідний код можна написати будь-якою з підтримуваних мов і працювати на будь-якому процесорі чи середовищі, включаючи Windows, Unix, Macintosh, MS-DOS, мейнфрейми та інші.
риси
- Вихідний код автоматично перетворюється на блок-схеми за допомогою Visustin. Візуально ідеальні результати забезпечуються автоматичним макетом.
- Ви можете змінити автоматично створені діаграми за допомогою Visustin Editor. Додавайте коментарі та форми, виділіть ключову інформацію, редагуйте посилання та змінюйте макет за потреби.
- Visustin підтримує блок-схеми та діаграми активності UML.
- Друкуйте величезні блок-схеми як мозаїку з багатьох сторінок. вичавити на один аркуш.
- У проектній документації використовуйте блок-схеми. Укажіть формат BMP, GIF, JPEG, PNG, TIFF, MHT, EMF або WMF під час збереження файлів. Створюйте веб-сторінки, на яких разом відображаються блок-схема та код.
профі
- Він надає доступ до швидкого редагування коду.
- Крім того, ви забезпечуєте створення нотаток у редакторі.
- Існують різні варіанти мелірування.
- Виконуйте пакетні завдання для блок-схем
- Використання блок-схем для перевірки логіки програми заощадить гроші, дозволяючи ранні виправлення помилок.
мінуси
- На даний момент проблем не виявлено
Ціни
Ви можете почати користуватися платформою з пробної версії, а ціна починається від 249 доларів США.
7. Графік властивостей коду
Революційний прогрес у статичному аналізі коду, Code Property Graph (CPG), забезпечує глибоке бачення потоку даних у всій програмі та її компонентах для виявлення недоліків, що піддаються атаці.
Ваш вихідний код представлено графічно в графі властивостей коду (CPG).
Він створює єдину базу даних графів із можливістю запиту з багатьох діаграм рівня компілятора. Спеціальний код, бібліотеки з відкритим вихідним кодом, SDK, API та мікросервіси — усе це визначено в CPG.
CPG перевіряє, як дані протікають у всій програмі, від вхідних даних користувачів до файлів журналів або баз даних, щоб визначити, чи потрібно будь-які вразливі потоки даних шифрувати, редагувати або маскувати, щоб захистити конфіденційні дані від доступу хакерів.
риси
- CPG — це незалежне від мови програмування проміжне представлення (IR). Крім того, це робить запити незалежними від мови програмування.
- Потоки інформації високого рівня є важливими для точності нашого аналізу.
- Сучасні трекери потоку даних, які є міжпроцедурними, чутливими до потоку, контексту, поля та використовують проміжне представлення коду, є робочою конячкою CPG.
- CPG визначає параметри для джерел, приймачів і перетворень, які надають інформацію про походження, призначення або перетворення даних.
профі
- Не завантажуючи свій вихідний код у хмару для аналізу, ви можете просканувати мільйони рядків коду лише за кілька хвилин.
- Для сучасних програм заповніть недоліки точності та покриття, які спостерігаються в застарілих інструментах SAST.
- ShiftLeft перевіряє потік даних між усіма компонентами, забезпечуючи повне уявлення про цілі програми за лічені хвилини, і знаходить уразливості, які пропускають методи аналізу коду, які сканують лише частини програми.
мінуси
- На даний момент проблем не виявлено
Ціни
Ви можете почати користуватися платформою безкоштовно, а ціни починаються від 175 доларів США на місяць.
8. CodeSonar
Щоб захистити критично важливе програмне забезпечення та пристрої від збоїв і кібератак, GrammaTech, провідний постачальник статичних тестування безпеки програми (SAST), допомагає розробникам програмного забезпечення знаходити рішення складних проблем протягом життєвого циклу розробки програмного забезпечення (SDLC).
CodeSonar створює ваш код подібно до компілятора, використовуючи вбудоване середовище, яке у вас уже є, але він генерує абстрактну модель повної програми, а не об’єктний код.
Це дає змогу переглядати дані в макеті за вашим вибором. Вибирайте з безлічі можливостей компонування, досліджуйте будь-який спосіб (зверху вниз, знизу вгору, назовні від заданої точки або будь-де посередині) і дивіться унікальні дані вашого проекту.
Переглядайте кілька показників одночасно, щоб зрозуміти код на високому рівні.
риси
- Ви можете краще зрозуміти систему, використовуючи візуалізацію коду.
- Усуньте будь-які діри в безпеці.
- Знайдіть і усуньте проблеми з багатоядерністю та багатопотоковістю.
- Налаштовані звіти підвищують прозорість і якість коду.
- Кодекс слід перевіряти на відповідність нормативним вимогам і стандартам кодування.
профі
- CodeSonar може виконувати короткі сканування частин коду на робочих станціях розробників, ретельні та поглиблені тести, включаючи аналіз паралелізму під час регресійного тестування, і все між ними. Зрештою його можна масштабувати.
- Під час масштабування інформація поступово розкривається, зменшуючи візуальний безлад, зберігаючи інформацію про з’єднання.
- Створіть графічне представлення програмного забезпечення, яке накладає код, щоб показати, як відомо, важко знайти пошкоджені маршрути даних.
мінуси
- Неможливо експортувати дані у відповідному форматі.
Ціни
Ціна не вказана на платформі, будь ласка, зв’яжіться з постачальником, щоб дізнатися ціну.
9. CppDepend
Використовувати CppDepend дуже просто. Як видно з назви, ця програма використовується для перевірки коду C/C++. містить надбудову, яка взаємодіє з Visual Studio та підтримує різноманітні показники для вимірювання якості коду.
Він дає змогу відслідковувати тенденції, створювати власні запити та має високоефективний інструмент діагностики.
Це інструмент, який спрощує підтримку складної кодової бази C++ (Native, Mixed і COM).
Зіставляючи кілька версій коду, архітектори та розробники можуть досліджувати структуру коду, установлювати керівні принципи проектування, проводити ефективні перевірки коду та розуміти еволюцію.
риси
- Цей інструмент забезпечує візуалізацію залежностей за допомогою орієнтованих графів і матриці залежностей і підтримує широкий спектр метрик коду.
- Визначені користувачем правила можна розробити за допомогою запитів LINQ.
- Інструменти також оцінюють архітектурні стандарти та стандарти якості та порівнюють знімки бази коду.
- У продукт включено значну кількість попередньо налаштованих правил коду CQLinq.
профі
- Програма під назвою CppDepend полегшує керування складною кодовою базою C++ (Native, Mixed і COM).
- Зіставляючи кілька версій коду, архітектори та розробники можуть досліджувати структуру коду, установлювати керівні принципи проектування, проводити ефективні перевірки коду та розуміти еволюцію.
- Щоб оцінити ваш дизайн і архітектуру, CppDepend пропонує корисні графіки.
- Перш ніж здійснювати будь-яку міграцію, важливо зрозуміти поточну кодову базу.
мінуси
- Інтерфейс користувача виглядає застарілим.
Ціни
Ціна не вказана на веб-сайті, будь ласка, зв’яжіться з постачальником, щоб дізнатися ціну.
10. Архітектор
Інструмент аналізу коду Java JArchitect, який підтримує запит коду через LINQ, пропонує низку метрик коду, дозволяє порівнювати код між збірками та має повністю настроювану функцію звітування.
Це полегшує керування складною базою коду Java. Порівнюючи кілька версій коду, ви можете вивчити структуру коду, визначити вказівки щодо дизайну, зробити ефективний перегляд коду та зрозуміти еволюцію.
Він надає понад 80 метрик коду, включаючи кількість рядків коду, метрики, пов’язані з організацією коду, як-от кількість класів і пакетів, метрики, пов’язані з якістю коду, як-от складність, кількість параметрів і зв’язність класів, а також метрики, пов’язані з структура коду, як глибина успадкування.
риси
- Запити LINQ можна використовувати для створення визначених користувачем правил.
- Інструменти порівнюють знімки базового коду та оцінюють правила архітектури, дизайну та якості.
- JArchitect — це інструмент для статичного аналізу коду Java. Цей інструмент надає велику кількість метрик коду та дозволяє візуалізувати залежності за допомогою спрямованих графів і матриці залежностей.
профі
- Це корисний інструмент для аналізу коду.
- Щоб переглянути код, він створює корисний документ.
- Простота створення запитів
- Він розділяє ступінь серйозності на основі помилки, що дозволяє легко підготуватися належним чином.
мінуси
- Інтерфейс не такий чудовий. Порівняно з іншими альтернативами, цей інструмент вимагає від нового користувача значно повільнішої адаптації.
Ціни
Ціна не вказана на веб-сайті, будь ласка, зв’яжіться з відділом продажів, щоб дізнатися ціну.
11. CodeScene
CodeScene — це інструмент, який визначає конкретні рядки несправного коду, що загрожує потоку доставки програмного забезпечення, і відображає гарячі точки в кодовій базі.
Зі здоровішим кодом CodeScene допомагає командам розробників створювати програмне забезпечення, яке є більш надійним і безпечним. Крім того, це забезпечує керівництво корисною інформацією, яку вони можуть використовувати для прийняття стратегічного вибору.
Щоб інтегрувати результати аналізу в поточні робочі процеси доставки, ця платформа також підтримує 28 мов програмування та дозволяє взаємодіяти з запитами GitHub, BitBucket, Azure DevOps або GitLab.
Щоб створити візуалізацію коду, CodeScene аналізує контроль версій історії. Крім того, він використовує навчання за допомогою машини методи пошуку прихованих небезпек у коді та соціальній поведінці.
риси
- Пов’яжіть свій вихідний код із CodeScene. Підтримуються найпопулярніші мови програмування, яких налічується понад 25.
- Інтегруйте CodeScene зі своїми запитами на підключення, щоб відстежувати розвиток вашого коду в часі.
- CodeScene пропонує інформацію про міцність коду та будь-які потенційні проблеми.
- Автоматизований перегляд коду, пропозиції щодо покращень, цілі рефакторингу, визначення пріоритетів технічного боргу та статистика щодо запитів на отримання.
профі
- Розуміння основних причин ваших проблем з якістю допоможе вам спрямувати увагу вашої команди на вирішення цих проблем.
- Команди можуть краще зрозуміти масштаби поточної роботи та вирішити, з чого почати, візуалізуючи та визначивши пріоритети свого коду.
мінуси
- UX іноді може бути складним.
Ціни
Ви можете використовувати платформу з її безкоштовною пробною версією, а ціна починається від 18 євро за активного автора.
12. Code2flow
Code2flow — це генератор блок-схем із псевдокоду. Щоб автоматично створювати ідеальні, гарні та зрозумілі діаграми, скористайтеся нашою розумною граматикою.
Ви звертаєте увагу на процедуру; вони займаються рештою. Незалежно від того, корпоративний процес, складна технологічна процедура чи щось середнє, це займає лише кілька секунд.
Інженерам доступні процеси, алгоритми та сертифікація. Для сценарію процесів підтримки клієнтів контактні центри швидко описані критичні медичні процедури для медичної галузі.
Щоб максимізувати клієнтський досвід і конверсію для електронної комерції, удосконалити лекції з програмування та завдання для викладачів і студентів.
риси
- Поділіться прямим посиланням на свої блок-схеми, щоб будь-хто у світі міг отримати до нього доступ і скопіювати ваше творіння.
- Використовуйте блок-схеми для опису важливих алгоритмів і складних процесів.
- Зберігайте приватні блок-схеми прихованими від усіх, крім осіб, яким ви хочете надати доступ.
- Експортуйте свої блок-схеми як файли PNG, SVG або PDF.
- Інтегруйте свої блок-схеми з будь-якими онлайн-інструментами чи документами, щоб отримувати оновлення щоразу, коли щось змінюється.
профі
- Створіть блок-схеми зі старого коду, щоб краще його зрозуміти
- Навчіть початківців програмувати
- Створюйте бездоганні діаграми за лічені секунди, незалежно від того, чи вони ілюструють корпоративні процеси, складні технологічні алгоритми чи все інше.
- Насолоджуйтеся потужністю блок-схем без нескінченного стресу, пов’язаного з редагуванням діаграм вручну
- Робіть завдання, які потребують псевдокоду, щоб допомогти учням зрозуміти алгоритми
мінуси
- Наразі проблем немає.
Ціни
Ви можете почати використовувати платформу з її безкоштовної версії, а ціни починаються від 10 доларів США на місяць.
Висновок
У сучасному світі щодня створюється багато коду. І іноді, якщо код знаходиться в необробленому форматі, може бути складно перевірити його на наявність конкретних тенденцій, структур коду та шаблонів.
Для вирішення цієї проблеми кодування використовується візуалізація. Візуалізація коду надає кодовій базі чітке, добре організоване графічне представлення, яке полегшує розуміння, вивчення та аналіз.
Зараз ми розглянули 12 найкращих інструментів візуалізації коду, за допомогою яких ви можете швидко зрозуміти код.
залишити коментар