.NET дайджест #20: як влаштована аутентифікація і авторизація в ASP.NET 2.0., нововведення в ASP.NET Core, огляд GraphQL vs REST
У випуску: статті про нутрощах managed об'єктів, дискусія щодо організації роботи з системами контролю версій, міні-гра, побудована на Polymer 3.0, книга для розуміння моделі акторів.
.NET
ASP.NET Core 2.0 Authentication and Authorization System Demystified
Загальне уявлення про те, як влаштована аутентифікація і авторизація в ASP.NET 2.0.
Zero Garbage Collector for .NET Core
Приклад реалізації GC, який не збирає сміття. Може бути корисно для невеликих утиліт, щоб вичавити максимум продуктивності.
ASP.NET Core 2.0 Features
Нововведення в ASP.NET Core, такі, як WebHost builder APIs, Configuration основний сервіс, зміни в HTTP.sys і особливо приємний, на мій погляд, IHostedServices інтерфейс, який дозволяє реєструвати додаткові background процеси перед стартом ASP.NET Core, як то підписки на черзі повідомлень, старт системи акторів, інші сервіси і все це використовуючи ті ж зареєстровані в контейнері сервіси. Джва роки чекав цієї фічі.
F# and .NET Core Roadmap Update
Runtime package store
Дозволяє вказати додатком, що на машині, на яку буде здійснюватися розгортання, встановлені деякі пакети, і вони не будуть включені при релізі, що може значитально зменшити кількість і розмір бібліотек, які потрібно копіювати при релізі.
The layout , Object header layout and the cost of locking , The layout of a managed array , Fields layout
Відмінна серія статей про нутрощах managed об'єктів.
Configuring ASPNET Core Apps with WebHostBuilder
У статті показані прості приклади, як сконфігурувати сервіси і логування перед запуском Startup класу.
Could not load file or assembly 'netfx.force.conflicts'
Неприємна проблема, з якою довелося зіткнутися при поетапної міграції проекту .NET Standard 2.0/.NET Core 2.0 та шляхи її вирішення.
Архітектура
Avoiding all DI antipatterns for types requiring asynchronous initialization
Актуальне питання про те, як конфігурувати об'єкти DI контейнерах, для яких потрібна асинхронна ініціалізація. Рекомендують робити ініціалізацію перед конфігурацією контейнера.
Reactive Mistakes: Distributed Transactions
Стаття, про негативний вплив розподілених транзакцій на продуктивність системи.
GraphQL vs REST: Overview
GraphQL і REST — це не конкуренти, а інструменти для різних завдань і можуть співіснувати.
Інструменти
Bogus
Генератор фейкових даних з змістовними значеннями.
Refit
Бібліотека для автоматичної генерації типізованих клієнтів для REST API.
Call and value tracking come to Rider
Зручний функціонал для відстеження, звідки могло прийти значення змінної або де викликається даний метод. Схоже, ця функція вже була в R#, але я її пропустив.
AutoFixture: Test name strategies for NUnit3
Реліз 3.51 вирішує проблему іменування тестів з динамічними параметрами для VS і NCrunch з допомогою атрибутів AutoDataFixedName і InlineAutoDataFixedName.
Respawn vs SQL Server Snapshots
Respawn готує стан БД перед тестом на порядки швидше, ніж відновлення з зліпка. Тим не менш, як каже автор, оптимальніше всього організовувати тести таким чином, щоб вони не залежали від стану таблиць. Це збільшить швидкість тестів і дозволить виконувати їх паралельно.
CI/CD
Цікава дискусія на рахунок організації роботи з системами контролю версій.
The Death of Continuous Integration
Про те, як правильно організувати процес CD.
UI
Polymer 3.0 preview: npm and Modules ES6
Polymer переїжджає на ES6 модулі, що дозволить набагато простіше використовувати компоненти в інших фреймворках.
Custom Elements Everywhere
Сайт, який показує наскільки добре Custom Elements підтримуються різними фреймворками.
Use TypeScript to Develop Vue.js Web Applications
Polymer 3.0 Preview — Building a mini card game
Міні-гра побудована на Polymer 3.0 з TypeScript, WebPack і винесеною в окремий файл розміткою для компонента.
Книги
Understand The Actor Model From The Ground Up (In < 1 Hour)
Досить цікава невелика безкоштовна книга для розуміння моделі акторів.
Відео
Події
Microsoft Connect(); November 15-17, 2017
Різне
How image recognition and AI recruit new employees
deploying Docker to Compose production
? Попередній випуск: .NET Дайджест #19
Опубліковано: 07/10/17 @ 07:00
Розділ Різне
Рекомендуємо:
Школа Партнеркина. Робимо сітку музичних порталів
QA дайджест #30: справжня історія терміна Bug, перезавантаження ПК під час тесту, навантажувальне тестування з Gatling з нуля
Кращий тестувальник року — про кар'єру, досягнення і про те, як стати професіоналом у QA
Вересень 2017 — вийшов на дохід 5000 руб з інфо-сайтів в міс
Фізик-ядерник — про адронному колайдері в Німеччині і ролі програмування в житті вченого