Gulu: Go-библиотека популярных инструментов
Gulu — это набор популярных инструментов для работы с языком программирования Go.
Проект можно найти на GitHub по адресу https://github.com/88250/gulu.
Описание
Добро пожаловать в официальный дискуссионный форум Gulu (https://ld246.com/tag/gulu). Также приглашаем вас подписаться на B3log, сообщество разработчиков с открытым исходным кодом, через официальный аккаунт B3log开源 в WeChat.
Функции
-
Работа с файлами (gulu.File): получение размера файла, проверка существования пути, определение того, является ли файл изображением, проверка того, является ли файл исполняемым двоичным файлом, проверка того, является ли путь каталогом, копирование файлов и каталогов.
-
Язык Go (gulu.Go): получение пути к каталогу исходного кода API Go, проверка наличия пути в каталоге исходного кода Go API, получение имён форматированных инструментов («gofmt», «goimports»), получение абсолютного пути исполняемых программ в $GOBIN.
-
Логирование (gulu.Log): предоставление регистратора с настраиваемым уровнем логирования.
-
Сетевые функции (gulu.Net): получение IP-адреса первого сетевого адаптера компьютера, получение MAC-адреса первого сетевого адаптера.
-
Операционные системы (gulu.OS): проверка операционной системы (Windows, Linux, Darwin), получение текущего рабочего каталога процесса, получение домашнего каталога пользователя.
-
Обработка паники (gulu.Panic): упаковка recover() для улучшения формата сообщений об ошибках.
-
Случайные числа (gulu.Rand): генерация случайных строк и целых чисел.
-
Возвращаемые значения (gulu.Ret): универсальная структура возвращаемых значений.
-
Символы Unicode (gulu.Rune): проверка того, являются ли символы Unicode цифрами или буквами, проверка того, являются ли они буквами.
-
Строки (gulu.Str): поиск строки в массиве строк, поиск и замена подстрок без учёта регистра, циклический поиск и замена без учёта регистра, нахождение самой длинной общей подстроки, поиск подстроки заданной длины с учётом символов Unicode.
-
Архивация (gulu.Zip): архивация и разархивация.
Примеры использования
Библиотека Gulu использовалась в следующих проектах:
- Pipe — красивый блог для программистов.
- Wide — графическая среда разработки на Go.
- BND — графический клиент для скачивания файлов с Baidu Netdisk.
- 协慌网 — локализация вопросов и ответов по программированию.
- 链滴笔记 — приложение для заметок с графическим интерфейсом. Windows, Mac и Linux
💝 Вклад
У Gulu определённо есть некоторые недостатки:
- код недостаточно красив;
- документация недостаточно ясна;
- функционал недостаточно совершенен;
- могут быть дефекты и т. д.
Мы будем рады, если вы поможете улучшить проект! Мы приветствуем любые предложения — будь то идеи по улучшению или доработке кода.
🏘️ Сообщество
📄 Лицензия
Gulu использует открытое программное обеспечение на основе лицензии Mulan PSL v2.0.
🙏 Благодарности