Архив рубрики: Программирование
Главное в программировании: ПОИСК ОШИБОК
Код по мотивам моего недавнего видео: https://youtu.be/ewhlgo1B8dI Три этапа развития программиста: Сначала мы учимся реализовывать ФУНКЦИОНАЛ Затем — проектировать грамотную СТРУКТУРУ кода И наконец, постигаем искусство ПОИСКА ОШИБОК Пример кода из видео:
Отключить телеметрию языка Go
Оказывается, Го (а именно gopls aka местный language server) собирает телеметрию, поганец. Сбор типа ононимных данных о том, как мы прогаем. Чтобы отключить: C:\Users\<user>\AppData\Roaming\go\telemetry создаем там файл mode (без расширения!) внутри файла пишем одно слово: off Такие вот шторки на … Читать далее
Архитектура в программировании
По следам прошлого видео: «Архитектура в программировании: грабли и шишки«. В программировании, как и в строительстве (ну и везде — от стрижки овец до забивания гвоздей для фрау Дуб), основа всего — это архитектура. Она определяет устойчивость и функциональность конечного … Читать далее
Прототип — ключ к успеху в программировании
Если вы разрабатываете сложный (соло) проект из множества компонентов, не пытайтесь сразу все эти компоненты полноценно реализовать. Делайте заглушки-прототипы. Это сохранит вашу стамину и не даст выгореть на проекте раньше времени. Также используйте бумагу. МНОГО БУМАГИ. Делайте таблицы и схемы, … Читать далее
Язык Go. Про руны (тип данных), PostgreSQL и JS
Если вы делаете на Go сетевое приложение, которое работает с базами данных и/или javascript — нужно быть аккуратным при использовании типа данных rune. К примеру, в PostgreSQL нет типа данных, который соответствует rune; там такие варианты хранение rune: хранить в … Читать далее
Отзыв на CS50 курс по программированию
Изучение программирования с нуля может быть сложным, но полезным опытом, и прохождение курса CS50 — отличный способ начать. CS50 — это популярный вводный курс по компьютерным наукам, предлагаемый Гарвардским университетом, который охватывает широкий спектр концепций и инструментов программирования. Делюсь своим … Читать далее
Язык Go. Сумма последовательных чисел
Задача состоит в том, чтобы найти в массиве целых чисел последовательность последовательных чисел, сумма которых равна n. Наша программа будет считывать список целых чисел (например, 5 2 3 4 6 1 4 10 1), за которым следует одно целое число … Читать далее
Язык Go. Упражнение на карты
На основе списка походов в данж найти топ игрока в гильдии 🙂 Пример ввода:
Язык Go. Упражнения на срезы
Разберем несколько примеров программ на Го по срезам (slice). Начнем.. Пользователь вводит два ряда чисел. Наша задача собрать их в одном срезе, удалив дубликаты. В качестве упражнения, будем использовать не карты, а обычные срезы. Код:
Язык Go. Сортировка выбором
Сортировка выбором (Selection sort) — простой алгоритм сортировки, который многократно выбирает минимальный элемент из неотсортированной части списка и меняет его местами с первым неотсортированным элементом. Пример кода на Го:
Язык Go. Сортировка пузырьком
О… как много в этом «чпоке»!.. Сортировать «пузырьком» нас учили еще в школе. Почему бы не замутить код этой сортировки на Го? 😀 И пусть она редко оказывается полезной — это весьма годное упражнение для начинающих. Наша программа будет принимать … Читать далее
Язык Go. Алгоритм Фишера-Йетса
Пользователь вводит через пробел несколько любых чисел, букв, слов или чего угодно. Ну допустим даже он вводит номиналы карт (раздача в покере), типа A 3 J Q 10. Наша задача эти карты перемешать. Для этого оч клёво (и просто) использовать … Читать далее
Язык Go. Консольный калькулятор
Напишем простенький консольный калькулятор, производящий базовые арифметические операции. Сначала мы задаем ему числа, с которыми мы хотим проводить операции при помощи команды add <число> (можно задать несколько чисел). Затем мы можем использовать команды inc, acc, sub, mul, div, mod; чтобы … Читать далее
Язык Go. Интерфейсы
Самая зубодробительная для новичков в golang — это интерфейсы. Приведу тут примеры кода, который я разбирал, чтобы их выкурить, надеюсь и вам поможет. Идея такая — смотрим код; потом закрываем его и по памяти пытаемся написать с нуля по данному … Читать далее
Язык Go. Замыкания и Числа Фибоначчи
Задание номер 26 в Туре Го. Реализуйте функцию Фибоначчи, которая возвращает функцию (замыкание), возвращающую последовательные числа Фибоначчи (0, 1, 1, 2, 3, 5, …). Решение:
Язык Go. Карты (тип maps)
Итак, вот и упражнение 23 из Тура Го. Реализуйте функцию WordCount. Она должна возвращать карту (тип данных map) подсчетов каждого «слова» в строке s. Функция wc.Test запускает набор тестов против предоставленной функции и выводит успех или неудачу. Для выполнения задания … Читать далее
Язык Go. Двумерные срезы (2D)
Из главы номер 18 тура в Го.. Вообще, задания в этом туре весьма зудодробительные B) Итак… Реализуйте функцию Pic. Она должна вернуть фрагмент длины dy, каждый элемент которого представляет собой фрагмент dx 8-битных беззнаковых целых чисел. Когда вы запустите программу, … Читать далее