Модули значительно улучшили процесс управления зависимостями в Go. Если вы новичок в Go Modules и хотите узнать больше о том, как начать, ознакомьтесь с официальной документацией .
Я хотел создать небольшое автономное веб-приложение на Go, противоположное обычному веб-приложению, где ресурсы будут обслуживаться отдельно через CDN или HTTP-сервер, такой как Nginx. Но если производительность не имеет значения или она нацелена на небольшой трафик, то наличие автономного приложения облегчает его развертывание и распространение, поскольку это просто исполняемый двоичный файл.
Когда я начал изучать Go, я быстро преодолел свое первое препятствие: рабочее пространство Go. Инструменты go предназначены для работы с кодом, который хранится в общедоступных репозиториях с использованием полного доменного имени и пути в качестве пространства имен и имени пакета. Например: github.com/rach/project-x
где github.com/rach
- это вид пространства имен, реализуемый структурой каталогов, а project-x
имя пакета также обеспечивается структурой каталогов.
Исходя из Python, я был удивлен, что не было такого простого решения, как [virtualenv]. Go действительно предлагает способ, но требует немного больше упражнений с кодом.
В этой статье я опишу, как я упростил свою жизнь, работая с Go с помощью небольшого сценария оболочки и используя [direnv] для автоматизации переключения рабочей области. Когда я писал этот пост, я мало что знал о Go, поэтому не стесняйтесь пролить свет на любую из моих ошибок.
Я обсуждал с коллегой простую проблему, которую его компания задавала во время интервью: «Учитывая строку, состоящую из открытых и закрытых скобок, определите, все ли скобки закрыты»
Я хотел сохранить внешний URL проекта в виде короткой ссылки (немного похожей на битовую), чтобы вредоносный URL мог глобально блокироваться в системе. Чтобы избежать угадывания URL-адреса, я использовал hashids, который генерируют короткие уникальные непоследовательные идентификаторы из чисел. С помощью хешей я могу легко преобразовать идентификатор первичного ключа в альтернативный идентификатор, который может быть предоставлен.
В наши дни все говорят о хуках React. Работа с ними требует небольшого изменения мышления, когда вы так долго работали с классами компонентов React. Команда React специально сказала, что они продолжат поддерживать классы, так зачем использовать хуки?
Во время моего раннего путешествия в React я наткнулся на концепцию «виртуального DOM» и был довольно озадачен. Я понял, что во время изучения HTML, CSS и Javascript был «DOM», но что за черт был виртуальный DOM и зачем он нам нужен в React?
React использует такие сборщики, как WebPack, для упаковки своего кода и его развертывания в браузере. Этот пакет используется браузером для визуализации вашего приложения React.
Теперь представьте, что вы создаете приложение с сотнями компонентов. По умолчанию, упаковщик объединит все эти компоненты в один bundle.js и загрузит ваше приложение. Это, в свою очередь, увеличит первоначальный размер бандла, что приведет к увеличению времени загрузки.
Допустим, вы решили сохранить данные в базе данных как json или jsonb и обнаружили, что вы просто создали для себя новые проблемы, которых у вас не было раньше. Ты не одинок.
Python имеет много конструкций, которые достаточно просты для изучения и использования в нашем коде. Тогда как есть некоторые конструкции, которые всегда смущают нас, когда мы сталкиваемся с ними в нашем коде.
Есть некоторые, которые даже опытные программисты не могут понять. *args
, **kwargs
и декораторы - это некоторые конструкции, которые попадают в эту категорию.
Присоединяйся в тусовку
Поделитесь своим опытом, расскажите о новом инструменте, библиотеке или фреймворке. Для этого не обязательно становится постоянным автором.
В этом месте могла бы быть ваша реклама
Разместить рекламу