ASP.NET Razor: решение некоторых проблем с архитектурой для модели представления

image

Введение

Здравствуйте, коллеги!
Сегодня хочу поделиться с вами своим опытом разработки архитектуры View Model в рамках разработки веб-приложений на платформе ASP.NET, используя шаблонизатор Razor.
Описываемые в данной статье технические реализации подходят для всех актуальных на текущей момент версий ASP. NET (MVC 5, Core, etc). Сама статья предназначена для читателей, которые, по меньшей мере, уже имели опыт работы под данным стеком. Также стоит отметить, что в рамках данной мы не рассматриваем саму пользу View Model и её гипотетическое применение (предполагается, что читатель уже знаком с данными вещами), обсуждаем непосредственно реализацию.

Задача

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

Читать дальше →
ASP.NET Razor: решение некоторых проблем с архитектурой для модели представления
Source: geektimes

Реверсим «Нейроманта». Часть 3: Добили рендеринг, делаем игру

Привет, это уже третья часть из серии моих публикаций, посвящённых обратной разработке «Нейроманта» — видеоигрового воплощения одноимённого романа Уильяма Гибсона.

Реверсим «Нейроманта». Часть 1: Спрайты
Реверсим «Нейроманта». Часть 2: Рендерим шрифт

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

Читать дальше →
Реверсим «Нейроманта». Часть 3: Добили рендеринг, делаем игру
Source: geektimes

[Перевод] Двигатели для новой программы DARPA успешно проходят тесты


Прожиг AR-22 на тестовом стенде в Космическом Центре имени Джона Стенниса, 2 июля, шестой запуск за день в тестовой серии. Источник: Aerojet Rocketdyne

WASHINGTON — Ежедневные испытания как способ доказать пригодность двигателя, оставшегося от «Шаттлов», для программы нового челнока.

Двигатель AR-22 фирмы Aerojet Rocketdyne «пересёк экватор» — ко второму июля в Космическом Центре имени Джона Стенниса, Миссисипи, отчитались о 6 прожигах из 10, по 100 секунд каждый, и рассчитывают успешно завершить десятидневную программу согласно графику.
Читать дальше →
[Перевод] Двигатели для новой программы DARPA успешно проходят тесты
Source: geektimes

Гид по владению аккаунтами и контрактами в Ethereum

Материал, который мы решили сегодня опубликовать, родился уже около 6 месяцев назад и до сих пор не потерял своей актуальности (может быть, пришлось его чуть-чуть освежить). Тогда мы еще были способны удивляться, глядя на бизнесменов и стартаперов, намеревающихся проводить ICO, но при этом не способных сделать транзакцию с переводом одной эфирки. Сегодня мы уже перестали удивляться, но таких персонажей не стало сильно меньше.

Вообще, понимание важности безопасного хранения своих секретных ключей и умение это делать — основа децентрализованной экономики, которая, как мы надеемся, скоро существенно потеснит классическую централизованную модель. Нужно чётко понимать, что как только вы передаете управление своим секретным ключом кому-либо — например банку, бирже, государству — так сразу магия децентрализации пропадает и можно спокойно менять блокчейн на Postgres без особой потери смысла. Короче говоря, в этой статье мы и расскажем об азах безопасного хранения приватных ключей на примере блокчейна Ethereum.

Если для вас эта статья не несет ничего нового — супер, мы очень рады, что вы в нашем «клубе». И, кстати, теперь у вас есть куда отправлять всех криптонеофитов, чтобы они случайно не потеряли по глупости все свои эфирки.

Читать дальше →
Гид по владению аккаунтами и контрактами в Ethereum
Source: geektimes

Китай и Россия обсуждают совместный проект орбитальной космической станции

На днях стало известно о том, что представители космической программы Китая собираются обсудить с «Роскосмосом» возможность создания совместной орбитальной станции. Об этом сообщают «РИА Новости».

«Визит делегации в Москву планируется в конце этой недели. С китайскими коллегами будет обсуждаться вопрос сотрудничества в области пилотируемых программ», — заявил источник из российской ракетно-космической отрасли, пожелавший остаться неизвестным. Китай заинтересован в совместном сотрудничестве потому, что у России есть огромный опыт длительных космических полетов и строительства достаточно крупных космических объектов.
Читать дальше →
Китай и Россия обсуждают совместный проект орбитальной космической станции
Source: geektimes

Новый стандарт 802.11ах (High Efficiency WLAN), что же в нем нового и когда его ждать?

Рабочая група начала работу над стандартом еще в 2014 году и сейчас идет работа над draft3.0. Что несколько отличается от предыдущих поколений стандартов 802.11, ведь там вся работа укладывалась в два драфта. Происходит это по причине достаточно большого и комлексного числа запланированных изменений, которые соответственно требуют более детального и сложного тестирования совместимости. Изначально перед группой стояла задача улучшения эффективности использования спектра для повышения пропускной способности WLAN с высокой плотностью абонентских станций и точек доступа. Основными драйверами для развития стандарта были: увеличения количества мобильных абонентов, live-трансляции в соц.сетях (упор на upload траффик) и конечно же IoT.

Cхематически нововведения выглядят следующим образом:

image

Читать дальше →
Новый стандарт 802.11ах (High Efficiency WLAN), что же в нем нового и когда его ждать?
Source: geektimes

Возвращение советской межпланетной станции. Предварительный прогноз

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

Кто заинтересовался. Прошу под кат.
Читать дальше →
Возвращение советской межпланетной станции. Предварительный прогноз
Source: geektimes

Справочная: IMEI и белые списки Россвязи

Сегодня четверг, а значит — время очередной «Справочной». Давайте проясним ситуацию с IMEI. И не столько с самим идентификатором, сколько с вопросом создания базы «белых IMEI» в России. Информация о намерении чиновников все же создать такую базу появилась не так давно, и этот вопрос вызывает определенные опасения у многих из нас.
Читать дальше →
Справочная: IMEI и белые списки Россвязи
Source: geektimes

[Перевод] Как использовать HDF5-файлы в Python

Всем привет!

Приближается запуск курса «Web-разработчик на Python», соответственно, мы всё так же делимся интересными статьями и приглашаем на наши открытые уроки, где можно посмотреть интересный материал, познакомиться с преподавателями и позадавать им вопросы.

Поехали!

HDF5 позволяет эффективно хранить большие объемы данных

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

Формат HDF5 поддерживает файлы любого размера, и каждый файл имеет внутреннюю структуру, которая позволяет вам искать определенный набор данных. Это можно представить как отдельный файл со своей собственной иерархической структурой, так же как набор папок и подпапок. По умолчанию данные хранятся в двоичном формате, и библиотека совместима с разными типами данных. Одним из наиболее важных вариантов формата HDF5 является то, что он позволяет прикреплять метаданные к каждому элементу структуры, что делает его идеальным для создания автономных файлов.

Читать дальше →
[Перевод] Как использовать HDF5-файлы в Python
Source: geektimes

GitHub превращается… превращается GitHub… в элегантный Windows 95

В Твиттере какое-то время назад запостили шутку в честь приобретения Майкрософтом ГитХаба — страницу сайта, перестилизованную в стиле Windows 98. Я решил, что шутка слишком хороша, чтобы оставаться шуткой.

Давайте перекрасим GitHub!
GitHub превращается… превращается GitHub… в элегантный Windows 95
Source: geektimes