Founded in April 2017, NUKE is a free, open source build automation system for C#/.NET that runs cross-platform on .NET Core, .NET Framework, and Mono. While builds are bootstrapped with conventional Bash or PowerShell scripts, their actual implementation resides in simple C# console applications. This approach unleashes the power of the type system and natively provides IDE features like code completion, refactorings, and debugging. A custom global tool and several IDE extensions further improve how build projects are set up, authored and executed. The presentation will also focus on more recent additions to the framework, like advanced execution plans, enhanced IDE integration, flexible parameter resolution, and available build sharing options. Come to this talk if you want to learn how to write maintainable and reliable builds with NUKE, which are also understood by everyone in your team!
Задаём тренд — пишем на C# в браузере. Blazor is a client-side framework capable of running C# code that unlike its notorious far ancestor Silverlight doesn't suffer from plugin-itis and doesn't for…
Ошибки и проблемы использования многопоточности в .NET. Платформа .NET предоставляет множество готовых примитивов синхронизации и потокобезопасных коллекций. Если при разработке приложения нужно реа…
In 2018, Dylan Beattie created an esoteric programming language called Rockstar, designed for creating computer programs that are also rock song lyrics. The language was initially created as a joke..…
Новых фич C# 8 много, надо про все знать. Очередной релиз C# приносит достаточно много новых фич, которые хочется обсудить. Тут присутствуют как кардинальные изменения, которые затрагивают весь язык…
Каковы связи между обновлениями, работающими в режиме реального времени, инкрементными сборками, кэшированием, избыточностью микросервиса и, наконец, популярностью React? Александр покажет, как набор…
. Performance is at the heart of .NET, with an incredible amount of energy invested in every release towards making the stack faster and more scalable. In this talk, Stephen Toub will walk through ex…
Создание парсеров и лексических анализаторов — затратное по времени дело. Обычно к ним прибегают при необходимости реализации различного рода формальных грамматик, в том числе предметно-ориентированн…
Вы задумывались, как ReSharper анализирует ваш код? В докладе Андрей с практическими примерами расскажет о том, как писать кросс-процедурные анализы кода и почему это теперь необходимо для самых раз…
Всё ли известно про async/await? Мы уверены, что нет — Дмитрий расскажет все тонкости работы с ними. Появление async/await в C# привело к пересмотру того, как писать простой и корректный параллельны…
Developing cross-platform apps for Windows, iOS, macOS, Android, and WebAssembly can be a complex process, especially when it comes to the user interface. Each platform has its ways of defining dynam…
The SOLID principles. The five commandments of the software world. Forgotten for years, as developers focused on JavaScript frameworks with stupid names and complicated patterns. Not grasping that th…
В своем докладе автор расскажет историю миграции большого энтерпрайз-приложения с MS SQL на PostgreSQL, которое не останавливалось ни на минуту в ходе этого процесса. Естественно на этом непростом пу…
Нет ничего проще, чем отладить асинхронный код — когда про это рассказывают два профессионала WinDbg и других инструментов. Times have changed. Multi-core CPUs have become the norm and multi-threadi…
Given the new capabilities of .NET Core to run on Linux and ARM CPUs, creating an IoT application is straightforward. But don't stop at the blinking led because you would miss the most important desi…
Забудем ужасы C++/CLI и рассмотрим альтернативу. При всей простоте использования технологии P/Invoke, она, увы, пригодна лишь для использования библиотек, предоставляющих функции в C-стиле. Объектно…
Массовый переход от монолитов к микросервисам решает одни проблемы, но создаёт другие — взаимодействие сервисов существенно сложнее и дороже, чем взаимодействие объектов в памяти. Частично упростить …
Кто, если не автор Pro .NET Memory Management, расскажет, как писать собственный GC для .NET? As you may already know, starting with .NET Core 2.1 a new feature called Local GC has been added. It al…
Новый фреймворк, определяющий стандарт на ближайшие годы. A lot has happened in the past five years concerning .NET Core and ASP.NET Core development. With version 3.0 coming out, it's time to look …
Современные приложения состоят из множества подсистем: базы данных, кеши, брокеры сообщений. Для обработки одного запроса от пользователя сервер может выполнять десятки внутренних подзапросов. Вы ска…