Иногда полезно встраивать версию приложения или метаданные непосредственно в сборку. Это можно сделать с помощью флагов в
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
🔥7👍2
Фича-флаги позволяют запускать функциональность по частям, тестировать на реальных пользователях и быстро отключать при проблемах — без перекомпиляции и деплоя.
Разбираемся в карточках: от простой переменной до кастомных фильтров и best practices в продакшене.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13👾2❤1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁79🔥5👍3💯2
Сидите у монитора по 10–12 часов, втыкаете в Visual Studio, гоняете сборки.
И тут коллега с серьёзным лицом заявляет:
Без очков с фильтром синего ты себе глаза посадишь!
Но правда ли это — или просто маркетинг, нацеленный на программистов, особенно тех, кто пишет на C# и ценит комфорт?
👓 Аргументы за очки с фильтром синего света:
• Производители обещают защиту от «синих пиков» LED-экранов.
• Есть мнение, что блокировка синего света вечером помогает выработке мелатонина.
• Некоторым пользователям помогают при чувствительности к свету.
• Модный аксессуар. Особенно с антирефлексом и аккуратной оправой — +10 к внешности на митапах.
🧠 Аргументы против:
• Реальная проблема это плохая эргономика, поза и освещение.
• Лучше настроить яркость, использовать dark mode и 20-20-20 правило.
• Фильтрация синего искажает цвета. Особенно критично, если работаешь с графикой или UI.
• Хорошие очки стоят как лицензионный ReSharper.
💬 А вы носите очки? Не обязательно с фильтрами, может просто с диоптриями. Делитесь в комментариях 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤2
📰 Итоги недели
Краткий взгляд на то, что происходило в мире.
— План выпуска 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
👍4
Forwarded from Библиотека задач по C# | тесты, код, задания
Какое из следующих утверждений верно относительно ключевого слова «sealed» в C#?
👾 — Предотвращает наследование
👍 — Допускает множественное наследование
🥰 — Применяется только к методам
⚡️ — Ни одно из вышеперечисленных
Библиотека задач по C#
👾 — Предотвращает наследование
👍 — Допускает множественное наследование
🥰 — Применяется только к методам
⚡️ — Ни одно из вышеперечисленных
Библиотека задач по C#
👾227🥱25🌚1
Разработчик 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
👍4
Проблема: стандартные массивы для очереди могут привести к необходимости дорогостоящих операций сдвига элементов при удалении.
Решение: в книге 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
😁9👍7🥱1
🤯 Почему на собеседованиях в топовые компании проваливаются даже опытные разработчики
Проблема большинства программистов: вы отлично пишете код, знаете фреймворки и можете разобраться в любом проекте. Но когда интервьюер просит найти кратчайший путь в графе или отсортировать массив за 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
😁3🥱3👍2
API — ключевой элемент взаимодействия между приложениями, но при этом часто становится уязвимым звеном в системе безопасности.
Что необходимо для надежной защиты API:
1. Аутентификация и контроль доступа
Эффективные механизмы проверки пользователей и управление правами доступа — фундамент для предотвращения несанкционированного доступа.
Современные решения, такие как OAuth 2.0 и JWT, позволяют точно определить пользователя и ограничить его возможности, снижая риски взлома.
2. Применение HTTPS
Шифрование трафика с помощью HTTPS обеспечивает конфиденциальность данных при передаче, защищая их от перехвата и подмены.
Эти два пункта — основа минимальной защиты API. В статье рассмотрели остальные аспекты, которые помогут сделать разработку безопасной и предотвратить финансовые потери из-за уязвимостей.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Подготовили для вас промпт, который поможет мигрировать кодовую базу с использования SOAP на современные REST эндпоинты.
Промпт:
You are a highly skilled .NET Developer, specializing in API migrations and modernization. You possess a deep understanding of both SOAP and REST architectures, and you are adept at translating existing SOAP functionalities into efficient and well-documented RESTful APIs. Your goal is to analyze provided SOAP code, identify key functionalities, and propose a robust and maintainable REST API implementation.
Here is the SOAP code you need to analyze and migrate: [Вставить код сюда]
💬 Сталкивались с SOAP в своей работе или пришли в эпоху REST?
Please open Telegram to view this post
VIEW IN TELEGRAM
😁15❤2👍1
😱 Вся правда об увольнениях в IT в 2025-м
Пока все молчат о том, что происходит на рынке, мы решили выяснить реальную картину. Без прикрас и корпоративного пиара.
Но для этого нам нужна ваша помощь! Мы собираем данные от разработчиков, тестировщиков, менеджеров и всех, кто работает в ИТ, чтобы создать честное исследование о:
— реальных причинах массовых увольнений
— судьбе тех, кто остался за бортом IT-рынка
— том, сколько времени сейчас нужно на поиск работы
Почему это важно? Потому что сила в правде. Зная реальную ситуацию, вы сможете лучше понимать тренды рынка и планировать карьеру.
⚡️Пройдите опрос и помогите всему сообществу: https://clc.to/yJ5krg
Пока все молчат о том, что происходит на рынке, мы решили выяснить реальную картину. Без прикрас и корпоративного пиара.
Но для этого нам нужна ваша помощь! Мы собираем данные от разработчиков, тестировщиков, менеджеров и всех, кто работает в ИТ, чтобы создать честное исследование о:
— реальных причинах массовых увольнений
— судьбе тех, кто остался за бортом IT-рынка
— том, сколько времени сейчас нужно на поиск работы
Почему это важно? Потому что сила в правде. Зная реальную ситуацию, вы сможете лучше понимать тренды рынка и планировать карьеру.
⚡️Пройдите опрос и помогите всему сообществу: https://clc.to/yJ5krg
👍5❤3👏1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁43🥰3🔥1
🛠 Обходимся без полноценного проекта
В последнем обновлении .NET 10 Preview 4 появилась новая удобная функция — возможность запускать одиночные C#-файлы напрямую, без необходимости создавать полноценный проект.
Теперь достаточно иметь только файл с кодом, например app.cs, и выполнить команду:
.NET SDK автоматически обработает файл и запустит программу
• Используйте #:package для подключения NuGet-пакетов, #:sdk для выбора SDK, и #:property для настройки параметров сборки.
• В начале файла можно добавить
• Если скрипт разрастается, его можно быстро преобразовать в полноценный проект с помощью команды:
Эта фича делает C# более гибким и современным языком, способным конкурировать с популярными скриптовыми решениями.
🐸 Библиотека шарписта #буст
В последнем обновлении .NET 10 Preview 4 появилась новая удобная функция — возможность запускать одиночные C#-файлы напрямую, без необходимости создавать полноценный проект.
Теперь достаточно иметь только файл с кодом, например app.cs, и выполнить команду:
dotnet run app.cs
.NET SDK автоматически обработает файл и запустит программу
• Используйте #:package для подключения NuGet-пакетов, #:sdk для выбора SDK, и #:property для настройки параметров сборки.
• В начале файла можно добавить
#!/usr/bin/dotnet run
, чтобы запускать скрипт как исполняемый файл в linux.• Если скрипт разрастается, его можно быстро преобразовать в полноценный проект с помощью команды:
dotnet project convert app.cs
Эта фича делает C# более гибким и современным языком, способным конкурировать с популярными скриптовыми решениями.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥60👍3