From dependency injection to dependency rejection (https://www.youtube.com/watch?v=xG5qP5AWQws) – доклад для практиков от Марка Семанна (Mark Seeman, автор значимой книги "Dependency Injection in .NET"), про переход к отказу от зависимостей, вместо их изощренного внедрения и тестирования заглушек, на примере функциональных языков программирования F# и Haskell. Презентацию можно найти здесь: http://2017.dotnext-moscow.ru/2017/msk/talks/20wwzs2qeuuykg86cc6ams/ .
#csharp #fsharp #haskell #dev #designpatterns #softwaredesign #dotnet
#csharp #fsharp #haskell #dev #designpatterns #softwaredesign #dotnet
YouTube
Mark Seemann — From dependency injection to dependency rejection
Подробнее о конференции DotNext: https://jrg.su/3WmFRE
— —
In object-oriented design, dependency injection is a well-known design pattern, although it's a complicated solution to the problem of decoupling. Functional programming offers a simpler way. This…
— —
In object-oriented design, dependency injection is a well-known design pattern, although it's a complicated solution to the problem of decoupling. Functional programming offers a simpler way. This…
Документация по Xamarin доступна на сайте Microsoft – https://docs.microsoft.com/en-us/xamarin/, и она прекрасна! Также, любой желающий может внести свой вклад в эту документацию прямо на GitHub – https://github.com/MicrosoftDocs/xamarin-docs .
#dotnet #xamarin #dev
#dotnet #xamarin #dev
Docs
Xamarin documentation - Xamarin
Xamarin lets you build native apps for Android, iOS, and macOS using .NET code and platform-specific user interfaces. Xamarin.Forms allows you to build native apps, with shared UI code written in C# or XAML.
F# language and tools update for Visual Studio 2017 version 15.6 (https://blogs.msdn.microsoft.com/dotnet/2018/03/06/f-language-and-tools-update-for-visual-studio-2017-version-15-6/) – в F# теперь tuple и System.Tuple на 100% синонимы, а F# Core Library получила ряд обновлений от контрибуторов на GitHub. Кроме этого, продолжает улучшаться поддержка F# в Visual Studio, особенно для .NET Core SDK проектов.
#dotnet #fsharp #dev #visualstudio #programming
#dotnet #fsharp #dev #visualstudio #programming
Microsoft
F# language and tools update for Visual Studio 2017 version 15.6
A first-hand look from the .NET engineering teams
Custom directory enumeration in .NET Core 2.1 (https://blogs.msdn.microsoft.com/jeremykuhne/2018/03/09/custom-directory-enumeration-in-net-core-2-1/) — хотите своё перечисление директорий с хитрой логикой (подсчёт размеров скрытых файлов, редактированных в каждое пятое полнолуние в году), которое работает быстро? Попробуйте .NET Core 2.1 и его возможности расширения! Новый API по-максимуму использует Span, что позволяет существенно сократить выделения памяти.
#dotnet #dotnetcore #dev
#dotnet #dotnetcore #dev
Service Fabric is going open source (https://blogs.msdn.microsoft.com/azureservicefabric/2018/03/14/service-fabric-is-going-open-source/) — процесс разработки Service Fabric переезжает на GitHub под лицензией MIT, уже можно начать изучать внутренности https://github.com/Microsoft/service-fabric/ (другие части в других репозиториях).
#dev #dotnet #servicefabric #azure #linux #dotnetcore #github #opensource
#dev #dotnet #servicefabric #azure #linux #dotnetcore #github #opensource
GitHub
GitHub - microsoft/service-fabric: Service Fabric is a distributed systems platform for packaging, deploying, and managing stateless…
Service Fabric is a distributed systems platform for packaging, deploying, and managing stateless and stateful distributed applications and containers at large scale. - GitHub - microsoft/service-f...
Visual Studio 2017 версии 15.7 preview 1 (https://blogs.msdn.microsoft.com/visualstudio/2018/03/13/visual-studio-2017-version-15-7-preview-1/) — рекомендованная версия для .NET Core 2.1 (тоже пока preview). Теперь, часть окон отладчика асинхронные и не блокируют саму Visual Studio (наконец-то!); step-back debugging стал доступен для .NET Core; доступна возможность генерации Windows Machine Learning обёрток для ONNX файлов в UWP проектах.
Для мобильных разработчиков улучшен менеджер Android SDK: теперь при открытии проекта, для которого нет подходящего SDK, будет предложено скачать и установить нужную версию.
Для разработчиков под iOS теперь вместо запроса сертификата генерации ключей подписи, добавления устройства в Developer Center, и создания provisioning profile есть одна кнопка, которая это всё делает меньше чем за 30 секунд!
#dev #ide #visualstudio #dotnet #debug #ios #android #dotnetcore #machinelearning
Для мобильных разработчиков улучшен менеджер Android SDK: теперь при открытии проекта, для которого нет подходящего SDK, будет предложено скачать и установить нужную версию.
Для разработчиков под iOS теперь вместо запроса сертификата генерации ключей подписи, добавления устройства в Developer Center, и создания provisioning profile есть одна кнопка, которая это всё делает меньше чем за 30 секунд!
#dev #ide #visualstudio #dotnet #debug #ios #android #dotnetcore #machinelearning
Microsoft
Visual Studio 2017 Version 15.7 Preview 1
The official source of product insight from the Visual Studio Engineering Team
Fun with global tools in .NET Core 2.1 Preview (https://surfingthecode.com/fun-with-global-tools-in-.net-core-2.1-preview/) — если вы ждали "глобальных" утилит как в npm, то в .NET Core теперь завезли такое. Например, можно установить EF как приложения ОС. Автор рассказывает как сделать свой глобальный пакет.
#dotnet #dotnetcore #nuget #tool
#dotnet #dotnetcore #nuget #tool
Surfing the code
Fun with global tools in .NET Core 2.1 Preview
.NET Core 2.1 Preview 1 is available Several preview releases related to .NET Core 2.1 have been recently announced, including ASP.NET Core 2.1 Preview 1, EF Core 2.1 Preview 1, and an updated .NET …
The case of the not so ConcurrentDictionary (https://blogs.msdn.microsoft.com/remis_world/2018/03/16/the-case-of-the-not-so-concurrentdictionary/) — небольшая детективная история о том, что некоторые стандартные вещи не всегда ведут себя ожидаемым образом.
P.S. Убийца — дворецкий.
#dev #dotnet #concurrency #multithreading #hashcode #delegate
P.S. Убийца — дворецкий.
#dev #dotnet #concurrency #multithreading #hashcode #delegate
Друзья, до нашей любимой конференции DotNext (https://dotnext-piter.ru/) осталось совсем не много. И если кто-то ещё раздумывает над возможностью стать мудрее, мы приготовили для вас полезный промокод, дающий скидку на билетик со счастьем: DotNetCommPromo
DotNext 2021 Piter. Конференция для .NET-разработчиков. 20-23 апреля, онлайн.
.NET-конференция. 20-23 апреля, онлайн. 4 дня и несколько десятков технических докладов.
Игровой движок Unity доступен для изучения на GitHub (https://habrahabr.ru/post/351978/) — теперь код C#-части движка и редактора Unity доступен для изучения: https://github.com/Unity-Technologies/UnityCsReference .
#dev #gamedev #dotnet #opensource #unity3d #unity
#dev #gamedev #dotnet #opensource #unity3d #unity
Хабр
Unity выложила исходный C#-код на Github
Возрадуйтесь все, кому хоть раз в силу жизненной необходимости приходилось декомпилировать .NET-код Unity! Теперь код C#-части движка и редактора Unity доступе...
The Metrix has you… (https://habrahabr.ru/company/jugru/blog/352624/) — давайте разберем, каким образом можно наблюдать за работой продукта и его боевым окружением, как собирать жизненно необходимые метрики и представлять их в удобоваримом виде, что такое Time Series и как они могут помочь нашим и сторонним приложениям в процессе диагностики.
#dotnet #devops #monitoring #highload #InfluxDB #Grafana
#dotnet #devops #monitoring #highload #InfluxDB #Grafana
habrahabr.ru
The Metrix has you…
Для многих разработчиков процесс релиза их продукта похож на выбрасывание слепого котёнка в пасти диких псов. После этого главная задача авторов — отбиваться от...
Nullable types arithmetic and null-coalescing operator precedence (https://blogs.msdn.microsoft.com/seteplia/2018/03/30/nullable-types-arithmetic-and-null-coalescing-operator-precedence/) — ещё раз о приоритетах операторов, особенно null-coalescing, на примере сравнения производительности двух разных методов GetHashCode.
#dev #dotnet #performance #csharp
#dev #dotnet #performance #csharp
Андрей Акиньшин побывал в гостях у SDCast'а (https://sdcast.ksdaemon.ru/2018/03/sdcast-75/) — рассказал много всего про Rider и повседневную работу, BenchmarkDotNet и развитие проекта, DotNext и про выступления в целом. Получилось довольно разнообразно и познавательно, приятного прослушивания.
#podcast #rider #benchmarkdotNet #dotnext #dotnet #sdcast
#podcast #rider #benchmarkdotNet #dotnext #dotnet #sdcast
SDCast
SDCast #75: в гостях Андрей Акиньшин, разработчик среды разработки Rider в компании JetBrains, к.ф.-м.н., Microsoft .NET MVP, серебрянный…
Рад представить вам 75-й выпуск SDCast’а! У меня в гостях Андрей Акиньшин, разработчик среды разработки Rider в компании JetBrains, к.ф.-м.н., Microsoft .NET MVP, серебрянный медалист ACM ICPC. Также Андрей является автором и мейнтейнером .NET библиотеки…
DevDay: Точки над .NET (https://www.youtube.com/watch?v=HXSJQ6d4AE8) — недавно прошла встреча DevDay, где рассказали:
1) DSL и C# — вечной теме о применении DSL, с примерами, как легко начать использовать его в своих проектах.
2) Авторизация — как написать авторизацию, когда не хочется писать авторизацию.
#dotnet #devday #dsl #authorization #dev #programming
1) DSL и C# — вечной теме о применении DSL, с примерами, как легко начать использовать его в своих проектах.
2) Авторизация — как написать авторизацию, когда не хочется писать авторизацию.
#dotnet #devday #dsl #authorization #dev #programming
YouTube
DevDay: Точки над .NET
Решили расставить все точки над .NET и сфокусироваться на практических вещах. Обсудим, как запилить ленивую и, что немаловажно, отлично функционирующую авторизацию за 15 строчек кода.
Аутентификацией не ограничимся, успеем углубиться в возможности Domain…
Аутентификацией не ограничимся, успеем углубиться в возможности Domain…
I often see folks asking whether #dotnetcore & #aspnetcore are "ready for production" (https://twitter.com/DamianEdwards/status/982103139586228225) — пока одни сидят на старом добром .NET Framework, другие уже перешли на .NET Core и делятся своими историями успеха на страничке: https://www.microsoft.com/net/customers .
#dev #dotnet #dotnetcore #aspnetcore
#dev #dotnet #dotnetcore #aspnetcore
Twitter
Damian Edwards
I often see folks asking whether #dotnetcore & #aspnetcore are "ready for production". It seems many don't know about this page, detailing the successes of customers using it today: https://t.co/nt1jrbimlL Maybe yours is there next?
Explore CosmosDB with .NET Core and MongoDB (https://blogs.msdn.microsoft.com/dotnet/2018/04/09/explore-cosmosdb-with-net-core-and-mongodb/) — пример использования NoSQL решений для упрощения кода без потери производительности.
#dev #dotnet #dotnetcore #cosmosdb #mongodb #nosql #azure
#dev #dotnet #dotnetcore #cosmosdb #mongodb #nosql #azure
Microsoft
Explore Azure Cosmos DB with .NET Core and MongoDB
A first-hand look from the .NET engineering teams
Performance Improvements in .NET Core 2.1
(https://blogs.msdn.microsoft.com/dotnet/2018/04/18/performance-improvements-in-net-core-2-1/) — .NET Core 2.1 стал еще быстрее, Stephen Toub написал большую статью про сделанные улучшения для: EqualityComparerInt32, EnumHasFlag, LoopBodyLayout, BoxingAllocations, ThreadStatics, TimerContention, SerialCancellationTokenRegistration, ParallelCancellationTokenRegistration, AsyncMethodAwaitInvocation, StringEquals, StringToLowerChangesNeeded, StringFormat, Int32Parsing, BigIntegerFormatting, ConvertFromBase64String и многое-многое другое.
#dev #dotnet #dotnetcore #performance
(https://blogs.msdn.microsoft.com/dotnet/2018/04/18/performance-improvements-in-net-core-2-1/) — .NET Core 2.1 стал еще быстрее, Stephen Toub написал большую статью про сделанные улучшения для: EqualityComparerInt32, EnumHasFlag, LoopBodyLayout, BoxingAllocations, ThreadStatics, TimerContention, SerialCancellationTokenRegistration, ParallelCancellationTokenRegistration, AsyncMethodAwaitInvocation, StringEquals, StringToLowerChangesNeeded, StringFormat, Int32Parsing, BigIntegerFormatting, ConvertFromBase64String и многое-многое другое.
#dev #dotnet #dotnetcore #performance
Microsoft
Performance Improvements in .NET Core 2.1
A first-hand look from the .NET engineering teams
ORM-less Data Access in .NET Core (https://www.blinkingcaret.com/2018/04/25/orm-less-data-access-in-net-core/) — учимся работать с БД из .NET Core без громоздких ORM, ведь зачастую достаточно лишь ADO.NET или легковесного Dapper.
#dotnet #dotnetcore #orm #database #backend
#dotnet #dotnetcore #orm #database #backend
The Blinking Caret
ORM-less Data Access in .Net Core - The Blinking Caret
With the ubiquity of ORMs it seems people don't even question their use. Although there are many situations where using an ORM is appropriate no one seems to even ask: Should I use an ORM or not? This blog post shows you how not using one looks like in .Net…
DotNet-Script (ScriptCS) now available as .NET Core SDK 2.1 global tool
(https://www.strathweb.com/2018/04/dotnet-noscript-now-available-as-net-core-sdk-2-1-global-tool/) — ставим .NET Core SDK (версии не ниже 2.1.300-preview1), выполняем dotnet install tool -g dotnet-noscript, после чего можем запускать .csx файлы откуда угодно.
#dev #dotnet #csharpnoscripting #csx #csharp #dotnetcore #noscriptcs #csharp #tool #dotnetnoscript
(https://www.strathweb.com/2018/04/dotnet-noscript-now-available-as-net-core-sdk-2-1-global-tool/) — ставим .NET Core SDK (версии не ниже 2.1.300-preview1), выполняем dotnet install tool -g dotnet-noscript, после чего можем запускать .csx файлы откуда угодно.
#dev #dotnet #csharpnoscripting #csx #csharp #dotnetcore #noscriptcs #csharp #tool #dotnetnoscript
HttpClientFactory Consumption Patterns
(https://github.com/aspnet/HttpClientFactory/wiki/Consumption-Patterns) — описание примеров использования HttpClientFactory, плюс как бонус идет пример интеграции с Refit и добавление кэширования.
#dev #dotnet #dotnetcore #aspnetcore #http
(https://github.com/aspnet/HttpClientFactory/wiki/Consumption-Patterns) — описание примеров использования HttpClientFactory, плюс как бонус идет пример интеграции с Refit и добавление кэширования.
#dev #dotnet #dotnetcore #aspnetcore #http
GitHub
aspnet/HttpClientFactory
HttpClientFactory - Contains an opinionated factory for creating HttpClient instances.
Performance traps of ref locals and ref returns in C# (https://blogs.msdn.microsoft.com/seteplia/2018/04/11/performance-traps-of-ref-locals-and-ref-returns-in-c/) – разбираемся с ref locals и ref returns, как их правильно использовать чтобы раскрыть всю мощь.
#dev #dotnet #ref #performance #csharp7 #csharp
#dev #dotnet #ref #performance #csharp7 #csharp
Developer Support
Performance traps of ref locals and ref returns in C# | Developer Support
The C# language from the very first version supported passing arguments by value or by reference. But before C# 7 the C# compiler supported only one way of returning a value from a method (or a property) – returning by value.