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

Пикман

Аркады, На ловкость, 2D

Играть

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

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

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

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

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

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

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

Javascript + Разработка

С этим тегом используют

Программирование IT HTML IT юмор Программист Frontend CSS Gamedev Инди игра Инди Игры Unity Все
136 постов сначала свежее
Блог компании
Finder
Finder
1 год назад

ТОП-28 курсов по Javascript + бесплатное онлайн-обучение программированию на Javascript с нуля⁠⁠

JavaScript стал невероятно популярным языком среди разработчиков во всем мире, и на это есть веские причины. Его хорошо структурированная кодовая база обеспечивает улучшенную читаемость, доступность и производительность. Курсы javascript сегодня приобретают особое значение, поскольку все больше людей интересуется работой в области кодирования.

ТОП-28 курсов по Javascript + бесплатное онлайн-обучение программированию на Javascript с нуля Обучение, Разработка, Программирование, Javascript, Длиннопост, Блоги компаний

Kursfinder проанализировал свыше 60 предложений и выбрал 28 наиболее информативных и практических программ по программированию и тестированию на Javascript. Самый полный и актуальный список курсов по Javascript вы найдете на нашем сайте.

ТОП-10 лучших курсов javascript в 2024 году

  1. Курс JavaScript от Skillbox — самая универсальная программа, которая подходит для любого сегмента студентов.

  2. Курс Fullstack-разработчик на JavaScript от Нетология — лучшее обучение с нуля с дальнейшим трудоустройством.

  3. Курс Автоматизированное тестирование веб-приложений на JavaScript от Skillbox — самое углубленное изучение тонкостей языка.

  4. Профессия: Fullstack Javascript Разработчик от ProductStar — лучшее обучение javascript с нуля для тех, кто хочет научиться создавать сайты и приложения.

  5. Онлайн-курс Javascript-разработчик от Бруноям — самые расширенные профессиональные возможности.

  6. Курс Программирование на Javascript от Coddy School — лучшее обучение веб-разработке и IT-технологиям для новичков.

  7. Курс Разработчик JavaScript. Углубленный уровень от OTUS.ru — лучший практический курс для web-разработчиков по продвинутым возможностям JS и его фреймворков.

  8. Онлайн-курсы JavaScript от Международная Школа Профессий — лучший практический курс написания кодов для пользовательских приложений.

  9. Курс Инженер по автоматизированному тестированию на JavaScript от Хекслет — самая подходящая программа для опытных программистов, желающих расширить спектр возможностей.

  10. JavaScript-разработчик от Slurm — самый обширный практикум программирования и углубленное изучение тонкостей javascript.

Конкуренция среди программистов очень высокая. В Интернете есть много разработчиков кода, но лишь немногие попадают в элитную группу. Именно поэтому среди программистов любого уровня квалификации, обучение всегда востребовано.

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

Онлайн-курсы javascript

  1. Курс JavaScript | Skillbox

Универсальная платформа для специалистов разных направлений: верстальщиков и начинающих фронтенд-разработчиков. Курс обучает базовым навыкам, а также знакомит с основными инструментами работы: созданием динамических элементов на сайте, обработкой событий в браузере, тестированием кодов, владением ООП.

ТОП-28 курсов по Javascript + бесплатное онлайн-обучение программированию на Javascript с нуля Обучение, Разработка, Программирование, Javascript, Длиннопост, Блоги компаний
  • Стоимость: 4 086 р. в месяц (в рассрочку на 12 месяцев)

  • Длительность: 4 месяца

  • Формат обучения: видеоуроки, домашние задания

  • Сертификат: есть

Преимущества курса:

  • наличие базовой и продвинутой программы обучения;

  • постоянный контакт с преподавателями;

  • широкий спектр навыков.

Недостатки курса:

  • без гарантий трудоустройства;

  • минимальное количество практических заданий.

Программа обучения:

  • Базовый уровень: изучение переменных, работа с числами, массивы, циклы и функции

  • Продвинутый уровень: глубокое изучение браузерных событий, механизмы работы JavaScript, обработка ошибок в коде

Ознакомиться с полной программой курса >>>

_______________________________________________________________

2. Курс Fullstack-разработчик на JavaScript| Нетология

Курс предлагает широкий спектр навыков, помогает освоить фронтенд-разработку на HTML, CSS и Javascript. Автор: опытный специалист Печекладова Елизавета. Курс подходит для клиентов с опытом работы и узких специалистов.

ТОП-28 курсов по Javascript + бесплатное онлайн-обучение программированию на Javascript с нуля Обучение, Разработка, Программирование, Javascript, Длиннопост, Блоги компаний
  • Стоимость: 140 800 р.

  • Длительность: 17–19 месяцев

  • Формат обучения: онлайн-уроки и практика

  • Сертификат: есть

Преимущества курса:

  • трудоустройство;

  • углубленное обучение узкому профилю;

  • детализированная программа с возможностью формирования портфолио;

  • клиенты могут претендовать на должность младшего специалиста уже во время обучения.

Недостатки курса:

  • нет общего ознакомительного курса;

  • сложные тестирования.

Программа обучения:

  • Изучение HTML, CSS и JavaScript

  • Разработка и написание кодов на PHP, Node.JS и Python

  • Консультация по определению специализации

  • Разработка бэкенд часть веб-приложений на выбранном языке программирования

  • Детальная проработка основ и особенностей работы с языком программирования

Ознакомиться с полной программой курса >>>

_______________________________________________________________

3. Курс Автоматизированное тестирование веб-приложений на JavaScript | Skillbox

Обучение программированию на JavaScript, курс научит работать с фреймворками Selenium Webdriver и Cypress. Подходит junior- и middle-тестировщикам, а также тем, кто проходит курс «профессия-тестировщик». Клиенты получают множество возможностей в дальнейшей работе, новые навыки программирования, универсальные возможности в разных сферах.

ТОП-28 курсов по Javascript + бесплатное онлайн-обучение программированию на Javascript с нуля Обучение, Разработка, Программирование, Javascript, Длиннопост, Блоги компаний
  • Стоимость: 3575 р. в месяц (рассрочка на 12 месяцев)

  • Длительность: 4 месяца

  • Формат обучения: видеолекции и домашние задания

  • Сертификат: есть

Преимущества курса:

  • обширный практикум: 236 модулей;

  • разные специальности;

  • сертификат о прохождении курсов.

Недостатки курса:

  • без гарантий трудоустройства.

Программа обучения:

  • Базовые навыки

  • Продвинутые знания

  • Итоговые проекты (практика с реальными проектами)

Ознакомиться с полной программой курса >>>

_______________________________________________________________

4. Профессия: Fullstack Javascript Разработчик | ProductStar

Курсы программирования javascript для новичков. Обучение базовым навыкам и особенностям языка с нуля. Полный спектр возможностей, теория / практика, дополнительные услуги, сопровождение специалистов. Курс подходит для всех, предполагает полное обучение с регулярными практическими заданиями.

ТОП-28 курсов по Javascript + бесплатное онлайн-обучение программированию на Javascript с нуля Обучение, Разработка, Программирование, Javascript, Длиннопост, Блоги компаний
  • Стоимость: 125 тысяч рублей

  • Длительность: 14 месяцев

  • Формат обучения: теоретические уроки и практические задания

  • Сертификат: есть

Преимущества курса:

  • гарантия трудоустройства;

  • обширный обучающий курс по разным направлениям;

  • обучение английскому языку.

Недостатки курса:

  • практические задания на реальных проектах.

Программа обучения:

  • Основы верстки

  • Работа с Javascript

Ознакомиться с полной программой курса >>>

_______________________________________________________________

5. Онлайн-курс Javascript-разработчик  | Бруноям

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

ТОП-28 курсов по Javascript + бесплатное онлайн-обучение программированию на Javascript с нуля Обучение, Разработка, Программирование, Javascript, Длиннопост, Блоги компаний
  • Стоимость: 3325 в месяц (рассрочка на 12 месяцев)

  • Длительность: 4 месяца

  • Формат обучения: видеолекции и проекты

  • Сертификат: есть

Преимущества курса:

  • сертификат об окончании;

  • полный цикл обучения основам программирования;

  • сопровождение специалистом в течение 1 года после окончания.

Недостатки курса:

  • слишком много тем в сжатые сроки;

  • без гарантий трудоустройства.

Программа обучения:

  • 11 модулей разного типа и сложности

  • 2 проекта

Ознакомиться с полной программой курса >>>

_______________________________________________________________

6. Курс Программирование на Javascript | Coddy School

Курс для новичков разного возраста. Обучение базовым навыкам, ознакомление с особенностями языка программирования, дополнительные задания. Платформа предлагает сразу несколько курсов по нарастающей. Клиенты могут подобрать персональный тариф, и заниматься в индивидуальном порядке со специалистом.

ТОП-28 курсов по Javascript + бесплатное онлайн-обучение программированию на Javascript с нуля Обучение, Разработка, Программирование, Javascript, Длиннопост, Блоги компаний
  • Стоимость: от 849 до 1099 рублей в час

  • Длительность: 3 месяца

  • Формат обучения: офлайн, онлайн, групповые / индивидуальные занятия

  • Сертификат: есть

Преимущества курса:

  • обучение базовым навыкам, ознакомление с платформой;

  • широкий диапазон домашних заданий;

  • индивидуальная подготовка;

  • практическое программирование;

  • сертификат об окончании курса.

Недостатки курса:

  • длительность урока составляет всего 1 час, чего не хватает для детей.

Программа обучения:

  • Ознакомление с особенностями javascript

  • Базовая теория

  • Практика и домашние задания

  • Общие проекты, проверка знаний

Ознакомиться с полной программой курса >>>

_______________________________________________________________

7. Курс Разработчик JavaScript. Углубленный уровень  | OTUS.ru

Курс деталью проработан и подходит для клиентов с опытом работы. Позволяет расширить спектр навыков и арсенал инструментов, а также увеличить спектр профессиональных возможностей. Платформа предлагает практический курс для web-разработчиков по продвинутым возможностям JS и его фреймворков. Активно используются библиотеки Java, что помогают разработчикам получить доступ к решениям или компонентам, которые можно использовать для решения любой проблемы.

ТОП-28 курсов по Javascript + бесплатное онлайн-обучение программированию на Javascript с нуля Обучение, Разработка, Программирование, Javascript, Длиннопост, Блоги компаний
  • Стоимость: 11 500 рублей в месяц

  • Длительность: 10 месяцев

  • Формат обучения: вебинары, практика, активное комьюнити

  • Сертификат: нет

Преимущества курса:

  • углубленное изучение специфики работы;

  • широкий спектр инструментов;

  • возможность корпоративного обучения;

  • сертификаты об окончании курса.

Недостатки курса:

  • подходит исключительно опытным специалистам с соответствующей базой знаний.

Программа обучения:

  • Возможности JavaScript

  • Node.js

  • Vue.js

  • Angular

  • React

  • Аспекты архитектуры FrontEnd приложений

Ознакомиться с полной программой курса >>>

_______________________________________________________________

8. Онлайн-курсы JavaScript  | Международная Школа Профессий

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

ТОП-28 курсов по Javascript + бесплатное онлайн-обучение программированию на Javascript с нуля Обучение, Разработка, Программирование, Javascript, Длиннопост, Блоги компаний
  • Стоимость: 25 600 рублей

  • Длительность: 2 месяца

  • Формат обучения: онлайн

  • Сертификат: есть

Преимущества курса:

  • сертификат об окончании курса;

  • дополнительная проработка навыков на реальных проектах;

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

Недостатки курса:

  • без гарантий трудоустройства.

Программа обучения:

  • 12 блоков обучения разным темам и инструментам

  • Сетевые запросы

  • Подведение итогов

Ознакомиться с полной программой курса >>>

_______________________________________________________________

9. Курс Инженер по автоматизированному тестированию на JavaScript  | Хекслет

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

ТОП-28 курсов по Javascript + бесплатное онлайн-обучение программированию на Javascript с нуля Обучение, Разработка, Программирование, Javascript, Длиннопост, Блоги компаний
  • Стоимость: по запросу

  • Длительность: 10 месяцев;

  • Формат обучения: онлайн, общение с наставником

  • Сертификат: есть

Преимущества курса:

  • сертификат об окончании курса;

  • широкий спектр дополнительных задач;

  • дальнейшее трудоустройство;

  • практические занятия составляют 70% обучения.

Недостатки курса:

  • стоимость курса только по запросу.

Программа обучения:

  • Ознакомление с особенностями javascript

  • Теория и практические задания на реальных проектах от партнеров

Ознакомиться с полной программой курса >>>

_______________________________________________________________

10. JavaScript-разработчик  |  Slurm

Курс предлагает обучение новым инструментам, обеспечивает образовательные материалы по широкому спектру работы программистов. Клиентов сопровождают наставники, практические задания выполняются под руководством ментора. Клиенты могут пройти за 4 месяца, если уделять обучению 10–14 часов в неделю. Многое зависит от опыта, скорости освоения материала и выполнении практических заданий.

ТОП-28 курсов по Javascript + бесплатное онлайн-обучение программированию на Javascript с нуля Обучение, Разработка, Программирование, Javascript, Длиннопост, Блоги компаний
  • Стоимость: от 35 тысяч до 50 000 рублей

  • Длительность: 2 года;

  • Формат обучения: онлайн

  • Сертификат: есть

Преимущества курса:

  • оптимальный набор инструментов для обучения;

  • широкий спектр практических заданий;

  • диплом об окончании курса.

Недостатки курса:

  • длительное обучение.

Программа обучения:

  • Основы JavaScript

  • Знакомство с инструментами

  • Модули и сборка приложения

  • Тестирование

  • Фреймворки

Ознакомиться с полной программой курса >>>

_______________________________________________________________

Еще 13 дополнительных курсов javascript

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

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

  • Курс JavaScript-фреймворк React.js от Skillbox. Для клиентов с опытом работы и багажом знаний. Студенты обучаются технологиям использования в работе фреймворк React.js.

  • Профессия Fullstack-разработчик на JavaScript от Skillbox. Предназначен для студентов без опыта. Обучение с нуля, полное погружение в IT-технологии, создание сайтов «под ключ» на языках PHP, Python или JavaScript.

  • Курс JavaScript-разработчик от Skillfactory. Обучение и освоение фронтенд-разработки с нуля до junior-специалиста. Срок 9 месяцев, подходит для фрилансеров, новичков и тех, кто решил сменить профессию.

  • Курсы Javascript (frontend разработка) от Бруноям. Современная платформа с индивидуальным подходом к обучению. Обширный курс для дальнейшей работы с JavaScript, Node.js, основам React и Typescript.

  • Курс Автоматизация тестирования на JavaScriptу от OTUS.ru. Первый на рынке курс по написанию автотестов на JavaScript. Подходит как новичкам, так и опытным программистам. Полный спектр инструментов для использования в практических заданиях. Регулярные тесты.

  • Курс Разработчик JavaScript. Углубленный уровень от OTUS.ru. Продвинутый курс для программистов с опытом в JS. Детальное изучение особенностей работы, дополнительные услуги, практика с реальными проектами, формирование портфолио.

  • Курс Разработчик JavaScript. Базовый уровень от OTUS.ru. Актуальный стек технологий для решения задач фронтенда на junior+ уровне. Базовое изучение темы за 6 месяцев.

  • JavaScript для начинающих программистов от OTUS.ru. Обучение с нуля для начинающих программистов. Понятное и структурированное обучение, пошаговый разбор всех особенностей работы, практика и разбор домашних заданий вместе с ментором.

  • Специализация Fullstack-разработчик на JavaScript от Skillfactory. Широкий спектр курсов для разных специализаций, в том числе узкопрофильных. Детальное изучение особенностей языка и программирования. Сопровождение и поддержка от преподавателей.

  • Курс Создание сайтов на языках HTML, CSS, JavaScript для детей от Школа программирования Pixel. Эффективное обучение детей основам программирования. Создание сайтов на языках HTML, CSS, JavaScript, практика, теория, интересные домашние задания, поддержка менторов.

  • JavaScript с нуля - основы языка и практика для начинающих от PurpleSchool. Базовый курс JavaScript в 2023 году для начинающих. С нуля до проекта на реальных примерах и упражнениях. Платформа предлагает полный спектр практических заданий, а также тестовых проверок.

  • JavaScript Advanced - продвинутые концепции языка и ООП от PurpleSchool. Подходит для студентов с опытом работы и соответствующей базой знаний. Продвинутый курс для изучения и полного погружения в ООП, асинхронность, Event Loop, модульность, структуры данных и сборку.

  • Курс Node.js Серверный JavaScript от Loftschool. Для опытных программистов. Программа содержит 20 модулей, обеспечивает полный доступ к материалам. Все студенты получают помощь личного наставника. Углубленный образовательный курс с разными направлениями профессии.

  • Комплексное обучение JavaScript от Loftschool. Комплексное обучение, подходит для начинающих программистов с опытом работы не менее года. Содержит базовые и фундаментальные программы, студенты обучаются создавать архитектуру приложений.

  • Курс 20480: Программирование в HTML5 с JavaScript и CSS3 от Эврика. Краткий курс из 5 дней для студентов, желающих получить знания и навыки программирования на HTML5 / CSS3 / JavaScript. Этот курс является вводным для изучения веб-приложений и приложений Windows Store.

  • Курс Super: HTML, CSS, JavaScript, Android, 2D-игры от КодКласс. Популярный обучающий курс для детей с максимально продвинутой программой. Построение игр и анимаций, разработка собственных проектов. Много программ для обучения.

  • Курс Современный Front-End c использованием JavaScript и HTML5 от Академия BELHARD. Подходит для тех, кто стремится стать профессиональным frontend-разработчиком Углубленное изучение темы, практические задания, теория, стажировка в реальном проекте.

  • Курс JavaScript с нуля до результата от beONmax. Обучение программированию с нуля. Погружение в особенности работы, ознакомление с инструментами, теорией и практическими заданиями. Студенты обучаются языку JS, верстке сайтов и другим навыкам.

  • Курс JavaScript разработчик от WebCademy. Платформа предлагает программу для начинающих, которые будут обучаться под руководством наставника. Курс занимает 3 месяца, после чего компания гарантирует трудоустройство. Основные навыки: создание интерактивных приложений, работа с сервером и API, работа со структурами данных.

  • Курс Верстальщик 2021 — HTML 5, CSS 3, Bootstrap 4, JavaScript от beONmax. Курс в большей степени содержит видеоуроки. Студенты обучаются необходимым навыкам и могут в дальнейшем использовать инструменты современной верстки сайтов. Программа состоит из множества блоков для обучения, включая блочную верстку и использование js-библиотек  jQuery в работе.

  • Современный JavaScript от Thinknetica. 10-недельное обучение продвинутым навыкам программирования. Подходит для любого сегмента потребителей. Программа предусматривает индивидуальные занятия, наставника и подробнейший Code Review.

  • Курс JavaScript / jQuery от beONmax. Интерактивный курс для пользователей, которые обучаются с нуля. Детальное изучение основ программирования, языка Javascript и библиотеки jQuery. Клиенты обучаются правильно использовать инструменты отладки.

  • Курс Практический JavaScript — продвинутый уровень от beONmax. Особенность обучения — практика на реальных проектах. Студентам обеспечивается полный курс обучения базовым понятиям программирования, разработано сразу несколько модулей для проработки. Общая продолжительность: 65 видеоурока.

Бесплатные курсы по javascript

Особым спросом пользуются бесплатные курсы javascript, позволяющие пройти обучение в сжатые сроки. Это дает возможность повысить свои навыки и профессиональные способности, а также мониторить наличие изменений и нововведений в языке.

  1. Основы JavaScript — Хекслет

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

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

  • 39 уроков;

  • 129 проверочных тестов;

  • 46 упражнений на тренажере.

2. Первые шаги в JavaScript: создаем сайт — Нетология

Базовое обучение основам программирования, ознакомление с особенностями языка. Курсы подходят для новичков, а также тем, кто хочет  сменить работу.

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

  • обучение с сопровождением наставников;

  • обширный пул информации;

  • свободный доступ.

3. Introduction to Programming Using JavaScript — Softline

Стандартизированная система обучения для новичков. Курсы состоят из видеоуроков и текстов.

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

  • программа рассчитана на самостоятельное изучение;

  • не подойдет для опытных.

4. Основы JavaScript для начинающих разработчиков — Loftschool

Изучение языка javascript на основе видеоуроков. Главная тема: основные понятия и базовые возможности языка. Подходит для начинающих программистов. Видео записаны опытным преподавателем курса Сергеем Мелюковым.

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

  • небольшие видео продолжительностью до 25 минут;

  • 14 уроков.

5. JavaScript для начинающих — Stepik

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

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

  • 17 уроков;

  • 28 тестов;

  • 23 интерактивные задачи.

Заключение

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

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

Больше курсов по JavaScript смотрите в нашем каталоге.

Показать полностью 11
Обучение Разработка Программирование Javascript Длиннопост Блоги компаний
1
NutrientElement
NutrientElement
1 год назад
Лига программистов
Серия Программирование

Что же такое замыкание в Javascript⁠⁠

Замыкание (closure) в JavaScript - это функция, которая имеет доступ к своему собственному лексическому окружению, а также к окружениям внешних функций, в которых она была определена.

Что же такое замыкание в Javascript Программирование, IT, Программист, Javascript, Разработка, Web-программирование

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

Замыкание создается, когда внутренняя функция ссылается на переменные из внешней функции. Например:

function outerFunction() {

var outerVariable = 10;

function innerFunction() {

console.log(outerVariable);

}

return innerFunction;

}

var closure = outerFunction();

closure(); // Выведет 10

В данном примере функция innerFunction является замыканием, так как она ссылается на переменную outerVariable из внешней функции outerFunction. Даже после того, как outerFunction завершила свое выполнение и переменная outerVariable вышла из области видимости, замыкание все еще имеет доступ к этой переменной.

Замыкания часто используются в JavaScript для создания приватных переменных и методов. Они позволяют скрыть внутренние детали реализации и предоставить только необходимый интерфейс для работы с объектом.

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

Интересные факты и фичи языков программирования у нас в канале, заходи :)

Показать полностью
[моё] Программирование IT Программист Javascript Разработка Web-программирование
4
12
WoWSab
WoWSab
1 год назад
Лига программистов

Гайд - импортируем CKEditor 5 в Laravel 10 как модуль node.js⁠⁠

Всем привет!

Уже давно настала эра WYSIWYG - редакторов текстов, и при написании наших веб проектов мы конечно же стараемся их использовать по максимуму.

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

Ее мы сегодня и будем импортировать в наш проект на Laravel 10. Скриншотик (и пасхалочка, кто знает тот поймет) внизу.

Как обычно есть 2 пути - простой и сложный.

Простой - это просто прописать в шаблоне

<script src="https://cdn.ckeditor.com/ckeditor5/40.0.0/classic/ckeditor.js"></script>

И активировать его на textarea через ClassicEditor.create().

Но есть нюанс.... что если авторы решат уйти из РФ и ограничит доступ? Или же РКН решит что "ты не пройдешь!" и ... ты не пройдешь. Нужно любить всех своих пользователей, а не заставлять их расчехлять VPN потому что на сайте не работает редактор.

Да и мы ведь серьезный проект пишем! Нам нужно свое! Да еще и желательно с кастомным билдом под наши задачи!

По этому мы пойдем по второму пути - сложному, который делится еще на два.

Назовем их "следовать инструкциям" и "догадаться самим".

Но перед тем как начать - нам нужно собрать кастомный билд с нужными нами модулями и настройками. Что можно спокойно сделать на сайте. Я использовал билд на базе ClassicEditor, выбрал нужные мне модули в том числе и модуль watchdog на будущее (сейчас активировать его в коде я его конечно-же не буду). В общем, качаем билд и распаковываем его в "Новая папка (3)" на рабочке. Он нам понадобится, но несколько позже.

Гайд - импортируем CKEditor 5 в Laravel 10 как модуль node.js Гайд, Инструкция, Программирование, PHP, Javascript, Nodejs, Laravel, Длиннопост, Разработка, Веб-разработка, IT

Распакованный архив с кастомным билдом

Следуем инструкциям.

По инструкции на сайте мы берем скачанный билд, копируем его в папку с проектом в директорию public\assets\ckeditor5, импортируем .js файл в blade шаблон и так-же активируем его через EditorWatchdog() или CreateEditor(). Легко и просто, и в принципе все гайды в интернете по интеграции в Laravel пишут нам что так делать правильно.

Но нас то не обманешь! У нас серьезный проект! И ведь действительно, вдруг нам потом понадобится модуль, который мы не добавили в наш билд? Пересобирать заново? Да ну его! По этому мы пойдем своим путем! Поехали!

Догадываемся сами

К нашему счастью в Laravel встроен замечательнейший инструмент под названием Node.js, который мы и будем использовать. И не только его.

Установка

Идем консолькой в папку с нашим проектом и запускаем (не забудь включить vpn)

npm install --save @ckeditor/ckeditor5-build-classic

Гайд - импортируем CKEditor 5 в Laravel 10 как модуль node.js Гайд, Инструкция, Программирование, PHP, Javascript, Nodejs, Laravel, Длиннопост, Разработка, Веб-разработка, IT

Установка

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

Интеграция

Нам нужно чтобы наш Laravel увидел CKEditor, да собирал его под наши нужды "на лету". Для этого мы будем использовать vite, благо он идет в составе Laravel. У авторов CKEditor для него есть отдельный модуль с названием @ckeditor/vite-plugin-ckeditor5, его и будем использовать. Также нам понадобится модуль @ckeditor/ckeditor5-theme-lark.

Снова консоль, пишем:

npm install --save @ckeditor/vite-plugin-ckeditor5

npm install --save @ckeditor/ckeditor5-theme-lark

Пока ждем установку - наливаем кофе.

Далее ищем в корне нашего проекта файл vite.config.js и вносим в него следующие строки как показано на скриншоте (слева - старый файл, справа - внесенные изменения)

import { createRequire } from 'node:module';
const require = createRequire( import.meta.url );

import ckeditor5 from '@ckeditor/vite-plugin-ckeditor5';

ckeditor5( { theme: require.resolve( '@ckeditor/ckeditor5-theme-lark' ) } ),

Гайд - импортируем CKEditor 5 в Laravel 10 как модуль node.js Гайд, Инструкция, Программирование, PHP, Javascript, Nodejs, Laravel, Длиннопост, Разработка, Веб-разработка, IT

vite.config.js

Конфигурируем

Помните ту конфигурацию, что мы делали на сайте CKE? Она то нам сейчас и понадобится.

Открываем Новую папку (3) и в подпапке src находим файл ckeditor.ts. Это файл с настройками нашего билда. Копируем его в папку с проектом, в директорию resources/js.
Также из папки samples копируем style.css в resources/css.
И дополнительно создаем файлик editor.js - его мы и будем встраивать в наш шаблон.

Содержимое editor.js

import ClassicEditor from './ckeditor';

ClassicEditor.Editor
// Note that you do not have to specify the plugin and toolbar configuration — using defaults from the build.
.create( document.querySelector( '#editor' ), {
language: 'ru',
removePlugins: [
'MediaEmbedToolbar'
]
})
.then( editor => {
console.log( 'Editor was initialized', editor );
} )
.catch( error => {
console.error( error.stack );
} );

Для наблюдательных - я специально не использовал watchdog здесь. Импортировать его я планирую потом.

Дальше нам нужно загрузить недостающие модули.

Открываем редактором ckeditor.ts и видим вверху множество импортов.

Гайд - импортируем CKEditor 5 в Laravel 10 как модуль node.js Гайд, Инструкция, Программирование, PHP, Javascript, Nodejs, Laravel, Длиннопост, Разработка, Веб-разработка, IT

Открываем папку "node_modules/@ckeditor" внутри проекта и ищем недостающие модули. Если такие есть - устанавливаем их через npm install --save %имя_модуля%.

В дальнейшем есть шанс получить следующую ошибку от TailWindCSS (при запуске npm run dev)

[vite:css] Nested CSS was detected, but CSS nesting has not been configured correctly.Please enable a CSS nesting plugin *before* Tailwind in your configuration.

Она вызывается из-за того, что мы используем кастомный css для ckeditor

Чтобы этого не происходило, нам необходимо в файле postcss.config.js в корне нашего проекта добавить следующие строки:

'postcss-import': {},
'tailwindcss/nesting': {},

как на скриншоте

Гайд - импортируем CKEditor 5 в Laravel 10 как модуль node.js Гайд, Инструкция, Программирование, PHP, Javascript, Nodejs, Laravel, Длиннопост, Разработка, Веб-разработка, IT

postcss.config.js

Почти все

Нам осталось только в нашем шаблоне между тегов <head> добавить

@Vite(['resources/js/editor.js', 'resources/css/editor.css'])

И теперь любой <div> или <textarea> с указанием id="editor" будет вызван с редактором CKEditor5.

Запускаем проект через npm run dev и радуемся полученному результату!

Результат

Гайд - импортируем CKEditor 5 в Laravel 10 как модуль node.js Гайд, Инструкция, Программирование, PHP, Javascript, Nodejs, Laravel, Длиннопост, Разработка, Веб-разработка, IT

Результат

А Вы заметили пасхалочку на скриншоте?

Все что вам осталось - это настроить дизайн редактора в css файле.

Ну и как-же без ложки дегтя - почему-то конфигурация "language: ru" не срабатывает и редактор остается английским. Возможно не хватает какого-то модуля или же что-то необходимо донастроить. Пока еще не разобрался, но в целом на данном этапе разработки это не сильно критично. Если у Вас есть идеи - welcome!

Update: С языком разобрался. Действительно его необходимо было имортировать. Для этого в ckeditor.ts необходимо вставить строку после импорта { ClassicEditor }

import '@ckeditor/ckeditor5-build-classic/build/translations/ru';

Update2: Также нашел проблему при вставке видео с внешнего источника, например Youtube. В редакторе оно вставляется, а вот в пост не переносится. Лечится доп конфигом там-же в ckeditor.ts в секцию defaultConfig

mediaEmbed: {
previewsInData: true
}

Гайд - импортируем CKEditor 5 в Laravel 10 как модуль node.js Гайд, Инструкция, Программирование, PHP, Javascript, Nodejs, Laravel, Длиннопост, Разработка, Веб-разработка, IT

Исправленная локализация

Надеюсь что данный гайд поможет Вам в проектах.

Если вы хотите немного потрындеть, или быть может знаете Laravel или например умеете верстать, ну или просто у вас есть желание как-нибудь помочь с разработкой проекта, милости прошу в мою потрынделку.

В кратце - да, старый добрый, с блекджеком и шлюпками.

Всем спасибо!

Показать полностью 7
[моё] Гайд Инструкция Программирование PHP Javascript Nodejs Laravel Длиннопост Разработка Веб-разработка IT
3
thefutureidol
thefutureidol
1 год назад
Типичный программист
Серия Нейронки

Интерфейс для сайта или приложения за минуту⁠⁠

Новый сервис помогает создавать интерфейсы по запросу. Просто напишите, какой компонент вам нужен, и сервис сгенерирует его за считанные секунды.
Сгенерированные элементы можно легко изменить. Затем вы можете просто скопировать сгенерированный код React и вставить его в свой проект.

Попробовать сервис — тут.

Источник мой Телеграм паблик: https://t.me/thefutureidol

Показать полностью
[моё] Искусственный интеллект Технологии Инновации Нейронные сети React Javascript Разработка Сайт Интерфейс Ui Ux Видео Без звука
5
7
MrCreativeMan
MrCreativeMan
2 года назад

Игра "Жизнь" (Game of Life) или "Жизнь внутри жизни"⁠⁠

[TL;DR]: вот ссылка, пока! :)

Штош... я зачем-то написал свою реализацию игры "Жизнь" с использованием вот этих странных букаф: HTML5 + CSS3 + JavaScript и решил явить сиё творение этому миру :)

Игра "Жизнь" (Game of Life) или "Жизнь внутри жизни" Игры, Игра жизнь, Разработка, Веб-разработка, Javascript, Математика, Conways Game of Life, Gamedev, Инди игра, Инди, Длиннопост

Ну что вы, полноте, не нужно аплодисментов и бурных оваций, спасибо!

А теперь серьезно (местами).

Пара слов (но это не точно) об игре

(для тех, кто доселе о ней не слыхал [wat.jpg] или тех, кто о ней что-то знает, но просто очень сильно хочет еще эти предложения для чего-то почитать)

Игра "Жизнь" (Game of Life) — это с виду простенькая игра про жизнь, где в качестве живых существ (или небольших площадей, заселенных жизнью) выступают элементарные клетки (обычно квадратные, т. е. просто квадратики), закрашенные в определенный цвет [к слову, в моей реализации живые клетки окрашены синим], а в качестве мира, в котором они живут — игровое поле, представляющее собой сетку, состоящую из множества квадратиков, каждый из которых может быть либо живым (заполненным, населенным), либо мёртвым (пустым, ненаселенным).

Жизнь в Game of Life протекает по заданным правилам, которые в далеком 1970 году придумал английский математик Джон КОнвей [John Horton Conway, создатель вышеупомянутой игры, представляющей собой к тому же математическую/физическую/теоретикобиологическую концепцию, известную как клеточный автомат]. Эти правила известны как B3/S23 (Born 3 — в пустой клетке зарождается жизнь при наличии вокруг нее трех живых соседних клеток, Survive 2,3 — клетка выживает, если рядом с ней соседствуют 2 или 3 живые клетки).

Игрок принимает активное участие в задании начального расположения живых клеток на поле (начальный паттерн), а также имеет возможность запускать/приостанавливать игру, выполнять ее пошагово (и, вообще говоря, производить любые другие дополнительные действия, которые зависят от конкретной реализации игры, будь то рандомная генерация расположения клеток на поле или загрузка заранее заданного паттерна, или возможность/запрет добавления новых клеток в уже запущенной игре [или даже возможность сделать этот выбор настраиваемым], или управление скоростью игры за счет добавления задержки перед отрисовкой следующего хода, или что угодно еще из того, что придет в голову человеку, имеющему доступ к коду игры и/или способному так или иначе реализовать свою идею)...

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

Каждая клетка продолжает жить, если среди 8 окружающих ее соседних клеток (для клеток, находящихся на краях поля в качестве отсутствующих соседних обычно берутся клетки с противоположного края [зависит от реализации]) есть живые соседи, при условии, что этих самых соседей не больше трёх и не меньше двух, иначе клетка умирает (от "перенаселения" или от "одиночества").

В пустой клетке, которую окружают три живые соседки, зарождается жизнь.

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

Игра довольно проста в управлении

(во всяком случае для меня в моей же собственной реализации, т. к. ее код я сам и писал, в конце-то концов, но если без рофлов, то можно разобраться и без пол литра даже ежу, несмотря на то, что игра на английском [а что... там слова короче!])

Исходный код стоит чисто символические $50.000, переводить мне на карту в порядке живой очереди, спасибо. Ну, а если серьезно, то код полностью открыт (open source, Unlicense license) и доступен для каждого желающего на моей страничке github абсолютно без-воз-мез-дно, то есть даром... а еще без смс и регистрации, так, на всякий случай...

Так что можете смело:

- скачивать исходники игры

- играть (в github-репозитории в файле README.ru-RU.md есть инструкция как запустить игру для тех, кто не знает)

- смотреть код, пытаться понять код, ковырять его (переписывать по своему), проклинать код, крутить и вертеть код игры на чем угодно, но только в пределах разумного :) — в общем делать с кодом все то, что там с ним еще обычно делают...

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

В конце концов, вы можете просто использовать ее как рисовалку (пикселями) в свободное от чего бы то ни было время [при его наличии] :)

Feedback

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

- писать прямо сюда в комменты;

- создавать в виде issues на github (не парьтесь насчет правильности создания issue [корректно заполненные поля и прочая дребедень], просто создайте как-нибудь, описав свое предложение простыми словами, думаю я разберусь, а вот насчет ваших pull-реквестов в мой репозиторий — простите, но сразу нет: постоянно [или пусть даже периодически] изучать и принимать неизвестные мне pull-реквесты в своем репозитории я не имею ни малейшего желания, поэтому вместо этого смело форкайте мой репозиторий к себе на github или просто клонируйте/качайте код и изменяйте его как вашей душе угодно).

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

Также (не)приветствуется критика (поливать говном желательно обоснованно и по возможности равномерно, чтоб красивее смотрелось).

Тут и сказочке конец. Кто прослушал - всем П...ц :0

Постскриптум: это мой первый пост на пикаЧу, поэтому смело судите все написанное мной по всей строгости здешних законов (не байт на плюсы, а просьба, честно, да).

Показать полностью 1
[моё] Игры Игра жизнь Разработка Веб-разработка Javascript Математика Conways Game of Life Gamedev Инди игра Инди Длиннопост
1
12
HozPort
HozPort
2 года назад
Лига Разработчиков Видеоигр
Серия RPG Maker: глубокое погружение

Введение в плагиноведение RPG Maker MZ: как устроен плагин?⁠⁠

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

За основу материала взял свой самый первый микро-плагин, который просто меняет пару цветов в ColorManager (но с возможностью указать их в визуальном редакторе). Обратите внимание на номера строк. Я выдаю листинг подряд, ни одну строчку не пропуская.

1. Понятное название плагина

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

Введение в плагиноведение RPG Maker MZ: как устроен плагин? RPG Maker, Gamedev, Javascript, Программирование, Разработка, Длиннопост

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

Давайте же разберёмся, что есть в этом блоке, и зачем оно там есть.

2. Объявляем данные плагина

Введение в плагиноведение RPG Maker MZ: как устроен плагин? RPG Maker, Gamedev, Javascript, Программирование, Разработка, Длиннопост

Тут понятно:

  • Строчка 6: для какой версии RPG Maker разработан плагин,

  • Строчка 7: описание плагина, полезное для других разработчиков и для тех, кто его скачает, а потом забудет, зачем качал =),

  • Строчка 8: автор, то есть вы.

3. Блок помощи

Введение в плагиноведение RPG Maker MZ: как устроен плагин? RPG Maker, Gamedev, Javascript, Программирование, Разработка, Длиннопост

Тут можно написать очень длинный текст. Я ограничился просто названием файла, потому что мне было лень, но важно то, что этот текст потом будет показываться в визуальном редакторе RMMZ в блоке описания плагина. Если вы делаете плагин на экспорт, или, тем более, хотите его продавать, этот блок придётся заполнить. Ну и для себя завтрашнего не грех постараться.

Это я сам себя уговариваю)

4. Объявляем доступные команды

Введение в плагиноведение RPG Maker MZ: как устроен плагин? RPG Maker, Gamedev, Javascript, Программирование, Разработка, Длиннопост

На самом деле, для простых скриптов команды особо и не нужны. Имейте в виду, вам придётся описывать их действия в коде самого плагина, что для новичка может оказаться затруднительным. Я на всякий случай указал одну команду, а именно set, команды задаются тремя строчками:

  • Строчка 12: объявление синтаксиса команды,

  • Строчка 13: человекопонятное название команды,

  • Строчка 14: подробное описание того, что делает команда.

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

5. Объявляем переменные скрипта и помещаем их в визуальный редактор RMMZ

Введение в плагиноведение RPG Maker MZ: как устроен плагин? RPG Maker, Gamedev, Javascript, Программирование, Разработка, Длиннопост

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

Объявление переменной включает в себя:

  • Строчка 16 (20): имя переменной,

  • Строчка 17 (21): текстовое описание переменной (оно будет видно в админке),

  • Строчка 18 (22): дефолтное значение.

Дефолтное значение - это если вы в админке ничего не выставили ещё, оно будет вот таким.

6. Код плагина

Как вы можете заметить, у нас уже 24 строчки, и все они зелёненькие, в смысле, всё это комментарии. Мы уже знаем, что это не совсем так, но суть в том, что всё это было лишь подготовкой к созданию плагина, впереди же собственно его код.

А вот и он:

Введение в плагиноведение RPG Maker MZ: как устроен плагин? RPG Maker, Gamedev, Javascript, Программирование, Разработка, Длиннопост

Очень простой.

Мы создаём собственную функцию, которая будет выполняться в общем потоке при загрузке игры (но ПОСЛЕ загрузки всего ядра, что важно, так как нам нужно переопределить какую-то часть кода, а для этого она должна быть уже загружена) и будет менять два цвета в ColorManager на те, что мы указываем в визуальном редакторе RPG Maker. Что нам нужно для того, чтобы это реализовать? Переменные мы объявили, они появились в админке, но нам теперь надо получить их значения из скрипта.

За это отвечают строчки 28 и 29.

На 28 строчке мы создаём константу, содержащую название плагина (это вообще пригодится во многих случаях, так что я бы рекомендовал всегда в начале скрипта её объявлять), а на 29 по имени этой константы получаем из PluginManager параметры плагина (это как раз и есть те самые созданные нами переменные param). Как вы помните, формат у них - строка вида "0,0,0,0" - а это RGBa. Но чтобы присвоить это дело окну, его нужно немного видоизменить. На строчках 32 и 33 мы как раз помещаем значения этих параметров в обёртку, чтобы получилась строка вида "rgba(0,0,0,0)".

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

Итак, мы получили описание цвета двух параметров плагина (причём с альфа-каналом, то есть, прозрачностью), и нам осталось только закинуть их в ColorManager. За это отвечают строчки 37 и 38. Они ПОЛНОСТЬЮ дублируют аналогичные строчки из rmmz_managers, то есть, переопределяют их, подставляя вместо установленных разработчиком значений значения из плагина.

Вот, собственно, и всё. Закрываем блок кода, сохраняем и наблюдаем результат.

***

Как я уже говорил, любой JS код тут заработает, потому что запускается игра в браузере. Как мне указали в одной из моих статей, есть ещё великое многообразие WEB API, которое может обеспечить в том числе и асинхронность, и многопоточность, и прочие плюшки. Что ж, если вам хочется - используйте всю мощь жабаскрипта на полную!

А у меня на сегодня всё. Пишите свои мысли, задавайте вопросы, будем вместе искать на них ответы. Спасибо за внимание и до скорых встреч!

Рассуждения о "браузерности" RPG Maker тут: https://pikabu.ru/story/nemnogo_rassuzhdeniy_o_brauzernosti_rpg_maker_mz_10185619

Показать полностью 5
[моё] RPG Maker Gamedev Javascript Программирование Разработка Длиннопост
1
7
HozPort
HozPort
2 года назад
Лига Разработчиков Видеоигр

Немного рассуждений о "браузерности" RPG Maker MZ⁠⁠

Точнее, о "браузерности" игр на нём. Что нам даёт знание этого безобразия? На самом деле, довольно многое. Сразу предупреждаю: нижеследующее - есть лишь мои рассуждения на тему. Свои мысли обязательно пишите в комментах, будет интересно почитать.

***

1. Консоль (F8)

Первое и, пожалуй, самое недооценённое - это наличие полноценной консоли. Если вы сталкивались с веб-программированием, вы понимаете, насколько это важная штука. Понятно, что движковые части представляют собой статичные классы, но вот все ваши наработки, плагины и пр. могут выводить в консоль любую информацию, что полезно для дебаггинга. Обсчитываете что-то, выдаёте это в консоль посредством console.log(), и, собственно, профит.

Вот я добавил вывод в консоль тупого сообщения:

Немного рассуждений о "браузерности" RPG Maker MZ RPG Maker, Gamedev, Javascript, Программирование, Разработка, Длиннопост

В грядущем RPG Maker Unite, за счёт того, что это будет фактически ассет-пак Юнити (которая является фактически фреймворком C#), тоже будет нормальная консоль, в которую можно выводить данные стандартной командой Debug.Log().

Заметка на полях: когда вы что-то меняете в плагине для RMMZ, вам обязательно надо сохранить игру. Если вы тестируете через Запуск игры - движок вас в любом случае спросит, надо ли сохранить прогресс, а вот если вы, к примеру, тестируете боёвку в окне Отряды - не забывайте после всех изменений в коде сохранять проект.

Да, кстати, старый дедовский способ дебаггинга через alert() тоже работает. Как я уже говорил, браузер поддерживает все возможные функции JS, так что получите и распишитесь:

Немного рассуждений о "браузерности" RPG Maker MZ RPG Maker, Gamedev, Javascript, Программирование, Разработка, Длиннопост

***

2. Вопросы оптимизации

Игра на RMMZ - это js код в браузере, и он болеет всеми проблемами, которые только могут быть у js кода в браузере. Однажды я по приколу делал движок на js - он был проще, чем этот, само собой, но уже тогда я понял одну вещь: оптимизировать это дело - больно и страшно. Я тогда взялся обсчитывать положение десятка объектов на каждом кадре (а их в серьёзном движке, предположим, 60 в секунду!), чтобы реализовать коллизии, и у меня задымился комплюхтер.

Если вы поместите на достаточно небольшую карту в RPG Maker MZ 20 или 30 ивентов, каждый из которых запускается параллельно и имеет свою анимацию (всего-то покадровая анимация из 4 кадров!), ваша игра с вероятностью в 99% начнёт тормозить. И каждый новый ивент будет её притормаживать всё больше и больше.

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

Хорошая новость: как и любой js в браузере, с чем знакомы многие мои коллеги, игра может быть и должна быть оптимизирована по мере возможности. Самое главное, что тут применимы все те же методы ускорения, что и в этой вашей айтишечке. Из-под капота жабаскрипт в браузере работает однопоточно, то есть весь код исполняется построчно и прямолинейно. Обратите внимание на эту мысль: КОД В JS ВЫПОЛНЯЕТСЯ ПОСТРОЧНО! А раз так - чем меньше строчек, тем лучше, как говорится. Впрочем, асинхронность в мейкере имеет место, но об этом как-нибудь потом, а то текст и так слишком длинный.

Стандартные методы оптимизации:

  • Удаление неиспользуемого кода (рассуждение об этом ниже);

  • Правильное написание кода - без создания по сто раз одних и тех же объектов, с своевременными прерываниями функций и циклов, если они больше не нужны, решают короткие формы записи объявления переменных, тернарные операторы и пр.;

  • Естественно, минимизация кода;

  • Самый объёмный пункт: и так далее.

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

К примеру, есть люди, которые делают визуальные новеллы на RPG Maker - им стопудово не нужна боевая система, значит, в помойку её. Со всей обслуживающей её инфраструктурой.

Насколько моё предположение оправдано - я не знаю, пока ничего не удалял. Если у вас есть опыт или какие-то измышления на сей счёт - поделитесь.

***

3. Игра в браузере после релиза

В связи с тем, что игра на RMMZ - это и так браузерное явление, ничего удивительного, что начиная с версии MV экспорт игр в браузер стал плёвым делом. Я даже скажу больше: как мне кажется, именно такое существование для игр на современных мейкерах предпочтительнее. Не знаю, что там будет в Unite.

Потенциально, перенос игры на сервак с возможностью подключения данных из MySQL или любой другой БД на серваке - это открытые ворота к многопользовательской игре. Ещё раз подчеркну: любой код JS будет работать. И даже сторонние плагины и фреймворки потенциально можно заставить пахать на благо вашей чудесной игры.

Опять же, это пока измышления. Если кто-то уже реализовывал серверную историю для проекта на RMMZ, поделитесь, пожалуйста, опытом. Какие подводные камни, ограничения и т.д.?

***

4. Возможность использовать альтернативные ходы

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

Помимо этого можно использовать и другие апи, надстройки и т.д., которые поддерживает JS. К примеру, кладёте в папку с игрой файл, а дальше XMLHttpRequest и поскакали. Эта апишка вполне может помочь расширить функционал вашего проекта. Потом просто по какой-то логике распихиваете полученный контент по переменным с помощью $gameVariables.setValue() - и всё, пользуйтесь.

А ещё есть достаточно бедные, но всё же заметные возможности HTML+CSS. Сама игра, как вы знаете, подгружается в canvas, но такие вещи, как иконки, параметры окна, даже курсор можно поменять в индексе! Между прочим, этим пользуются многие разработчики, которые не хотят лезть внутрь движка, а находят обходные пути.

Вот, смотрите, перед вами код де факто основного файла игры - index.html

А вы думали, как он должен называться?)

Немного рассуждений о "браузерности" RPG Maker MZ RPG Maker, Gamedev, Javascript, Программирование, Разработка, Длиннопост

Тут сразу видно и подключение иконки, и подключение css, и подключение скрипта внизу. Нам что-то мешает, к примеру, добавить подключение ещё какого-нибудь скрипта, или даже целой библиотеки? Нет, не мешает.

Кстати, интересным развлечением будет почитать файл main.js - в нём содержится, фактически, основной класс вашей игры, этакий менеджер менеджеров. А ещё там можно почитать, в какой последовательности грузятся модули (и добавить собственный при желании), как обрабатываются ошибки и так далее. В результате его работы и работы все подключённых файлов, получается следующая html-разметка (то бишь, один единственный main.js, подключаемый в индексе, уже на клиенте подгружает ещё почти два десятка JS файлов):

Немного рассуждений о "браузерности" RPG Maker MZ RPG Maker, Gamedev, Javascript, Программирование, Разработка, Длиннопост

Вот этот canvas - он и будет содержать собственно говоря игру.

Но посмотрите на этот впечатляющий список скриптов! Вы можете добавить в этот список что-нибудь своё и спокойно запустить.

***

В общем, вывод такой: веб-программирование никогда ещё не было так близко к геймдеву и, по всей видимости, уже никогда не будет. Пользуемся, пока движок совсем не покрылся пылью)

Спасибо за внимание и до новых встреч!

***

Предыдущая статья про RPG Maker MZ: https://pikabu.ru/story/vvedenie_v_plaginovedenie_rpg_maker_mvmz_chto_takoe_plagin_na_samom_dele_10180687 - тут про плагины.

Показать полностью 3
[моё] RPG Maker Gamedev Javascript Программирование Разработка Длиннопост
9

Попробовать мобильный офис

Перейти
Партнёрский материал Реклама
specials
specials

Мобильный офис до 100 тысяч рублей⁠⁠

Ноутбуки используют не только для работы: на них смотрят сериалы, редактируют фото, запускают игры и монтируют ролики. Поэтому теперь требования к устройству такие: быть легким для дороги, надежным для горящих дедлайнов и стильным, чтобы не прятать в переговорке. А еще — легко работать в связке с другими гаджетами.

Протестировали TECNO MEGABOOK K15S вместе со смартфоном TECNO CAMON 40 и наушниками TECNO в рабочих и бытовых сценариях от Zoom-звонков до перелета, а теперь рассказываем, как себя показала техника.

Первое впечатление от дизайна ноутбука

Первое, что заметно — это вес. При диагонали 15,6 дюйма и полностью металлическом корпусе K15S весит всего 1,7 кг. Это примерно на 15% меньше, чем аналоги. Устройство не обременяет ни в офисе, ни в такси. Ноутбук поместился в стандартный городской рюкзак, было удобно достать его в кафе за завтраком и по дороге в такси, чтобы быстро отработать клиентские правки.

1/4

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

Шарнир работает мягко: чтобы открыть крышку даже одной рукой, не нужно придерживать корпус. Чтобы показать коллеге или клиенту презентацию, достаточно раскрыть экран на 180°. Это удобно и для работы лежа, и для подставок, которые требуют определенного угла обзора.

Также отметим 9 портов: USB-A, USB-C, HDMI, слот для карты памяти — можно забыть о переходниках.

В TECNO MEGABOOK K15S предустановлен Windows 11. Ноутбук готов к работе сразу после включения. Никаких лишних установок и обновлений. Все настроено и оптимизировано для вашей многозадачности.

Экран: яркая картинка и комфорт ночью

Экран — 15,6 дюйма, IPS-матрица с разрешением Full HD. Углы обзора отличные: изображение остается четким, даже если смотреть сбоку, цвета не искажаются. Есть антибликовое покрытие. Тестировали ноутбук при разном освещении: можно спокойно работать у окна. Когда солнце бьет прямо в экран, текст по-прежнему остается читаемым, картинки не искажаются. Это редкость в бюджетных моделях.

1/2

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

Стеклокерамический крупный тачпад — 15 см. Он не залипает, не промахивается, срабатывает с первого касания. Не возникает дискомфорта, даже если несколько часов редактировать документы без мышки. После перехода с других устройств немного непривычно, что тачпад работает в двух направлениях: нижняя часть отзывается нажатием, верхняя — касанием.

В кнопку питания встроен сканер отпечатка пальцев. К нему можно быстро привыкнуть, особенно если сидишь в опенспейсе или работаешь в дороге. Один легкий тап пускает в систему даже с мокрыми руками. Безопасно, удобно и не нужно постоянно вводить пароли.

Производительность: рендерим видео, открываем вкладки

Ноутбук работает на AMD Ryzen 7 5825U (опционально можно выбрать версию техники Intel Core i5-13420H). Восьмиядерный AMD с поддержкой 16 потоков подходит для ресурсоемких операций вроде рендеринга или работы с большими массивами данных. Встроенная графика Radeon справляется с редактированием видео в Full HD или играми.

1/4

Во время монтажа 30-минутного ролика в DaVinci Resolve и параллельной работе в Photoshop с несколькими большими PSD-файлами система сохраняла стабильность. Не было ни зависаний, ни заметного падения производительности. Ноутбук уверенно держит в фоне 10 приложений одновременно. Если запущены браузер с 20 вкладками, видеозвонок в Telegram, Excel с объемной таблицей и софт для монтажа, система не тормозит и не перегревается. Переход между окнами остается плавным, ничего не «проседает», даже при одновременном скачивании файлов и редактировании видео.

Базовая комплектация включает 16 ГБ оперативной памяти в двух слотах. При необходимости можно легко увеличить этот показатель до 32 ГБ, заменив стандартные модули на более емкие. Помимо установленного SSD на 1 ТБ предусмотрен дополнительный слот, поддерживающий диски объемом до 2 ТБ.

Чтобы во время нагрузки системы охлаждения не выходили из строя, в ноутбук встроен эффективный вентилятор, способный рассеивать до 35 Вт тепла. Устройство не греется, его спокойно можно держать на коленях. Это решение дополнено тремя режимами работы, которые переключаются простой комбинацией клавиш Ctrl+Alt+T. Тихий режим идеален для работы ночью или в общественных местах, сбалансированный подходит для повседневных задач. Производительный, на котором запускали рендеринг видео и игры, практически не шумит.

Автономность: 15 часов без подзарядки

Протестили автономность MEGABOOK K15S в условиях, знакомых каждому деловому путешественнику. Утром перед вылетом зарядили ноутбук до 100% и взяли его в рейс Москва — Калининград. В зале ожидания провели созвон, потом три часа смотрели сериал и в дороге до отеля редактировали документы. К моменту приезда оставалось 40% заряда: хватило бы еще на пару часов продуктивной работы.

1/3

MEGABOOK K15S может автономно работать до 15 часов и позволяет не оглядываться на индикатор заряда. Заявленное время достигается при типичном офисном использовании: одновременная работа с документами в Word и Excel, ведение переписки, видеоконференции, веб-серфинг.

Если все же понадобится, за  час восполняется до 70% батареи. Компактный адаптер мощностью 65 Вт на базе нитрида галлия поместился даже в карман пиджака. Один блок питания заряжает и ноутбук, и смартфон, и наушники. Экономия места: не нужно никаких дополнительных проводов.

Звук, который реально слышно

В TECNO MEGABOOK K15S установлены два мощных динамика по 2.5 Вт. Звук с глубокими низами, без пластикового дребезжания, объемный. Благодаря DTS можно смотреть видео даже в шумном помещении. В тестах специально включали сцены с шагами и выстрелами: локализация настолько точная, что в наушниках нет необходимости.

Та же стабильность и в микрофоне. Благодаря AI-шумоподавлению голос передается чисто. Во время тестовых звонков из оживленного кафе собеседник не услышал ни разговоры за соседним столом, ни городской шум. И все это — на расстоянии до пяти метров.

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

Для тех, кто предпочитает гарнитуру, идеально подойдут беспроводные наушники TECNO FreeHear 1 из экосистемы бренда. Когда не хотелось делиться разговорами с окружающими, подключали их. Чистый звук с акцентом на средние частоты, 11-мм драйверы, которые выдают неожиданную детализацию. Музыку слушать приятно: и фоновый плейлист на телефоне, и вечерний сериал на ноутбуке. Автономно работают наушники 6 часов, с кейсом — до 30 часов. 

1/2

Bluetooth 5.4 обеспечивает стабильное соединение на расстоянии до 10 метров. Удобная C-образная форма разработана специально для длительного ношения — после восьмичасового рабочего дня в ушах не возникает дискомфорта. Наушники поддерживают одновременное подключение к ноутбуку и смартфону. Переключение между устройствами происходит быстро и без заминок.

Через фирменное приложение Welife можно выбрать один из четырех эквалайзеров и отследить местоположение гарнитуры в случае утери. А еще кастомизировать виджет для управления наушниками. Функция настройки персонализированного дизайна доступна для устройств на Android и позволяет гибко изменить внешний вид окна подключения: вплоть до установки фоновой картинки или собственного фото.

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

Бесшовная синхронизация со смартфоном

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

Функция выручила, когда нужно было открыть приложение, у которого нет веб-версии. Удобно работает и буфер обмена: скопировал текст на одном устройстве — вставил на другом. Например, код, полученный в сообщении на телефоне, вводится в браузере на ноутбуке. Экономит минуты, а иногда и нервы. А когда в дороге пропал Wi-Fi, ноутбук сам подключился к мобильному интернету через смартфон.

1/2

TECNO CAMON 40 и сам по себе — мощный рабочий инструмент.  Смартфон выделяется камерой высокого качества 50 Мп, ярким AMOLED-экраном 120 Гц и множеством функций, которые упрощают процесс мобильной съёмки и использование искусственного интеллекта TECNO AI.

Телефон работает на HIOS 15.0.1 на базе Android 15.В фирменную оболочку встроен искусственный интеллект:

  • Голосовой помощник Ella. Отвечает на вопросы, помогает с задачами и управлением устройством.

  • Решение задач. Наводите камеру на задачу, ИИ решает ее.

  • AI Редактор фотографий. Интеллектуальная обработка в одно касание.

  • Быстрый поиск. Находит адрес на экране и запускает навигацию, распознает объекты и события, автоматически добавляет их в календарь.

Технические характеристики

  • Процессор и память. 8 ядер, 16 потоков, Кэш L3 16 МБ, частота до 4.5 ГГц Графический процессор AMD Radeon™ graphics SSD 512 ГБ или 1 ТБ, М.2, 2280, PCle 3.0 Nvme DDR4 16 ГБ, 3200 МГц.

  • Дисплей. 15.6", TFT, Full HD (1920×1080), 16:9, 280нит, 45% NTSC, 16.7 млн цветов, 60 Гц, 141 ррі.

  • Веб-камера. 1 Мп, шторка приватности.

  • Порты. 9 портов: 1*TF Card (microSD), 1*HDMI 1.4, 1*USB-A 3.1,

    1*USB-A 3.2, 1*3.5mm аудиовход, *Ethernet RJ45 до 1 Гбит, 2*Туре-С (Full Function), 1*слот для замка Kensington.

  • Другое. Сканер отпечатка пальца в кнопке питания. Клавиатура с подсветкой (4 уровня яркости). Тачпад с поддержкой одновременно 4 касаний.

  • Батарея. 70 Вт∙ч (6150 мА∙ч), Li-Pol, 11.55 B 65 Вт Type-C GaN, 20 В, 3.25 А, кабель 1.8 м (Туре-С-Type-C).

  • Габариты. 17.3 мм (высота), 359.5 мм (ширина), 236 мм (глубина).

  • Вес. 1,7 кг.


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

КУПИТЬ НОУТБУК TECNO

Реклама TECNO Mobile Limited, Юридический адрес: Flat N, 16/F., Block B, Универсальный промышленный центр, 19-25 Shan MeiStreet, Fotan, New Territories, Гонконг

Показать полностью 17
Электроника Гаджеты Ноутбук Длиннопост
14
HozPort
HozPort
2 года назад
Лига Разработчиков Видеоигр
Серия RPG Maker: глубокое погружение

Введение в плагиноведение RPG Maker MV/MZ: что такое плагин на самом деле?⁠⁠

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

***

Начнём с самого начала. Когда вы создаёте новый проект в RPG Maker, программа закидывает в его директорию необходимые файлы движка. Они представляют собой набор файлов js + большое количество дополнительного контента, как то графика, музыка, звуки и пр. Пользовательские данные хранятся в сериализованном виде в JSON.

ПРИМ.: Понятное дело, после того, как вы сделали свою игру, есть смысл лишние ресурсы удалить. Конечно, RPG Maker поставляется с правами на весь контент, но нафига нам засорять папки, да?

Так вот, движок - это совокупность js файлов, в которых содержатся свойства и методы классов движка. А окно игры - это просто усечённый хром, а точнее - хромиум, то бишь браузер. Когда вы делаете игру в мейкере серий MV и MZ, вы, фактически, делаете интерактивный сайт.

Вывод из этого следующий: на самом деле, вы можете вносить изменения в движок непосредственно. К примеру, вы берёте rmmz_managers - это глобальная сущность для различных классов-"менеджеров" движка, типа менеджера цвета, менеджера графики, менеджера музыки или звуков, и меняете его содержимое как вам заблагорассудится.

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

Плагин - это выход из ситуации. Вы можете переопределять любые методы любого класса, создав отдельный скрипт js. К примеру, вы можете переопределить цвет выделения урона в ColorManager, написав плагин, который подменяет данный метод:

ColorManager.damageColor = function(colorType) {

switch (colorType) {

case 0: // HP damage

return "#ffffff";

case 1: // HP recover

return "#b9ffb5";

case 2: // MP damage

return "#ffff90";

case 3: // MP recover

return "#80b0ff";

default: return "#808080";

}};

И вы получите другие цвета. Причём у вас будет возможность вывести строку ввода требуемого цвета прямо в визуальный редактор RPG Maker. Удобно? Удобно. И код менеджера переписывать не пришлось.

ВЫВОД: плагин - это js-код, переопределяющий методы и свойства классов движка или создающий новые методы и свойства.

***

Вот, к примеру, я написал микроплагин для внесения изменений в itemBackColor1 и itemBackColor2, определяющиеся в ColorManager - это дурацкий градиент в RPG Maker MZ, который мне давно мозолил глаза, и который мне очень хотелось убить. Благо, цвет задаётся с альфа-каналом, а значит, можно его убрать в полный ноль.

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

Введение в плагиноведение RPG Maker MV/MZ: что такое плагин на самом деле? Gamedev, RPG Maker, Программирование, Javascript, Разработка, Длиннопост

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

***

Ограничения, конечно, есть. Даже будучи очень крутым прогером, вы вряд ли сможете создать в RPG Maker убедительную физику. Прежде всего, в движке вообще нет такого понятия, как объект: все спрайты, которые вы видите - это действительно лишь спрайты, расположенные на разных слоях, и этим всё сказано. Мы программируем ВИДИМОСТЬ явлений, а не сами явления.

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

***

В следующий раз, если вам интересно, мы рассмотрим строение плагина: как задавать переменные, которые можно будет менять из визуального редактора, как задать плагину собственные название, описание, авторство и пр. Ну и как находить те сущности, которые требуется менять - об этом тоже немного поговорим.

Всем спасибо и до встречи.

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