Как отличается типизация в Java от C# при работе с TypeScript?

Какая разница между изучением Java и C# для лучшего понимания основ TypeScript, учитывая, что TS был создан автором C#? Я рассматриваю курс по Java, но мне интересно, будет ли разница, если я выберу C#, учитывая возможные различия в обозначении типов.
  • 21 декабря 2023 г. 9:07
Ответы на вопрос 4
Основные различия в типизации между Java, C# и TypeScript заключаются в следующем:

1. Java и C# являются статически типизированными языками, в то время как TypeScript - язык со статической проверкой типов, но динамической природой. Это означает, что в Java и C# необходимо объявлять типы переменных заранее, в то время как TypeScript позволяет использовать типы, но позволяет также определять переменные без указания их типа.

2. В Java и C# используется явная типизация, где тип переменной указывается явно. В то время как в TypeScript можно использовать неявную типизацию, где компилятор определяет тип переменной на основе инициализации значения.

3. В C# имеется более богатая система типов и поддержка более продвинутых концепций, таких как делегаты и LINQ (Language Integrated Query), которых нет в Java. Эти концепции могут быть полезными при изучении более сложных функций TypeScript.

Изучение как Java, так и C# может помочь в понимании основ TypeScript, так как оба языка имеют много общих концепций и подходов к программированию. Однако, если автор TypeScript был автором C#, изучение C# может предоставить больше контекста и понимания оригинальных намерений и концепций, которые могут использоваться в TypeScript.

В целом, выбор между изучением Java или C# должен быть сделан исходя из ваших конкретных потребностей и предпочтений, так как оба языка имеют свои преимущества и различия в синтаксисе и возможностях. Если ваша цель - изучение TypeScript, любой из этих языков может стать хорошим стартовым пунктом.
Странная идея вообще учить язык А или Б для того чтобы понять язык В. 
Учите TS чтобы понимать TS, учите C# чтобы понимать C#.
У TS типизация структурная и там есть алгебраические типы данных, а у C#/Java номинативная и алгебраических типов данных нет.
учить Java или C# для понимания фундаментальных основ TS
а английский вы так учили через изучение итальянского? а русский изучили через какой язык?

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