Джун Джуно к вашим услугам! Путь в разработку игр | Движуха Сакутина
Kanalga Telegram’da o‘tish
354
Obunachilar
-124 soatlar
-17 kun
-530 kun
Postlar arxiv
🔥 CODE STYLE И ОШИБОЧНЫЕ ОПРЕДЕЛЕНИЯ ТЕРМИНОВ В C# 🔥
❓ Вы меня спросите, Джуно, зачем нам твой код стайл, зачем лишний раз заморачиваться, если и так всё понятно?
⚡️ Для этого я, Джун Джуно, и нужен, чтобы переубедить вас!
👀 Представьте, у вас есть книга "Война и мир". Смогли бы вы её прочесть, если одно предложение было бы написано на русском, следующее на французском, потом каждое слово писалось бы с заглавной буквы, а между абзацами было бы разное расстояние?
⚠️ Скорее всего да, но насколько быстро вы прочтёте книгу и будет ли это достаточно удобно и просто?
🚫 Нет! Помним также, что это художественная литература с законченной часто идеей, над которой трудятся максимум писатель с редактором
❗️А ваш код - это техническая документация, которую активно изменяют программисты, кому часто приходится добавлять или убирать фичи, поэтому всё становится в разы сложнее
💬Работать над интересным и прибыльным проектом без единого CodeStyle будет очень непросто! Но прежде, чем начать разговор об этом, важно дать правильные определения терминов в C#.
💥 Интересно? Тогда рассмотрим три наиболее частых ошибочных определения, которые используют 99% ютуберов по Unity:
📌 Скрипт и класс разные понятия! Скрипт - это файл с расширением .cs, в котором может хранится не только класс, а например перечисление или структура
📌 Поля, а не переменные объявляются в классе! В том же самом инспекторе Unity пользователь может изменять значение поля, а не переменной
📌 В C# функции являются более общим термином, отдельным случаем которого является метод! Никаких функций Start и Update, правильно методы! Функции включают в себя также анонимные методы и делегаты
✔️Сохраняй напоминалку и говори как настоящий программист! Если интересно узнать больше о Unity и C# - Джун Джуно к вашим услугам!
🔥 NOOB SHOOTER ГОТОВ К РЕЛИЗУ 🔥
⚡️Последние пару дней всей компанией работали без перерывов, чтобы довести игру до альфа-версии
✔️ Ваш Джун Джуно успел добавить звуки, в том числе и прекрасную песню в начале, пофиксить пару экранов в меню, перенести дизайн для окна получения награды из Figma
✔️ Уже завтра планируем опубликовать игру в Google Play Market и будем молиться, чтобы её одобрили
✔️ И, надеюсь, уже на этой неделе сможете пощупать итог двух месяцев напряжённой работы
⚠️ Хорошая новость для тех, кому нравятся мои статьи про хороший код:
ℹ️ После релиза будет больше сил, энергии и времени для телеграмм канала. Ждите больше контента, дорогие мои!
📌 Если хотите научиться круто программировать - Джун Джуно к вашим услугам!
👨💻 ВЫБИРАЙ СВЕТЛУЮ СТОРОНУ КОДА!
🔥 10 СОВЕТОВ ПО ЧИСТОМУ КОДУ
🙂 Скрипт, встречающийся в большинстве игр - управление персонажем. Каждый прогер на Unity начинает свой путь в GameDev именно с него
⁉️ Но как правильно написать его? Джун Джуно подскажет, дав вам десять рекомендации по Clean Code!
✔️ Удаляйте ненужные юзинги в коде
✔️ Вместо публичного модификатора доступа используйте для полей приватный с атрибутом сериализации:
Не public, а [SerializeField] private
✔️ Не делайте слишком сложные названия! У поля скорости лучше убрать MOVE, так как это лишняя информация:
Не MOVESPEED, а SPEED
✔️ В C# используется стиль кода CamelCase и названия приватных полей пишутся с нижнего подчеркивания:
Не SPEED, а _speed
✔️ Любые сокращения - зло. То же самое относится и к полю, хранящему Rigidbody. Не все программисты поймут, что означают эти две коварные буквы
Не rb, а _rigidbody
Не ленитесь, а пишите полностью : )
✔️ Не оставляйте члены класса без модификаторов доступа (часто происходит с полями и методами)
✔️ Безопасный GetComponent. Получать компонент с объекта - плохая идея, так как этого компонента может и не быть на объекте. Чтобы избежать подобной ситуации, нужно писать атрибут над классом:
[RequireComponent(typeof(T))]...
GetComponent<T>();
T - это компонент, который должен быть на объекте
✔️ Магическими числами считаются строки. Например:
"Verical" "Horizontal"
Заведите отдельные поля, хранящие их, которые при этом нельзя будет изменять в коде. Атрибут readonly поможет с этим!
private readonly string _имяПоля
✔️ Избегайте слишком длинных строк! Их никто не любит... Создайте отдельную переменную для облегчения чтения и понимания кода, например:
Vector3 movement =...
✔️ Между членами класса делайте отступы, логически разделяя логику кода
✔️ Методы, состоящие из одной строчки заменяются на лямбда - выражение. Например, вместо
private void Start()
{
//logic
}
Можно написать:
private void Start() => ... ;
⚠️ Пишите в комментариях, о чём стоит рассказать ещё! Если понравились советы и хотите больше постов - Джун Джуно к вашим услугам!
P.S. Спасибо комментаторам, что указали на неточность в посте! Добавил в четвертом пункте большей ясности ⚠️🔥 Пока обычные учителя информатики обучают детей работе в КуМир, настоящие программисты создают вместе с учениками игры в GDevelop
⚡️ MAKE GAMEDEV GREAT AGAIN!
🔥 Мои ученики тестируют игру раньше всех
⚠️ Хотите быть на их месте?
🔥 Новая рубрика - Освежающий Код
🙂 Понедельник - душный день. Закончились выходные, настало время вернуться на учёбу, работу
🚫 Так не хочется рано вставать и идти на автобусную остановку, ожидая вечно опаздывающих общественный транспорт
⚡️ Я хочу скрасить вам утречко, предлагая провести его вам с пользой. Конечно же вместе с Джуном Джуно!
‼️ Открываю новую рубрику "Освежающий Код". Узнайте о важнейших фишках проектирования и деталях архитектуры кода
✔️ Будем решать вместе интересные задачки по C#
⚠️ Не знаете разницы между интерфейсом и абстрактным классом, SOLID принципы для вас твердые принципы, а слово контравариантность вводит вас в ступор? Джун Джуно к вашим услугам!
👀 Кстати, вот и первая задачка. Пишите в комментариях, что выведется в консоль
⚠️ Ждите разбор этой задачи с подробным объяснением!
#освежающий_код
🔥 ИТОГИ НЕДЕЛИ
🙂 Джун Джуно к вашим услугам!
⚡️Вчера добавил функционал для пути к славе. Помимо золота и очков силы, игрок сможет получить уникальное оружие и открыть классные игровые режимы
✔️ Для тех, кто не хочет проигрыватель из-за ошибок тиммейтов, добавлен одиночный режим
📈 Улучшили оптимизацию, теперь ваш поко не взорвется на первой минуте игры
‼️ Эта неделя последняя перед выпуском альфы версии в Google Play Market
⚠️ ⚠️⚠️ Внимание: освобождайте место под лучший 3D шутер)
🔥 СОЧНЫЙ ГЕЙМПЛЕЙ ДЛЯ ПРОБУЖДЕНИЯ
🙂 Джун Джуно к вашим услугам! Спешу показать вам больше контента из Noob Shooter
📌 Цель игрока - занять первое место по фрагам
✔️ Победа над ботами непростая задача
⚠️ Больше оружия будет добавляться со временем
⭐️ Делитесь вашими играми в комментариях
🔥Noob Shooter
✔️NipoGames - игровая студия, где работает ваш дорогой Джуно, разрабатывает мобильный 3D шутер от первого лица
🙂 Хочу показать последний UI над которым работали. Спасибо геймдизайнеру за сочную картинку
📈В игру вкладывают много сил артисты, программисты и геймдизайнер
‼️Проект близится к первому релизу. Ждите видео с геймплеем и другими менюшками! Если хотите больше новостей - Джун Джуно к вашим услугам!
❗️❗️❗️ДАННАЯ ГРУППА НАХОДИТСЯ ПОД ЗАЩИТОЙ ДЖУНО
⚡️⚡️⚡️ Джун Джуно к вашим услугам!
Настал день моего триумфа, моего выхода на сцену! Меня зовут Демид Лупанов, но все зовут меня Джуно. Я человек, кого не должно было быть..
👀 "Рожденный ползать летать не может" - твердили мне все. Небогатое детство без отца, отсутствие друзей, разбитое сердце, куча комплексов - идеальный рецепт приготовления последнего человека: человека, неспособного к действию, застрявшего в порочном круге безволия
🙂 Оставьте блюдо на медленном огне: ужаснейший запах гнили придаст ему особые вкусовые качества. Для истинных гурманов предлагаю прибавить огонька, но главное не сжечь всё полностью
⁉️ Я стоял на решающем распутье: принять свою судьбу, оставив всё как есть или бороться до конца, опустившись на самое дно. Я принял самое смелое решение в жизни: вырвал сердце из моей грудной клетки и прокричал: "Воля к власти побеждает фортуну!"
🔥 С каждым днём оно пылает всё сильнее и сильнее, помогая даже другим выбраться из темного леса.. Они видят во мне надежду на светлое будущее, надежду на торжество жизни, кого они зовут Джуно
❓ Но кто я такой? Кто это Джуно? Настало время подать блюдо к столу. Я семнадцатилетний C# junior+ developer, работающий в российской геймдев студии, проходивший курс ЯЮНИОР, и по совместительству учитель информатики в элитной частной школе на северо-западе Москвы. Активно изучающий историю и философию. Обладающий навыками ораторского искусства и красноречия. Гармония ума и воли
👨💻 GameDev. Я попал туда четыре года назад, застал уход Brackeys и практически сразу попал под влияние Романа Сакутина, кто был долгое время для меня кумиром, был человеком, кто вдохновлял на смелые подвиги, кто зародил во мне мысль: возраст не приговор. Именно в разработке игр родился новый я. Геймджемы стали моей колыбельной. Через них я получил харизму, получил уверенность, получил первую работу в IT
‼️ Цели. Сегодня ровно год, как я преподаю. Пройдя невероятно быстро путь в этой нелёгкой сфере: от стажёра в онлайн школе до ценного педагога в Москве. Успел поработать в компаниях разного масштаба: от крохотных, не занимавших больше одного офиса, до мировых, охватывающих весь земной шар. Но увидел в IT - образовании огромное количество лжецов, кто продают курсы - пустышки без пользы. Прося, конечно, за них огромные деньги.
⚡️Я буду бороться за качественное и честное образование! Буду разоблачать наглые фирмы, обманывающие ежедневно доверчивых людей по всему свету! Ну и конечно же, буду публиковать полезный контент по Unity и C#.
❓ Устали от неинтересных инфоциган на YouTube? Джун Джуно к вашим услугам!
