Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: [WFX] CloudMailRu: работа с облачным хранилищем от mail.ru 
Author Message
D1P



PostPosted: Sun Feb 08, 2026 01:11    Post subject: Reply with quote

Я был уверен, что покончил с этим плагином навсегда, но, видимо, есть вещи, от которых нельзя просто взять и избавиться. Появление агентской разработки не просто убрало необходимость работать с ужасающе устаревшей IDE (вот уж что с годами становится только хуже), но и ускорило разработку во сколько раз? В десять? В сто?
Судите сами, за две недели с помощью Claude Code я:

— Разобрался в изменениях API авторизации. Агент прогуглил решения в других проектах, проверил ответы сервера, фактически провёл обратный инжиниринг так, как я делал это в начале разработки. Тогда я тратил на это день, агент объяснил мне решение через десять минут.
— Разбил огромный монолит на слои по DDD, применил принципы GRASP и SOLID. С помощью современных IDE, вроде IDEA, я бы делал одно только это несколько месяцев. В RAD Studio — я бы не смог этого сделать в принципе. Теперь архитектура настолько чистая, что в ней можно купать младенцев.
— Сделал покрытие юнит-тестами на 96%. ДЕВЯНОСТО ШЕСТЬ, с 80 тестов до трёх тысяч. Наверное, за год непрерывной работы я бы смог написать все эти тесты вручную.
— Для оставшихся 4% написал интеграционные тесты. А чтобы гонять эти тесты без учётки в облаке — написал даже не мок-сервер, а полноценное решение. Теперь вы можете развернуть веб-сервер, полностью совместимый по API с облаком у себя, хоть на винде, хоть на линуксе, и ходить на него плагином — теперь он мультисерверный. Ну, учитывая что API теперь полностью документировано (агент написал спеку по имеющемуся коду), я бы написал такой сервер за несколько месяцев. Здесь на весь цикл разработка-тесты-отладка ушло два дня.
— Я внедрил все реквесты, многие из которых висели годами. Теперь плагин умеет показывать миниатюры: я за час исследовал эндпойнты CDN, агент написал код за десять минут. Локализация — простая, но невероятно муторная задача, взято и сделано. Самому старому реквесту — прозрачному шифрованию — скоро исполнялось десять лет. Оно работало, но было неудобное и неочевидное; с CC я переработал его за пару дней, передизайнив логику и ускорив само шифрование в разы за счёт аппаратной поддержки в винде и функций SSL.
— Кстати, о SSL. В набор компонентов Indy, на которых построен сетевой стек плагина, не могут внедрить поддержку OpenSSL 3.x уже многие годы; она так и живёт на 1.x с устаревшими протоколами и дырами безопасности. И я удивлён тому, что нашёлся человек, который написал эту поддержку. Для полумёртвой библиотеки весьма нишевого языка, вот взял и написал. Лайкните ему репозиторий, это наименьшее, чем можно отблагодарить такого динозавра. Я же просто использовал его код — и оно работает. Слава опенсорсу! Но вообще я уверен, что если бы я поставил агенту задачу — он бы написал это и сам.
— Разобрано какое-то невероятное количество непоняток. Например, раньше плагин вёл себя неадекватно на больших листингах — разобрались, API отдаёт только 8000 записей за раз, нужна пагинация. Авторизация слетала раз в час — разобрались, отловили, теперь токены перезапрашиваются по необходимости. И т.д., и т.п. Эти вопросы я не мог решить годами.
— Если я буду перечислять количество закрытых ошибок, мне придётся писать несколько таких сообщений. Одних только утечек памяти, найденных и анализом и тестами, выйдет несколько десятков. И это были абсолютно неочевидные вещи — очевидных я всё-таки не допускал.

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

P.S.
Quote:
At a senior Delphi developer rate, this is roughly 4-5 months of full-time work (or ~18-22 standard 40h work-weeks). The high churn ratio (cumulative ~247K lines touched vs ~110K net) reflects the iterative nature of the DDD migration and extensive refactoring — code was moved, reshaped, and rewritten multiple times, which is typical for a disciplined architectural overhaul of a legacy codebase.

The heaviest items are the test suite (~30% of effort) and handler extractions (~20%) — both are labor-intensive but low-creativity work that scales linearly with codebase size.


Две недели!
_________________
База знаний о Total Commander
Блог
View user's profile Send private message Visit poster's website ICQ Number


Powered by phpBB © 2001, 2005 phpBB Group