TGViewer
Channel Public Channel
C# (C Sharp) programming

C# (C Sharp) programming

@csharp_ci

По всем вопросам- @notxxx1

Реестр РКН: https://clck.ru/3Fk3kb

#VRHSZ
Subscribers
18.1K
Photos
985
Videos
52
Links
789

Showing posts older than #633 · Back to latest

Older Posts 20 shown
Post #632 6.28K
🔥 100+ ресурсов для того, чтобы стать хорошим инженером-программистом.

Список полезных книг, гайдов, блогов и не тольео!

Темы - от разработки программного обеспечения, проектирования систем, инженерии данных, лидерства, управления командой и вплоть до гайдов по построению бизнеса.

▪ Github

@csharp_ci
Post #628 6.23K
🖥 Получите сертификат по C# в 2024 году.

Присоединяйтесь к #Csharp #CloudSkillsChallenge, чтобы пройти обучение по курируемому контенту #MicrosoftLearn, получить практический опыт и развить новые навыки.

Практикйтеь в C# и приблизьтесь к получению сертификата.

https://learn.microsoft.com/ru-ru/training/challenges?id=76615901-392c-413e-b7a2-0a015f52f44e&WT.mc_id=cloudskillschallenge_76615901-392c-413e-b7a2-0a015f52f44e

@csharp_ci
Post #626 5.39K
✅ Преодолевая барьеры: Путь Discord к масштабированию Midjourney до 15 миллионов участников

Когда популярность сервера Midjourney от Discord резко возросла, он натолкнулся на : ограничение в 1 миллион участников. Это история о том, как небольшая команда инженеров Discord превратила эту проблему в выдающееся достижение.

Задача: Представьте себе виртуальное пространство, настолько популярное, что оно трещит по швам. Будучи одним из самых быстрорастущих серверов Discord за всю историю, Midjourney столкнулся именно с таким сценарием, поскольку количество участников росло геометрически.

Discord платформавремени, работающая на Erlang/Elixir, затрещала по швам под огромным давлением. С каждым новым участником сложность и нагрузка росли в геометрической прогрессии.

Решения:

Чтобы свести к минимуму перегрузку, инженеры внедрили "пассивные" соединения, гарантирующие, что неактивные пользователи не будут создавать лишней нагрузки.

Переработка системы реле позволила более эффективно распределять работу за счет более избирательной обработки пользовательских данных.

Параллельная обработка: Используя ETS Erlang, команда разработчиков обеспечила параллельную обработку для таких тяжелых операций, как оповещение всех пользователей что значительно снизило нагрузку на систему.

ETS - инструмент для хранения объектов Elixir и Erlang в памяти. Он способен хранить огромные объемы данных и предоставляет доступ за фиксированное время.

Не все было гладко. Некоторые многообещающие идеи, такие как разгрузка Manifold, дали обратный эффект, увеличив нагрузку на сервера.

↪️ Читать подробнее

@csharp_ci
Post #622 6.69K
🖥 6 бесплатных курсов по SQL

1- SQL для анализа данных от Udacity
Продолжительность: Примерно 4 недели
Уровень навыков: Начинающий

Ссылка - https://shiksha.com/online-courses/sql-for-data-analysis-course-udacl3

2- Введение в SQL от Kaggle
Продолжительность: Приблизительно 3 часа
Уровень мастерства: Начинающий

Ссылка - https://kaggle.com/learn/intro-to-sql

3- Продвинутый SQL от Kaggle
Продолжительность: Приблизительно 4 часа
Уровень мастерства: Промежуточный

Ссылка - https://kaggle.com/learn/advanced-sql

4- Введение в базы данных и SQL-запросы от Udemy
Продолжительность: Приблизительно 2 часа 17 минут
Уровень мастерства: Начинающий

Ссылка - https://udemy.com/course/introduction-to-databases-and-sql-querying/

5- Intro to Relational Databases byUdacity
Продолжительность : 4 недели
Уровень квалификации: Средний ученик

Ссылка - https://udacity.com/course/intro-to-relational-databases-ud197

6- Введение в SQL (DataCamp)
Продолжительность: 4,5 часа
Уровень квалификации: Начинающий

Ссылка -
https://datacamp.com/courses/introduction-to-sql

@csharp_ci
Post #620 7.29K
🖥 LLamaSharp

Проект предоставляет API высокого уровня для вывода моделей LLaMA и развертывания их на локальном устройстве с помощью C#/.NET.

Проект работает под Windows, Linux и Mac без необходимости компилировать llama.cpp самостоятельно.

Отличный инструмент, чтобы развернуть ваш собственный ИИ на C#, подобный ChatGpt.

Даже если у вас нет мало памяти GPU, вы все равно можете использовать модели LLaMA! 🤗

▪Github

@csharp_ci
Post #619 7.26K
🔥 Дайджест полезных материалов из мира C# за неделю

Почитать:
— Изучаем C# в 2024 году
— Университет MIT: бесплатные онлайн-курсы для программистов и студентов.
— Включаем Nullable reference type в Unity за несколько минут
— Как Uber вычисляет расчетное время прибытия при полумиллионе запросов в секунду
— Метод быстрого марша (Fast Marching Method)
— Как на самом деле Async/Await работают в C#. Часть 2 Артефакты от EAP шаблона, SynchronizationContext
— Сто паттернов для разработки корпоративных программ. Часть первая
— GigaChat API для .NET Core
— Собираем автономную игру на C# в 2 килобайтах
— Чистая архитектура на примере
— Chain Of Responsibility Pattern In C# – Simplified How-To Guide
— Concurrent Collections in C#
— Game Dev Digest — Issue #218 - Patterns, Abstractions, Complete Tutorials and more
— How I Built a NuGet Package
— How to Edit and Convert PDF, PNG, JPEG, and TIFF Files in Blazor Apps
— Understanding the Fundamentals of Database Programming Languages
— Exploring Function Behavior in C#
— Demystifying OOP in C#: Your Guide to Building Robust and Flexible Applications
— Beginner's guide to Unit Testing with NUnit.
— Solid Principle : Liskov Substitution Principle

Посмотреть:
🌐 Introduction to Machine Learning in C#. Classification using ML.NET (⏱ 31:03)
🌐 Await Async Might Change Completely in .NET 9 (⏱ 09:55)
🌐 "Stop Using Singletons in .NET!" | Code Cop #009 (⏱ 13:52)

Хорошего дня!

@csharp_ci
Post #616 6.8K
#ПятничныйКвиз

В скобках операторы приведения. опретаоры +- унарные.
т.е. получается,
берем -2 кастуем к long
к -2 применяем унарный оператор + и кастуем к int получаем -2
к -2 применяем унарный оператор - получаем 2 и кастуем к char
к 2 применяем унарный оператор + получаем 2 и кастуем к byte


@csharp_ci
Post #615 6.38K
🖥 One Billion Row Challenge (1BRC) - это забавное исследование того, насколько далеко можно зайти на C# для агрегирования миллиарда строк из текстового файла.

Задействуйте все свои навыки создайте самую быструю реализацию для решения этой задачи!

📌 Реализация известного Java челенджа на .NET

🔎 Github
🔎Пример решения

@csharp_ci
Post #614 6.99K
Не стоит начинать новый проект с микросервисов, даже если вы уверены, что ваше приложение будет достаточно большим, чтобы это было целесообразно.

Основная причина этого - сложность систем на основе микросервисов.

За микросервисы приходится платить:

- Сложность координации работы команды
- Потосянная борьба с отказами
- Автоматизация развертывания
- Управление множеством сервисов


Но я хочу обратить ваше внимание на кое-что еще.

Есть способ объединить:

- физическую архитектуру монолитов
- логическую архитектуру микросервисов.

И получить преимущества обоих.

Это называется модульный монолит.

Модульный монолит — это подход к проектированию приложений, который позволяет, с одной стороны, отложить во времени операционную сложность использования микросервисов, а с другой — избежать превращения монолитной системы в большой комок грязи.

📌 Почитать про модульные монолиты

📌Дорожная карта разработчиков .NET/C# в 2024 году для начинающих

У вас когда-нибудь была возможность построить такую архитектуру ?

@csharp_ci
Post #613 6.6K
🖥 Как быстрее всего реализовать паттерн Декоратор?

Декоратор (англ. Decorator) — структурный шаблон проектирования, предназначенный для динамического подключения дополнительного поведения к объекту.

Паттерн декоратор предоставляет гибкую альтернативу практике создания подклассов с целью расширения функциональности.

Для его реализации вы можете использовать инъекции зависимостей ASP .NET Core.

📌 Вот полная реализация

@csharp_ci
Post #612 6.6K
🖥 Документация по .NET Aspire: Что нового.

В этой статье перечислены некоторые из основных актуальных изменений в документации.

📌 Читать

@csharp_ci
Post #611 7.1K
⚡️ В модульном монолите можно построить взаимодействие модулей двумя способами:

1) Вызовы методов (синхронные)
2) Обмен сообщениями (асинхронный)

Но какой из них выбрать?

📌 Читать статью

@csharp_ci
Post #610 7.74K
🖥 Serilog - баблиотека для реализации структурированного логирования в приложениях для .NET..

Вот примеры лучших практик при разработке приложений :

- Логирования запросов в Serilog
- Использование системы конфигов
- Добавление CorrelationId в логи
- Регистрация всех важных событий
- Использование Seq при разработки

🖥 Github

Если вы хотите узнать, как получить максимальную отдачу от Serilog, ознакомьтесь с этой статьей.

@csharp_ci
Post #609 7.99K
🖥 Хотите улучшить свои навыки работы с .NET и архитектурой программного обеспечения?

Вот 10 лучших статей еженедельника The .NET за этот год.

1. Архитектура вертикального среза - https://www.milanjovanovic.tech/blog/vertical-slice-architecture.

2. Использование нескольких EF Core DbContexts в одном приложении - https://www.milanjovanovic.tech/blog/using-multiple-ef-core-dbcontext-in-single-application

3. Правильный способ использования HttpClient в .NET - https://www.milanjovanovic.tech/blog/the-right-way-to-use-httpclient-in-dotnet

4. Как подойти к созданию чистой структуры папок в архитектуре - https://www.milanjovanovic.tech/blog/clean-architecture-folder-structure

5. От монолита к микросервисам -https://www.milanjovanovic.tech/blog/monolith-to-microservices-how-a-modular-monolith-helps

6. Реализация API-шлюза для микросервисов с помощью YARP - https://www.milanjovanovic.tech/blog/implementing-an-api-gateway-for-microservices-with-yarp

7. Health Checks In ASP .NET Core For Monitoring Your Applications - https://www.milanjovanovic.tech/blog/health-checks-in-asp-net-core

8. Запуск фоновых задач в ASP .NET Core - https://www.milanjovanovic.tech/blog/running-background-tasks-in-asp-net-core

9. Функциональная обработка ошибок в .NET с помощью шаблона результатов - https://www.milanjovanovic.tech/blog/functional-error-handling-in-dotnet-with-the-result-pattern

10. Паттерн CQRS с помощью MediatR - https://www.milanjovanovic.tech/blog/cqrs-pattern-with-mediatr

@csharp_ci
Post #607 6.27K
#ПятничныйКвиз
Post #606 6.97K
🖥 Рефа́кторинг (англ. refactoring), или перепроекти́рование кода, перерабо́тка кода, равноси́льное преобразова́ние алгоритмов — процесс изменения внутренней структуры программы, не затрагивающий её внешнего поведения и имеющий целью облегчить понимание её .

В основе рефакторинга лежит последовательность небольших эквивалентных (то есть сохраняющих поведение) преобразований. Поскольку каждое преобразование маленькое, программисту легче проследить за его правильностью, и в то же время вся последовательность может привести к существенной перестройке программы и улучшению её согласованности и чёткости.

Одно изменение (рефакторинг) мало что дает. Но последовательное применение различных техник рефакторинга приводит к значительным изменениям в коде.

Нет лучшего способа научиться рефакторингу, чем практика.

Представляем вам упражнения по рефакторингу и 5 потрясающих техник рефакторинга кода с примерами.

📌 Читать

@csharp_ci
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →