Ответ на "Реализуйте стек (LIFO)"
Стек можно реализовать с помощью объекта среза.
Для
#задача
Стек можно реализовать с помощью объекта среза.
package main
import "fmt"
func main() {
// Создание стека
var stack []string
// Добавление элементов
stack = append(stack, "world!")
stack = append(stack, "Hello ")
for len(stack) > 0 {
// Print top
n := len(stack) - 1
fmt.Print(stack[n])
// Pop
stack = stack[:n]
}
// Output: Hello world!
}
Сначала мы используем встроенную функцию append()
для реализации поведения присоединения. Далее с помощью len(stack)-1
мы извлекаем верхушку стека и выводим ее на экран.Для
pop
мы устанавливаем в качестве новой длины стека позицию выведенного верхнего значения, len(stack)-1
.#задача
👍7👎3
Go после Python: как я учу новый язык
Привет! Меня зовут Максим Чижов, я бэкенд-инженер. Несколько месяцев назад мне понадобилось в довесок к основному языку Python выучить также Go. Расскажу, с какими проблемами я столкнулся в процессе и как их решал, а также где я сейчас.
Подробнее
Привет! Меня зовут Максим Чижов, я бэкенд-инженер. Несколько месяцев назад мне понадобилось в довесок к основному языку Python выучить также Go. Расскажу, с какими проблемами я столкнулся в процессе и как их решал, а также где я сейчас.
Подробнее
👍9👎1
👍2🤬1
Ответ на «Что такое пакеты в программе Go?»
Пакеты
#собеседование
Пакеты
(pkg)
— это каталоги в рабочем пространстве Go, где содержатся исходные файлы или другие пакеты. Каждая функция, переменная и тип из исходных файлов хранятся в связанном с ними пакете. Каждый исходный файл Go принадлежит пакету, который объявляется в начале этого файла:package <packagename>Можно импортировать и экспортировать пакеты, чтобы повторно использовать экспортированные функции или типы с помощью:
import <packagename>Стандартный пакет Go — это
fmt
. Он содержит функциональность форматирования и вывода вроде Println()
.#собеседование
👍4💩1
Какой будет результат выполнения кода?
Anonymous Quiz
33%
nil (ноль)
39%
not nil (не ноль)
28%
compilation error (ошибка компиляции)
👍22🤯17😁2🤮1
Ребят, думаю пришло время и чат организовать: https://t.me/+UA9kQbQdpFxmZGY6
👍1🤮1
Пошаговая инструкция как создать NFT коллекцию на Golang + Ethereum (часть 1)
💎 Чат: https://t.me/+UA9kQbQdpFxmZGY6
История началась пол года назад, когда ко мне пришел мой старый знакомый художник и предложил создать NFT коллекцию на блокчейне Ethereum. Скажу сразу, я никогда не интересовался криптой и на тот момент понятие не имел, что такое NFT и как они устроены.
В этой статья я не буду рассказывать, что такое NFT и для чего они нужны, вместо этого я сосредоточусь на технической части, т.к. когда я начинал материала было крайне мало и приходилось додумывать некоторые решения самому.
Подробнее: https://habr.com/ru/post/595723/
💎 Чат: https://t.me/+UA9kQbQdpFxmZGY6
История началась пол года назад, когда ко мне пришел мой старый знакомый художник и предложил создать NFT коллекцию на блокчейне Ethereum. Скажу сразу, я никогда не интересовался криптой и на тот момент понятие не имел, что такое NFT и как они устроены.
В этой статья я не буду рассказывать, что такое NFT и для чего они нужны, вместо этого я сосредоточусь на технической части, т.к. когда я начинал материала было крайне мало и приходилось додумывать некоторые решения самому.
Подробнее: https://habr.com/ru/post/595723/
👍5🔥3🤮1
Какой будет результат выполнения кода?
Anonymous Quiz
12%
compilation error (ошибка компиляции)
59%
equal (равно)
28%
not equal (не равно)
👍33👎5💩3🔥1
👍15😁3🤮3👎2🔥1😢1
Пошаговая инструкция как создать NFT коллекцию на Golang + Ethereum (часть 2)
💎 Чат: @golang_talks
В прошлой статье, мы научились генерировать изображения для NFT коллекции, а сегодня я хочу рассказать, как и куда можно опубликовать сгенерированные изображения и их метаданные.
Потратив достаточно много времени на изучение существующих NFT проектов, я был свидетелем того, как разработчики публикуют свои изображения для NFT коллекций в централизованные файловые системы, такие как AWS s3, что вызывало у меня некоторое недоумение.
Подробнее: https://habr.com/ru/post/595763/
💎 Чат: @golang_talks
В прошлой статье, мы научились генерировать изображения для NFT коллекции, а сегодня я хочу рассказать, как и куда можно опубликовать сгенерированные изображения и их метаданные.
Потратив достаточно много времени на изучение существующих NFT проектов, я был свидетелем того, как разработчики публикуют свои изображения для NFT коллекций в централизованные файловые системы, такие как AWS s3, что вызывало у меня некоторое недоумение.
Подробнее: https://habr.com/ru/post/595763/
👍8🤮6❤1👏1
🤔8🤮2👍1😁1
Ответ на «Как в Go реализуется наследование?»
Это несколько каверзный вопрос: как такового наследования в Go нет, поскольку он не поддерживает классы.
Тем не менее поведение наследования можно сымитировать, задействовав композицию для определения начального поведения нового объекта на основе существующего объекта структуры. После создания нового объекта его функциональность можно будет расширить за рамки исходной структуры.
#собеседование
Это несколько каверзный вопрос: как такового наследования в Go нет, поскольку он не поддерживает классы.
Тем не менее поведение наследования можно сымитировать, задействовав композицию для определения начального поведения нового объекта на основе существующего объекта структуры. После создания нового объекта его функциональность можно будет расширить за рамки исходной структуры.
type Animal struct {Структура
// …
}
func (a *Animal) Eat() { … }
func (a *Animal) Sleep() { … }
func (a *Animal) Run() { … }
type Dog struct {
Animal
// …
}
Animal
содержит функции Eat(), Sleep()
и Run()
. Эти функции вкладываются в дочернюю структуру Dog
простым добавлением этой структуры в начало реализации Dog
.#собеседование
👍23🔥5💩4