Буду краток. Я недавно задал вопрос, насчет того - как мне лучше начать изучать C# для Unity, мне скинулы Книги и учебные ресурсы по C#. Если я куплю эти книги, то именно эти знания C# помогут мне программировать на Unity? или там используются совершенно другие понятия и другой смысл. (вы извините, я новичок в этой сфере, поэтому сори если этот вопрос звучит глупо, но мне нужен совет)
-
Если вам надо изучить c# + unity, не занимайтесь ерундой, учите именно c# + unity. Есть много книг и других ресурсов для этого. Например, есть та же книга "unity in action". Но не зацикливайтесь на книгах, есть много видео уроков на том же ютубе, у самой юнити большая документация с туториалами и примерами. – tym32167 Aug 22 '19 at 13:33
-
Вам не надо быть профессионалом в c# чтобы написать тетрис, потому вам не надо (по крайней мере сейчас) изучать многотомник по c#. Изучайте только то, что вам сейчас необходимо для быстрого старта, а когда после тетриса задумаете писать более сложную игру, у вас уже будет представление о том, что вам надо учить. – tym32167 Aug 22 '19 at 13:37
-
было такое, что на работу разработчиком unity, по части unity почти ничего не требовалось...а вот спрос по c# был конкретный... – Vitaliy Stop_RU_war_in_UA Aug 22 '19 at 13:52
2 Answers
Коротко: конечно
Серьезных отличий между C# в юнити и обычным C# нет, а выучить специфические вещи, имея основу не составит большого труда.
Но прежде чем бежать в магазин за книгой я хотел бы порекомендовать вам эту, как раз написана сообществом StackOverflow и распространяется абсолютно бесплатно.
Самым большим минусом может быть только то, что она на английском. Но в ней так же, как и в платных аналогах, разобраны все моменты, причем последних версий языка. Еще данную книгу удобно использовать как настольный справочник.
Сам углублялся в язык по ней, рекомендую. Как и остальные книги с данного сайта.
- 1,006
Развернуто на это тему.
Еще пару лет назад (если не ошибаюсь) для компиляции C# в Unity использовался Mono. C# выбрали основным языком в Unity за то, что он пользуется достаточно большим спросом в сообществе разработчиков в целом. Но была загвоздка с тем, что C# был достаточно проприетарным (в совокупности .NET) и работать с ним без каких либо сложностей можно было только на Windows платформах. Соответственно, чтобы собирать на этом языке приложения под другие платформы, пришлось использовать не .NET, а кросс-платформенный аналог. Аналог этот отличался исключительно внутренней реализацией, все API были +- индентичны. Еще была проблема с тем, что поддерживались все стандарты языка около C# 4. Разрабатывался этот аналог смотря на спецификацию C# и описаниям работы .NET, по этому максимально приближался к нему по реализации.
Относительно недавно, .NET решили сделать open source проектом, что уже дает большой толчок в направлении развития C# и его популяризации. + Microsoft выкупили тот же Mono, чтобы направить .NET в кросс-платформенное русло, по этому C# на Unity и вне его вскоре станут совсем идентичны, даже в плане версии самого языка.
Уже сейчас можно попробовать завести C# 7 в Unity, правда пока в экспериментальном режиме.
Что касается стоит или не стоит учить язык глубоко - однозначно стоит. Если вы разберетесь только с Unity частью C# и Unity-way подходом в разработке игр, то далее чем junior/middle- вы не уйдете. На собеседованиях в крупные компании чаще не задают вопросы по самой Unity, только знание C# и архитектурных подходов. А нормальный архитектурный подход в игре нельзя реализовать без знания языка.
- 4,442