Иногда полезно встраивать версию приложения или метаданные непосредственно в сборку. Это можно сделать с помощью флагов в
dotnet build
:dotnet build /p:Version=1.0.0 /p:CommitHash=$(git rev-parse --short HEAD)
/p:Version=1.0.0
: встраивает версию в сборку.
/p:CommitHash=$(git rev-parse --short HEAD)
: встраивает хэш текущего коммита в сборку, полученный с помощью Git.Вы можете использовать эти переменные в коде для отображения версии и метаданных в финальном приложении.
Please open Telegram to view this post
VIEW IN TELEGRAM
Фича-флаги позволяют запускать функциональность по частям, тестировать на реальных пользователях и быстро отключать при проблемах — без перекомпиляции и деплоя.
Разбираемся в карточках: от простой переменной до кастомных фильтров и best practices в продакшене.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
📰 Итоги недели
Краткий взгляд на то, что происходило в мире.
— План выпуска Critter Stack
Jeremy Miller анонсировал выпуск обновлений для Critter Stack, включая Marten 8.0, Weasel 8.0 и Wolverine 4.0, запланированный на 1 июня 2025 года.
— PowerShell AI Shell Preview
Выпущена версия Preview 4 AI Shell для PowerShell, включающая улучшения для macOS, поддержку аутентификации через Microsoft Entra ID и расширенные возможности командной строки.
— AI и Vector Data Extensions для .NET теперь доступны
Microsoft анонсировала общедоступный статус для расширений AI и Vector Data в .NET. Эти библиотеки предоставляют общие абстракции и утилиты для работы с ИИ-моделями и векторными хранилищами.
— Microsoft запускает Agent Store
Agent Store — новый централизованный магазин агентов в рамках Microsoft Copilot. Платформа позволяет пользователям просматривать, устанавливать и тестировать агентов, разработанных Microsoft, партнерами и клиентами.
— Microsoft обновили .NET Aspire до версии 9.3
🐸 Библиотека шарписта #свежак
Краткий взгляд на то, что происходило в мире.
— План выпуска Critter Stack
Jeremy Miller анонсировал выпуск обновлений для Critter Stack, включая Marten 8.0, Weasel 8.0 и Wolverine 4.0, запланированный на 1 июня 2025 года.
— PowerShell AI Shell Preview
Выпущена версия Preview 4 AI Shell для PowerShell, включающая улучшения для macOS, поддержку аутентификации через Microsoft Entra ID и расширенные возможности командной строки.
— AI и Vector Data Extensions для .NET теперь доступны
Microsoft анонсировала общедоступный статус для расширений AI и Vector Data в .NET. Эти библиотеки предоставляют общие абстракции и утилиты для работы с ИИ-моделями и векторными хранилищами.
— Microsoft запускает Agent Store
Agent Store — новый централизованный магазин агентов в рамках Microsoft Copilot. Платформа позволяет пользователям просматривать, устанавливать и тестировать агентов, разработанных Microsoft, партнерами и клиентами.
— Microsoft обновили .NET Aspire до версии 9.3
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Библиотека задач по C# | тесты, код, задания
Какое из следующих утверждений верно относительно ключевого слова «sealed» в C#?
👾 — Предотвращает наследование
👍 — Допускает множественное наследование
🥰 — Применяется только к методам
⚡️ — Ни одно из вышеперечисленных
Библиотека задач по C#
👾 — Предотвращает наследование
👍 — Допускает множественное наследование
🥰 — Применяется только к методам
⚡️ — Ни одно из вышеперечисленных
Библиотека задач по C#
Разработчик C# — Гибрид (Москва)
Fullstack Developer (С#/JavaScript) — до 310 000 ₽, Гибрид (Москва)
Разработчик С# / .NET Core — до 350 000 ₽, Удалёнка
Ведущий разработчик C# — от 585 000 ₽, Удалёнка
Разработчик C# .NET — Удалёнка
Fullstack Developer — до 250 000 ₽, Удалёнка
Разработчик .Net Core — от 270 000 ₽, Удалёнка
Бустер — Удалённо (в любом городе мира).
Please open Telegram to view this post
VIEW IN TELEGRAM
Собрали для вас мероприятия для нетворкинга, обмена опытом и не только.
2 июня в Москве пройдёт юбилейная KnowledgeConf — крупнейшая российская конференция о корпоративной памяти, внутреннем обучении и обмене знаниями в IT.
С 20 по 22 июня в эко-парке «Русский берег» (Ульяновская область) состоится пятая антиконференция Summer Merge — событие для IT-специалистов, уставших от офисной рутины.
Вместо традиционных докладов — мастер-классы по soft skills, эмоциональному интеллекту, управлению командами и борьбе с выгоранием.
Мероприятие для тимлидов, руководителей команд и технических менеджеров, стремящихся развивать лидерские навыки и обмениваться опытом управления командами. Пройдёт 26-27 июня в Санкт-Петербурге.
Please open Telegram to view this post
VIEW IN TELEGRAM
Проблема: стандартные массивы для очереди могут привести к необходимости дорогостоящих операций сдвига элементов при удалении.
Решение: в книге Algorithms and Data Structures for OOP With C# автор предлагает реализовать очередь на основе связного списка, что позволяет эффективно добавлять элементы в конец и удалять с начала за O(1).
Пример кода:
public class Node<T>
{
public T Data;
public Node<T> Next;
public Node(T data)
{
Data = data;
Next = null;
}
}
public class QueueLinkedList<T>
{
private Node<T> front, rear;
public QueueLinkedList()
{
front = rear = null;
}
public void Enqueue(T item)
{
var newNode = new Node<T>(item);
if (rear == null)
{
front = rear = newNode;
return;
}
rear.Next = newNode;
rear = newNode;
}
public T Dequeue()
{
if (front == null)
throw new InvalidOperationException("Queue is empty.");
var data = front.Data;
front = front.Next;
if (front == null)
rear = null;
return data;
}
}
Преимущества:
— Нет затрат на сдвиг элементов
— Высокая производительность при операциях добавления и удаления
— Универсальная реализация для любых типов данных
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯 Почему на собеседованиях в топовые компании проваливаются даже опытные разработчики
Проблема большинства программистов: вы отлично пишете код, знаете фреймворки и можете разобраться в любом проекте. Но когда интервьюер просит найти кратчайший путь в графе или отсортировать массив за O(n log n) — ступор.
Чтобы не теряться на базовых вопросах, приходите на курс «Алгоритмы и структуры данных».
Тем более, что мы дарим на него промокод PROGLIBAI на 10 000 ₽ в честь запуска другого курса — «AI-агенты для DS-специалистов».
🧐 Что будет на курсе по алгоритмам:
— Изучение производительности алгоритмов и O-нотации
— Числовые алгоритмы: от алгоритма Эвклида до решета Эратосфена
— Работа с массивами: от линейного поиска до оптимизации операций вставки/удаления
— Бинарный поиск и его применение в реальных задачах
— Практические задачи на каждую тему + обратная связь от преподавателей
После курса вы перестанете бояться алгоритмических секций на собеседованиях и сможете претендовать на позиции в топовых компаниях.
👉 Успейте использовать промокод до 1 июня: https://clc.to/590e_g
Проблема большинства программистов: вы отлично пишете код, знаете фреймворки и можете разобраться в любом проекте. Но когда интервьюер просит найти кратчайший путь в графе или отсортировать массив за O(n log n) — ступор.
Чтобы не теряться на базовых вопросах, приходите на курс «Алгоритмы и структуры данных».
Тем более, что мы дарим на него промокод PROGLIBAI на 10 000 ₽ в честь запуска другого курса — «AI-агенты для DS-специалистов».
🧐 Что будет на курсе по алгоритмам:
— Изучение производительности алгоритмов и O-нотации
— Числовые алгоритмы: от алгоритма Эвклида до решета Эратосфена
— Работа с массивами: от линейного поиска до оптимизации операций вставки/удаления
— Бинарный поиск и его применение в реальных задачах
— Практические задачи на каждую тему + обратная связь от преподавателей
После курса вы перестанете бояться алгоритмических секций на собеседованиях и сможете претендовать на позиции в топовых компаниях.
👉 Успейте использовать промокод до 1 июня: https://clc.to/590e_g
API — ключевой элемент взаимодействия между приложениями, но при этом часто становится уязвимым звеном в системе безопасности.
Что необходимо для надежной защиты API:
1. Аутентификация и контроль доступа
Эффективные механизмы проверки пользователей и управление правами доступа — фундамент для предотвращения несанкционированного доступа.
Современные решения, такие как OAuth 2.0 и JWT, позволяют точно определить пользователя и ограничить его возможности, снижая риски взлома.
2. Применение HTTPS
Шифрование трафика с помощью HTTPS обеспечивает конфиденциальность данных при передаче, защищая их от перехвата и подмены.
Эти два пункта — основа минимальной защиты API. В статье рассмотрели остальные аспекты, которые помогут сделать разработку безопасной и предотвратить финансовые потери из-за уязвимостей.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😱 Вся правда об увольнениях в IT в 2025-м
Пока все молчат о том, что происходит на рынке, мы решили выяснить реальную картину. Без прикрас и корпоративного пиара.
Но для этого нам нужна ваша помощь! Мы собираем данные от разработчиков, тестировщиков, менеджеров и всех, кто работает в ИТ, чтобы создать честное исследование о:
— реальных причинах массовых увольнений
— судьбе тех, кто остался за бортом IT-рынка
— том, сколько времени сейчас нужно на поиск работы
Почему это важно? Потому что сила в правде. Зная реальную ситуацию, вы сможете лучше понимать тренды рынка и планировать карьеру.
⚡️Пройдите опрос и помогите всему сообществу: https://clc.to/yJ5krg
Пока все молчат о том, что происходит на рынке, мы решили выяснить реальную картину. Без прикрас и корпоративного пиара.
Но для этого нам нужна ваша помощь! Мы собираем данные от разработчиков, тестировщиков, менеджеров и всех, кто работает в ИТ, чтобы создать честное исследование о:
— реальных причинах массовых увольнений
— судьбе тех, кто остался за бортом IT-рынка
— том, сколько времени сейчас нужно на поиск работы
Почему это важно? Потому что сила в правде. Зная реальную ситуацию, вы сможете лучше понимать тренды рынка и планировать карьеру.
⚡️Пройдите опрос и помогите всему сообществу: https://clc.to/yJ5krg
Please open Telegram to view this post
VIEW IN TELEGRAM