» Материалы за 03.02.2017 » Страница 3

 

Управление сложностью в проектах на ruby on rails. Часть 3

Автор: admin от 3-02-2017, 08:10, посмотрело: 235

В предыдущей части я рассказал про контроллеры и роутинг. Теперь поговорим про формы. Довольно часто требуется реализовать формы, которым не соответствует ни одна модель. Или добавить валидацию, которая имеет смысл только в конкретном бизнес-процессе.


Я расскажу про 2 типа форм: form-objects и types.


Объкты-формы используются для обработи и валидации пользовательского ввода, когда данные нужны для какого-либо операции. Например, вход пользователя в систему или фильтрация данных.


Types используются, если нужно расширить поведение модели. Например, в вашем проекте пользователи могут регистрироваться как через vkontakte, так и через обычную форму. Заполнение email обязательно для обычных пользователей, а для vk пользователей — нет. Такое поведение легко решается с помощью types.

Категория: Программирование » Веб-разработка

 

Как все начиналось: разработчики вспоминают первые созданные ими игры

Автор: admin от 3-02-2017, 08:05, посмотрело: 391

Как все начиналось: разработчики вспоминают первые созданные ими игры

Наверняка многие разработчики игр, будучи детьми, часто слышали критику в свой адрес. Нас упрекали в том, что мы слишком много времени тратим впустую, живем в вымышленной реальности… Однако часы, проведенные за игровыми консолями, оказались весьма плодотворными, а юношеское увлечение, бесполезное на первый взгляд, переросло в настоящую профессию, которая приносит ни с чем не сравнимое удовольствие.

Мы подготовили для вас перевод статьи с ресурса Gamasutra, чтобы вы вместе с нами узнали о первых шагах известных разработчиков в мире геймдева.

Категория: Программирование » Веб-разработка

 

Комплексная нейронная сеть на основе ряда Фурье от функции многих переменных

Автор: admin от 3-02-2017, 07:45, посмотрело: 533

Есть много задач, для решения которых нейронные сети прямого распространения с сигмоидальной активационной функцией не являются оптимальными. Например — задачи распознавание бинарных изображений, с первичной обработкой с помощью преобразования Фурье. В ходе этих преобразований изображение становится инвариантным к смещениям, масштабированию и поворотам. Пример таких преобразований приведен ниже.[1] На выходе такой метод выдает вектор комплексных чисел. Современные нейронные сети не могут с ними работать т.к. они работают только с вещественными числами.
Комплексная нейронная сеть на основе ряда Фурье от функции многих переменных

Категория: Программирование

 

Как тестировать контейнеры RoR с GitLab CI в контейнере

Автор: admin от 3-02-2017, 03:45, посмотрело: 368

Чем хорош GitLab, так это тем, что будучи по габаритам слоном в посудной лавке, он умеет аккуратно устанавливаться и почти всегда работает с коробки. Но плохо умеет восстанавливаться и заботиться о себе, когда очень прямые руки вроде моих нарушают привычное ему окружение. Не буду углубляться в то, как мне удавалось убить его до состояния, когда даже удаление и установка с нуля не помогает, но во избежания очередной бесконечной эпопеи с дебагом и переустановкой сервера я вынес все это дело в Docker контейнер. Удобно — на рабочей машине нет миллиона зависимостей, примонтировал директории для репозиториев, логов и базы данных и все работает. Восстановление — пересоздать контейнер и скормить бэкап (кстати, не забудьте проверить свои бэкапы, как говорит опыт GitLab, это не лишнее).

С другой стороны, есть разрабатываемое Rails приложение, которое на реальной машине держит только код; Rails, gems, и все остальное покоится в Docker контейнере. Для своей работы оно использует Redis и Postgres, каждый находится в своем контейнере. Для каждого контейнера примонтирована директория, чтобы важные для приложения данные не оставались внутри.

Как тестировать контейнеры RoR с GitLab CI в контейнере

Задача в том, чтобы Gitlab CI нормально отработал. Вроде все просто, но — он сам находится в контейнере.
И как же нам быть?

Категория: Программирование » Веб-разработка

 
Назад Вперед