Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Вопросы бывалым "Самураям" на пути разработки про Unity и C#

Межголоктический разум Ученик (194), открыт 2 недели назад
\\ <---------- Образно---------->

"У самурая нет цели только путь"
P.s Ямамото Цунэтомо

Я как начинающий "самурай" (самоучка) , прошу старших поделится свои опытом и дать пару советов!
- освоив азы я понял что в арсенале "самурая" не только одна катана, а также не вообразимая множество техник. Меня гложать сомнения: надо ли учить всё? оправдает ли результат , потраченное время и усилия? какие умения надо оттачивать в первую очередь а какие укреплять глубже?


\\ <---------- Перевод ---------->

- Я разработчик самоучка на Unity. Расскажите пж о своём опыте на пути разработке, а именно с какими трудностями сталкивались и какие советы можете дать новичку (+- 1 год опыта).

Также есть конкретные вопросы:
1) Как лучше структуриризировать код?
2) Когда и где лучше всего использовать "систему событий" ? ( Action )
3) Зачем нужны "синглтоны" ? где их использовать? обязательны ли они?
4) Тот же вопрос про "Zenject" и "ECS "
5) Куда идти? В какую сторону развиваться и чего начать?
1 ответ
Terel Профи (866) 2 недели назад
Тоже самоучка и не особо наделен опытом, но если будет важно мое мнение.
Нужно ли все учить? Слушай, я сомневаюсь, что вы решаете квадратные уравнения матрицей, а не дискриминантом, ведь матрица в данном случае бесполезна. Вы можете послушать гайды, почитать, но заучивать их не нужно. Вы должны просто прочитать или просто посмотреть гайд, а пользовать или нет этим решит время и задача, уверен в будущем вы просто вспомните материал.
1) Первым делом структурируй файлоовую систему. Не делай из мухи слона там, где это не нужно. Используй правилоо единой ответственности. Используй абстракции. Документируй или комментируй код. Используй ООП там, где это возможно. Возьми стиль написания кода. Используй паттерны. Если ты про это имел в виду конечно
2) К примеру получение уведомлений. Или логгер. Вещь хорошая, применений можно найти много, просто нужно понимать что это такое. Почитай про делегаты, может тоже помогут.
3) Паттерн, который гарантирует, что класс имеет лишь один экземпляр. Это паттерн ООП, так что хочешь или нет в какой-то момент использовать придется.
4) zenject поможет в создании слабосвязанных частей. ECS думаю нужен в случае если у тебя огромный проект. Не обязательны, используй на свое усмотрение, главное не переусложни то, что можно сделать легче
5) Решай сам, это лишь твой выбор. У тебя свой путь, который ты должен сам отобрать, обычно его отбирают по набору опыта.
Сам я не особо дружу с юнити, обычно если возможно использую более простые фреймворки или движки, если они подходят под задачу.
Советую читать код других людей, учись на ошибках других, пользуйся тем, что люди создали. Максимально упрощай создание кода и при этом максимально автоматизируй его работу. Сколько бы ты не учился ты всегда столкнешься с херней, которую не сможешь по началу объяснить, если такое происходит из-за недостатка знаний, то стоит взять планку ниже, если происходит из-за трудности понимать свой код, то время его менять. Создавай, с опытом изменяй, делай проще, нашел способ сделать что-то легче - измени это в своем проекте, что бы тебе этого не стоило.
Межголоктический разумУченик (194) 2 недели назад
Благодарю за внятный ответь! Я наконец вышел из застоя и буду дальше развиваться придерживаясь советов)
Похожие вопросы