Наши услуги

Мы предлагаем

serv2
Сайт визитка - лендинг
Одна шаблонная страница - когда надо сегодня
serv2
Сайт магазин с CRM
Главная страница, каталог товаров/услуг, личный кабинет продавца
serv2
Дизайн для своего сайта
Нарисуем вам новый дизайн
serv2
Доработка существующего сайта
Когда что-то сломалось
serv2
Дизайн печатной продукции
Визитки, баннеры, стикеры и прочее нецифровое, что можно будет потрогать :)
serv2
Не знаю как объяснить - посмотрите сами
И такое делаем :)

Почему мы?

Минимум взаимодействий
Минимум взаимодействий
Из материалов только ваша страница или сайт
Всегда на связи
Всегда на связи
Голосовые, текст, видео - как удобно :)
Бывает и дорого, но есть бесплатно
Бывает и дорого, но есть бесплатно
Качество не зависит от цены
Индивидуальный подход
Индивидуальный подход
Разумеется :)
business
Коротко

О нас

wow5
2015
работаем успешно с
wow3
5
Реализованных проектов

Это начало интересного текста обо мне

Чуть позже напишу тут интересный текст

Партнёров пока нет
Но, ты пиши если что :)

Наши работы

Работа 1
Работа 2

Ознакомьтесь с нашим сервисом и комфортным сотрудничеством

Тарифы

Сайтик фри
0
Точно такой лендинг
checkedВаши фото, контакты и тексты
checkedИмя сайта имя.dencompany.ru
checkedБез мелкого шрифта и камней
Лайт
от
5 000
₽/год
Когда сайт пробник понравился и надо расширяться
checkedСамостоятельное имя сайта
checkedИндивидуальные настройки
checkedCRM (личный кабинет продавца)
checkedБез мелкого шрифта и камней
Хочу всё
от
15 000
₽/мес
Когда налажен процесс или не очень, но надо много и не хочется вникать
checkedСамостоятельное имя сайта
checkedИндивидуальный дизайн
checkedCRM (личный кабинет продавца)
checkedПеренос товаров с текущего сайта
checkedБез мелкого шрифта и камней

Профессионалы своего дела

Наша команда

Фото
Fullstack ведущий программист
Денис

О нас говорят

Отзывы клиентов

Фото отзыв
Я — специалист по SMM
Linda
Дизайнер
Фото отзыв
Отзыв 1
Mark
Backend разработчик
Смотреть все

Все, что нужно знать о бизнесе

Блог

Читать блог
Фото блог
22
05.2026
5 основных инструментов для продвижения интернет-бизнеса
Я — специалист по SMM.
Фото блог
22
05.2026
5 основных инструментов для продвижения интернет-бизнеса
Раньше работала дома.
Фото блог
22
05.2026
5 основных инструментов для продвижения интернет-бизнеса
Я работала дома.

Все, что нужно знать о создании сайтов

Статьи

22.05.2026
Сравнение фреймворков для разработки игр: наследие Clipper в современном контексте Когда речь заходит о разработке игр, большинство разработчиков сразу вспоминают Unity, Unreal Engine или Godot. Однако существует уникальная ниша, где до сих пор находит применение легендарный Clipper — язык и среда разработки, созданная в 1985 году компанией Nantucket. В этой статье мы сравним возможности Clipper с современными фреймворками для разработки игр, уделяя особое внимание его историческому влиянию и практической применимости. Что такое Clipper и почему он важен для игр? Clipper — это компилятор языка dBase, который в 90-х годах использовался для создания бизнес-приложений. Однако его возможности по работе с графикой, файловой системой и быстродействие сделали его неожиданно популярным среди разработчиков инди-игр того времени. В отличие от современных фреймворков, Clipper не имел встроенного движка, но позволял создавать текстовые квесты, рогалики и стратегии с ASCII-графикой. Сравнение Clipper с современными фреймворками 1. Производительность и ресурсы Clipper: Работает в среде MS-DOS, использует минимальное количество оперативной памяти (до 640 КБ). Идеален для создания ретро-игр с ограниченными ресурсами. Unity: Требует мощного железа, но предоставляет готовые решения для 2D и 3D графики. Godot: Легковеснее Unity, но всё равно требует современной ОС. Вывод: Clipper выигрывает в сценариях, где нужно запустить игру на древнем оборудовании или эмуляторе. 2. Разработка игр на Clipper: особенности Отсутствие графического интерфейса: Весь код пишется в текстовом редакторе. Это развивает дисциплину и понимание низкоуровневых процессов. Работа с экраном: Clipper использует символьную графику (через функции @...SAY и BOX). Для создания анимации приходится перерисовывать экран покадрово. Ограниченный звук: Только через системный динамик (PC Speaker). Это накладывает жёсткие ограничения, но учит работать с минимальными средствами. 3. Сообщество и поддержка Современные фреймворки имеют миллионные сообщества, тысячи туториалов и плагинов. Clipper же — это культовый инструмент, вокруг которого сформировалось небольшое, но преданное сообщество энтузиастов. Основные ресурсы: форумы на GitHub и архивы старых BBS. Для обучения придётся разбирать чужой код или читать документацию 90-х годов. Практический пример: создание простой игры на Clipper Рассмотрим минимальный код для движения символа по экрану: PROCEDURE Main() LOCAL nRow := 10, nCol := 10 DO WHILE .T. @ nRow, nCol SAY " " nCol := nCol + 1 @ nRow, nCol SAY "@" IF INKEY() = 27 EXIT ENDIF ENDDO RETURN Этот пример показывает, как просто можно создать анимацию. Однако для полноценной игры потребуется реализовать коллизии, управление и сохранение вручную. В Unity аналогичная задача решается в несколько кликов. Когда стоит выбирать Clipper для разработки игр? Образовательные проекты: Изучение основ программирования без абстракций. Ретро-гейминг: Создание игр для DOSBox или реальных машин 386/486. Джемы с ограничениями: Например, ASCII-джемы или конкурсы на минимальный размер файла. Ностальгия: Воссоздание атмосферы ранних 90-х с помощью аутентичных инструментов. Заключение Clipper не является конкурентом современным фреймворкам вроде Unity или Godot, но он занимает уникальную нишу. Его использование в разработке игр — это осознанный выбор в пользу минимализма, глубокого понимания работы компьютера и создания проектов с особым ретро-шармом. Если ваша цель — изучить программирование «с нуля» или сделать игру для старых систем, Clipper станет отличным инструментом. Для коммерческой разработки современных игр он, безусловно, уступает, но как образовательный и культурный феномен он остаётся непревзойдённым.
18.05.2026
TypeScript для стоматолога: почему этот язык — как хороший ассистент в кресле Представьте, что вы работаете с пациентом. Вы точно знаете, какой инструмент нужен на каждом этапе: сначала зонд, потом зеркало, потом бормашина. А теперь представьте, что ассистент подаёт вам инструменты вслепую, наугад, и вы каждый раз проверяете — тот ли это инструмент. Примерно так работает JavaScript. TypeScript — это ассистент, который заранее кладёт в вашу руку именно то, что нужно, и никогда не ошибётся. Что такое TypeScript простыми словами TypeScript — это надстройка над JavaScript, которая добавляет в код типы. Тип — это как категория инструмента в вашем лотке: «бор» (цилиндрический), «фреза» (грушевидная), «экскаватор» (острый). Когда вы пишете код на TypeScript, вы говорите: «Эта переменная — всегда строка», «Эта функция принимает только число и возвращает булево значение». Если вы случайно попытаетесь передать в функцию зубную нить вместо пломбировочного материала — компилятор TypeScript остановит вас до того, как код попадёт к пациенту (в браузер). Почему стоматологу стоит разобраться в этом Допустим, вы заказываете программу для онлайн-записи. Разработчик говорит: «Мы пишем на TypeScript». Это значит, что: Меньше ошибок в логике. Программа не перепутает номер телефона с датой приёма. Легче менять функционал. Если вы решите добавить поле «аллергия на анестезию», TypeScript проверит, что все части программы знают об этом новом поле. Код живёт дольше. Через год другой разработчик сможет быстро разобраться, что к чему, как опытный ортопед читает снимок. Как это работает на практике (аналогия с лечением) Объявление типа — это анамнез. Вы записываете: «У пациента — кариес (тип: глубокий)». В TypeScript: let status: string = «лечение». Вы заранее фиксируете, с чем имеете дело. Функция — это протокол лечения. Вы говорите: «Сначала анестезия (принимает номер зуба), потом препарирование (возвращает полость)». TypeScript проверяет, что на вход подали номер зуба, а не имя пациента. Интерфейс — это карта зубов. Вы описываете, какие поля есть у объекта «Пациент»: имя (строка), возраст (число), список леченых зубов (массив чисел). Если программист забудет указать возраст — TypeScript укажет на ошибку, как рентген показывает скрытую кисту. Совет с учётом времени года (май 2026) Сейчас конец весны — время, когда многие стоматологии обновляют сайты и CRM к летнему сезону отпусков. Если вы планируете заказать новую систему записи или мобильное приложение для напоминаний о визитах, обязательно уточните у подрядчика: «Вы используете TypeScript?». В мае 2026 года это уже не модная фишка, а стандарт качества, как одноразовые перчатки в кабинете. Проект, написанный на чистом JavaScript без типов, летом может «посыпаться» из-за неожиданных данных от пациентов (например, кто-то введёт буквы в поле «телефон»). TypeScript защитит вас от таких сюрпризов. Итог TypeScript — это не магия, а дисциплина. Он заставляет разработчика быть таким же внимательным, как стоматолог перед сложным удалением. Вы учитесь предвидеть проблемы, а не героически их исправлять. И если вы понимаете эту логику, вы уже на 80% понимаете, зачем нужен TypeScript в современной веб-разработке. Остальное — дело техники и хорошего ассистента.
16.05.2026
Миграция фреймворка: Delphi и разработка CRM Миграция фреймворка — один из самых сложных и ответственных этапов в жизненном цикле программного продукта. Особенно остро эта задача стоит для систем, разработанных на Delphi, который долгое время был стандартом для создания корпоративных приложений, включая CRM-системы. Устаревшая кодовая база, зависимость от специфических библиотек и необходимость сохранения бизнес-логики делают миграцию нетривиальной инженерной задачей. Почему Delphi требует миграции в современных CRM? Несмотря на свою надежность, Delphi-приложения сталкиваются с рядом ограничений: Сложность интеграции с современными веб-сервисами и REST API. Отсутствие нативной поддержки кроссплатформенности (без дополнительных усилий). Устаревшие подходы к работе с базами данных и пользовательским интерфейсом. Дефицит специалистов, готовых поддерживать legacy-код на Delphi. Для CRM-систем, где критически важны гибкость, масштабируемость и скорость внедрения новых функций, миграция становится не просто техническим улучшением, а стратегической необходимостью. Этапы миграции фреймворка для CRM на Delphi Аудит существующего кода. Необходимо выявить ключевые модули: работа с контактами, сделки, отчетность. Особое внимание уделяется кастомным компонентам и прямым вызовам API операционной системы. Выбор целевого фреймворка. Наиболее популярные направления — .NET (C#) или Java/Spring для серверной части, а также React или Angular для фронтенда. Для сохранения части кода возможна гибридная архитектура с использованием RemObjects или Oxygene. Стратификация миграции. Рекомендуется разбить процесс на итерации: сначала перенос бизнес-логики (расчеты, валидации), затем — слоя данных, и в последнюю очередь — пользовательского интерфейса. Тестирование на каждом этапе. Использование автоматических регрессионных тестов обязательно, так как даже незначительное изменение логики может нарушить работу всей CRM. Постепенное внедрение. Запуск новой версии параллельно со старой (режим «big bang» здесь опасен). Пользователи должны иметь возможность переключиться обратно в случае критических ошибок. Особенности миграции Delphi-приложений для CRM При переносе CRM, написанной на Delphi, важно учитывать специфику предметной области: Работа с базами данных. Delphi часто использует BDE, ADO или прямые SQL-запросы. При миграции на ORM (Entity Framework, Hibernate) потребуется рефакторинг всех запросов и оптимизация производительности. Отчетность. Многие CRM на Delphi используют FastReport или ReportBuilder. Их необходимо заменить на современные решения (Stimulsoft, DevExpress Reports) или переписать генерацию отчетов на серверной стороне. Интеграции. Старые COM-объекты и DLL-библиотеки должны быть либо эмулированы, либо переписаны с нуля с использованием современных протоколов (gRPC, RabbitMQ). Пользовательский интерфейс. VCL-формы Delphi сложно конвертировать в HTML/CSS. Рекомендуется проектировать новый UI с нуля, ориентируясь на современные UX-паттерны для CRM. Риски и как их минимизировать Основные риски при миграции фреймворка Delphi: Потеря данных. Тщательное резервное копирование и тестирование на копии продуктивной базы. Снижение производительности. Оптимизация запросов и использование кэширования на новом стеке. Сопротивление пользователей. Поэтапное обучение и обратная связь на каждом этапе внедрения. Увеличение бюджета. Четкое планирование спринтов и выделение резерва времени на непредвиденные сложности. Заключение Миграция фреймворка для CRM-системы, написанной на Delphi, — это масштабный проект, требующий глубокого понимания как старой архитектуры, так и современных технологий. Однако грамотно проведенная миграция открывает новые возможности для развития продукта, упрощает поддержку и интеграцию, а также повышает конкурентоспособность бизнеса на рынке. Успех зависит от тщательного планирования, поэтапного подхода и вовлечения команды, которая одинаково хорошо разбирается как в legacy-коде, так и в современных фреймворках.
Открыть все статьи
bg_1
Остались вопросы? Задавайте их немедленно.
мы проконсультируем совершенно бесплатно