ch
Feedback
ITmozg

ITmozg

前往频道在 Telegram

Программисты, дизайнеры, новости из мира IT. Официальный канал. (vk.com/itmozg, ITmozg.ru)

显示更多
2 672
订阅者
无数据24 小时
无数据7
+2830
吸引订阅者
六月 '26
六月 '26
+5
在1个频道中
五月 '26
+60
在0个频道中
Get PRO
四月 '26
+15
在0个频道中
Get PRO
三月 '26
+37
在0个频道中
Get PRO
二月 '26
+25
在0个频道中
Get PRO
一月 '26
+18
在0个频道中
Get PRO
十二月 '25
+24
在0个频道中
Get PRO
十一月 '25
+32
在32个频道中
Get PRO
十月 '25
+29
在1个频道中
Get PRO
九月 '25
+46
在37个频道中
Get PRO
八月 '25
+44
在1个频道中
Get PRO
七月 '25
+49
在27个频道中
Get PRO
六月 '25
+89
在21个频道中
Get PRO
五月 '25
+39
在45个频道中
Get PRO
四月 '25
+71
在38个频道中
Get PRO
三月 '25
+49
在39个频道中
Get PRO
二月 '25
+60
在32个频道中
Get PRO
一月 '25
+51
在34个频道中
Get PRO
十二月 '24
+54
在35个频道中
Get PRO
十一月 '24
+55
在33个频道中
Get PRO
十月 '24
+59
在30个频道中
Get PRO
九月 '24
+77
在29个频道中
Get PRO
八月 '24
+62
在18个频道中
Get PRO
七月 '24
+59
在1个频道中
Get PRO
六月 '24
+74
在24个频道中
Get PRO
五月 '24
+89
在19个频道中
Get PRO
四月 '24
+72
在0个频道中
Get PRO
三月 '24
+118
在23个频道中
Get PRO
二月 '24
+106
在19个频道中
Get PRO
一月 '24
+154
在24个频道中
Get PRO
十二月 '23
+157
在24个频道中
Get PRO
十一月 '23
+126
在17个频道中
Get PRO
十月 '23
+135
在18个频道中
Get PRO
九月 '23
+117
在0个频道中
Get PRO
八月 '23
+90
在0个频道中
Get PRO
七月 '23
+120
在0个频道中
Get PRO
六月 '23
+129
在0个频道中
Get PRO
五月 '23
+128
在0个频道中
Get PRO
四月 '23
+100
在0个频道中
Get PRO
三月 '23
+125
在0个频道中
Get PRO
二月 '23
+103
在0个频道中
Get PRO
一月 '23
+193
在0个频道中
Get PRO
十二月 '22
+245
在0个频道中
Get PRO
十一月 '22
+272
在0个频道中
Get PRO
十月 '22
+249
在0个频道中
Get PRO
九月 '22
+30
在0个频道中
Get PRO
八月 '22
+8
在0个频道中
Get PRO
七月 '22
+5
在0个频道中
Get PRO
六月 '22
+7
在0个频道中
Get PRO
五月 '22
+9
在0个频道中
Get PRO
四月 '22
+12
在0个频道中
Get PRO
三月 '22
+13
在0个频道中
Get PRO
二月 '22
+10
在0个频道中
Get PRO
一月 '22
+3
在0个频道中
Get PRO
十二月 '21
+8
在0个频道中
Get PRO
十一月 '21
+10
在0个频道中
Get PRO
十月 '21
+13
在0个频道中
Get PRO
九月 '21
+13
在0个频道中
Get PRO
八月 '21
+4
在0个频道中
Get PRO
七月 '21
+14
在0个频道中
Get PRO
六月 '21
+14
在0个频道中
Get PRO
五月 '21
+14
在0个频道中
Get PRO
四月 '21
+12
在0个频道中
Get PRO
三月 '21
+10
在0个频道中
Get PRO
二月 '21
+13
在0个频道中
Get PRO
一月 '21
+5
在0个频道中
Get PRO
十二月 '20
+983
在0个频道中
日期
订阅者增长
提及
频道
15 六月0
14 六月+1
13 六月+1
12 六月0
11 六月0
10 六月0
09 六月0
08 六月+2
07 六月0
06 六月0
05 六月0
04 六月+1
03 六月0
02 六月0
01 六月0
频道帖子
С++ фреймворк для описания пайплайнов распределенных вычислений Огромное количество С++ кода в Яндексе можно описать словами «распределенные вычисления». Доклад посвящен активно разрабатываемому сейчас С++ фреймворку, вдохновленному библиотеками std::ranges и Apache Beam. Этот фреймворк позволяет достаточно компактно и просто описывать такие процессы и запускать их в MapReduce-режиме для обработки таблиц данных или в real-time режиме для обработки бесконечных потоков (очередей) данных. Доклад не предполагает знакомства с какими-либо специфичными технологиями. Он будет полезен разработчикам и пользователям различных распределенных систем обработки данных и тем, кто интересуется этой темой. источник ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg

2
Claude Fable 5 ОТКЛЮЧИЛИ для всех Правительство США, ссылаясь на полномочия в сфере национальной безопасности, выпустило дире
Claude Fable 5 ОТКЛЮЧИЛИ для всех Правительство США, ссылаясь на полномочия в сфере национальной безопасности, выпустило директиву экспортного контроля, предписывающую приостановить любой доступ к Fable 5 и Mythos 5 для всех иностранных граждан — как находящихся в США, так и за их пределами, включая иностранных сотрудников Anthropic. Фактически это распоряжение означает, что мы должны срочно отключить Fable 5 и Mythos 5 для всех наших клиентов, чтобы обеспечить соблюдение требований. Доступ ко всем остальным моделям Claude не затронут. Приносим извинения нашим клиентам за это нарушение работы. Мы считаем, что произошла ошибка или недоразумение, и работаем над тем, чтобы восстановить доступ как можно скорее. ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
159
3
🖥 Пишем свою операционную систему с нуля. Серьезно. Многим кажется, что создание ОС это черная магия, доступная только избра
🖥 Пишем свою операционную систему с нуля. Серьезно. Многим кажется, что создание ОС это черная магия, доступная только избранным инженерам из Microsoft или создателям Linux. Но на самом деле, разобраться в том, как "железо" оживает после нажатия кнопки питания, может каждый разработчик. На GitHub лежит легендарный репозиторий os-tutorial, который буквально за руку проведет вас от пустого файла до работающего ядра. Это не теоретический учебник на 1000 страниц. Это набор последовательных шагов (от 01 до конца), где каждый новый урок наслаивается на предыдущий. Вы начинаете с того, что учите компьютер выводить "Hello World" без всякой ОС, и заканчиваете написанием простейшей файловой системы. Что вы изучите на практике: 🔴Boot sector: Как работает загрузочный сектор и почему в нем всего 512 байт. 🔴Assembly: Основы ассемблера x86 (без боли, только необходимое). 🔴Режимы процессора: Переход из 16-битного Real Mode в 32-битный Protected Mode. 🔴C Kernel: Как запустить C-код на "голом" железе. 🔴Драйверы: Написание простых драйверов для экрана и клавиатуры. 💡 Главная фишка: Автор объясняет почему мы делаем то или иное действие, а не просто дает код для копирования. Это идеальный способ понять, как работает компьютер "под капотом". Для старта не нужны глубокие знания, только Linux (или WSL), QEMU и желание разобраться. 🔗 Ссылка на репозиторий: https://github.com/cfenollosa/os-tutorial ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
181
4
Стив Джобс полная биография и история успеха Это видео представляет собой подробный биографический обзор, посвященный жизни и
Стив Джобс полная биография и история успеха Это видео представляет собой подробный биографический обзор, посвященный жизни и профессиональным достижениям Стива Джобса. В видео освещаются ключевые этапы его пути: от рождения в Сан-Франциско и воспитания в приемной семье до создания таких технологических гигантов, как Apple и Pixar. Особое внимание уделяется истории разработки революционных продуктов, включая Macintosh, iPod и iPhone, которые изменили индустрию персональной электроники. Так же мы расскажем про личную жизнь предпринимателя, его кратковременный уход из Apple в NeXT и триумфальное возвращение в компанию. Завершается обзор описанием его наследия, многочисленных наград и мирового признания после смерти в 2011 году. Это комплексное описание позволяет понять вклад Джобса в современную культуру и мировую экономику. 📺 Смотреть на youtube ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
204
5
Сборка C++ проектов. Оптимизации компилятора. Inline, constexpr, alignment. Game Engine серии 0:00:00 - Введение 0:02:26 - Ди
Сборка C++ проектов. Оптимизации компилятора. Inline, constexpr, alignment. Game Engine серии 0:00:00 - Введение 0:02:26 - Дизассемблер 0:09:31 - Общие оптимизации 0:20:46 - Inline 0:35:24 - Constexpr 0:45:28 - Compile-time raytracer 0:52:40 - Internal vs. external linkage 0:55:18 - Выравнивание структур 1:06:46 - Pragma optimize источник ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
180
6
Как выполняются SQL-запросы 👨‍💻 Порядок выполнения SQL-запроса определяет последовательность выполнения различных частей за
Как выполняются SQL-запросы 👨‍💻 Порядок выполнения SQL-запроса определяет последовательность выполнения различных частей запроса SQL. Этот порядок важен, потому что он определяет, как данные фильтруются, группируются и упорядочиваются. Вот упрощённое объяснение порядка выполнения SQL: 🔴FROM / JOIN - оператор FROM указывает таблицы, из которых будут извлечены данные. JOIN может использоваться для объединения данных из нескольких таблиц. 🔴WHERE - оператор WHERE используется для фильтрации данных по заданным условиям. 🔴GROUP BY - оператор GROUP BY группирует данные по одной или нескольким колонкам. 🔴HAVING - оператор HAVING фильтрует уже сгруппированные данные по условиям. 🔴SELECT - оператор SELECT определяет столбцы, которые будут возвращены в результат. 🔴DISTINCT - ключевое слово DISTINCT используется для возврата только уникальных строк. 🔴ORDER BY - оператор ORDER BY сортирует результаты по возрастанию или убыванию. 🔴LIMIT - оператор LIMIT ограничивает количество возвращаемых строк. ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
157
7
Теория «мёртвого интернета» всё меньше похожа на теорию. По данным Cloudflare Radar, впервые в истории на ботов приходится бо
Теория «мёртвого интернета» всё меньше похожа на теорию. По данным Cloudflare Radar, впервые в истории на ботов приходится больше половины мирового интернет-трафика — около 57%. Глава Cloudflare Мэтью Принс заявил, что это произошло раньше, чем он ожидал. По его прогнозам, такой сценарий должен был наступить только к 2027 году. Суть теории «мёртвого интернета» в том, что публичная сеть постепенно превращается в симуляцию, где значительная часть контента и взаимодействий создаётся ботами, нейросетями и ИИ-агентами, а живые пользователи становятся меньшей частью общей активности. ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
224
8
🔌 API против SDK: В чем реальная разница? Мы часто слышим эти аббревиатуры вместе, но это не одно и то же. Давайте разберем
🔌 API против SDK: В чем реальная разница? Мы часто слышим эти аббревиатуры вместе, но это не одно и то же. Давайте разберем шпаргалку с картинки. 1️⃣ API (Application Programming Interface) На картинке сверху. Это «мессенджер». Набор правил, по которым одна программа может попросить что-то у другой. 🔴Задача: Обеспечить общение (To Communicate). 🔴Как это работает: Вы отправляете запрос (Request) на конкретный адрес (Endpoint) с определенными параметрами. Сервер отвечает (Response) данными (обычно JSON) или кодом ошибки. 🔴Пример: Ваше приложение доставки еды «стучится» в Google Maps API, чтобы просто показать точку на карте. Оно не строит карту само, оно просит её у Google. 2️⃣ SDK (Software Development Kit) На картинке снизу. Это «ящик с инструментами». Полноценный комплект для создания приложений под конкретную платформу (Android, iOS, Windows). 🔴Задача: Дать инструменты для стройки (Tool Box to Build Apps). 🔴Что внутри: SDK - это «старший брат». Он гораздо больше и обычно включает в себя API, а также библиотеки кода, документацию, дебаггеры и примеры. 🔴Пример: Чтобы написать приложение под Android на Kotlin, вам нужен Android SDK. Вы берете этот чемоданчик, достаете оттуда готовые кнопки, окна и инструменты для вызова API. 💡 Главное отличие в одной фразе: API - это интерфейс для взаимодействия с сервисом (как меню в ресторане), а SDK - это набор инструментов для создания чего-то нового (как полностью оборудованная кухня). ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
195
9
Анатомия Kubernetes - как это работает изнутри? ☸️ Часто мы используем kubectl, не задумываясь, что происходит «под капотом».
Анатомия Kubernetes - как это работает изнутри? ☸️ Часто мы используем kubectl, не задумываясь, что происходит «под капотом». На этой схеме отлично разложено устройство кластера Kubernetes. Давайте разберем три главных уровня архитектуры. 1. Control Plane (Панель управления) - «Мозг» кластера 🧠 Это центр принятия решений. Именно здесь определяется, что и где должно работать. 🔴API Server (в центре): Единая точка входа. Все компоненты общаются только через него (и вы через CLI тоже). Примечание: на схеме иконка подписана как Kube-Scheduler, но функционально и визуально (надпись API) это именно API Server. 🔴etcd: «Память» кластера. Надежное хранилище типа «ключ-значение», где лежит вся конфигурация и текущее состояние системы. 🔴Kube-Scheduler: Логист. Решает, на какую именно ноду (узле) запустить новый Pod, исходя из свободных ресурсов. 🔴Controller Manager: Смотритель. Следит, чтобы текущее состояние кластера совпадало с желаемым (например, если упал под - он его перезапустит). 🔴Cloud-Controller Manager: Связной с облаком. Управляет ресурсами, специфичными для облачного провайдера (AWS, Azure, GCP). 2. Worker Nodes (Рабочие узлы) - «Мускулы» кластера 💪 Здесь крутятся ваши приложения. 🔴Pod (Под): Минимальная единица в K8s. Внутри пода живет один или несколько контейнеров. 🔴Container Runtime (Docker): Движок, который фактически запускает контейнеры. 🔴Kubelet: Главный агент на узле. Получает задачи от Control Plane и гарантирует, что контейнеры в поде запущены и работают. 🔴Kube-Proxy: Сетевой регулировщик. Отвечает за сетевые правила и проброс трафика к подам. 3. Kubernetes Extensions - Инструменты 🛠 То, с чем взаимодействуем мы или системы мониторинга: 🔴CLI: Консольная утилита (kubectl). 🔴Web Admin UI: Дашборд для визуального управления. 🔴DNS: Для обнаружения сервисов внутри кластера. 🔴Monitoring: Сбор метрик ресурсов. 💡Control Plane командует, Worker Nodes исполняют, а Extensions помогают нам этим управлять. ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
165
10
FTXUI Простая кроссплатформенная библиотека C++ для пользовательских интерфейсов на базе терминала! • Функциональный стиль •
FTXUI Простая кроссплатформенная библиотека C++ для пользовательских интерфейсов на базе терминала! • Функциональный стиль • Простой и элегантный синтаксис • Создаваемые консольные UI поддерживают навигацию с помощью клавиатуры и мыши • Поддержка UTF8 • Поддержка анимации • Поддержка рисования • Нет зависимостей • Кроссплатформенность: Linux/MacOS, WebAssembly, Windows https://github.com/ArthurSonzogni/FTXUI ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
165
11
🚀 Подборка полезных IT каналов в Max Системное администрирование, DevOps 📌 https://max.ru/i_odmin Все для системного администратора https://max.ru/bash_srv Bash Советы https://max.ru/sysadminof Книги для админов, полезные материалы https://max.ru/i_odmin_book Библиотека Системного Администратора https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др. https://max.ru/tipsysdmin Типичный Сисадмин Excel лайфхак 📌 https://t.me/Excel_lifehack Excel лайфхак 1C разработка 📌 https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С Программирование C++📌 https://max.ru/cpp_lib Библиотека C/C++ разработчика Программирование Go📌 https://max.ru/golang_lib Библиотека Go (Golang) разработчика Программирование React📌 https://max.ru/react_lib React Программирование Python 📌 https://max.ru/python_of Python академия. https://max.ru/BookPython Библиотека Python разработчика Java разработка 📌 https://max.ru/bookjava Библиотека Java разработчика GitHub Сообщество 📌 https://max.ru/githublib Интересное из GitHub Базы данных (Data Base) 📌 https://max.ru/database_info Все про базы данных Фронтенд разработка 📌 https://max.ru/frontend_1 Подборки для frontend разработчиков Библиотеки 📌 https://max.ru/programmist_of Книги по программированию https://max.ru/proglb Библиотека программиста https://max.ru/bfbook Книги для программистов Программирование 📌 https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT https://max.ru/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻 Шутки программистов 📌 https://max.ru/itumor Шутки программистов Защита, взлом, безопасность 📌 https://max.ru/thehaking Канал о кибербезопасности https://max.ru/xakkep_1 Хакер Free Книги, статьи для дизайнеров 📌 https://max.ru/odesigners Статьи, книги для дизайнеров Математика 📌 https://max.ru/Pomatematike Канал по математике https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике Вакансии 📌 https://max.ru/progjob Вакансии в IT Мир технологий 📌 https://max.ru/mir_teh Канал для любознательных Бонус 📌 https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга https://max.ru/mockva_life Свежие новости Москвы https://max.ru/piterspb Питер Новости: Санкт-Петербург / СПБ / ДТП
163
12
💡7 обязательных стратегий для масштабирования вашей базы данных. 1 - Индексация: Проверьте шаблоны запросов вашего приложени
💡7 обязательных стратегий для масштабирования вашей базы данных. 1 - Индексация: Проверьте шаблоны запросов вашего приложения и создайте подходящие индексы. 2 - Материализованные представления: Предварительно вычислите результаты сложных запросов и сохраните их для быстрого доступа. 3 - Денормализация: Уменьшите количество сложных соединений (join), чтобы улучшить производительность запросов. 4 - Вертикальное масштабирование: Увеличьте мощность вашего сервера базы данных, добавив больше ЦП, оперативной памяти или хранилища. 5 - Кэширование: Сохраните часто запрашиваемые данные в более быстром слое хранения, чтобы снизить нагрузку на базу данных. 6 - Репликация: Создайте реплики вашей основной базы данных на разных серверах для масштабирования чтений. 7 - Шардинг: Разделите таблицы базы данных на более мелкие части и распределите их по серверам. Используется для масштабирования как записей, так и чтений. ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
180
13
DBDiagram Бесплатный, простой инструмент для построения ER-диаграмм путем простого написания кода. Предназначен для разработч
DBDiagram Бесплатный, простой инструмент для построения ER-диаграмм путем простого написания кода. Предназначен для разработчиков и аналитиков данных. https://dbdiagram.io/home ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
247
14
Облачные базы данных: Шпаргалка В современном мире, основанном на данных, выбор правильной базы данных имеет решающее значени
Облачные базы данных: Шпаргалка В современном мире, основанном на данных, выбор правильной базы данных имеет решающее значение и в то же время сложен. Сейчас облако предлагает больше возможностей для структурированных, полуструктурированных и неструктурированных баз данных, чем когда-либо. Эта шпаргалка поможет выбрать наиболее подходящую для ваших нужд. Структурированные базы данных📌 Структурированные базы данных организуют данные в предопределенные схемы и модели. Реляционные базы данных, такие как MySQL и PostgreSQL, хранят данные в таблицах со строками и столбцами. Колоночные базы данных, такие как Amazon Redshift и Google BigQuery, также имеют структурированную модель данных, но хранят их по-другому, оптимизируя для аналитических запросов. Преимущества: - Эффективные SQL-запросы - Возможность применения ограничений и валидации - Последовательность там, где это необходимо Примеры использования: CRM-системы, управление запасами, бухгалтерский учет, аналитика Полуструктурированные базы данных📌 Полуструктурированные базы данных обеспечивают гибкость, храня данные без соблюдения формальной схемы. Данные часто хранятся в виде JSON или других гибких форматов. Примеры включают в себя документ-базы данных, такие как MongoDB, графовые базы данных, наподобие Neptune, широкие колоночные хранилища, такие как ScyllaDB, и хранилища ключ-значение, такие как DynamoDB. Преимущества: - Гибкость для изменяющихся данных - Масштабируемость на разных серверах Примеры использования: Электронная коммерция, ленты социальных сетей, данные IoT Неструктурированные базы данных📌 Неструктурированные базы данных оптимизированы для хранения и обработки огромных объемов разнородных данных, таких как документы, изображения, видео. Примеры: AWS S3, Azure Blob Storage. Преимущества: - Хранение огромных объемов данных - Высокая масштабируемость Примеры использования: Медиарепозитории, управление контентом, океаны данных, журнальные данные, резервное копирование. ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
226
15
🚀 Подборка полезных IT каналов в Max Системное администрирование, DevOps 📌 https://max.ru/i_odmin Все для системного администратора https://max.ru/bash_srv Bash Советы https://max.ru/sysadminof Книги для админов, полезные материалы https://max.ru/i_odmin_book Библиотека Системного Администратора https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др. https://max.ru/tipsysdmin Типичный Сисадмин Excel лайфхак 📌 https://t.me/Excel_lifehack Excel лайфхак 1C разработка 📌 https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С Программирование C++📌 https://max.ru/cpp_lib Библиотека C/C++ разработчика Программирование Go📌 https://max.ru/golang_lib Библиотека Go (Golang) разработчика Программирование React📌 https://max.ru/react_lib React Программирование Python 📌 https://max.ru/python_of Python академия. https://max.ru/BookPython Библиотека Python разработчика Java разработка 📌 https://max.ru/bookjava Библиотека Java разработчика GitHub Сообщество 📌 https://max.ru/githublib Интересное из GitHub Базы данных (Data Base) 📌 https://max.ru/database_info Все про базы данных Фронтенд разработка 📌 https://max.ru/frontend_1 Подборки для frontend разработчиков Библиотеки 📌 https://max.ru/programmist_of Книги по программированию https://max.ru/proglb Библиотека программиста https://max.ru/bfbook Книги для программистов Программирование 📌 https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT https://max.ru/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻 Шутки программистов 📌 https://max.ru/itumor Шутки программистов Защита, взлом, безопасность 📌 https://max.ru/thehaking Канал о кибербезопасности https://max.ru/xakkep_1 Хакер Free Книги, статьи для дизайнеров 📌 https://max.ru/odesigners Статьи, книги для дизайнеров Математика 📌 https://max.ru/Pomatematike Канал по математике https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике Вакансии 📌 https://max.ru/progjob Вакансии в IT Мир технологий 📌 https://max.ru/mir_teh Канал для любознательных Бонус 📌 https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга https://max.ru/mockva_life Свежие новости Москвы https://max.ru/piterspb Питер Новости: Санкт-Петербург / СПБ / ДТП
171
16
📌 Топ-10 алгоритмов на графах, которые должен знать каждый разработчик Графы окружают нас повсюду: от социальных сетей и рек
📌 Топ-10 алгоритмов на графах, которые должен знать каждый разработчик Графы окружают нас повсюду: от социальных сетей и рекомендательных систем до маршрутизации трафика и поиска уязвимостей в коде. Понимание базовых концепций работы с ними - это то, что отличает Senior-инженера от вечного Джуна. Сохраняй визуальную шпаргалку-гайд по главным алгоритмам на графах: 1. Поиск в глубину (DFS) & 2. Поиск в ширину (BFS) База из базы. • DFS (Depth-First Search) идет «вглубь» до упора. Идеален для обхода дерева решений, поиска циклов и топологической сортировки. • BFS (Breadth-First Search) обходит граф «слоями» (уровнями). Лучший выбор, если нужно найти кратчайший путь в невзвешенном графе. 3. Топологическая сортировка (Topological Sort) Линейное упорядочивание вершин ориентированного графа, где для каждого ребра (u, v) вершина u идет строго перед v. Используется везде, где есть зависимости: от компиляции исходного кода (Makefile, пакетные менеджеры) до планирования задач в CI/CD и ETL-пайплайнах. 4. Система непересекающихся множеств (Union-Find / DSU) Мощная структура данных, которая позволяет эффективно (почти за O(1)) объединять множества и проверять, принадлежат ли два элемента одному множеству. Незаменима для динамического анализа связности. 5. Поиск циклов (Cycle Detection) Критически важная задача в программировании. Цикл в графе зависимостей - это дедлок в многопоточности или бесконечная петля в логике приложения. Реализуется через DFS (поиск обратных ребер) или Union-Find. 6. Связные компоненты (Connected Components) Позволяет разбить граф на изолированные подграфы, где из любой вершины можно добраться до любой другой внутри этой же группы. Применяется в анализе сетей и кластеризации данных. 7. Двудольные графы (Bipartite Graphs) Граф, вершины которого можно разделить на два независимых множества так, чтобы ребра соединяли только вершины из разных множеств. Классический пример - задача о назначениях (поиск соответствия между исполнителями и задачами). 8. Алгоритм заливки (Flood Fill) Тот самый алгоритм, который работает в инструменте «Ведро с краской» в графических редакторах, или используется для поиска путей в лабиринтах/матрицах игр. По сути - кастомизированный DFS/BFS на двумерном массиве. 9. Минимальное остовное дерево (MST - Minimum Spanning Tree) Поиск подмножества ребер, соединяющих все вершины без циклов и с минимальным суммарным весом. Алгоритмы Крускала и Прима - классика для проектирования телекоммуникационных сетей, дорог и оптимизации инфраструктуры. 10. Кратчайший путь (Shortest Path) Поиск оптимального маршрута во взвешенном графе (например, с учетом расстояния, пробок или стоимости). Тут правят бал алгоритм Дейкстры (для положительных весов) и алгоритм Беллмана-Форда (если есть отрицательные веса). 📂 Интересный факт: Многие из этих концепций лежат в основе современных инструментов автоматизации, распределенных баз данных и систем сетевой безопасности. #алгоритмы #graphs #cs #dev #programming #шпаргалка ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
173
17
std::exception — это базовый класс для всех стандартных исключений в C++ Почему стоит наследоваться от std::exception? • Един
std::exception — это базовый класс для всех стандартных исключений в C++ Почему стоит наследоваться от std::exception? • Единообразие в обработке исключений: Когда вы наследуетесь от std::exception, ваш класс исключения приобретает интерфейс, который делает его совместимым с другими стандартными исключениями • what() метод: std::exception предоставляет важный метод what(), который возвращает строковое представление исключения. Это позволяет вам предоставлять информативные сообщения об ошибке при обработке исключений • Легкость в поддержке кода: Если вы используете сторонние библиотеки или фреймворки, они также могут ожидать обработку исключений, производных от std::exception • Стандартные типы исключений: std::exception имеет несколько стандартных подклассов, таких как std::runtime_error, std::logic_error и другие. Вы можете использовать эти подклассы вместо базового std::exception, чтобы более точно определить характер ошибки ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
227
18
Челлендж по обработке миллиарда строк на Go: от 1 минуты 45 секунд до 4 секунд Пару недель назад я прочитал о запавшем мне в
Челлендж по обработке миллиарда строк на Go: от 1 минуты 45 секунд до 4 секунд Пару недель назад я прочитал о запавшем мне в душу челлендже по обработке миллиарда строк, поэтому захотел решить его на Go. Я немного опоздал, соревнования проводились в январе. И на Java. Меня не особо интересует Java, зато давно интересует оптимизация кода на Go. Этот челлендж был очень прост: обработать текстовый файл названий метеорологических станций и температур, и для каждой станции вывести минимальное, среднее и максимальное значение. Чтобы упростить задачу, было ещё несколько ограничений, однако я проигнорировал те, что относятся только к Java. https://habr.com/ru/articles/798215/ ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
249
19
RustDesk Клиентское программное обеспечение для удаленного рабочего стола с открытым исходным кодом, написанное на Rust. Рабо
RustDesk Клиентское программное обеспечение для удаленного рабочего стола с открытым исходным кодом, написанное на Rust. Работает "из коробки", настройка не требуется. Отличная альтернатива TeamViewer и AnyDesk! Вы полностью контролируете свои данные, не беспокоясь о безопасности. Вы можете использовать сервер разработчика или настроить свой собственный сервер или написать свой собственный сервер для рандеву/ретрансляции https://github.com/rustdesk/rustdesk ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
272
20
🚀 Big O Notation (О-большое) в одной картинке: как оценить сложность алгоритма Каждый айтишник рано или поздно сталкивается
🚀 Big O Notation (О-большое) в одной картинке: как оценить сложность алгоритма Каждый айтишник рано или поздно сталкивается с проблемами производительности. Если ваш скрипт автоматизации, парсер или SQL-запрос начал безбожно тормозить при росте нагрузки, скорее всего, вы случайно написали алгоритм со сложностью O(n²) или хуже. 😅 🟢 Зеленая зона (Идеал и почти идеал): • O(1) - Константное время. Скорость не зависит от объема данных. Пример: чтение значения из массива по индексу или из хэш-таблицы. • O(log n) - Логарифмическое время. Очень быстро работает даже на огромных объемах. Пример: бинарный поиск или поиск в сбалансированном дереве (B-Tree в базах данных). 🔵 Синяя/Зеленая зона (Нормально): • O(n) - Линейное время. Время растет пропорционально количеству данных. Пример: простой перебор массива циклом for или поиск максимума/минимума. • O(n log n) - Линеарифмическое время. Лучшее, что мы можем выжать из алгоритмов сортировки общего назначения (Quick Sort, Merge Sort). 🟣/🔴 Красная зона (Опасно на больших данных): • O(n²) и O(n³) - Квадратичное и кубическое время. Те самые вложенные циклы. На тысячах записей отработает, на миллионах - положит сервер. • O(2^n) и O(n!) - Экспоненциальное и факториальное время. Растет катастрофически быстро. Применяется только для очень специфических задач (например, задача коммивояжера) и на минимальных объемах данных. ♻️ Сделай репост, чтобы помочь другим. 📲 Мы в MAX 👉 @itmozg
290