Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
#Круги добра
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Потеряшки: ищите потерянные предметы без времени! Расслабляйтесь, исследуйте, находите.

Потеряшки - поиск предметов

Головоломки, Казуальные, Детские

Играть

Топ прошлой недели

  • SpongeGod SpongeGod 1 пост
  • Uncleyogurt007 Uncleyogurt007 9 постов
  • ZaTaS ZaTaS 3 поста
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
1
ru1000
ru1000
2 месяца назад
Серия Игрушечный программист - мой опыт Construct 3

14. Работа с массивами - Порядок в проекте Construct 3 - собственный взгляд⁠⁠

Добрый день!

Меня зовут Руслан.
С 2016 года делаю игры в редакторе Construct 3.

1) Если нужно записать в массив набор данных и неизвестно, какое именно там будет количество строк (например, загружаем из массива JSON), стараюсь делать это "гибким" способом.

Изначально задаю нулевую ширину массива (высота обычно известна). Это одновременно обнуляет массив, если он уже был заполнен.

14. Работа с массивами - Порядок в проекте Construct 3 - собственный взгляд Проект, Gamedev, Браузерные игры, Construct 3, Массивы, Порядок

Сбрасываем массив.

Затем в цикле вставляю новые элементы в массив (одновременно задаётся 0-й столбец) и затем задаю им остальные столбцы.

14. Работа с массивами - Порядок в проекте Construct 3 - собственный взгляд Проект, Gamedev, Браузерные игры, Construct 3, Массивы, Порядок

Заполняем массив.

Таким образом у нас не будет ситуации, когда по умолчанию массив имеет ширину 100 строк, а из них используется только 5.

2) Иногда бывает, что ширина массива уже известна и можно просто заполнять существующие ячейки.

14. Работа с массивами - Порядок в проекте Construct 3 - собственный взгляд Проект, Gamedev, Браузерные игры, Construct 3, Массивы, Порядок

Заполнение фиксированного массива.

Можно конечно использовать и For Each. Тут дело вкуса. Мне он показался менее вкусным :), поскольку не так очевидно отслеживается текущий шаг цикла, как если использовать конкретный счётчик "i".

Как обычно, Телеграм:
https://t.me/toyprogrammer

Показать полностью 2
[моё] Проект Gamedev Браузерные игры Construct 3 Массивы Порядок
0
3
ru1000
ru1000
3 месяца назад
Серия Игрушечный программист - мой опыт Construct 3

7. Управление объектами - Порядок в проекте Construct 3 - собственный взгляд⁠⁠

Добрый день!

Меня зовут Руслан.
С 2016 года делаю игры в редакторе Construct 3.

Сегодня напишу немного об управлении объектами в Construct 3.

1) Для всех объектов создаю 3 разных подкаталога:

7. Управление объектами - Порядок в проекте Construct 3 - собственный взгляд Gamedev, Браузерные игры, Проект, Порядок, Объект, Массивы, Переменные, Длиннопост, Construct 3

Каталоги с объектами.

  • В Interface у меня хранятся кнопки, окна, фоны и всё, что не участвует непосредственно в игровом процессе.

  • В Objects лежат объекты, составляющие основу игровых механик: персонажи, оружие, всё, что летает по игровому полю, а также массивы.

  • В Object Types кидаю поведения и плагины (Touch, Keyboard, AJAX и прочие вещи, не выносящиеся на игровое поле).

2) Объекты называю с заглавной буквы.

7. Управление объектами - Порядок в проекте Construct 3 - собственный взгляд Gamedev, Браузерные игры, Проект, Порядок, Объект, Массивы, Переменные, Длиннопост, Construct 3

Объекты.

3) Количество однообразных объектов в проекте (кнопок, текстов, фонов и т.д.) стараюсь ограничивать насколько это возможно, но не более того.

4) Для различения однообразных объектов (кнопок, надписей и др.) добавляю им собственные переменные class, classSub, num, id.

7. Управление объектами - Порядок в проекте Construct 3 - собственный взгляд Gamedev, Браузерные игры, Проект, Порядок, Объект, Массивы, Переменные, Длиннопост, Construct 3

Собственные переменные объектов.

Затем выбираю нужные объекты по их переменным.

7. Управление объектами - Порядок в проекте Construct 3 - собственный взгляд Gamedev, Браузерные игры, Проект, Порядок, Объект, Массивы, Переменные, Длиннопост, Construct 3

Выбор нужного объекта по его переменной.

5) С помощью собственной переменной state включаю-выключаю отдельные кнопки, когда это нужно.

И потом отслеживаю, если у кнопки включена state = ”on”, то нажатие на кнопку вызывает реакцию.

Иначе ничего не происходит.

7. Управление объектами - Порядок в проекте Construct 3 - собственный взгляд Gamedev, Браузерные игры, Проект, Порядок, Объект, Массивы, Переменные, Длиннопост, Construct 3

Использование собственных переменных кнопок для их игнорирования.

6) Для текстовых объектов использую несколько типовых имён:

  • TextButton - текстовая кнопка (часто располагается поверх пустой резиновой кнопки),

  • TextInfo - изменяющийся текст (таймеры, счётчики, очки, патроны и т.п.),

  • TextTest - тестовый текст - помогает отслеживать параметры игры при ошибках. Обычно он скрыт и включается по какой-то кнопке.

7) Для графических объектов использую типовые имена:

  • Button - кнопки,

  • Mask - маски,

  • Array - массивы,

  • Background - фоны и т.д.

Если нужно разнообразить - добавляю в конец имени уточняющие слова. На примере массивов:

7. Управление объектами - Порядок в проекте Construct 3 - собственный взгляд Gamedev, Браузерные игры, Проект, Порядок, Объект, Массивы, Переменные, Длиннопост, Construct 3

Названия массивов.

Так их проще вспомнить, если нужно подставить имя объекта в какую-то переменную.

Пока всё, что имею сказать по поводу объектов.


Как обычно, Телеграм:
https://t.me/toyprogrammer

Показать полностью 5
[моё] Gamedev Браузерные игры Проект Порядок Объект Массивы Переменные Длиннопост Construct 3
0
10
TechSavvyZone
TechSavvyZone
8 месяцев назад

1971: Многоразовое программируемое ПЗУ обеспечивает гибкость итеративного проектирования⁠⁠

1971: Многоразовое программируемое ПЗУ обеспечивает гибкость итеративного проектирования Технологии, IT, Раритет, Компьютер, Компьютерное железо, Изобретения, Инженер, История развития, Электроника, Пзу, Массивы, Длиннопост

Фотография кристалла устройства EPROM i1702

Разработанная Довом Фроманом конструкция ПЗУ, стираемого ультрафиолетовым светом, представляет собой важный инструмент проектирования для быстрой разработки систем на базе микропроцессоров, называемых стираемым программируемым постоянным запоминающим устройством (EPROM).

Ранние массивы памяти только для чтения (ПЗУ) на интегральных схемах предлагали энергонезависимую форму полупроводниковой памяти (NVM), но требовали индивидуальной маски для каждой конструкции. В 1970 году Radiation Inc. представила 512-битную биполярную ТТЛ-программируемую пользователем ПЗУ (ППЗУ), которая позволяла разработчикам вводить код самостоятельно, «прожигая» металлические плавкие перемычки с помощью внешнего программатора, но могла использоваться только один раз. Monolithic Memories, Motorola и Signetics разработали ППЗУ с никель-хромовыми предохранителями емкостью от 1 до 16 Кбит. AMD, Intel и TI использовали альтернативные материалы предохранителей.

1971: Многоразовое программируемое ПЗУ обеспечивает гибкость итеративного проектирования Технологии, IT, Раритет, Компьютер, Компьютерное железо, Изобретения, Инженер, История развития, Электроника, Пзу, Массивы, Длиннопост

Программатор Intel EPROM 1971 года выпуска

В 1967 году Давон Канг и Саймон Сзе из Bell Labs описали, как плавающий затвор полупроводникового устройства МОП можно использовать для ячейки перепрограммируемого ПЗУ. В начале 1970-х годов компания General Instruments из Хиксвилля, штат Нью-Йорк, адаптировала технологию MNOS (металл-нитрид-оксид-полупроводник) для создания небольших электрически изменяемых EAROM для ТВ-тюнеров. В 1971 году компания Intel анонсировала 1702, 2048-битную стираемую пользователем PROM (EPROM), разработанную Довом Фроманом, которую можно было использовать многократно, стирая рисунок ультрафиолетовым светом. Поколения УФ-EPROM с многомиллионным объемом памяти от Intel и других компаний нашли широкое применение для хранения и изменения программных кодов в качестве встроенного ПО в системах на базе микропроцессоров.

Работая в Hughes Microelectronics, Ньюпорт-Бич, Калифорния, с 1976 по 1978 год, Эли Харари продемонстрировал тонкую оксидную плавающую электрически стираемую ячейку ПЗУ (EEPROM), которая устранила необходимость внешнего стирания УФ-излучением. Джордж Перлегос применил технику тонкого оксида для первой EEPROM Intel в 1978 году. В Toshiba в 1980 году Фудзио Масуока модифицировал архитектуру EEPROM, чтобы увеличить скорость программирования, соответственно назвав ее «флэш». Затем в 1987 году он продолжил с более дешевой структурой NAND, что привело к появлению твердотельного диска (SSD) и повсеместной USB-флеш-памяти «stick» . Toshiba представила коммерческие флэш-продукты в 1987 году, а затем Intel в 1988 году. Одновременно с этими разработками флэш-память нашла широкое применение в таких персональных устройствах, как мобильные телефоны, камеры и навигационные системы GPS.

Кому интересно:

Предыдущая статья о ПЗУ

Показать полностью 2
Технологии IT Раритет Компьютер Компьютерное железо Изобретения Инженер История развития Электроника Пзу Массивы Длиннопост
0
FreshAngry007
1 год назад

Массивы и go⁠⁠

В Go массивы являются одной из базовых структур данных. Они представляют собой упорядоченную последовательность элементов одного типа, фиксированной длины. Важно понимать, что размер массива является частью его типа, что отличает массивы в Go от динамических слайсов, которые могут изменять свой размер во время выполнения программы.

Основные характеристики массивов в Go:

  • Фиксированный размер: Длина массива определяется при его объявлении и не может быть изменена. Это означает, что добавление элементов в массив или удаление из него невозможно без создания нового массива.

  • Однородность: Все элементы массива должны быть одного и того же типа.

  • Инициализация: Массивы могут быть инициализированы явно при объявлении или позже в коде. Также Go поддерживает инициализацию массива с помощью синтаксиса литералов.

  • Производительность: Доступ к элементам массива происходит очень быстро, так как элементы хранятся в непрерывной области памяти.

Объявление и инициализация массива:

var arr [5]int // Объявление массива из 5 целых чисел, инициализированного нулями

arr2 := [3]int{1, 2, 3} // Объявление и инициализация массива с тремя элементами

arr3 := [...]int{1, 2, 3, 4, 5} // Использование ... позволяет компилятору определить длину массива

Работа с элементами массива:

arr[0] = 10 // Присвоение значения первому элементу массива

fmt.Println(arr[1]) // Доступ к элементу массива

Передача массивов в функции:

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

func printArray(arr [3]int) {

for _, value := range arr {

fmt.Println(value)

}

}

myArray := [3]int{10, 20, 30}

printArray(myArray) // Передача массива в функцию

Использование массивов в Go имеет несколько нюансов и потенциальных "подводных камней", на которые стоит обратить внимание:

1. Фиксированный размер

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

2. Передача массива функции по значению

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

3. Инициализация массивов неявными значениями

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

4. Ограниченная поддержка встроенных операций

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

5. Неудобство в использовании

Из-за строгих ограничений на размер и тип, работа с массивами может быть менее удобной, чем с слайсами, особенно когда требуется динамическое изменение размера коллекции или её частая передача между функциями.

Решения

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

Показать полностью
[моё] Программирование Golang IT Текст Массивы
0
751
tproger.official
tproger.official
1 год назад
Типичный программист

Знания массивов множат боль⁠⁠

Знания массивов множат боль
[моё] IT IT юмор Программирование Картинка с текстом Программист Отношения Код Массивы
83
shaitan.vladimir
shaitan.vladimir
2 года назад

Клонирование или копирование⁠⁠

Клонирование или копирование

Клонирование или копирование - очень распространенная операция в JavaScript. На данный момент самым популярным способом копирования является использование оператора spread(...). Он очень удобен и при изменении скопированного массива, исходный не будет изменяться. 

#js #array #datatypes #массивы

YouTube Channel | LinkedIn | Instagram | Telegram

Клонирование или копирование Кросспостинг, Pikabu Publish Bot, Javascript, Массивы
Кросспостинг Pikabu Publish Bot Javascript Массивы
0
55
Aeleagnus
Aeleagnus
4 года назад
Лига Сельского хозяйства

Будни паркового хозяйства. Подготовка к посадочному сезону⁠⁠

Чтобы много не писать — покажу поездку по питомникам Зелёный Горизонт, Клевер и Еврогазон

Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост
Будни паркового хозяйства. Подготовка к посадочному сезону Парк, Трава, Цветы, Массивы, Проект, Длиннопост

Больше всех понравился Пит. Клевер; ассортимент богатый, но мало(

Подробности — расскажу в комментариях, если нужно.

Хорошего вечера пятNizz 'ы)

Показать полностью 22
[моё] Парк Трава Цветы Массивы Проект Длиннопост
53
1193
Railroadman
4 года назад

Что я узнал о работе в ИТ за последнюю неделю на пикабу⁠⁠

0. Рынок перегрет. Все бросились проходить говнокурсы, после которых осаждают испуганных работодателей. Те прячутся за столами и отстреливаются тестовыми заданиями и отказами. Редкий счастливец найдет работу. Остальные помыкавшись, идут в управдомы. Владельцы курсов потирают руки, сжимающие пачки денег. Безнадежно. Не надо. Вы не найдете работу. Вы тупые, и можете только одностраничник сверстать, за такое дядя Ашот тебе заплатит кило апельсинов, если очень попросишь, а о большем не мечтай.
1. Но работы полно, и компании отрывают с руками даже вчерашнего кассира из Макдоналдса, который знает как создавать переменные и вывести в консоль их сумму. Как минимум джуниором возьмут всегда, если накропаешь хоть что-то свое, и сумеешь не пустить слюну изо рта хотя бы в течении того часа, что тебя будут спрашивать про сложность сортировки пузырьком. Нехватка кадров, понимаете ли.
2. Изучить что угодно не такая уж проблема. У всех есть знакомый, который однажды сел, выучил, походил по собеседованиям, уже три года работает, сидит в коворкинге на Бали и доволен. Да и в самом деле, это же не симфонию написать - вот метод, он делает так, возвращает это, используется для вот того. Это надо просто знать и немножко уметь. На реальной работе за месяц разберешься со всем, что нужно, а через полгода пойдешь на +30%, любая компания будет рада, дальше только счастье, бутерброды с авокадо и коммунизм на всей земле.
3. Но это тебе не это. Вообще-то неплохо знать математику, теорию графов, усвоить "Чистый код" и несколько других книг, в процессе чтения засыпая не чаще двух раз за вечер. Хорошо бы понимать как работает браузер/компилятор/сервер, неплохо бы знать БД, всей душой понимать объектную ориентированность и чем хорош лисп кроме того что на нем весело общаться в переписке. Молчу про количество технологий, которые сейчас обслуживают кодинг, начиная с гита и заканчивая фреймворками для тестов. Список того что неплохо бы знать, займет страницу А4, и когда ты это все изучишь в достаточной мере, чтобы претендовать хотя бы на 30к до вычета, тебе уже не нужны будут эти 30к, потому что ты просветлишься и пойдешь ловить бабочек на берегу Янцзы.
4. Информации что учить - море, это море называется интернет, прыгай в него и плескайся, там разберешься.
5. Но в интернете ты научишься только кнопочки верстать, и эти полгода просто потеряешь. Курсы говно. Видео на ютьюбе? не смеши. Сам тоже ничего не наковыряешь, любой джун с неделей стажа засмеет твой спагетти-код. Настоящие знания завоевываются в универах и годах труда. Либо просто на работе. Но для нее нужен опыт работы.

6. Да, если у тебя есть хоть какой-то опыт, то считай жизнь удалась.
7. Но тебе не дадут получить опыт если у тебя нет опыта. (Реши-ка эту задачку, она потруднее перебора массива чисел с выводом каждого пятого, которое делится на кошачью жопу за время О(1).)
8. Или дадут. Как повезет.
9. ИТ становится новым стендапом. Скоро любая бабушка будет знать чем отличается Java от Javascript, а над мемчиками про джунов уже хрюкает весь пикабу. Это приводит к тому, что толпы бывших охранников и таксистов думают "а че там учить, че я, по кнопкам пальцами не попаду штоль?" - и бросаются проходить говнокурсы, после которых осаждают испуганных работодателей, а те прячутся за столами и отстреливаются, и отстреливаются...

Показать полностью
[моё] Карьера Массивы Надоело Текст Работа IT
497
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии