Опис послуги
ПерекладЯ розробляю програми на мові Dylan — мультипарадигменному спадкоємці Lisp і CLOS, об'єктну модель якого вивчав роками на реальних завданнях. Якщо вам потрібний робочий код, я його здаю: нативні бінарники, зібрані компіляторним тулчейном Dylan, модулі з акуратними оголошеннями бібліотек і імпортів, узагальнені функції з диспетчеризацією за справжньою ієрархією класів. Множинна диспетчеризація — найсильніша сторона мови, і я проектую навколо неї свідомо, а не борюся з нею. Робота зазвичай починається з розмови про вашу предметну область. Далі я моделюю завдання як класи й узагальнені функції, ставлю запечатані визначення там, де компілятору варто агресивно оптимізувати, й відкриваю рівно ті частини, що мають залишатися розширюваними. Гігієнічні макроси пишу, коли шаблон повторюється занадто часто, й тримаю їх читаємими, щоб ваша команда супроводжувала їх після мене. Більшість практики — спасіння legacy-коду на Dylan: проекти, кинуті ушедшими авторами, вихідники, що перестали збиратися на актуальних версіях тулчейна, груди функціонального коду, до якого бояться прикасатися. Я повертаю їм до збірки, додаю тести, документую границі модулів і віддаю те, що можна розвивати. У поставку входять збиральні вихідники, готовий нативний виконуваний файл, замітки по структурі бібліотек і коротка запис екрана зі збіркою для відтворення. Тестую кожну правку, тримаю комміти дрібними, пояснюю рішення простою мовою. Потрібне нове нативне додаток, прив'язка до існуючої бібліотеки на C, оптимізація гарячих узагальнених функцій або обережний перенесення — доведу від ескізу до готового бінарника.