Писати код на мобільних пристроях — заняття не для слабкодухих. IDE на кшталт Playgrounds або Termux дають базовий редактор, але контекстна допомога AI відсутня. Ми впроваджуємо Code Assist, який аналізує код навколо курсора, підсвічує синтаксис і генерує рішення за описом. Типовий сценарій: розробник править Swift-файл із сотнями рядків — без підказок легко пропустити помилку. Наш асистент скорочує час пошуку та виправлення багів у три рази.
Які проблеми вирішуємо
Синтаксичне підсвічування на мобільних платформах. Стандартні UITextView та EditText не підтримують підсвічування коду. Ми використовуємо спеціалізовані бібліотеки: на iOS — Runestone з Tree-sitter (інкрементальний парсер), на Android — CodeEditor від Rosemoe. Runestone обробляє файли до 10 000 рядків без зависань — у три рази швидше аналогів на WebView.
Контекстні запити до LLM. Просто відправити «як виправити баг?» — недостатньо. AI повинен бачити навколишній код, мову, виділений фрагмент. Ми формуємо промпт, що включає системну інструкцію, контекст (50 рядків навколо курсора) та виділений код. Історія діалогу зберігає останні шість пар питання/відповідь, а великі code-блоки замінюються плейсхолдерами, щоб не роздувати контекст. Це економить до 40% токенів на кожному запиті.
Парсинг відповідей. LLM повертає markdown із code-блоками. Ми витягуємо їх, пропонуємо застосувати до файлу — кнопка «Застосувати» поруч із кожним блоком. На Android парсимо регулярним виразом, на iOS — через NSRegularExpression. Генерація коду за описом та AI code review мобільний теж реалізовані через цей механізм.
Як ми будуємо контекст для AI?
Ключовий елемент — структура CodeContext. Вона містить повний код (якщо менше 3000 токенів), позицію курсора, виділений текст. При зміні файлу системний промпт перестворюється — історія очищається, щоб не змішувати контексти різних файлів. Ми гарантуємо, що AI завжди працює з актуальним станом коду.
// Приклад формування контексту на iOS struct CodeContext { let language: String let fullCode: String let selectionStart: Int let selectionEnd: Int let cursorLine: Int var surroundingContext: String { let lines = fullCode.components(separatedBy: "\n") let from = max(0, cursorLine - 25) let to = min(lines.count, cursorLine + 25) return lines[from..<to].joined(separator: "\n") } } Додаткові налаштування контексту
Для кожної мови ми налаштовуємо системну інструкцію: наприклад, для Swift додаємо правило використовувати виправлення у стилі Swift, для Python — враховувати PEP 8. Це підвищує релевантність відповідей і скорочує кількість правок.Чому on-device моделі поки не підходять?
Моделі на кшталт codellama:7b потребують близько 4 ГБ RAM і не вміщаються на мобільних пристроях. Сучасні on-device рішення Apple дають базову генерацію тексту, але без спеціалізації на коді. Для продакшен-рішень ми використовуємо cloud API (OpenAI, Anthropic) через власний проксі-сервер, що забезпечує приватність коду. Наш досвід — понад десять впроваджень Code Assist у мобільні додатки, включаючи освітні платформи та IDE. Розробка аналогічного функціоналу з нуля зазвичай коштує від $10 000 до $20 000, наше рішення скорочує ці витрати вдвічі. За даними Apple Developer Documentation, on-device LLM обмежені розміром моделі.
Порівняння підходів: WebView vs нативний редактор
| Параметр | WebView (Monaco/CodeMirror) | Нативний (Runestone/CodeEditor) |
|---|---|---|
| Продуктивність на великих файлах | Затримки при >5000 рядків | Плавна робота до 10 000 рядків |
| Розмір додатку | +30-50 МБ | +5-10 МБ |
| Інтеграція з жестами | Обмежена | Повна підтримка |
| Оновлення підкладки Темна тема | Вимагає синхронізації | Автоматично |
Що входить у роботу
- Проектування архітектури AI-модуля
- Інтеграція редактора коду (Runestone / CodeEditor / WebView)
- Реалізація контекстних запитів та історії діалогу
- Парсинг code-блоків та кнопка «Застосувати»
- Налаштування API-проксі для LLM
- Тестування на реальних файлах (до 10 000 рядків)
- Документація та навчання команди
Орієнтовні терміни
| Етап | Термін |
|---|---|
| Редактор + базовий Q&A | 1 тиждень |
| Контекст + парсинг + історія | 2–3 тижні |
| Повноцінний Code Assist | 3–4 тижні |
Вартість розраховується індивідуально — напишіть нам, і ми оцінимо ваш проєкт за 1–2 дні. Економія від використання готового рішення становить до 60% витрат на розробку. Витрати на інфраструктуру скорочуються на $500 на місяць за рахунок оптимізації токенів.
Типові помилки при впровадженні
- Використання WebView для редактора коду — гальмує на великих файлах.
- Відсутність заміни code-блоків в історії — контекст швидко переповнюється.
- Ігнорування App Store Review Guidelines (Section 4.2) при публікації.
Отримайте консультацію — ми розповімо, як уникнути цих проблем у вашому проєкті. Замовте впровадження вже сьогодні.







