TypeScript VS ScriptSharp - Что такое компромисс?

Я собираюсь создать крупномасштабное приложение Javascript, и я хочу построить его более структурированным способом.
JQuery будет использоваться для эффектов css.
Сторона сервера будет в c #.
Можете ли вы поделиться своими знаниями и опытом, что лучше?

  1. Какой из них более богат?
  2. Что лучше документировано?
  3. Является ли тип скрипта действительно сильно типом?

Кроме того, в долгосрочной перспективе ScriptSharp - это шоу с одним человеком (как я его понимаю), а TypScript был создан Microsoft.
благодаря

8
nl ja de
@JcFx - Я редактирую свой вопрос.
добавлено автор SexyMF, источник
JQuery работает лучше для небольших веб-приложений - вы должны рассмотреть возможность использования чего-то большего, как Angular, который обрабатывает привязку данных к вам и т. Д.
добавлено автор BrainSlugs83, источник

4 ответы

Какой из них больше богат?

Ни то, ни другое - скомпилированный JavaScript делает все JavaScript доступным для вас.

Что лучше документировано?

Документация, вероятно, не является правильным вопросом. У кого есть больше информации/сильное сообщество, которое поможет вам, когда вы застрянете? На данный момент существует 141 ScriptSharp-вопрос (с 48 последователями) по Stack Overflow и 623 TypeScript (с 328 последователями).

У TypeScript очень четкая спецификация языка . Я искал документацию на ScriptSharp - кому-то нужно указать, где это ... Я предполагаю, что есть подмножество C#, которое вы можете использовать, и мне было бы интересно узнать, что это за подмножество.

Является ли TypeScript действительно строго типизированным?

ТипScript статически типизирован. Он будет проверять типы во время компиляции (и IDE проверит время разработки). Ошибки будут генерироваться для нарушений типа, хотя вы также можете выбрать динамическую типизацию, если хотите.

Какую пользу я должен использовать?

Если вы не можете думать о написании кода ничем, кроме C#, вы должны использовать ScriptSharp. Во всех остальных случаях я рекомендую TypeScript. Понимание JavaScript полезно, учитывая, как язык настолько вездесущ, и TypeScript дает вам ранний доступ к языковым функциям ECMAScript 6, поэтому, если вы решили все использовать и использовать чистый JavaScript, ваш опыт кодирования с использованием TypeScript будет более ценным.

В какой-то мере я предвзятый. Мне нравится TypeScript так, что я написал книгу об этом. Однако энтузиазм для TypeScript (а не Dart, CoffeeScript, ScriptSharp) предшествовал этому проекту.

16
добавлено
Спасибо за подробный ответ, +1. Где я могу найти эту книгу? Спасибо. Кстати, вы будете использовать TypeScript для небольших проектов?
добавлено автор SexyMF, источник
Стоит отметить, что Script # имеет гораздо более громоздкую систему для обработки существующих библиотек javascript. Вам нужно написать свои собственные интерфейсы, только с несколькими (для MS Ajax, jQuery, Knockout) и меньшим интересом сообщества (нет сайта, такого как github.com/borisyankov/DefinitelyTyped , AFAIK). Это была наша главная причина не использовать сценарий # в крупных проектах до того, как TS был выпущен.
добавлено автор JcFx, источник
@SexyMF Я использую его для некоторых небольших проектов, если я использую Ajax, например, так как у меня действительно хороший класс TypeScript Ajax. О, и вы можете получить книгу в мягкой обложке или Kindle здесь: amazon.co.uk/s/… :
добавлено автор Fenton, источник
@zumalifeguard вы можете просматривать функции ReSharper TypeScript здесь: jetbrains.com/resharper/whatsnew /index.html#typescript
добавлено автор Fenton, источник
Кто-нибудь знает, что лучше работает с ReSharper? С помощью скрипта # вы в основном используете версию C# ReSharper, которая является удивительной. Но есть ли у Typcript ReSharper все функции, которые у вас есть с C #?
добавлено автор zumalifeguard, источник
Стив, мне хотелось бы знать, какие функции ReSharper C# отсутствуют в ReShaper TypeScript. Например, я очень люблю «Ввести переменную», «Встроенная переменная», «Извлечь класс», «Метод перемещения» и т. Д. Я вижу, что «Ввести переменную» входит в список, но «Встраиваемая переменная»?
добавлено автор zumalifeguard, источник

ScriptSharp находится под постоянным развитием, хотя это шоу с одним человеком. Мы используем ScriptSharp для крупномасштабного веб-приложения уже около 3 лет, и он хорошо нас обслуживает. Возможность писать код на C# помогла нам быстро двигаться, и у нас было меньше затрат на обучение.

Для ScriptSharp есть явный недостаток, что при выпуске новых версий в некоторых версиях существует множество изменений. Но нам это так нравится, что мы готовы мириться с изменением и внести соответствующие изменения.

If you have a dedicated infrastructure team to handle such architectural changes, you can use them to keep up with ScriptSharp and write the wrappers for the JavaScript libraries, I highly recommend ScriptSharp based on our experience. Please evaluate a simple prototype in both before you decide on which technology to go with. You can also try Sharpkit for an interesting alternative. Link-> http://sharpkit.net/

7
добавлено

Я также изучаю это, и из моих исследований выяснилось, что Microsoft использовала Script # для создания интерфейса всех своих крупных веб-приложений, таких как Office Web Apps, Hotmail, Office 365, SharePoint 2013, и они используют более старые версии чем самый последний выпуск сценария #, потому что люди говорят, что он достаточно стабилен, как есть. Проблема в том, что Microsoft, похоже, удерживает этот инструмент производительности от нас, не выпуская файлы определения сценария # (библиотеки импорта) для публики для таких вещей, как SharePoint, CRM и Office, поэтому кажется, что большинство людей движется к TypeScript вместо этого. Однако я склоняюсь к использованию сценария # и строю определения, которые мне нужны, когда они мне нужны.

Рекомендации:

http://weblogs.asp.net/soever/archive/2009/10/20/sharepoint-2010-client-side-javascript-object-model-library-written-in-script.aspx

Начиная:    http---scriptsharpcontrib.codeplex.com/wikipage?title=Getting%20started%20with%20ScriptSharp

О, и есть определение CRM на Codeplex, но я не в ссылке :)

Если вы являетесь разработчиком .net, то определенно вы должны хотя бы проверить скрипт #. Да, это шоу одного человека. Да, это не так рекламируется как TypeScript, но может ли многие разработчики конкурировать с логотипом MS?

У меня есть практический опыт работы с Script #, но не с TypeScript. И единственная причина, почему вы не хотите трогать позже, - это то, что сценарий # применим для людей, уже знакомых с C# + JS, а TypeScript - совершенно новая история и новая стоимость для вашего проекта.

1
добавлено
TypeScript — русскоговорящее сообщество
TypeScript — русскоговорящее сообщество
1 161 участник(ов)

Общаемся на темы TypeScript и статической типизации. Вопросы, идеи, новости и реальный опыт.