Рубрика «архитектура» - 22

Разведка и инженерное дело: 3D-модели зданий, развязок и карьеров по фото - 1

В какой-то момент у нас на пороге появился человек в штатском с целым жёстким диском фотографий одного инженерного объекта (назовём его для определённости путепроводом через железную дорогу). Задача сводилась к традиционному «когда-то давно строили, а потом потеряли исходную документацию», и нужно восстановить проект с погрешностью в сантиметр-два.

Чтобы понять, насколько хорошую точность можно получить в архитектуре и инженерных изысканиях подобного рода, мы решили отснять свой 11-этажный офис и создать 3D-модель. В конце работы мы получили модель здания и замерили по ней пару окон. Потом пошли и измерили эти же окна в реальном мире — среднее расхождение было в пределах сантиметра, максимум — двух.

Кстати, в чём-то похожая задача была у одного из наших партнёров — нужно было снять карьер площадью 470 Га и:

  1. Определить объёмы выработки породы.
  2. Подсчитать объём склада продукции.
  3. Получить поверхность для уточнения уровня гидроотвала.
  4. Получить 3D-модель всей территории.

Разведка и инженерное дело: 3D-модели зданий, развязок и карьеров по фото - 2
Часть маршрутов

Её решили с помощью беспилотника, длинных гвоздей, GPS-приёмника и двух пачек пластиковых тарелок за 5 рублей за штуку.Читать полностью »

Желание разработать собственный Angular.js webApi модуль возникло при работе с большим количеством http-запросов в проекте.

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

Задачи, которые должен решать будущий webApi модуль:

  1. Предотвратить дублирование http-запросов в проекте.
  2. Группировать существующий список запросов по функциональным категориям, чтобы проще вносить правки в конкретные методы.
  3. Быть полностью независимой функциональной единицей приложения, которая подключается к любому другому Angular.js проекту простым Dependency Injection'ом.
  4. Инкапсулировать внутреннюю реализацию, чтобы избежать проблем при работе с внешними источниками.

Дальше поговорим о каждом из этих пунктов подробнее.Читать полностью »

Опять здравствуйте, Хабровчане! В прошлой статье я рассказывал о командах и как ими пользоваться, а сегодня я буду развивать тему и расскажу как привязать команду к конечному автомату. Тема на хабре не нова, поэтому я не буду углубляться в объяснения что такое конечный автомат и зачем он используется, а сосредоточусь на реализации. Сразу оговорюсь что для понимания лучше прочитать предыдущую статью, ведь команды будут практически без изменения использоваться в качестве состояний. Перед началом хочу сказать спасибо OnionFan за его комментарий — не все привычки хороши и его вопрос позволил сделать удобней типизацию конечных автоматов, про которые я расскажу, просто добавив ключевое слово params (я уже поправил в предыдущей статье).
Читать полностью »

image

Два итальянских архитектора, принявших участие в ежегодном соревновании журнала eVolo по разработке небоскрёбов, выступили с неожиданным проектом Data Tower. В качестве высотки они предложили 65-этажный дата-центр. Их проект занял третье место в конкурсе.

Цилиндрическая башня дата-центра, по замыслу авторов, должна будет обладать эффектом печной трубы – нагретый воздух внутри башни устремляется вверх, и привлекает прохладный воздух снаружи, обеспечивая естественную вентиляцию конструкции. Правда, гигантский вентилятор на верхушке цилиндра создатели всё-таки предусмотрели.
Читать полностью »

Суперскалярный стековый процессор: оптимизация - 1
Продолжение серии статей, разбирающих идею суперскалярного процессора с
OoO и фронтендом стековой машины. Тема данной статьи — оптимизация обращений к памяти.

Предыдущие статьи:
1 — описание работы на линейном куске
2 — вызов функций, сохраняем регистры
3 — вызов функций, взгляд изнутри
Читать полностью »

Рассмотрев разницу в дизайнерских подходах в традиционных системах и облачных платформах OpenStack, мы можем перейти к разнице в подходах построения приложений и надежной и высокодоступной инфраструктуры. OpenStack был создан для того, чтобы обеспечить массовый запуск сотен, тысяч и даже десятков тысяч однотипных (как правило) виртуальных серверов для хостинга приложений с собственными средствами обеспечения отказоустойчивости. Сама платформа не предлагает высокой доступности отдельно взятого виртуального сервера.

image

Многие пользователи традиционных систем часто принимают это как недостаток и незрелость платформы OpenStack. Тем не менее, это утверждение основано на недопонимании различных дизайнерских принципов унаследованных приложений и облачных вычислений.Читать полностью »

Сегодня затраты на ИТ являются существенной частью бюджетов, и, как следствие — компании любых размеров заинтересованы в их сокращении. Ожидается, что ИТ будут приносить больше пользы при меньших затратах. При этом по мере развития все современные компании сталкиваются с вопросом увеличения потребностей в ИТ-ресурсах. В такой ситуации следует обратить внимание на облачные технологии, которые дают возможность модернизации подходов к управлению ИТ-инфраструктурой за счет использования новейших технологий, высокого уровня стандартизации, гибкости внедряемых решений и простоты масштабирования. OpenStack же является одним из самых распространенных решений для организации облачных сред типа Infrastructure as a Service (IaaS).

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

Захотелось поделиться чудесным процессом разработки, с которым недавно познакомился. Я раньше не видел такого подхода, и люди, как только с ним знакомятся, долго не могут понять и принять такой способ построения игр. И, если честно, я сам понял все не в первую неделю. Но после некоторого освоения я уже забыл как делать игры иначе. В планах написать цикл статей, но начнем с малого и постепенно будем наращивать понимание что и зачем и с чем это есть.

Как кое-кто уже мог догадаться, я сегодня расскажу про паттерн “Command” и как его использовать для разработки игр с использованием движка Unity 3D. Это один из ключевых паттернов в этом подходе. Код будет упрощенным, но рабочим и должен дать понимание процесса.
Читать полностью »

Суперскалярный стековый процессор: подробности - 1
Продолжение серии статей, разбирающих идею суперскалярного процессора с
OoO и фронтендом стековой машины.
Тема данной статьи — вызов функций, вид изнутри.
Читать полностью »

Суперскалярный стековый процессор: продолжаем скрещивать ужа и ежа - 1
Продолжение статьи, где удалось продемонстрировать, что фронтенд стековой машины вполне позволяет спрятать за ним суперскалярный процессор с OoO.
Тема данной статьи — вызов функций.
Читать полностью »


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