Наши услуги

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

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 разработчик
Смотреть все

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

Блог

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

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

Статьи

26.03.2026
Scheme: язык, который меняет мышление Если вы водите фуру, то знаете: важно не только доставить груз, но и выбрать правильный маршрут и инструменты для работы. В программировании тоже есть свои «инструменты» — языки. Сегодня поговорим об одном особенном — Scheme. Это не самый популярный язык для коммерческих проектов, но он как тренажёр для ума: учит мыслить ясно и видеть суть проблемы. Что такое Scheme? Scheme — это диалект языка Lisp, созданный в 1970-х годах. Его философия — минимализм и мощь. Представьте, что весь ваш инструмент в кабине — это один универсальный ключ, которым можно и двигатель подкрутить, и дверь починить, и даже обед разогреть. Примерно так устроен Scheme: очень мало базовых правил, но из них можно собрать что угодно. Почему он такой особенный? Простой синтаксис. Код состоит из списков в круглых скобках: (функция аргумент1 аргумент2). Всё единообразно. Сила абстракции. Он позволяет создавать новые языки внутри себя. Это как если бы вы могли перепрошить бортовой компьютер под свои нужды прямо на ходу. Функциональное ядро. Основной способ работы — это функции. Всё есть функция или данные для функций. Как объяснить Scheme дальнобойщику? Представьте свою поездку. У вас есть пункт А (загрузка) и пункт Б (разгрузка). Обычные языки программирования — это подробный маршрутный лист с указанием каждого поворота. Scheme же даёт вам не лист, а принцип построения любого маршрута. Вы учитесь не запоминать дороги, а понимать логику карты в целом. Сначала это непривычно, но потом вы сможете прокладывать путь в любой незнакомой местности. Пример для понимания Допустим, нужно сложить два числа. На многих языках вы пишете что-то вроде a + b. В Scheme всё действие — это список: Открываете скобку: это сигнал "началось действие". Пишете имя операции: + Пишете слагаемые: 5 3 Закрываете скобку: "действие завершено". Получается (+ 5 3). Компьютер читает это так: "Примени операцию '+' к числам 5 и 3". Результат — 8. Зачем его изучать сегодня? Scheme редко используют в индустрии напрямую. Но он — блестящий учебный инструмент. Он учит: Чистоте мысли. Вы отделяете суть задачи от лишних деталей. Рекурсии. Это как зацикливать манёвр, пока не получится идеально въехать в узкий док. < p >Это как натренировать мозг на решение принципиально новых проблем , а не просто следовать инструкции . После Scheme другие языки кажутся деталями одной большой картины , которую вы уже понимаете . < h2 >Итог : инструмент для интеллектуальной прокачки < p >Scheme — это не грузовик для ежедневных перевозок . Это мастерская , где вы собираетесь понять , как устроен двигатель , коробка передач и вся система управления . Он даёт глубокое понимание основ программирования , которые не устаревают . Если вы хотите не просто писать код , а видеть его внутреннюю гармонию и логику — этот инструмент стоит вашего времени .
21.03.2026
Проектирование базы данных для системы на языке PL/I Проектирование базы данных — это фундаментальный этап создания любого программного комплекса, особенно когда речь идет о надежных системах на таком языке, как PL/I. Успех проекта во многом зависит от лидера, который должен обеспечить четкое видение архитектуры и строгую дисциплину разработки. Роль лидера в проекте Лидер технической команды в проекте на PL/I должен совмещать глубокое понимаение возможностей языка с принципами построения устойчивых структур данных. Его ключевые задачи включают определение требований к целостности данных, планирование миграций и установление стандартов именования и документирования. Без этого даже самая логичная схема обречена на проблемы в долгосрочной перспективе. Ключевые этапы проектирования Процесс следует разбить на последовательные этапы, каждый из которых требует утверждения лидером. 1. Концептуальное моделирование На этом этапе происходит сбор и анализ требований бизнеса. Результатом становится ER-диаграмма (сущность-связь), которая описывает основные объекты предметной области и отношения между ними без привязки к конкретной СУБД. 2. Логическое проектирование Диаграмма преобразуется в схему отношений (таблиц). Здесь важно нормализовать данные до приемлемой степени, чтобы исключить аномалии обновления. Для PL/I-систем, часто работающих с большими объемами транзакций, третья нормальная форма (3NF) обычно является хорошим выбором. 3. Физическое проектирование Этот этап напрямую связан с реализацией в выбранной СУБД (например, DB2, IMS/DB). Лидер должен принять решения о: Типах данных PL/I, которые будут сопоставляться с типами полей базы. Создании индексов для ускорения критических запросов. Стратегии управления физическим хранением (табличные пространства, разделы). Планировании резервного копирования и восстановления. Особенности интеграции с PL/I Язык PL/I обладает мощными средствами для работы с данными, что накладывает отпечаток на дизайн. Cтруктуры записей: DCL-описания структур в программе должны точно соответствовать структуре таблицы в базе. Обработка исключений: Необходимо заранее определить, как программа будет реагировать на SQLSTATE или другие коды ошибок СУБД. Производительность: Следует минимизировать количество обращений к базе из циклов PL/I, используя наборные операции. Заключение: принципы успешного проекта Начинайте с ясных и документированных требований от бизнеса. Придерживайтесь методологии: концептуальная → логическая → физическая модель. Тестируйте схему на реалистичных объемах данных до основной разработки. Документируйте каждое решение, особенно касающееся отступлений от нормальных форм. Cтрогое следование этим принципам под руководством опытного лидера позволит создать надежную, производительную и легко поддерживаемую базу данных для системы на PL/I. Это основа долгосрочной стабильности всего программного продукта.
20.03.2026
Очереди в больших скриптах на Modula-2 При разработке больших скриптов или системных приложений на Modula-2 управление потоками данных и задач становится критически важным. Одной из фундаментальных структур данных для этого является очередь (queue). Она реализует принцип FIFO (First In, First Out), что делает её незаменимой для буферизации, планирования заданий и обработки событий. Принцип работы очереди Очередь можно представить как трубку, в которую с одного конца кладут шарики, а с другого — вынимают. Первый положенный шарик первым и будет извлечён. В программировании это означает, что элементы добавляются в конец очереди (операция Enqueue) и извлекаются из её начала (операция Dequeue). Объясняем боксёру Представь, что ты боксёр, ожидающий боя. Ты приходишь в раздевалку и становишься в очередь из бойцов. Тот, кто пришёл первым, первым выйдет на ринг. Новые бойцы подходят и становятся в конец этой очереди. Тренер (программа) вызывает всегда того, кто стоит в самом начале. Так работает справедливое планирование — без этого начался бы хаос и драка ещё до выхода на арену. Реализация очереди в Modula-2 Modula-2, с его акцентом на модульность и безопасность типов, идеально подходит для создания надёжных абстрактных типов данных (АТД). Очередь обычно реализуется в виде отдельного модуля. Определение модуля DEFINITION: объявляются типы данных и публичные процедуры. Выбор внутренней структуры: очередь можно реализовать на массиве фиксированного размера (кольцевой буфер) или на динамически связном списке. Реализация основных операций: Enqueue, Dequeue, IsEmpty, IsFull (для массива). Инкапсуляция состояния: внутренние переменные (массив, индексы начала и конца) скрыты от пользователя. Пример структуры модуля Queue Tип Queue: непрозрачный тип для инкапсуляции. Процедура InitQueue(VAR q: Queue): инициализация пустой очереди. Процедура Enqueue(VAR q: Queue; value: INTEGER): добавление элемента. Процедура Dequeue(VAR q: Queue; VAR value: INTEGER): извлечение элемента. Функция IsEmpty(q: Queue): BOOLEAN: проверка состояния. Преимущества использования очередей в больших скриптах В сложных системах очереди выполняют роль буферов между асинхронными процессами или этапами обработки данных. Они позволяют: Сглаживать пиковые нагрузки: быстрые производители могут складывать задачи в очередь, а медленные потребители — брать их в удобном темпе. Повышать отказоустойчивость: данные не теряются при временной недоступности обработчика. Организовывать чёткий порядок выполнения, как в примере с боксёрами, что критично для логики многих приложений. Таким образом, грамотная реализация очередей структурирует код больших скриптов на Modula-2, делая его более предсказуемым, эффективным и простым для поддержки. Это классический пример применения фундаментальных структур данных для решения практических задач системного программирования.
Открыть все статьи
bg_1
Остались вопросы? Задавайте их немедленно.
мы проконсультируем совершенно бесплатно