Сучасна диджитал-освіта для дітей — безоплатне заняття в GoITeens ×
Mazda CX 30
×
  • Программирование в армии

    Если есть смартфон на Ведре, доступ в интернет, то качай себе JSRun и учи JavaScript (ES6+), парадигму ООП, паттерны проектирования, алгоритмы и структуры данных. Этого более, чем достаточно для того, чтобы по выходу из армии, продолжить обучение уже на другом объектном языке, если JS не вкатит. А если вкатит, то продолжишь учить либо NodeJS, всякие серверные штуки и подашся в бекенд, либо HTML, CSS и подашся во фронтенд. Либо все и сразу и будешь фулл-снэк :) А вообще, я бы советовал заниматься в армии, таки армией и попробовать выжать из нее как можно больше жизненно-важных навыков и знаний. Но то уже тебе решать :)

  • Как получить работу в геймдев-компании

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

  • Как получить работу в геймдев-компании

    Это и есть геймдев :) Самый, что ни есть каноничный геймдев со своей романтикой, отголоски которой остались в инди, да и то — не везде. В остальном, современный геймдев не про идею, не про качественный продукт и даже не про развлечения вечерами. Современный геймдев это массмаркет расчитаный исключительно на прибыль издателей и боссов студий, всеми правдами и неправдами. И рядовому разработчику с этих гипер-прибылей не светит ровным счетом ничего, кроме жалких крох. Консольный рынок предлагает исключительно клоны трендовых штук и спорт.симы. На пекарнях засилье лутбоксов и платного контента. Мобильный рынок про заработок на рекламе и анальный донат. И все это объеденяется одноклеточным геймплеем без намека на оригинальную идею. Имхо, золотые годы игровой индустрии как для игроков, так и для творцов — конец 90-х и конец 00-х. Разработчики и издатели не боялись экспериментов, старались делать уникальный интересный продукт со своими особенностями. Правда, куча тайтлов проваливась в продаже из-за чего сегодня мы имеем то, что имеем. А имеем, как я писал ранее: унылые игровые поделки как игроки, и конченые условия труда, как разрабы. Так что кто хочет в геймдев расчитывая на то, что он там будет ГТА и Скайримы делать, загребая бабос лопатой из золотой фуры, работая при этом лениво на пляже Кубы с горами коаина вместо песка — забудьте. Туда стоит идти чисто ради всестороннего развития как программист. Годик-два в индустрии еще норм. Дальше там ловить нечего.

  • Ухудшение технологий программирования

    Аминь! Хотя у кого не спрошу, толком ответить на вопрос: почему так плох JS никто не может.

    Підтримав: kotebu
  • Как получить работу в геймдев-компании

    Ну тут дело выбора. Кому хочется бабок, тем дорога во фронт-енд и галеры. А кому крутых задач подавай — лучше геймдева ничего нет. Забудем на минутку о том, что порой делаешь кучу клонов одной и той же херни. Так уж сложилось, что гейидев объеденил в себе вот прям практически все направления в программировании. Тут тебе и сложные алгоритмы, и физика с математикой, и искуственный интеллект, и графика, и аудио, и проектирование и пачка языков, и куча всякого разного и интересного. В геймдев стоит идти хотя бы чисто ради того, чтобы попробовать всего понемножку и понять, что нравится больше. Я сам когда-то любил работать с графикой. Сейчас ушел в проектирование и сухую логику. Кто-то приходил просто кодить что-нибудь, а потом уходил мастерить компьютерное зрение с машинлернингом. А кому-то по кайфу просто делать игры и он сидит там годами на зарплате ниже, чем в других отраслях при этом делая куда больше.

  • Как получить работу в геймдев-компании

    Йеп :) Да и выбора нет. Откажешся говнокодить в овертайм подгоняемый истеричным менеджером — пойдешь на мороз, а вместо тебя возьмут другую обезьянку умеющую в Юнити, Анрил и другие попсовые движки. А таких обезьянок много нынче развелось. Хз как там в крупных мировых конторах типа Юбисофта и Беседки, но в сотнях мелких конторок все именно так.

  • Как получить работу в геймдев-компании

    Оно вам не надо. Зп в два раза ниже, чем во фронте, задач в 10раз больше, овертаймы, кранчи, никакой личной жизни и вот это вот все. И такая ситуация не только в СНГ, но и в Европах со Штатами. Лучше сидите и шлепайте формочки за 4к на Реакте дальше.

  • Понять интерфейсы

    Использование интерфейса дало тебе расширяемость твоего (или чужого) кода. Рассмотрим пример, когда класс Client у тебя закрыт. Ну не знаю, спрятан в node_modules где-то. То есть, доступа у тебя к нему нет, а там по дефолту полю payment присвоен инстанс класса Card(). Да и само поле типизированно под калсс Card. То есть, где-то внутри модулей, к котоырм ты не имешь доступа для редкактирования, находится класс Client. У него есть вот такая реализация — paymant: Card = new Card(). А тебе нужно поменять способ оплаты, как ты это сделаешь? Залезть внутрь класса ты не можешь. Присвоить полю payment инстасс WebMoney тоже, поскольку поле ожидает тип Card. Все, нет расширяемости. Конечно, ты мог бы отнаследовать класс WebMoney от класса Card и переопределить метод pay() на другое поведение. Однако, лучше избегать подобных практик и забыть про наследование, используя его только по отношению к абстрактным классам. Для этого и используются интерфейсы, для расширяемости. Если поле payment ожидает объекты типа Topay, то ты без проблем можешь создавать абсолютно разные по функционалу способы оплаты, котоыре следуют интерфесу Topay и присваивать их инстансы полю payment. Ты избавился от зависимости от прямой реализации и зависишь только от абстракции. Прошу заметить, что по второму принципу SOLID все твои классы должны быть закрыты для изменений, но открыты для модификаций. Использование интерфейсов помогает четко следовать этому принципу.

  • Хочу создать свой 2d игровой движок на C++

    Слушай, а зачем? Игровых движков нынче больше, чем плагинов под Жыквери. Если цель выйти на рынок, то вряд ли получится что-то в одиночку. Если для себя, то сначала посмотри на готовые решения, наверняка найдешь что-то нужное для себя. А если цель просто покодить и повысить скиллы, то готовся... Тебе нужно прочитать гору книг по проектированию, гору книг по работе с физикой, еще больше книг по работе с графикой, пару книг про аудио и еще кучу исторической литепатуры по истории геймдева и, собственно, игровых движков. И это, я еще не говорил о том, что нужно понимать как устроен папйплайн рендера, уметь работать с низкоуровневым апи видеокарты, понимать что обрабатывается процессором, что графическим ускорителем, что хранится в ОЗУ, что в ПЗУ. И это только для PC. А еще есть Мак, Линух и мобильные платформы со своими осоьенностями и приколами. С одной стороны, зачем оно тебе надо? С другой стороны настоятельно рекомендую. Даже, если движок не напишешь, скиллы свои повысишь обязательно.

    Підтримав: Mr. Proger