Профессор Си
رفتن به کانال در Telegram
Уроки, советы, новости C#. @anothertechrock @aldrson
نمایش بیشتر2 750
مشترکین
-124 ساعت
-97 روز
-2530 روز
آرشیو پست ها
2 750
В чем разница между интерфейсом и абстрактным классом в .NET?
Ответ:
Интерфейс просто объявляет поведение, которым должны обладать реализующие классы. Он объявляет только свойства, методы и события без модификаторов доступа. Все объявленные члены должны быть реализованы.
Абстрактный класс предоставляет частичную реализацию функциональности и некоторые абстрактные/виртуальные члены, которые должны быть реализованы сущностями, которые наследуют класс. Он также объявляет поля.
Интерфейс и абстрактный класс не могут быть инстанцированы.
#questions
2 750
Если вы ищете удалённую работу, то лучше это делать на talanto.work.
Удалённая вакансия не всегда означает, что работать можно из любой страны.
Одна компания нанимает только из России. Другая только из Европы. Третья готова рассматривать кандидатов со всего мира.
На talanto.work можно отдельно выбрать регион удалёнки, локацию компании, зарплату, грейд и стек.
Так ты сразу увидишь вакансии из нужного региона и куда действительно можешь устроиться.
Не трать время на поиск работы не из твоего гео.
2 750
Ищешь работу C#-разработчиком?
В канале C# вакансии публикуются актуальные предложения для программистов на C#.
Здесь ты найдёшь:
1. Свежие вакансии для C#-разработчиков
2. Предложения для специалистов по .NET
3. Вакансии в Unity и геймдеве
Не трать время на долгий поиск - подходящая вакансия может появиться уже сегодня.
Подписывайся на C# вакансии
2 750
👨💻 Когда if начинает распухать
Паттерн стратегия подходит, когда один и тот же сценарий можно выполнить несколькими способами, и выбор зависит от условий. Вместо большого
switch внутри сервиса разные варианты выносятся в отдельные классы с общим интерфейсом, а контекст просто делегирует работу выбранной реализации.
Типовая схема такая. Есть интерфейс Strategy, есть несколько конкретных стратегий, и есть контекст, который держит ссылку на стратегию и вызывает ее метод, не зная деталей реализации. Это снижает связность и позволяет добавлять новые варианты без переписывания старого кода.
Мини пример на C#:
public interface IDiscountStrategy
{
decimal Apply(decimal total);
}
public sealed class RegularDiscount : IDiscountStrategy
{
public decimal Apply(decimal total) => total;
}
public sealed class VipDiscount : IDiscountStrategy
{
public decimal Apply(decimal total) => total * 0.9m;
}
public sealed class Checkout
{
private readonly IDiscountStrategy _discount;
public Checkout(IDiscountStrategy discount) => _discount = discount;
public decimal TotalWithDiscount(decimal total) => _discount.Apply(total);
}
Если стратегия выбирается по условиям, условие должно выбирать объект, а не ветку кода:
var checkout = serviceProvider.GetRequiredService<Checkout>();
var total = checkout.TotalWithDiscount(100m);
Выбор стратегии лучше делать на границе приложения, например в фабрике или при конфигурации через DI, потому что прямое создание зависимостей внутри сервиса жестко привязывает код к конкретной реализации.
Профессор Си2 750
Методы, их перегрузка и расширения. Бесплатный урок специализации «C#-разработчик»
Методы — одна из базовых вещей в C#, без которой невозможно нормально писать, читать и поддерживать код. Но у начинающих разработчиков часто всё смешивается: где обычный метод, где перегрузка, как работает сигнатура, зачем нужны параметры по умолчанию и в каких случаях использовать params.
На открытом уроке 2 июля в 20:00 разберём, что такое метод в C#, как писать собственные методы и как использовать перегрузку без хаоса в коде. Поговорим о сигнатуре метода, параметрах по умолчанию, ключевом слове params и методах-расширениях. На примерах покажем, как эти механики помогают делать код понятнее, гибче и удобнее для повторного использования.
Урок не для тех, кто хочет просто «выучить синтаксис» без понимания, как методы влияют на структуру программы. Будет полезен начинающим разработчикам, которые хотят систематизировать базовые знания по C# и объектно-ориентированному программированию.
👉 Записаться: https://vk.cc/cZalzJ
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
2 750
Чем отличаются управляемый и неуправляемый код?
Ответ:
Управляемый код – это код, созданный компилятором .NET. Он не зависит от архитектуры целевой машины, поскольку выполняется CLR (Common Language Runtime), а не самой операционной системой. CLR и управляемый код предлагают разработчикам несколько преимуществ, таких как сборка мусора, проверка типов и обработка исключений.
С другой стороны, неуправляемый код напрямую компилируется в родной машинный код и зависит от архитектуры целевой машины. Он выполняется непосредственно операционной системой. В неуправляемом коде разработчик должен убедиться, что он вручную решает вопросы использования и выделения памяти (особенно из-за утечек памяти), безопасности типов и исключений.
В .NET компилятор Visual Basic и C# создает управляемый код. Чтобы получить неуправляемый код, приложение должно быть написано на C или C++.
#questions
2 750
Магия Lovable: как создавать готовые интерфейсы с помощью одного запроса.
Бесплатный урок курса «Вайб-кодинг: создание цифровых продуктов с ИИ»
Lovable может за минуты собрать экран, который выглядит как почти готовый интерфейс. Но результат зависит не от «магии нейросети», а от того, насколько точно вы ставите задачу. Один расплывчатый запрос даст случайный макет, а правильно собранный системный промпт — понятную структуру, единый стиль и экран, который уже можно показывать команде, заказчику или использовать для проверки идеи.
На открытом уроке 2 июля в 20:00 разберём, как формулировать задачи для Lovable, чтобы получать предсказуемый результат с первой попытки. Поговорим о структуре системного промпта, ключевых словах, которые помогают превратить текст в качественный интерфейс, и способах доработки результата через встроенный редактор и повторные запросы. Отдельно обсудим, как управлять компонентами, просить нейросеть переиспользовать элементы и сохранять единый визуальный стиль.
Урок не для тех, кто ждёт, что Lovable «сам всё поймёт», не готов уточнять задачу и хочет получать качественный интерфейс без структуры, контекста и итераций.
👉 Записаться: https://vk.cc/cZ1Wn4
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
2 750
👍 42% · Professional Web Developer (Python/JavaScript, 80%-100%, Remote within Switzerla
🏢 Adfinis
Mid · Remote · Remote, Switzerland
2 750
Repost from Уютное сообщество C# разработчиков
🔔Новые вакансии по C# за последние 7 дней
1️⃣ C# (.NET) Developer (Middle+ / Senior)
IndigoSoft
Middle/Senior · Remote · Москва · 💰 2 750 – 3 500 $
2️⃣ C#/.NET-разработчик
Paragon Software
Hybrid · Санкт-Петербург
3️⃣ C# разработчик
Клеверенс Софт
Office · Москва · 💰 70 000 – 150 000 RUR
4️⃣ C#/.NET-разработчик
МУЛЬТИФАКТОР
Hybrid · Москва
5️⃣ C# Backend Developer
Чиббис
Remote · Москва
6️⃣ Разработчик C#
PIX Robotics
Remote · Москва
7️⃣ Техлид C# Unity
Маналот Геймз
Lead · Remote · Москва
8️⃣ Senior C#/.Net разработчик
Клируэй Текнолоджис
Senior · Remote · Москва · 💰 220 000 – 350 000 RUR
9️⃣ Программист C# / MSSQL
ГрандТитул
Office · Химки
1️⃣0️⃣ C# .NET Framework WinForms
Биткрафт
Remote · Санкт-Петербург · 💰 200 000 – 250 000 RUR
1️⃣1️⃣ Ведущий C#-разработчик
Ozon
Remote · Москва
1️⃣2️⃣ Senior C# разработчик (.Net)
Лига Ставок
Senior · Remote · Москва
✈️ Talanto | #вакансии #csharp
2 750
Что такое делегаты в .NET?
Ответ:
Делегат в .NET похож на указатель функции в C или C++. Использование делегата позволяет программисту заключить ссылку на метод внутри объекта делегата. Затем объект делегата может быть передан в код, который может вызвать метод, на который ссылается ссылка, необязательно знать во время компиляции, какой метод будет вызван.
Кроме того, можно использовать делегат для создания пользовательских событий в классе. Например:
public delegate void FooDelegate();
class FooClass
{
// кастомное событие
public event FooDelegate FooEvent;
}
FooClass FooObj = new FooClass()
FooObj.FooEvent += new FooDelegate();
#questions2 750
C# 12 and .NET 8 – Modern Cross-Platform
Development Fundamentals
Автор: Mark J. Price
Дата выхода: 2023
#csharp #en #2O23
Скачать книгу
2 750
Repost from Talanto. Поиск работы в IT
+1
Составили для вас "План подготовки к собеседованию" на каждую из вакансий на нашем сайте talanto.work.
Теперь на каждую из 30.000 вакансий на нашем сайте есть "План подготовки под эту вакансию" в нём, вопросы и ответы на часто задаваемые вопросы на собеседовании, как от HR, так и технические вопросы. Например на python вакансию - часто задаваемые python вопросы.
3000+ вопросов и ответов по разным технологиям.
Как бы я искал работу на сайте?
1. Заполнил профиль на сайте
2. Открыл вакансию и увидел процент соответствия вашего профиля на эту вакансию
3. Прожарил бы свое резюме и исправил неточности и ошибки.
4. Изучил "План подготовки под эту вакансию"
5. Проработал и ответил на вопросы, которые могут задать HR и технический специалист.
6. Откликнулся на вакансию.
Все вопросы и планы лежат по ссылке: https://talanto.work/interview-prep.
Фичу выкатили только сегодня - если есть какие-то ошибки - пишите пожалуйста в комментариях.
2 750
🔔Новые вакансии по C#
1️⃣ C# Developer (Revit API / BIM Automation) ТОЛЬКО АСТАНА!
DAN and PARTNERS
Астана
2️⃣ C#/.NET Разработчик
Nexign
Санкт-Петербург
3️⃣QA Fullstack C# Engineer
Зонтик
Senior · Remote · РФ · 💰 до 350 000 ₽
4️⃣ Middle C# Developer
AIR ASTANA, АО
Middle · Алматы
5️⃣ Senior C# разработчик [Telco Platform]
МТС
Senior · Remote · Москва
6️⃣ Senior C# Developer
Veeam
Senior · Remote · Warsaw, Poland
7️⃣ QA Fullstack C#
Альфа-Банк
Hybrid
8️⃣ AQA на C# Middle+
Devquality
Senior · Remote · Москва, Россия · 💰 до 165 000 ₽
9️⃣ Junior Game Developer (C# / C++)
Nival
Junior · Hybrid · 💰 100 000 – 150 000 ₽
1️⃣0️⃣ Automation Test Engineer C# (KORM)
Kaspersky
Москва
✈️ Talanto | #вакансии #csharp
2 750
🔔Новые вакансии по C# за последние 7 дней
1️⃣ C# Developer (Revit API / BIM Automation) ТОЛЬКО АСТАНА!
DAN and PARTNERS
Астана
2️⃣ C#/.NET Разработчик
Nexign
Санкт-Петербург
3️⃣QA Fullstack C# Engineer
Зонтик
Senior · Remote · РФ · 💰 до 350 000 ₽
4️⃣ Middle C# Developer
AIR ASTANA, АО
Middle · Алматы
5️⃣ Senior C# разработчик [Telco Platform]
МТС
Senior · Remote · Москва
6️⃣ Senior C# Developer
Veeam
Senior · Remote · Warsaw, Poland
7️⃣ QA Fullstack C#
Альфа-Банк
Hybrid
8️⃣ AQA на C# Middle+
Devquality
Senior · Remote · Москва, Россия · 💰 до 165 000 ₽
9️⃣ Junior Game Developer (C# / C++)
Nival
Junior · Hybrid · 💰 100 000 – 150 000 ₽
1️⃣0️⃣ Automation Test Engineer C# (KORM)
Kaspersky
Москва
✈️ Talanto | #вакансии #csharp
2 750
Совет на 2026 год — переходите в ML.
Пока обычные разрабы конкурируют с ИИ-копилотами, ML-инженеры эти самые нейронки создают.
В эпоху нейростей это самые востребованые люди в мире программирования. Зарплаты мидлов начинаются от 250 000 ₽, а у сеньоров в BigTech доходят до 700 000 ₽.
А чтобы освоить его всего за 4 месяца без лишней суеты — изучите канал Артема Алехина.
Его бэкграунд: Руководитель команды в Сбере, валютная удаленка. К 22 годам вышел на доход 1 000 000+ ₽ в месяц.
На канале вы найдёте:
— Всё про самые востребованные стеки(Python, ИИ-агенты, NLP) и почему математика — это не страшно, если учить только нужное.
— Как оформить резюме, чтобы оно пролетало через любые LLM-фильтры и ATS-системы прямо к тимлидам.
— Скрипты переговоров, которые помогли его ученикам прыгнуть с 0 до 360к всего за 8 месяцев.
Во времена острой нехватки ML-разработчиков, это лучшее время, чтобы перекатиться. Переходи и изучай: https://t.me/+NmeKLJV36Co0MDVi
2 750
🥸 Шарписты в очках
Сидите у монитора по 10–12 часов, втыкаете в Visual Studio, гоняете сборки.
И тут коллега с серьёзным лицом заявляет:
Без очков с фильтром синего ты себе глаза посадишь!Но правда ли это — или просто маркетинг, нацеленный на программистов, особенно тех, кто пишет на C# и ценит комфорт? 👓 Аргументы за очки с фильтром синего света: • Производители обещают защиту от «синих пиков» LED-экранов. • Есть мнение, что блокировка синего света вечером помогает выработке мелатонина. • Некоторым пользователям помогают при чувствительности к свету. • Модный аксессуар. Особенно с антирефлексом и аккуратной оправой — +10 к внешности на митапах. 🧠 Аргументы против: • Реальная проблема это плохая эргономика, поза и освещение. • Лучше настроить яркость, использовать dark mode и 20-20-20 правило. • Фильтрация синего искажает цвета. Особенно критично, если работаешь с графикой или UI. • Хорошие очки стоят как лицензионный ReSharper. 💬 А вы носите очки? Не обязательно с фильтрами, может просто с диоптриями. Делитесь в комментариях 👇
2 750
C# 12 and .NET 8 – Modern Cross-Platform
Development Fundamentals
Автор: Mark J. Price
Дата выхода: 2023
#csharp #en #2O23
Скачать книгу
2 750
🔔Новые вакансии по C# за последние 14 дней
1️⃣ C# Developer
Hunter Bond
Hybrid · London, UK · 💰 от 8 333 £
2️⃣ C# Developer (gamedev)
Middle · Remote
3️⃣ C# Ontwikkelaar
Macee
Middle · Remote · Remote, Netherlands
4️⃣ Фулстек Разработчик c# (forex, crypto разработка программ для трейдинга)
Westernpips
Lead · Remote · 💰 150 000 – 180 000 ₽
5️⃣ Senior Техлид C#
Цифровые привычки
Senior · Remote · 💰 300 000 – 350 000 ₽
6️⃣ Cтарший Backend-разработчик
VK (MAX)
Remote · Москва
7️⃣ .NET C# Technical Lead
Jalasoft
Senior · Remote · Remote, Colombia
8️⃣ C# разработчик (WPF)
Антереал
Томск
9️⃣ Backend C# Junior+ Разработчик
ФинТех
Junior · Remote · 💰 100 000 – 150 000 ₽
1️⃣0️⃣ SDET C# (UIS)
Kaspersky
Москва
1️⃣1️⃣ Автотестировщик (C#)
ИТ-компания «Лоция»
Middle · Remote
1️⃣2️⃣ Senior C# Developer
Bell Integrator
Senior · Москва
✈️ Talanto | #вакансии #csharp
