Одна из самых подробных и полезных шпаргалок для Backend-разработчиков на русском языке.
Всё, что нужно, собрано в одном месте: как устроен интернет, как работают ПК, базы данных, API, тестирование и куча всего ещё
Весь материал преисполнен разными таблицами и картинками для лучшего усвоения, вся информация подаётся кратко и понятно, а если захотите изучить детальнее — везде есть ссылки на источники.
👉 @KodBlog
Всё, что нужно, собрано в одном месте: как устроен интернет, как работают ПК, базы данных, API, тестирование и куча всего ещё
Весь материал преисполнен разными таблицами и картинками для лучшего усвоения, вся информация подаётся кратко и понятно, а если захотите изучить детальнее — везде есть ссылки на источники.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🤩4🔥2😁1
C# фича, которую многие не знали
Ты всё ещё пишешь foreach так?🤔
❌ Это медленно!
☑ Делай так:
🟡
🟡
Итог: код чище, работает быстрее!
👉 @KodBlog
Ты всё ещё пишешь foreach так?
foreach (var num in numbers) Console.WriteLine(num);
foreach (ref var num in numbers.AsSpan()) Console.WriteLine(num);
AsSpan() = убирает накладные расходы IEnumerable<T>ref var = избегает копирования элементов Итог: код чище, работает быстрее!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥38👍16🤯10🤨9❤1
SurrealDB — это хайповая база данных нового поколения, которая обещает объединить лучшие черты SQL и NoSQL в одном флаконе.
Если раньше для сложных запросов и распределённых хранилищ приходилось мучиться с разными технологиями, то SurrealDB предлагает удобный и гибкий подход:
🟡 Поддержка графовых связей (как у Neo4j)
🟡 SQL-подобный язык запросов (но проще и мощнее)
🟡 Хранение данных в JSON (как у MongoDB)
🟡 WebSocket API для real-time взаимодействия
🟡 Масштабируемость и горизонтальное шардирование
Всё это работает без сложной настройки, а разрабатывать можно прямо из браузера!👍
👉 @KodBlog
Если раньше для сложных запросов и распределённых хранилищ приходилось мучиться с разными технологиями, то SurrealDB предлагает удобный и гибкий подход:
Всё это работает без сложной настройки, а разрабатывать можно прямо из браузера!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤3👏3
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6🔥3👍1
Пора подружиться с — ILSpy
Если просто, то ILSpy — это «👍
Когда у тебя есть .dll или .exe, но нет исходников, ILSpy их просто берёт и показывает, как будто код у тебя в Visual Studio.
Раньше, если нужно было понять, как работает библиотека без документации, приходилось либо шаманить, либо надеяться на доброту разработчиков. Теперь просто загружаешь сборку в ILSpy — и наслаждаешься реверс-инжинирингом.
Может:
🟡 Расшифровывать C#-код из сборки,
🟡 Показывать структуру классов и методов,
🟡 Декомпилировать обфусцированные (запутанные) сборки,
🟡 Экспортировать проекты обратно в .cs-файлы.
👉 @KodBlog | #ресурсы
Если просто, то ILSpy — это «
CTRL+Z» для скомпилированных .NET-приложений. Когда у тебя есть .dll или .exe, но нет исходников, ILSpy их просто берёт и показывает, как будто код у тебя в Visual Studio.
Раньше, если нужно было понять, как работает библиотека без документации, приходилось либо шаманить, либо надеяться на доброту разработчиков. Теперь просто загружаешь сборку в ILSpy — и наслаждаешься реверс-инжинирингом.
Может:
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍8
Media is too big
VIEW IN TELEGRAM
Что такое делегаты в С#? Как их можно использовать в Unity?
Видео рассказывает о делегатах в C#, начиная с примера их использования, затем объясняет, что такое delegate, зачем нужно ключевое слово event, и разбирает три стандартных типа делегатов:
🍩 Action (для методов без возвращаемого значения)
🍩 Predicate (для методов, возвращающих bool)
🍩 Func (для методов с возвращаемым значением).
📲 Cмотреть источник: тут
👉 @KodBlog | #видео
Видео рассказывает о делегатах в C#, начиная с примера их использования, затем объясняет, что такое delegate, зачем нужно ключевое слово event, и разбирает три стандартных типа делегатов:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🍌4⚡2❤1
Использование
С появлением C# 9 был введен более элегантный способ проверки на null с помощью паттерн-матчинга.
👉 @KodBlog
is null для проверки на null вместо == null в выражениях типа is в C# 9+С появлением C# 9 был введен более элегантный способ проверки на null с помощью паттерн-матчинга.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25❤6👍4
Топ-5 стратегий кеширования:
⏩ Чтение через кеш (Read Through): Данные загружаются в кеш при промахе, причем кеш обрабатывает чтение из базы данных.
— Лучший вариант для: приложений с высокой нагрузкой на чтение, таких как CDN, ленты соцсетей и пользовательские профили.
⏩ Кеш в стороне (Cache Aside, Lazy Loading): Приложение сначала проверяет кеш, а при отсутствии данных извлекает их из базы и сохраняет в кеш.
— Лучший вариант для: систем с высоким соотношением чтения к записи, например, интернет-магазины.
⏩ Запись через кеш (Write Through): Запись происходит одновременно и в кеш, и в базу данных, что гарантирует консистентность данных.
— Лучший вариант для: систем, критичных к целостности данных, таких как финансовые приложения.
⏩ Запись в обход кеша (Write Around): Данные записываются напрямую в базу данных, минуя кеш. Кеш обновляется при следующем чтении.
— Лучший вариант для: систем с высокой нагрузкой на запись, где данные не нужны немедленно, например, журналы логирования.
⏩ Запись с обратной синхронизацией (Write Back): Данные сначала записываются в кеш, а затем асинхронно в базу данных, что снижает задержки при записи.
— Лучший вариант для: систем с высокой нагрузкой на запись, таких как ленты соцсетей.
👉 @KodBlog
— Лучший вариант для: приложений с высокой нагрузкой на чтение, таких как CDN, ленты соцсетей и пользовательские профили.
— Лучший вариант для: систем с высоким соотношением чтения к записи, например, интернет-магазины.
— Лучший вариант для: систем, критичных к целостности данных, таких как финансовые приложения.
— Лучший вариант для: систем с высокой нагрузкой на запись, где данные не нужны немедленно, например, журналы логирования.
— Лучший вариант для: систем с высокой нагрузкой на запись, таких как ленты соцсетей.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥2❤1
Media is too big
VIEW IN TELEGRAM
Создайте трекер расходов с помощью Asp.Net Core MVC
Рассматриваются создание контроллеров, настройка пользовательского интерфейса (форма дизайна, заголовок страницы, хлебные крошки), работа с приборной панелью, визуализация данных с помощью сплайн-диаграммы и добавление интерактивных элементов, таких как виджет недавних транзакций и боковое меню.
📲 Cмотреть источник: тут
👉 @KodBlog | #видео
Рассматриваются создание контроллеров, настройка пользовательского интерфейса (форма дизайна, заголовок страницы, хлебные крошки), работа с приборной панелью, визуализация данных с помощью сплайн-диаграммы и добавление интерактивных элементов, таких как виджет недавних транзакций и боковое меню.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥3❤1⚡1
Легкий pub/sub для .NET — Marille
Если нужно управлять множеством каналов и организовать pub/sub (публикации и подписки) внутри .NET-приложения — Marille отлично подойдет😏
☑ Простое управление темами и подтемами сообщений
☑ Основано на
☑ Высокая производительность и минимальные накладные расходы
☑ Поддержка .NET Core и .NET 6+
Использовали Marille в проектах?
👉 @KodBlog
Если нужно управлять множеством каналов и организовать pub/sub (публикации и подписки) внутри .NET-приложения — Marille отлично подойдет
System.Threading.ChannelsИспользовали Marille в проектах?
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2
FluentValidation делает валидацию ввода проще простого.
Знаете ли вы, что валидаторы поддерживают внедрение зависимостей (DI)?
Вы можете внедрять объекты настроек, сконфигурированные через DI, и использовать их в валидаторах.
Посмотрите фрагмент кода на фото в качестве примера.
Милан использует
⏩ Подробно можно посмотреть здесь: ссылка
👉 @KodBlog
Знаете ли вы, что валидаторы поддерживают внедрение зависимостей (DI)?
Вы можете внедрять объекты настроек, сконфигурированные через DI, и использовать их в валидаторах.
Посмотрите фрагмент кода на фото в качестве примера.
Милан использует
FluentValidation вместе с MediatR для реализации универсального конвейера валидации (middleware).Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤3⚡1