Рубрика «разработка» - 202

Привет!

Поскольку НЛО позволило мне писать статьи, продолжаем истории о проектировании. С придумыванием заголовков у меня беда. На этот раз речь пойдет о дверях безопасности. Надеюсь читатель простит мне вольный перевод термина Safety (или Protective) Door.

Говоря о безопасности на производстве, я подразумеваю аварийный останов или аварийное отключение для предотвращения аварии. Есть целый ряд технологий и устройств, позволяющих сделать жизнь ответственного за ТБ безоблачной и спокойной, а рабочим завода обеспечить сохранность жизни и конечностей.

Эти устройства применяются для выполнения следующих задач:

— кнопки аварийного останова и отключения, о которых я писал чуть раньше;
— мониторинг дверей безопасности;
— контроль рабочей зоны лазерными сканерами;
— контроль доступа с помощью световых барьеров;
— контроль безопасной скорости вращения и движения;
— контроль выполнения работы двумя руками (да, переводчик из меня абсолютно точно никакой).

Может, список неполный, но достаточный на сегодня. Итак, говорим о дверях.
Читать полностью »

Что нам строит дом построитьИтак, вам понадобилось реализовать в проекте функциональность X. Теоретики разработки программного обеспечения в этот момент говорят, что для этого нужно взять уже существующую библиотеку Y и использовать её для реализации необходимых вам вещей. Собственно, это классический подход в разработке программного обеспечения — повторное использование своих или чужих наработок (сторонних библиотек). И именно этим путём движется большинство программистов.

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

Читать полностью »

В горнодобывающей промышленности для транспортирования полезных ископаемых из шахты на поверхность применятся много техники. Это самоходные установки, наклонные съезды с вагонами, шахтные подъемные установки (ШПУ или ШПМ). Вот о ШПМ мы и поговорим.

Измерение веса полезных ископаемых в горнорудной промышленности. Теоретическая основа - 1

Они бывают разных типов, как по используемым подъемным сосудам (скип, клеть, бадья), так и количеством подвешенных подъемных сосудов (одноконцевые, двуконцевые). Очень много нюансов там, в плане механики. Посмотреть описание можно тут и тут.

Приводы тоже бывают разные. Постоянного и переменного тока. Для переменного тока это могут быть высоковольтные асинхронные электродвигатели с фазным ротором, синхронные электродвигатели, низковольтные асинхронные электродвигатели с короткозамкнутым ротором. Поговорим о ШПУ с высоковольтным асинхронным электродвигателем с фазным ротором.
Читать полностью »

Анализируй это или о качестве программного обеспечения - 1 Почти всю свою сознательную карьеру разработчика, руководителя проектов, консультанта по процессам разработки я оставался в плену очень распространенного и простого заблуждения. Если программа выполняет требуемые функции, претензий к стабильности и производительности нет, то это «нормальная» программа. Прошу прощения за несколько утрированную формулировку, но так оно и есть, если разобраться.

За определениями термина «качество программного обеспечения» не грех обратиться к стандартам. Несколько определений из разных стандартов удобно приведены на одной странице wiki. И что же?! В фокусе способности программы удовлетворять потребностям Заказчика.
Читать полностью »

В процессе разработки я столкнулся с необходимостью создания пула объектов. Прочитав эту и другие статьи, решил написать для своих нужд пул попроще с доступом к объекту по строке (названию префаба).

Итак, начнем. Пул состоит из четырех скриптов. Состояние вкл/выкл на объекте в пуле определяется его свойством Unity activeInHierarchy, чтобы не городить дополнительных переменных.
Читать полностью »

Одна из проблем, с которыми приходится столкиваться, занимаясь настройкой окружения для разработчиков, с использованием Docker и Docker-compose, это вопрос о том, как сводить вместе несколько различных проектов. При условии, что все проекты, конечно же, имеют docker-compose.yml файл.

Docker compose и объединение проектов с помощью mixer-a - 1

Причин, по которым становится необходимо делать это, может быть несколько:

  • Разработка низко связанных компонентов огромной системы. Где каждый проект, по сути, может являться отдельным самостоятельным приложением
  • Подключение отдельных компонентов для тестирования. Вынесение mock-сервисов и тестов в отдельные контейнеры со своей логикой линковки и взаимодействия
  • Внешнии, по отношению к проекту, системы, которые тем не менее 'живут' в docker среде

Читать полностью »

В интернете полным-полно создателей контента, и каждый хочет привлечь к себе внимание. Но, как ни странно, хороший учебный ресурс найти нелегко, а бесплатный – еще сложнее. Мы публикуем перевод материала, в котором автор собрал ссылки на самые авторитетные и полезные обучающие площадки.

21 бесплатный учебный ресурс для разработчиков игр - 1
Читать полностью »

350+ полезных ресурсов, книг и инструментов для работы с Docker - 1

В нашем блоге мы пишем о развитии облачного сервиса 1cloud, но и о перспективных технологиях. Одной из наиболее активно обсуждаемых тем ушедшего года стала «революция контейнеров», одним из главных действующих лиц которой, безусловно, является Docker. Поэтому сегодня мы представляем вашему вниманию перевод подборки из более чем 350 полезных ресурсов, книг и инструментов для работы с этой технологией, которые собраны в этом репозитории на GitHub.Читать полностью »

Кто вы, пишущие на Gherkin? Или корнишон в поисках целевой аудитории - 1

Сценарий: Определение причин слабой распространенности Gherkin
  Допустим я решил разобраться, почему Gherkin используется небольшим количеством команд
  Когда начал анализ причин
  Тогда понял, что неверно выбрана целевая аудитория

Не так давно среди моих знакомых возник вопрос: “Зачем Gherkin?”. Причем вопрос был поставлен не как вброс на лопате, а чтобы понять его применимость.

Старт обсуждению дал kuntashov в G+ заметкой со следующим содержанием (сюда я привожу сухой остаток, совсем немного подкорректированный мной):

Gherkin был создан, чтобы сценарии использования можно было редактировать как нарратив (повествование), т.е. “почти на человеческом языке” в простой, лаконичной форме и доступном формате. Т.е. назначение формата было — быть в первую очередь лицом к не-технарям, но при этом сохранить более-менее достаточную формальность, чтобы можно было автоматически обрабатывать.

При этом бизнес-аналитики или любые другие конечные пользователи не очень хотят читать и тем более редактировать сценарии на Gherkin. Таким образом создание feature файлов перекладывается на плечи разработчика, для которого Gherkin — дополнительный и, возможно, лишний слой абстракции. Как мы знаем, “абстракции текут” и дополнительный слой только увеличивает вероятность “протечки”.

Может все же использовать языки, которые больше повернуты лицом к программистам?

Если есть желание совместно разобраться в полезности Gherkin и для кого он предназначен, добро пожаловать под кат.Читать полностью »

Детали test-first, которых так не хватало - 1 Все мы не раз слышали о test-first — философии разработки, которая призывает писать тесты раньше кода. Уверен, что любой, кто пытался применять этот метод на практике, сталкивался с тем, что у него просто не получается написать тест до функции (обычно в этом случае просто игнорируют эту проблему и локально нарушают test-first). Я считаю, что причина подобных провалов фундаментальна, и попытаюсь показать почему.

Для начала следует уточнить, что здесь и далее я буду говорить про тестирование функции в широком смысле слова как тестирование некоторой условной примитивной единицы кода. Оставим в стороне вопрос, какую подобную единицу нужно тестировать (например, метод или класс), на дальнейший ход рассуждения эти детали влияния не окажут. Я буду использовать выражение «тестирование функции» в этом смысле на протяжении всей статьи.

Вам может показаться, что индустрия давно разобралась со всеми проблемами, связанными с test-first, и причина всех возможных провалов лишь в том, что мы как разработчики не обладаем достаточной квалификацией для успешного применения нужных техник, а вовсе не в каких-то фундаментальных проблемах. Увы, здесь и там разные программисты задают одни и те же вопросы, как именно делать test-first, и получают порой невразумительные ответы. Думаю, без преувеличения можно сказать, что комьюнити по всему миру что-то подозревает, но многое остается недоговоренным.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js