DevGang
Авторизоваться

Встраивание статических ресурсов в проект Go 

Я хотел создать небольшое автономное веб-приложение на Go, противоположное обычному веб-приложению, где ресурсы будут обслуживаться отдельно через CDN или HTTP-сервер, такой как Nginx. Но если производительность не имеет значения или она нацелена на небольшой трафик, то наличие автономного приложения облегчает его развертывание и распространение, поскольку это просто исполняемый двоичный файл.

Обработка рабочего пространства Go с помощью direnv 

Когда я начал изучать Go, я быстро преодолел свое первое препятствие: рабочее пространство Go. Инструменты go предназначены для работы с кодом, который хранится в общедоступных репозиториях с использованием полного доменного имени и пути в качестве пространства имен и имени пакета. Например: github.com/rach/project-x где github.com/rach - это вид пространства имен, реализуемый структурой каталогов, а project-x имя пакета также обеспечивается структурой каталогов.

Исходя из Python, я был удивлен, что не было такого простого решения, как [virtualenv]. Go действительно предлагает способ, но требует немного больше упражнений с кодом.

В этой статье я опишу, как я упростил свою жизнь, работая с Go с помощью небольшого сценария оболочки и используя [direnv] для автоматизации переключения рабочей области. Когда я писал этот пост, я мало что знал о Go, поэтому не стесняйтесь пролить свет на любую из моих ошибок.

Что я узнал нового, изучая Go

Всем привет! Совсем недавно я кодил на Голанге и вот теперь решил поделиться с вами некоторыми наблюдениями.

Изучаем Go - Сборка DevLog Часть 04

Создаем блог разработчика

Вы только посмотрите! Мы вернулись и первым делом я хочу начать с благодарности за конструктивные комментарии к последнему посту. Я пытаюсь уделить время рассмотрению любого комментария - в конце концов, я все еще учусь, поэтому я (по общему признанию) не все делаю правильно. Наверняка я могу сказать только то, что код компилируется на моей машине))).

Сделаем шаг назад 

Изучаем Go - Сборка DevLog Часть 03

Создаем блог разработчика

Итак, снова мы! Если вы следили за моими постами - добро пожаловать обратно, а если нет - то милости прошу на борт! На этот раз мы продолжим расширять базовый код, который написали для создания генератора статического сайта. На этой неделе мы перепрыгнули немного вперед и сейчас находимся на том моменте, когда мы можем преобразовать весь каталог хорошо отформатированных маркдаун файлов в HTML, готовый для размещения. Как бы там ни было, давайте продолжим изучать Go …

Углубляемся

Изучаем Go - Сборка DevLog Часть 02

Создаем блог разработчика

В прошлой статье мы с вами просто прочитали маркдаун файл и спарсили его содержимое. Это пусть и не очень классный, но необходимый первый шаг к созданию генератора статического сайта. На этот, для достижения нашей цели придется также усердно поработать. Начнем с того, что доработаем нашу структуру, представим новую функцию для некоторого базового тестирования загруженной разметки, а затем выведем настоящий реальный HTML. И, как обычно, если вы все еще не читали предыдущий пост, я настоятельно рекомендую прочитать его прямо сейчас, ведь сейчас мы просто возьмем код оттуда и будем его дополнять.

Переходим к кодингу

Изучаем Go - Сборка DevLog Часть 01

Создаем блог разработчика

Я хотел начать кросс-постинг своих сообщений из блога dev.to на свой собственный сайт, но пока не определился с тем, как это сделать. Существует несколько вариантов: можно установить новый экземпляр Ghost или использовать генератор статического сайта. Мне нравится Ghost! Даже совсем не хочется признаваться, что в последнее время я не работал с ним. Использовать его в моем «dev site» кажется немного неправильным, особенно когда вспоминается, что основным направлением сайта будет Go. Мне просто очень нравится возиться с этим всем. Gophercon или баста! (Вероятно, баста, потому что я не уверен, что могу позволить себе «go», хах-хах.)

Изучаем Go – Снова о модульном проектировании

Снова создаем модули 

Ранее мы создали нашу самую первую модульную версию пакета mailgunner. На этот раз давайте посмотрим, что нам нужно сделать в новой версии - мы немного изменим код, обновим readme, а затем создадим новую версию.

​​Изучаем Go – Наконец-то используем модули

Помните это?

mkdir $GOTPATH/github.com/shindakun/mailgunner
mkdir $GOTPATH/github.com/shindakun/mailgunner/client

Сомневаюсь, что помните, если не читали предыдущий пост об отправке электронной почты через MailGun. Прошлый вариант немного небрежный,  и я так сделал только для того, чтобы было проще использовать пакет локально с соответствующим примером. Мне это не очень понравилось и я до сих пор не опубликовывал этот пример на GitHub из-за этого. Итак, решил, что могу написать краткий пост как же сделать mailgunner правильным модулем Go.

Изучаем Go - Повторная отправка электронной почты через API

Список рассылки сообщений 

Ранее мы рассмотрели, как можем использовать шаблоны Go для быстрого использования размеченного текста. На этот раз используем новые навыки форматирования с пользой! Для этого мы притянем пакет mailgunner, который собрали несколько недель назад. Видите, я же говорил вам, что у меня были на него планы.

Сразу же приступим к созданию того, что мы делали в двух предыдущих постах, поэтому, возможно, если вы их еще не читали, захотите уделить время их прочтению.

Присоединяйся в тусовку

Поделитесь своим опытом, расскажите о новом инструменте, библиотеке или фреймворке. Для этого не обязательно становится постоянным автором.

Попробовать

В этом месте могла бы быть ваша реклама

Разместить рекламу