🛠 Работа с аренами: почти избавляемся от GC
Тимлид в Т-Банке Максим Горозий разбирается в причинах частого торможения программ на языках с GC и делится опытом управления памятью, медитируя над профайлингом, чтобы все работало быстро.
👉 Читать
Тимлид в Т-Банке Максим Горозий разбирается в причинах частого торможения программ на языках с GC и делится опытом управления памятью, медитируя над профайлингом, чтобы все работало быстро.
👉 Читать
👍18🥱4
Выявляйте узкие места производительности в своих приложениях, профилируя их активность и оптимизируя действия на основе результатов.
👉 Читать гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤2🔥2
🏃 Самоучитель по Go для начинающих. Часть 14. Интерфейсы ввода-вывода. Буферизация. Работа с файлами. Пакеты io, bufio, os
В этой статье рассмотрим основные методы ввода-вывода из пакета io, изучим механизм буферизации и его применение в Go, а также разберем, как работать с файлами с помощью пакета os.
👉 Читать гайд
📌 Остальные части в серии:
1. Особенности и сфера применения Go, установка, настройка
2. Ресурсы для изучения Go с нуля
3. Организация кода. Пакеты, импорты, модули. Ввод-вывод текста.
4. Переменные. Типы данных и их преобразования. Основные операторы
5. Условные конструкции if-else и switch-case. Цикл for. Вложенные и бесконечные циклы
6. Функции и аргументы. Области видимости. Рекурсия. Defer
7. Массивы и слайсы. Append и сopy. Пакет slices
8. Строки, руны, байты. Пакет strings. Хеш-таблица (map)
9. Структуры и методы. Интерфейсы. Указатели. Основы ООП
10. Введение в ООП. Наследование, абстракция, полиморфизм, инкапсуляция
11. Обработка ошибок. Паника. Восстановление. Логирование
12. Обобщенное программирование. Дженерики
13. Работа с датой и временем. Пакет time
В этой статье рассмотрим основные методы ввода-вывода из пакета io, изучим механизм буферизации и его применение в Go, а также разберем, как работать с файлами с помощью пакета os.
👉 Читать гайд
📌 Остальные части в серии:
1. Особенности и сфера применения Go, установка, настройка
2. Ресурсы для изучения Go с нуля
3. Организация кода. Пакеты, импорты, модули. Ввод-вывод текста.
4. Переменные. Типы данных и их преобразования. Основные операторы
5. Условные конструкции if-else и switch-case. Цикл for. Вложенные и бесконечные циклы
6. Функции и аргументы. Области видимости. Рекурсия. Defer
7. Массивы и слайсы. Append и сopy. Пакет slices
8. Строки, руны, байты. Пакет strings. Хеш-таблица (map)
9. Структуры и методы. Интерфейсы. Указатели. Основы ООП
10. Введение в ООП. Наследование, абстракция, полиморфизм, инкапсуляция
11. Обработка ошибок. Паника. Восстановление. Логирование
12. Обобщенное программирование. Дженерики
13. Работа с датой и временем. Пакет time
👏6👍5🤔1💯1
⚒️ Инструменты сборки для Go
Если стандартные инструменты сборки не справляются с поставленной задачей, ловите подборку опенсорсных инструментов сборки, которые стоит рассмотреть, включая Mage и Taskfile.
👉 Читать
Если стандартные инструменты сборки не справляются с поставленной задачей, ловите подборку опенсорсных инструментов сборки, которые стоит рассмотреть, включая Mage и Taskfile.
👉 Читать
🥱8👍5😁2
🤯 International Blue Screen Day
Собрали мини-подборку фото и мемов по мотивам сегодняшних событий.
#назлобудня
Собрали мини-подборку фото и мемов по мотивам сегодняшних событий.
#назлобудня
🥰18😁17👍5❤1
Ответьте на 3 вопроса, чтобы получить вводные занятия к курсу «Алгоритмы и структуры данных»
🔥Получите вводные занятия, ответив на 3 вопроса – https://proglib.io/w/6ee77144
На вводной части вас ждут:
1. Лекция «Производительность алгоритмов» от руководителя разработки Яндекс.Самокатов;
2. Лекция «Итеративные сортировки и линейные сортировки» от аспирант департамента искусственного интеллекта ВШЭ;
3. Практические задания после лекций;
4. Ссылки на дополнительные материалы для самостоятельного изучения.
⚡️ Переходите и начинайте учиться уже сегодня – https://proglib.io/w/6ee77144
🔥Получите вводные занятия, ответив на 3 вопроса – https://proglib.io/w/6ee77144
На вводной части вас ждут:
1. Лекция «Производительность алгоритмов» от руководителя разработки Яндекс.Самокатов;
2. Лекция «Итеративные сортировки и линейные сортировки» от аспирант департамента искусственного интеллекта ВШЭ;
3. Практические задания после лекций;
4. Ссылки на дополнительные материалы для самостоятельного изучения.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1
🤔 Как эффективно и быстро обработать огромные объемы информации? Ответом на этот вызов стала концепция MapReduce, разработанная в недрах Google.
MapReduce — это парадигма программирования, созданная для обработки и генерации больших объемов данных с использованием параллельных распределенных алгоритмов. Основная фича проста: сначала данные разбиваются на небольшие части (фаза Map), а затем результаты этих частей агрегируются в финальный результат (фаза Reduce).
📌 Зачем?
🔸 Масштабируемость: MapReduce позволяет распределять задачи на множество узлов, что значительно ускоряет обработку больших данных.
🔸 Производительность: параллельное выполнение задач маппинга и редьюсинга обеспечивает порой очень высокую скорость обработки.
🔸 Устойчивость к ошибкам: встроенные механизмы MapReduce обеспечивают восстановление после сбоев.
🔸 Простота использования: разработчику нужно лишь определить функции Map и Reduce, а остальное берет на себя фреймворк.
Автор на примерах разбирается с реализацией MapReduce на Go, какие оптимизации можно применить для улучшения производительности.
MapReduce — это парадигма программирования, созданная для обработки и генерации больших объемов данных с использованием параллельных распределенных алгоритмов. Основная фича проста: сначала данные разбиваются на небольшие части (фаза Map), а затем результаты этих частей агрегируются в финальный результат (фаза Reduce).
📌 Зачем?
🔸 Масштабируемость: MapReduce позволяет распределять задачи на множество узлов, что значительно ускоряет обработку больших данных.
🔸 Производительность: параллельное выполнение задач маппинга и редьюсинга обеспечивает порой очень высокую скорость обработки.
🔸 Устойчивость к ошибкам: встроенные механизмы MapReduce обеспечивают восстановление после сбоев.
🔸 Простота использования: разработчику нужно лишь определить функции Map и Reduce, а остальное берет на себя фреймворк.
Автор на примерах разбирается с реализацией MapReduce на Go, какие оптимизации можно применить для улучшения производительности.
❤10👍6👏5🔥2🌚2
👉 Интерактивные заметки о выпуске
Please open Telegram to view this post
VIEW IN TELEGRAM
👍30❤7🤔5😁1👾1
Хотя Go не является чисто объектно-ориентированным языком, мы все равно можем применять принципы SOLID для улучшения кода на Go. Автор углубляется в каждый принцип, исследует его значение и разбирается, как эффективно использовать его в Go.
👉 Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
❤21🔥6👍4🌚2