Pull to refresh
1
0

User

Send message

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

Reading time5 min
Views20K
В этой серии статей я соберу бОльшую часть своего опыта разработки на Ruby on Rails. Эти методики позволяют контролировать сложность и облегчают сопровождение проекта. Большинство из них придумал не я, и, по возможности, буду указывать источник.

Основная проблема проектов на RoR в том, что, как правило, всю логику пытаются уместить в модели, контроллеры и представления. Т.е. код находится только в моделях(ActiveRecord::Base), контроллерах, хэлперах и шаблонах. Такой подход приводит к печальным последствиям: код становится запутанным, долго делаются фичи, появляются регрессии, у разработчиков пропадает мотивация. В качестве примера можно посмотреть на исходники redmine.

Выход из данной ситуации довольно-таки очевидный. Будем делать проекты не на ruby on rails, а с использованием ruby on rails. Как это будет выглядеть: мы никуда не уходим от MVC и Rails, просто пересмотрим Model, View, Controller. Для начала расширим понятие модели. Модель — это не просто класс-наследник ORM. Модель — это вся бизнес логика приложения. Модель включает в себя: модели, сервисы, политики, репозитории, формы и другие элементы, которые я опишу далее. Так же расширим представления. Представления — это шаблоны, презентеры, хелперы, билдеры форм. Контроллеры — это все то, что связано с обработкой запросов: контроллеры, responders.
Читать дальше →
Total votes 22: ↑16 and ↓6+10
Comments17

Подключенные к Интернету устройства

Reading time24 min
Views19K
Привет! Это блог проекта Command Spot (www.commandspot.com).
Наш проект из области Интернета вещей (Internet of Things), точнее из области подключенных устройств (Connected Devices). Command Spot – сервис для активных пользователей интернета, который позволяет управлять подключенными устройствами из любой точки планеты.
Сервис строится на платформе Microsoft Azure.
Мы планируем интегрировать в наш сервис много умных устройств и управлять ими из одного приложения. Начали с интеграции умной розетки, подробности тут.

Для начала посмотрим, что вообще потенциально можно будет подключить в ближайшее время, и проведем условную классификацию. Здесь мы не рассматриваем носимые устройства, разного рода роботы, наборы сделай сам, а также дизайнерские концепты. Если что-то важное не вошло, присылайте, поправим.
Наш проект рад сотрудничеству и открыт для предложений. Особенно интересно пообщаться с хардверными проектами.
Пожалуйста, после прочтения примите участие в небольшом опросе.
Дальше много текста и картинок.
Читать дальше →
Total votes 28: ↑22 and ↓6+16
Comments13

Information

Rating
Does not participate
Location
Хабаровск, Хабаровский край, Россия
Date of birth
Registered
Activity