Кроссплатформенная библиотека WebWindow - пример применения web-технологий для создания кроссплатформенных десктопных приложений на .NET Core
- Статья с описанием в блоге
- WebWindow на nuget.org
- Статья с описанием в блоге
- WebWindow на nuget.org
Steve Sanderson's Blog
Meet WebWindow, a cross-platform webview library for .NET Core
Предположим, что у нас множество потоков пытаются выполнить запись в переменную, а поток отчета должен читать ее значение в синхронизированном режиме. В таком случае на помощь приходит метод Interlocked.CompareExchange, позволяющий сравнить два значения и если они равны - заменить на требуемое, при этом, он делает это атомарно и возвращает значение, которое было сохранено ранее в этом месте.
Официальная документация
Официальная документация
Docs
Interlocked.CompareExchange Метод (System.Threading)
Сравнивает два значения на равенство и, если они равны, заменяет первое.
Уязвимости в процессе десериализации в последнее время не теряют свою актуальность, в том числе в .Net приложениях. Важно знать всем, поэтому сегодня знакомимся с настоящим и будущим данной уязвимости с помощью доклада Михаила Щербакова и в конце видео разбираемся с best practices в разработке приложений для избежания ошибок использования сериализаторов, а также рассматриваем подходы снижения рисков эксплуатации таких уязвимостей.
https://youtu.be/xOuaGzFGPG8
https://youtu.be/xOuaGzFGPG8
YouTube
Михаил Щербаков «Уязвимости в процессе десериализации: прошлое, настоящее и будущее»
Уязвимости в процессе десериализации недоверенных данных известны более 10 лет, включены в OWASP Top 10 и за последние несколько лет наделали много шума в ин...
👍1
В эпоху микросервисов в любой момент может понадобиться создание собственных шаблонов приложений, служб, средств, библиотек классов, или использование уже доступных шаблонов. И .Net нам может в этом помочь: «dotnet new» и погнали 😎
- Список доступных шаблонов
- Мануал по созданию пользовательского шаблона
- Wiki по шаблонам
- Список доступных шаблонов
- Мануал по созданию пользовательского шаблона
- Wiki по шаблонам
GitHub
Available templates for dotnet new
This repo contains the Template Engine which is used by dotnet new - dotnet/templating
Что будет выведено на экран?
List<Action> actions = new List<Action>(); for(var count=0; count<10; count++) { actions.Add(() => Console.WriteLine(count)); } foreach(var action in actions) { action(); }
List<Action> actions = new List<Action>(); for(var count=0; count<10; count++) { actions.Add(() => Console.WriteLine(count)); } foreach(var action in actions) { action(); }
Anonymous Poll
34%
1) 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
43%
2) 10, 10, 10, 10, 10, 10, 10, 10, 10, 10
19%
3) Сгенерируется исключение
4%
4) 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
Правильный ответ 2. Связано это с тем, что в цикле for в переменную actions будет записано 10 действий WriteLine(count). После 10 итерации цикла for переменная count примет значение 10, а когда будем пробегаться по циклу foreach, мы будем вызывать подряд 10 методов Console.WriteLine(count) из списка actions, где count = 10.
Unity — это хороший выбор для новичков в геймдеве. Сделай шаг к карьере мечты! Участвуй в бесплатном онлайн-интенсиве от Skillbox.
Подробности по ссылке: 👉 https://clc.to/Bx4YOw
🚀 За три вечера ты создашь свою первую игру, даже если никогда не программировал.
⭐️ Сможешь обсудить ошибки с другими участниками интенсива и задать спикеру любые вопросы.
🎉 Авторы трёх лучших проектов выиграют грант на обучение в Skillbox.
Подробности по ссылке: 👉 https://clc.to/Bx4YOw
🚀 За три вечера ты создашь свою первую игру, даже если никогда не программировал.
⭐️ Сможешь обсудить ошибки с другими участниками интенсива и задать спикеру любые вопросы.
🎉 Авторы трёх лучших проектов выиграют грант на обучение в Skillbox.
Вы уже знакомы с GraphQL? Упрошаем себе жизнь в плане работы с GraphQL с помощью «Hot Chocolate» – GraphQL-сервер, включающий готовый набор компонентов для реализации GraphQL API, написанный на C# для .Net Core и .Net Framework.
Всю информацию вы найдете:
- на главном сайте: https://hotchocolate.io;
- в репозитории: https://github.com/ChilliCream/hotchocolate.
Всю информацию вы найдете:
- на главном сайте: https://hotchocolate.io;
- в репозитории: https://github.com/ChilliCream/hotchocolate.
Пусть вас не пугает объем, но здесь для вас чуть больше 200 слайдов про тестирование в общем и про мутационное тестирования в частности, а также как его применить в .NET Core.
Рекомендуемым паттерном для асинхронного программирование в .NET Framework является асинхронное программирование на основе задач (task-based asynchronous programming, TAP).
Практическую основу работы с данным паттерном вы увидите в статье.
Практическую основу работы с данным паттерном вы увидите в статье.
Dotnetcurry
Recommended Asynchronous Pattern in .NET | DotNetCurry
The recommended pattern for asynchronous programming in the .NET framework is the task-based asynchronous programming (TAP). This tutorial gives a brief info about this pattern.
Полезные статьи о сборке и тестировании приложения ASP.Net Core 3.0 с помощью GitHub Actions:
https://hjerpbakk.com/blog/2019/10/03/asp-net-core-and-github-actions
https://hjerpbakk.com/blog/2019/10/09/asp-net-core-docker-and-github-actions
https://hjerpbakk.com/blog/2019/10/03/asp-net-core-and-github-actions
https://hjerpbakk.com/blog/2019/10/09/asp-net-core-docker-and-github-actions
Runar Ovesen Hjerpbakk
Building and testing an ASP.Net Core 3.0 application using GitHub Actions
GitHub Actions is a modern and easy way to keep your entire product lifecycle wihtin GitHub. Still early days though.
Все используют исключения в своих проектах, но не все задумываются об эффективности их использования. В статье собраны некоторые лучшие практики по работе с исключениями в C#: https://blog.elmah.io/csharp-exception-handling-best-practices/
elmah.io Blog - .NET Technical tutorials/guides and new features
C# exception handling best practices
Five best practices that will make you an absolute pro when working with exceptions. Make sure not to make these common mistakes when writing C#.
Как вам такое?
Постоянно обновляемая карта знаний для .NET-разработчиков (от Trainee до Senior) с уклоном в веб-разработку, т.к. именно она не перестаёт набирать обороты.
Пользуйтесь данными материалами для самообучения, поиска пробелов в знаниях, подготовки к собеседованиям и ещё многого другого: https://youit.pro/map/dotnetweb
Постоянно обновляемая карта знаний для .NET-разработчиков (от Trainee до Senior) с уклоном в веб-разработку, т.к. именно она не перестаёт набирать обороты.
Пользуйтесь данными материалами для самообучения, поиска пробелов в знаниях, подготовки к собеседованиям и ещё многого другого: https://youit.pro/map/dotnetweb
«.NET сексуален и вам следует знать об этом!» – именно так называется краткая статья об основах разработки приложений и веб-сайтов с помощью платформы .NET Core и о том, что данная платформа ничем не уступает всяким там NodeJS И RubyRails. 😎
https://medium.com/clean-code-channel/net-is-sexy-1b4e40f9014
https://medium.com/clean-code-channel/net-is-sexy-1b4e40f9014
Medium
.NET сексуален и вам следует знать об этом!
Разрабатывать на C# и .Net Core легко и быстро.
Что же все-таки отличает ASP.NET Core от классического .NET? Конечно это такие основные вещи, как Inversion of Control (IoC), Dependency Injection (DI), Dependency Inversion Principle (DIP), Interseptors, Middleware, Filters. Собственно про них и пойдет речь в статье: https://medium.com/webbdev/asp-509ac1eb793
Medium
Корректный ASP.NET Core
Специально для любителей книг из серии “С++ за 24 часа” решил написать статью про ASP.NET Core.
Да, статья на английском. Да, 2017 года. Но тема ведь волнующая и одна из самых главных в нашей жизни!
C# – хороший выбор для карьеры или нет?
https://csharpdigest.net/blog/2017/05/18/csharp-good-career-choice-or-not.html
C# – хороший выбор для карьеры или нет?
https://csharpdigest.net/blog/2017/05/18/csharp-good-career-choice-or-not.html
C# Digest
C# — good career choice or not?
If you are just starting out or you are a seasoned developer with battle scars and years of experience under your belt you asked yourself this question at least once: is C# a good career choice?
#MoscowTravelHack
Такого ещё не было! Первый в России хакатон по созданию цифровых решений для туризма Moscow Travel Hack. Придумай новые продукты для путешественников и жителей города. Задачи на хакатон предложили 10 партнёров: «МегаФон», Facebook, PANORAMA 360, MTS Startup Hub, «Аэроэкспресс», Пушкинский музей, «Царицыно», Discover Moscow, «Город открытий» и Russpass.
В каждый трек пройдет по 5 команд. Среди призов — не только 100 000 рублей, но и возможность реализовать проект с партнёрами после хакатона. Придумывать решение заранее не обязательно! Подать заявку можно индивидуально или командой.
Успей до 28 января!
Подробности на сайте travelhack.moscow
Такого ещё не было! Первый в России хакатон по созданию цифровых решений для туризма Moscow Travel Hack. Придумай новые продукты для путешественников и жителей города. Задачи на хакатон предложили 10 партнёров: «МегаФон», Facebook, PANORAMA 360, MTS Startup Hub, «Аэроэкспресс», Пушкинский музей, «Царицыно», Discover Moscow, «Город открытий» и Russpass.
В каждый трек пройдет по 5 команд. Среди призов — не только 100 000 рублей, но и возможность реализовать проект с партнёрами после хакатона. Придумывать решение заранее не обязательно! Подать заявку можно индивидуально или командой.
Успей до 28 января!
Подробности на сайте travelhack.moscow
В данном видео автор доступно показывает как шаг за шагом интегрировать существующий ASP.NET Core API с Postgres и добавить открытый веб-протокол для запроса и обновления данных (Open Data Protocol, OData) поверх него в Azure: https://youtu.be/MoDJnEwkYOE
YouTube
Integrating ASP.NET Core API with Postgres & OData in Azure
In this video, I'm going to show you step by step in detail how you can integrate your existing ASP.NET Core API with Postgres and Add OData on top of it.
Source Code: https://github.com/hassanhabib/AspNetCoreWithPostgresAndOData
Postgres in Azure:
ht…
Source Code: https://github.com/hassanhabib/AspNetCoreWithPostgresAndOData
Postgres in Azure:
ht…
👍1
Отладка .Net приложения, как правило, осуществляется из среды разработки (VS / Rider / VSCode). Вы не задавались вопросом, существует ли способ отладки из терминала? Да, существует, но он крайне сложен. Для общего кругозора ознакомьтесь с ответом по ссылке: https://stackoverflow.com/questions/51107563/debug-a-dotnet-core-program-in-terminal/51108957
Stack Overflow
debug a dotnet core program in terminal
I’ve recently setup omnisharp with nvim and wanted to try to develope a dotnet core application without the help of VS/rider/vs code.
Now i tried to google around but couldn’t find any real way to...
Now i tried to google around but couldn’t find any real way to...
В каждом языке / платформе / фреймворке существуют малоизученные особенности, применение которых может серьезно повысить эффективность разработки. Язык C# и платформа .Net не являются исключением в данном случае, и сегодня мы ознакомимся с подборкой из 6 таких особенностей, которые вы можете применять в своих проектах: https://chrisstclair.co.uk/6-lesser-known-features-of-c-net-that-you-should-be-using/
chrisstclair.co.uk
6 lesser-known features of C# / .NET that you should be using
Introduction
This post is going to setup 6 features of the .NET Framework which I feel are under-utilised by a lot of developers - your opinion on whether they are under-utilised may differ from mine, but I hope some of you will find this post useful.…
This post is going to setup 6 features of the .NET Framework which I feel are under-utilised by a lot of developers - your opinion on whether they are under-utilised may differ from mine, but I hope some of you will find this post useful.…
👍1