Форум программистов, компьютерный форум, киберфорум
Go
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
Старый
[golang] Алгоритм «Хак Госпера»
Запись от alhaos размещена 17.05.2026 в 19:17. Обновил(-а) alhaos 17.05.2026 в 19:19
Показов 2171 Комментарии 0
Метки algorithms, go

Алгоритм «Хак Госпера»



Хак Госпера (Gosper's Hack) — алгоритм нахождения следующего по величине числа с тем же количеством установленных бит.

Придуман Биллом Госпером в 1970-х, опубликован в HAKMEM — легендарном сборнике MIT AI Lab с математическими и программистскими трюками.

продвинуть одну единицу левее — число вырастет

вернуть оставшиеся единицы в самые младшие позиции — число будет наименьшим из возможных

Реализация

...
Аватар для alhaos
Старый
Полиглотные Event-Driven системы с Kafka, RabbitMQ и gRPC на Java, Go и Node.js
Запись от ArchitectMsa размещена 13.10.2025 в 20:34 / Microservice it all!
Показов 4616 Комментарии 0

Нажмите на изображение для увеличения
Название: Полиглотные Event-Driven системы с Kafka, RabbitMQ и gRPC на Java, Go и Node.js.jpg
Просмотров: 572
Размер:	60.4 Кб
ID:	11281
В 2019 году я столкнулся с любопытной ситуацией. Команда запускала новый сервис рекомендаций на Python - модели машинного обучения требовали NumPy и TensorFlow. Основное приложение работало на Java, а фронтенд крутился на Node.js. И вот появилась задача: связать все это в единую систему, где заказы создаются через веб, обрабатываются на бэкенде, а рекомендации генерируются...
Аватар для ArchitectMsa
Старый
Go и ИИ
Запись от golander размещена 08.10.2025 в 21:12 / go go just go
Показов 4575 Комментарии 0

Нажмите на изображение для увеличения
Название: Go и ИИ.jpg
Просмотров: 523
Размер:	61.5 Кб
ID:	11271
Python давно стал языком машинного обучения по умолчанию. Jupyter-блокноты, PyTorch, scikit-learn - весь этот мир крутится вокруг интерпретируемого языка с динамической типизацией. Но когда дело доходит до продакшена, картина меняется. И здесь Go начинает показывать зубы.

Go не заменяет Python в исследованиях и экспериментах. Там он и не нужен - у Python экосистема богаче, а скорость...
Аватар для golander
Старый
Рейтинг: 5.00. Голосов: 1.
WebAssembly как платформа для языков программирования
Запись от Jason-Webb размещена 06.10.2025 в 19:03 / Webmastering PHP
Показов 5108 Комментарии 0

Нажмите на изображение для увеличения
Название: WebAssembly как платформа для языков программирования.jpg
Просмотров: 469
Размер:	145.3 Кб
ID:	11264
WebAssembly начинался как способ ускорить веб-приложения. В 2017-м впервые запустил C++ код прямо в браузере - тогда казалось магией. Сейчас же Wasm вырос во что-то большее: универсальную платформу для запуска кода на любом языке где угодно. Не просто виртуальная машина, а целая экосистема с собственными стандартами,...
Аватар для Jason-Webb
Старый
Go 1.25 - возможности с примерами
Запись от golander размещена 26.09.2025 в 19:56 / go go just go
Показов 4500 Комментарии 0

Нажмите на изображение для увеличения
Название: Go 1.25 - возможности с примерами.jpg
Просмотров: 391
Размер:	108.1 Кб
ID:	11218
Последние несколько лет я постоянно сталкивался с одной и той же проблемой — как выжать максимум производительности из Go без жертвы читабельностью кода. С выходом Go 1.25 эта дилемма, кажется, начинает решаться на уровне самого языка.

Profile-Guided Optimization: из экспериментальной фичи в надежный инструмент



Наконец-то PGO (Profile-Guided Optimization) стабилизирована! Это больше не экспериментальная...
Аватар для golander
Старый
LangChainGo - руководство с примерами кода
Запись от golander размещена 21.09.2025 в 18:39 / go go just go
Показов 4851 Комментарии 0

Нажмите на изображение для увеличения
Название: LangChainGo - руководство с примерами кода.jpg
Просмотров: 401
Размер:	220.7 Кб
ID:	11193
Признаюсь честно, когда я впервые столкнулся с задачей создания приложения на основе больших языковых моделей (LLM), то, как и многие из вас, первым делом потянулся к Python и экосистеме LangChain. Казалось, что это единственный разумный путь. Но вскоре обнаружилась проблема — производительность. Приложение тормозило на высоких нагрузках, а...
Аватар для golander
Старый
Лучшие фреймворки Go REST API
Запись от golander размещена 09.09.2025 в 21:11 / go go just go
Показов 5732 Комментарии 0

Нажмите на изображение для увеличения
Название: Лучшие фреймворки Go REST API.jpg
Просмотров: 431
Размер:	125.4 Кб
ID:	11166
Когда я впервые столкнулся с Go десять лет назад, ситуация с веб-фреймворками напоминала дикий запад – каждый писал свой велосипед и гордился этим. Стандартная библиотека net/http была настолько хороша, что многие считали фреймворки злом. "Настоящие гоферы пишут всё сами!" – кричали адепты чистого Go. Сейчас, оглядываясь назад, я улыбаюсь этому максимализму. Экосистема Go сильно изменилась. В мире, где микросервисы стали нормой, а не исключением, REST API превратились...
Аватар для golander
Старый
Оптимизация Docker Image: скорость, размер, безопасность
Запись от Mr. Docker размещена 28.07.2025 в 21:28 / Docking everything, K8s anything
Показов 3431 Комментарии 0

Нажмите на изображение для увеличения
Название: Оптимизация Docker Image скорость, размер, безопасность.jpg
Просмотров: 452
Размер:	191.5 Кб
ID:	11017
За последние пять лет Docker превратился из крутой новой технологии в стандарт де-факто для упаковки и деплоя приложений. Практически каждый инженер, с которым я работал за эти годы, использует контейнеры, и все системы, которые я создавал в последнюю половину десятилетия, работают именно в них. Легкость в изучении, быстрота деплоя и возможность безболезненных откатов делают Docker незаменимым инструментом в арсенале современной DevOps-команды.

Но популярность...
Аватар для Mr. Docker
Старый
Мониторинг микросервисов с OpenTelemetry в Kubernetes
Запись от Mr. Docker размещена 04.07.2025 в 13:00 / Docking everything, K8s anything
Показов 7206 Комментарии 0

Нажмите на изображение для увеличения
Название: OpenTelemetry и Kubernetes.jpg
Просмотров: 472
Размер:	272.2 Кб
ID:	10952
Проблема наблюдаемости (observability) в Kubernetes - это не просто вопрос сбора логов или метрик. Это целый комплекс вызовов, которые возникают из-за самой природы контейнеризации и оркестрации. К примеру: у вас сотни подов, которые живут от нескольких секунд до нескольких дней, постоянно перемещаются между нодами, масштабируются, падают и пересоздаются. Как в таких условиях понять, что происходит?

Вот с чем я сталкивался чаще всего:
1. Эфемерность...
Аватар для Mr. Docker
Старый
Создаем микросервисы с Go и Kubernetes
Запись от golander размещена 02.07.2025 в 19:49 / go go just go
Показов 8839 Комментарии 0

Нажмите на изображение для увеличения
Название: Создаем микросервисы с Go и Kubernetes.jpg
Просмотров: 439
Размер:	156.1 Кб
ID:	10950
Когда я только начинал с микросервисами, все спорили о том, какой язык юзать. Сейчас Go (или Golang) фактически захватил эту нишу. И вот почему этот язык настолько заходит для этих задач:
  • Конкурентность в Go — это бомба. Горутины и каналы вшиты в ядро языка, а не приколочены сверху как в других языках. Помню, написал сервис, который легко держал 100к соеденений на средненьком железе. На Java такое без адской настройки и тюнинга нереально
...
Аватар для golander
Старый
WebAssembly в Kubernetes
Запись от Mr. Docker размещена 06.06.2025 в 13:57 / Docking everything, K8s anything
Показов 2942 Комментарии 0

Нажмите на изображение для увеличения
Название: WebAssembly в Kubernetes.jpg
Просмотров: 342
Размер:	192.6 Кб
ID:	10884
WebAssembly изначально разрабатывался как бинарный формат инструкций для виртуальной машины, обеспечивающий высокую производительность в браузерах. Но потенциал технологии оказался гораздо шире - она способна преодолеть ряд фундаментальных ограничений существующих контейнерных решений.

Проблемы традиционных контейнеров давно известны специалистам. Стандартные Docker-образы зачастую занимают сотни мегабайт, а иногда и гигабайты...
Аватар для Mr. Docker
Старый
Создаем RESTful API на Golang с Fiber
Запись от golander размещена 04.06.2025 в 21:05 / go go just go
Показов 5873 Комментарии 0

Нажмите на изображение для увеличения
Название: Создаем RESTful APIs на Golang с Fiber.png
Просмотров: 356
Размер:	955.3 Кб
ID:	10877
Я перепробовал десятки фреймворков для создания RESTful API за последние годы, и когда впервые столкнулся с Fiber, понял, что это совсем другой уровень. Нет, я не собираюсь рассказывать сказки о серебрянных пулях в программировании - такого не существует. Но Fiber дейсвительно решил целый ряд проблем,...
Аватар для golander
Старый
Unit-тестирование с моками в Go
Запись от golander размещена 31.05.2025 в 18:06 / go go just go
Показов 2588 Комментарии 0
Метки go, mock, unit-test

Нажмите на изображение для увеличения
Название: 29b81a47-1551-426f-84fd-49f77421f8ac.jpg
Просмотров: 286
Размер:	83.6 Кб
ID:	10863
Большинство разработчиков предпочитают тестировать код без использования моков. Например, при интеграции с Elasticsearch логичнее запустить контейнер локально и тестировать Go-код непосредственно с ним. Но в реальном мире часто возникают ситуации, когда создание локального окружения становится практически невозможным. В отличие от языков с...
Аватар для golander
Старый
Упрощение разработки облачной инфраструктуры с Golang
Запись от golander размещена 11.05.2025 в 10:03 / go go just go
Показов 4093 Комментарии 0
Метки cloud, edge, go, kubernetes, serverless

Нажмите на изображение для увеличения
Название: c99fb81c-5b5a-491e-b484-87d4ade53313.jpg
Просмотров: 212
Размер:	155.7 Кб
ID:	10788
Причины популярности Go в облачной инфраструктуре просты и одновременно глубоки. Прежде всего — поразительная конкурентность, реализованная через горутины, которые дешевле традиционных потоков в десятки раз. Небольшая программа на Go спокойно жонглирует тысячами параллельных задач, при этом потребляя памяти меньше, чем средний инстанс Node.js только для запуска "Hello World".

Статическая типизация, ставшая...
Аватар для golander
Старый
Java, Rust и Go в системном программировании - Сравнительный анализ
Запись от golander размещена 09.05.2025 в 16:38 / go go just go
Показов 2918 Комментарии 0
Метки go, java, rust

Нажмите на изображение для увеличения
Название: 9b3f4dd7-a0b3-451a-bde3-4e9e6818f024.jpg
Просмотров: 244
Размер:	212.8 Кб
ID:	10776
Пока большинство разработчиков спорят о преимуществах фреймворков и инструментах высокого уровня, тихая буря назревает в подвалах системного программирования. Java — признанный ветеран индустрии с мощной экосистемой, Rust — молодой бунтарь с революционым подходом к безопасности, и Go — прагматичный середнячок с амбициями на скорость разработки. Эти три языка ведут незримую битву за место под солнцем там, где раньше безраздельно царили C и C++.

Выбор между...
Аватар для golander
Старый
Confluent Kafka Go и потоковые приложения в реальном времени на Golang
Запись от golander размещена 03.05.2025 в 20:17 / go go just go
Показов 3276 Комментарии 0

Нажмите на изображение для увеличения
Название: 0e23c15e-8b21-486c-a2b9-a2fdca2f6ca4.jpg
Просмотров: 261
Размер:	168.8 Кб
ID:	10728
Мир обработки данных перевернулся, когда в 2011 году LinkedIn открыл исходный код Kafka – распределённой системы передачи сообщений, разработанной для внутренних нужд компании. Изначально Кафка создавалась как решение для сбора и анализа пользовательской активности...
Аватар для golander
Старый
Об уровне агрегации Kubernetes API
Запись от Mr. Docker размещена 03.05.2025 в 10:11 / Docking everything, K8s anything
Показов 3509 Комментарии 0

Нажмите на изображение для увеличения
Название: 2ba9bff3-93b2-4189-91db-58b55013af7d.jpg
Просмотров: 214
Размер:	217.7 Кб
ID:	10722
Погружаясь в глубины Kubernetes, невозможно не столкнуться с одним из самых мощных и в то же время недооцененных компонентов этой системы – уровнем агрегации API. Это тот самый механизм, который дает Kubernetes впечатляющую гибкость, позволяя ей оставаться лёгкой в ядре, но при этом бесконечно расширяемой.

Концепция и назначение агрегационного слоя



Уровень агрегации – не просто абстрактная концепция,...
Аватар для Mr. Docker
Старый
Слабые указатели в Go: управление памятью и предотвращение утечек ресурсов
Запись от golander размещена 29.04.2025 в 13:04 / go go just go
Показов 5652 Комментарии 0
Метки go

Нажмите на изображение для увеличения
Название: 1a4da49c-6f5b-4108-874d-dac9ebfe18a3.jpg
Просмотров: 199
Размер:	195.6 Кб
ID:	10695
Управление памятью — один из краеугольных камней разработки высоконагруженных приложений. Го (Go) занимает уникальную нишу в этом вопросе, предоставляя разработчикам автоматическое управление памятью через сборщик мусора, но при этом сохраняя некоторые аспекты низкоуровневого контроля. Эта двойственность...
Аватар для golander
Старый
Слайсы в Go
Запись от golander размещена 15.04.2025 в 09:55 / go go just go
Показов 3530 Комментарии 0
Метки go, golang

Нажмите на изображение для увеличения
Название: b11450d5-24b0-4460-a9ff-f7ce5811b5a5.jpg
Просмотров: 241
Размер:	228.3 Кб
ID:	10594
Слайсы — важнейшая структура данных в Go, значение которой сложно переоценить. С момента создания языка разработчики Go позиционировали слайсы как основной механизм для работы с последовательностями данных. И не зря: слайсы сочетают гибкость и производительность, что делает их идеальным выбором для большинства задач.

Введение в слайсы Go



Базовая структура и принципы работы



В отличие от массивов с фиксированной...
Аватар для golander
Старый
Go в Kubernetes: Управление ресурсами
Запись от golander размещена 11.04.2025 в 12:31 / go go just go
Показов 5163 Комментарии 0
Метки cpu, devops, go, kubernetes, memory

Нажмите на изображение для увеличения
Название: a0399ea7-cbf7-4e50-9d06-0919ac004113.jpg
Просмотров: 192
Размер:	53.9 Кб
ID:	10576
Разработчики Go-приложений в Kubernetes часто сталкиваются с неожиданными проблемами производительности и даже внезапными отказами контейнеров. Причина этого кроется в особенностях взаимодействия Go-рантайма с моделью ограничения ресурсов в K8s. Рантайм Go активно управляет ресурсами, создавая OS-потоки и распределяя горутины между ними, делая предположения о доступной мощности,...
Аватар для golander
Старый
Использование кэшей CPU: Максимальная производительность в Go
Запись от golander размещена 05.04.2025 в 16:55 / go go just go
Показов 4449 Комментарии 0

Нажмите на изображение для увеличения
Название: 3b7804e2-ba0c-4008-8371-9fee0e2b4d27.jpg
Просмотров: 233
Размер:	134.4 Кб
ID:	10535
Разработчикам хорошо известно, что эффективность кода зависит не только от алгоритмов и структур данных, но и от того, насколько удачно программа взаимодействует с железом. Среди множества факторов, влияющих на производительность, особое место занимает работа с кэш-памятью процессора. Именно кэш-память часто становится тем узким местом, которое ограничивает быстродействие даже самых элегантных...
Аватар для golander
Старый
Пакет Context в Golang: Управление потоками и ресурсами
Запись от golander размещена 04.04.2025 в 16:34 / go go just go
Показов 3656 Комментарии 0

Нажмите на изображение для увеличения
Название: a38062e3-9cef-48b5-974e-b53fc0fcbea1.jpg
Просмотров: 261
Размер:	75.6 Кб
ID:	10521
Работа с горутинами в Go часто напоминает управление непослушными детьми - они разбегаются кто куда, делают что хотят и не всегда завершаются вовремя. К счастью, в Go 1.7 появился пакет context, который помогает держать эту ватагу под контролем.

Предположим, есть веб-сервер,...
Аватар для golander
Старый
Реализация перечислений в Go
Запись от golander размещена 19.03.2025 в 21:25 / go go just go
Показов 1962 Комментарии 0
Метки go

Нажмите на изображение для увеличения
Название: 6d805eae-8cfb-4fd5-88be-53e4e3061485.jpg
Просмотров: 214
Размер:	77.8 Кб
ID:	10464
Если вы перешли на Go с других языков программирования (как я), таких как C#, Java или Python, вы наверняка заметили, что Go не имеет встроенной поддержки перечислений (enumerations). Это может стать серьезным препятствием, когда нужно работать с фиксированным набором значений, обеспечивая при этом типобезопасность...
Аватар для golander
Старый
Protobuf в Go и новый Opaque API
Запись от golander размещена 15.03.2025 в 20:41 / go go just go
Показов 1811 Комментарии 0
Метки go, grpc, opaque api, protobuf

Нажмите на изображение для увеличения
Название: 807e52f3-3ae2-400b-a75f-4deb394ff227.jpg
Просмотров: 231
Размер:	271.4 Кб
ID:	10415
Распределенные системы опираются на эффективные протоколы обмена данными — о чем вы, скорее всего, прекрасно знаете, если работаете с микросервисной архитектурой. Protocol Buffers (Protobuf) от Google уже более десятилетия остаётся одним из самых мощных инструментов сериализации...
Аватар для golander
Старый
Создание расширяемых WebAssembly приложений и микрофронтендов с Go
Запись от golander размещена 12.03.2025 в 08:40 / go go just go
Показов 2387 Комментарии 0

Нажмите на изображение для увеличения
Название: 71aa9c2f-bcb4-4015-9414-36c2fc1a66bf.jpg
Просмотров: 207
Размер:	183.1 Кб
ID:	10369
Go как язык программирования всегда выделялся своей простотой и производительностью, и его поддержка компиляции в WebAssembly открывает интересные возможности. Начиная с версии Go 1.11, когда был добавлен первый порт js/wasm, экосистема Go-WASM постепенно развивалась, но имела существенные ограничения в плане интеграции с внешним миром. Выход Go 1.24 обозначил важный прогресс в этом направлении, добавив две ключевые функции: директиву go:wasmexport и возможность...
Аватар для golander
Старый
Быстрый map в Go со Swiss Table
Запись от golander размещена 12.03.2025 в 08:22 / go go just go
Показов 3422 Комментарии 0
Метки go, swiss table

Нажмите на изображение для увеличения
Название: d7a4715f-4492-4535-a6dc-a66172195723.jpg
Просмотров: 216
Размер:	188.1 Кб
ID:	10368
Начиная с Go 1.24, встроенный тип map получил значительное обновление — его внутренняя реализация была полностью переработана с использованием дизайна Swiss Table.

На первый взгляд, может показаться, что хеш-таблицы — давно изученная технология, в которой нет места...
Аватар для golander
Старый
[golang] 6. Zigzag Conversion
Запись от alhaos размещена 24.02.2025 в 19:54
Показов 2802 Комментарии 0
Метки go, problem

Нужно преобразовать входную строку в строку полученную из зигзага образного узора заданного количеством строк.

Go
1
2
3
4
5
6
7
8
9
10
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
// convert
//
// 6. Zigzag Conversion
//
// The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility)
//
...
Аватар для alhaos
Старый
[golang] 151. Reverse Words in a String
Запись от alhaos размещена 23.02.2025 в 14:37
Показов 2743 Комментарии 5
Метки go, problem

Дана строка необходимо поменять порядок входящих слов, необходимо исключить лидирующие и финишные пробелы, а так же повторяющиеся считать за один.

Воспользовался функцией strings.Fields() которая делает именно то, что нужно по условию.

Go
1
2
3
4
5
6
7
8
9
10
11
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
import (
    "strings"
)
 
// reverseWords
//
// 151. Reverse Words in a String
...
Аватар для alhaos
Старый
[golang] 14. Longest Common Prefix
Запись от alhaos размещена 23.02.2025 в 14:08
Показов 4330 Комментарии 0
Метки go, problem

Дан слайс строк, нужно вернуть строку содержащую общий префикс для всех строк, пустую сроку в случае отсутствия такового.

Go
1
2
3
4
5
6
7
8
9
10
11
12
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
// longestCommonPrefix
//
// 14. Longest Common Prefix
//
// Write a function to find the longest common prefix string amongst an array of strings.
//
// If there is no common prefix, return an empty string "".
//
...
Аватар для alhaos
Старый
[golang] 58. Length of Last Word
Запись от alhaos размещена 23.02.2025 в 13:14
Показов 2955 Комментарии 0
Метки go, problem

Нужно найти длину крайнего слова в строке.

Go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
// lengthOfLastWord
//
// 58. Length of Last Word
// Given a string s consisting of words and spaces, return the length of the last word in the string.
//
// A word is a maximal
// substring
//
//  consisting of non-space characters only.
//
// Example 1:
...
Аватар для alhaos
Новые блоги и статьи
20. Мат мед. Абсентеизм как отдельный тип простоя
anaschu 29.05.2026
Апдейт модели: исправленные баги, абсентеизм и новые механизмы Продолжаю развивать ранее описанную модель рабочего коллектива на AnyLogic. За последние несколько дней был проведён серьёзный. . .
19. здоровье, усталость и психотип работника влияют на производительность предприятия, и наоборот, производительность на здоровье, усталось и психотип
anaschu 28.05.2026
Дискретно-событийная модель рабочего коллектива на AnyLogic: здоровье, выгорание, психотипы и микростимуляция Привет, коллеги. Хочу поделиться итогами нескольких недель работы над симуляционной. . .
"Прокси" для последовательного порта
Eddy_Em 28.05.2026
Эту штуку написал я достаточно давно. Но сейчас вот понадобилось настроить датчик грозы, но при этом не отключать его от "метеодемона". Соответственно, надо запустить этот "прокси": метеодемон будет. . .
Рефакторинг программы уравнивания.
Massaraksh7 26.05.2026
Пример по предыдущей записи в блоге. Но, надо заметить, что, во-первых, там оптимизация не только математики, но и работы с базой данных, и с графами, а во-вторых, это ещё не всё.
Использование TThread в Lazarus для математических вычислений.
Massaraksh7 25.05.2026
Производя рефакторинг своих программ на предмет ускорения их работы, обратил внимание на такой аспект, как сокращение времени матвычислений. Дело в том, что приходится работать с большими матрицами. . .
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
Модель здравосохранения 17. Планы на выгорание
anaschu 23.05.2026
Вот конкретная схема реализации: В классе Работник добавить: накопленнаяУсталость — растёт каждый час работы, снижается в перерывы и болезни коэффициентПрезентеизма — снижает продуктивность. . .
Изменение цветов в палитре gif файла aka фавикона
russiannick 23.05.2026
Изменение цветов в палитре gif файла, юзаемого как фавиконка в составе html-файла, помещенная в base64, средствами нативного Java Script, навеянное сном в майский день. Для работы необходим браузер,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru