TypeScript: Введение. Книги typescript


Курс по TypeScript

Запись на курс

Набор каждые 1-2 месяца.

Вы можете запросить уведомление:

Программа

TypeScript увеличивает эффективность и надёжность JavaScript-разработки добавлением строгой типизации. Он взят за основу в некоторых современных фреймворках, таких как AngularJS 2.0 и Ionic Framework 2.0.

В этом курсе мы с вами шаг за шагом пройдем от знакомства с основными идеями до реального использования TypeScript, на практике посмотрим как решать типичные проблемы. Начнем с построения простых компонентов, научимся настраивать окружение, поговорим про системы сборки.

Курс состоит из 4-х занятий:

  1. Знакомство с TypeScript и его окружением.


  2. Основные структурные элементы в TypeScript

  3. TypeScript и сторонние библиотеки, модулизация.


  4. Декораторы, прочие вопросы по TypeScript.

Детали программы смотрите далее.

Основные темы программы

  • Неделя 1
  • Неделя 2

Неделя 1

Знакомство с TypeScript и основными структурными элементами

В этом блоке мы разберем основные идеи TypeScript, зачем он нужен и почему так важен. Научимся писать простые компоненты и узнаем, в чем принципиальное отличие TypeScript от других решений. Разбираем нюансы о типах, функциях и классах.

  • Настраиваем окружение.
  • Устанавливаем правила редактирования.
  • Знакомимся с типизацией и разбираемся в ней.
  • Рассматриваем функции в контексте ЕS6 и рассматриваем их сквозь призму TypeScript.
  • Рассмотрим классы как основной строительный элемент TypeScript.

Неделя 2

Углубляемся в понимание TypeScript

Когда мы пишем реальные приложения или тестируем их, мы используем ряд сторонних решений и библиотек. Мы познакомимся с тем, где и как можно найти определения типов для них и как их интегрировать в проект. Напишем свои определения типов. Также мы модуляризуем на TypeScript-проект и разберём ряд дополнительных тем, таких как система сборки, декораторы и др.

  • Пишем приложения со сторонними библиотеками.
  • Учимся писать свои определения и используем сторонние.
  • Говорим о модулях и их реализации в TypeScript.
  • Смотрим как можно собрать модули с помощью WebPack.
  • Рассматриваем декораторы. Что это? Зачем? Где?.

Как проходит обучение?

Курс будет состоять из собрания, четырёх занятий и домашнего задания между ними. Нам их будет вполне достаточно.

Домашнее задание будет не очень большим, но важным, так как "грабли" всплывают именно при самостоятельном написании кода, а не при просмотре "как это делает преподаватель". Рекомендуется его выполнять.

Результат обучения

  1. Вы знаете, понимаете и умеете использовать основные идеи TypeScript.
  2. Вы готовы писать код, который легко читать, поддерживать и расширять.
  3. Вы готовы к детальному изучению AngularJS 2.0 and Ionic Framework 2.0.

Гарантия

  • Если объяснения будут вам непонятны
  • Если курсы не дадут вам новых знаний и умений
  • Если вы не сможете подключиться к системе онлайн-обучения

…то вы сможете получить деньги назад.

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

Преподаватель

Игорь Непипенко

Занимаюсь современной frontend-разработкой с использованием Angular более 5 лет.

Интересуюсь передовыми технологиями web-разработки и использую их в проектах. Более 2 лет веду обучение в области frontend-технологий.

В последние годы работал как Team/Tech Lead в разработке enterprise-приложений для CША.

Являюсь соучредителем и техническим руководителем компании http://jsdaddy.io/. Также имею большой опыт преподавания математических дисциплин в ВУЗе.

Что говорят о курсах люди

learn.javascript.ru

TypeScript | Введение

Что такое TypeScript

Последнее обновление: 08.03.2018

TypeScript представляет язык программирования на основе JavaScript.

Развитие TypeScript началось в конце 2012 года. Хотя он зародился в компании Microsoft, и его фактическим создателем является программист Андерс Хейлсберг, так же известный как создатель таких языков как Delphi, C#, но данный проект сразу стал развиваться как OpenSource. И уже с самого начала новый язык стал быстро распространяться в силу своей гибкости и производительности. Немало проектов, которые были написаны на JavaScript, стали переноситься на TypeScript. Популярность и актуальность идей нового языка привела к тому, что ряд из этих идей в последующем станут частью нового стандарта JavaScript. А новая версия одного из популярнейших фреймворков для Web - Angular 2/4/5/6 полностью написана на TypeScript совместно компаниями Microsoft и Google.

Однако, казалось бы, зачем нужен еще один язык программирования для клиентской стороны в среде Web, если со всей той же самой работой прекрасно справляется и традиционный JavaScript, который используется практически на каждом сайте, которым владеет множество разработчиков и поддержка которого в сообществе программистов довольно высока. Но TypeScript это не просто новый JavaScript.

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

Во-вторых, TypeScript реализует многие концепции, которые свойственны объектно-ориентированным языкам, как, например, наследование, полиморфизм, инкапсуляция и модификаторы доступа и так далее.

В-третьих, потенциал TypeScriptа позволяет быстрее и проще писать большие сложные комплексные программы, соответственно их легче поддерживать, развивать, масштабировать и тестировать, чем на стандартном JavaScript.

В-четвертых, TypeScript развивается как opensource-проект и, как и многие проекты, хостится на гитхабе. Адрес репозитория - https://github.com/Microsoft/TypeScript. Кроме того, он является кроссплатформенным, а это значит, что для разработки мы можем испольвать как Windows, так и MasOS или Linux.

В то же время TypeScript является надмножеством JavaScript, а это значит, что любая программа на JS является программой на TypeScript. В TS можно использовать все те конструкции, которые применяются в JS - те же операторы, условные, циклические конструкции. Более того код на TS компилируется в javascript. В конечном счете, TS - это всего лишь инструмент, который призван облегчить разработку приложений.

Генерируемый компилятором TypeScript код JS поддерживается подавляющим большинством браузеров, так как ориентируется прежде всего на стандарт ECMAScript 3, хотя TS также поддерживает и стандарты ECMAScript 5 и ECMAScript 2015 / 2017. Хотя в процессе разработки мы можем сами задать целевой стандарт ECMAScript.

Как использовать TypeScript? Поскольку данный язык является OpenSource, то все его инструменты доступны для всех желающих. Для работы с TypeScript мы можем использовать как Windows, так и Linux и MacOS.

Сам компилятор TS можно установить с помощью команды менеджера пакетов npm, который используется в Node.js:

> npm install -g typescript

Для написания кода на языке TypeScript можно использовать любой самый простейший текстовый редактор. Многие текстовые редакторы и среды разработки, например, Visual Code Studio, Atom, Sublime, Visual Studio, Netbeans, WebStorm и другие, имеют поддержку TypeScript на уровне плагинов, что позволяет воспользоваться рядом преимуществом, например, подцветкой кода или всплывающей подсказкой по типам и конструкциям языка.

При изучении TS неоценимую роль может оказать официальный сайт языка http://www.typescriptlang.org/, где можно найти всю необходимую документацию и множество других полезных материалов. Ну и также, чтобы оставаться в кусе обновлений, можно подписаться на официальный твиттер, посвященный TS - https://twitter.com/typescriptlang.

metanit.com

TypeScript: Введение

Серия

Вот уже год я пишу на TypeScript. За это время язык повзрослел и стал более значимым на фоне остальных надмножеств JavaScript. К слову, не так давно Typescript дополнил список официальных языков, используемых в Google. Так что же представляет из себя TypeScript и как можно продать ему душу, перейти на его тёмную сторону с печеньками? – всё это будет рассматриваться в этой серии статей, где я буду подробно описывать всё, что имеет и умеет TypeScript.

Скорее всего, если у вас уже есть опыт написания *.ts файлов – эта серия статей будет вам не интересна. Хотя, эту статью я бы посоветовал прочитать всем без исключения.

Итак, в этой части серии я отвечу на следующие вопросы:

  • Предпосылки к TypeScript?
  • Что из себя представляет TypeScript?
  • Как устроен TypeScript?
  • Какие проблемы решает TypeScript?
  • В каком случае следует использовать TypeScript, а в каком нет?

Предпосылки

В далёком 2012 году компания Microsoft выпустила первую публичную версию TypeScript, создателем которого является Андерс Хейлсберг. Этот человек успел поработать над созданием Pascal, Delphi и C#. Когда на свет появился C#, многие программисты признали его весьма интересным инструментом, однако в то время компания Microsoft не имела целей на кроссплатформенность своих решений и открытия исходников. В итоге, C# хорош, но условно кросплатформенный и закрытый. В последнее время Microsoft активно открывает исходники своих проектов и усердно работает над кроссплатформенностью.

С появлением Node.js и, позднее Electron, мир JavaScript заставил разработчиков взглянуть на себя по новому, что, как следствие, привело «больших» игроков на это поле. Скорее всего, учитывая свой предыдущий опыт, Microsoft решила сыграть на этом поле с помощью TypeScript, сразу лишив себя проблем с кросплатформенностью и выпустив компилятор в OpenSource.

Так что же привело к созданию TypeScript? – желание программистов меньше думать и быть уверенными в завтрашнем дне, а если честно, то:

  • Сам по себе JavaScript не модульный. В то время ES2015 Modules лишь были в планах, а require – это задумка Node.js, не являющаяся стандартом.
  • Иногда JavaScript ведёт себя непредсказуемо, что определяется динамической типизацией.
  • Большое количество способов выстрелить себе в ногу, если не думать о завтрашнем дне.

TypeScript снаружи

TypeScript – это компилируемое надмножество JavaScript, приносящее опциональную статическую типизацию и некоторые возможности современных стандартов ECMAScript.

Надеюсь всем понятно, что статическая типизация отличается от динамической тем, что в первом случае проверка типов осуществляется во время компиляции, а во втором – во время выполнения инструкций. Однако, что же значит «опциональная типизация»? – всё очень просто: вы используете типы там, где вам хочется. Вы можете писать весь код типизированным, можете типизировать лишь его часть, а можете не использовать типы вообще, используя TypeScript лишь как транспилятор и наивный подсказчик в вашем редакторе. Наивным я его называю потому, что TypeScript из коробки пытается определить тип переменных, возвращаемых значений функций и прочих конструкций и на основе этих определений подсказывать вам.

И тут нужно упомянуть одну важную особенность, которую почему-то понимают не все разработчики: любой валидный JavaScript-код – это валидный TypeScript-код. Не забывайте это, когда вас попросят написать что-то на TypeScript: вы уже его знаете, если знаете JavaScript – просто нужно почитать про его особенности и запомнить дополнительный синтаксис описания типов.

Также, стоит немного раскрыть тему использования современных стандартов ECMAScript. Так как TypeScript требует компиляции, то почему бы не добавить возможность использования современных стандартов и при компиляции транспилировать их в более низкую версию стандартов. В этом случае можно привести в пример всем известный Babel, который делает всё тоже самое. Но сравнивать транспиляцию TypeScript нужно с Buble, потому что он, в отличии от Babel, на выходе имеет читаемый, отлаживаемый и поддерживаемый код. То есть даже в том случае, если вы потеряете исходники, всегда можно работать со сгенерированным кодом.

TypeScript умеет транспилировать код в ES2015, ES5 и ES3. Однако, при этом TypeScript не поллифилит код, к слову, как и Babel (из коробки). Это значит, что, если вы напишите Object.assign({}, {}) и попытаетесь скомпилировать этот код в ES5, то TypeScript любезно откажет вам ошибкой:

error TS2339: Property 'assign' does not exist on type 'ObjectConstructor'.

Однако, TypeScript умеет понижать уровень генераторов и итераторов вплоть до ES3. Получается, что вы можете написать код, использующий Async/Await и скомпилировать его в ES3 – удобно.

TypeScript изнутри

Изнутри TypeScript можно представить в виде четырёх слоёв, каждый из которых выполняет свою определённую роль. В основе, конечно же, лежит ядро компилятора, которое включает в себя: парсер, пре-процессор (собирает контексты из .ts и .d.ts файлов), связыватель (

canonium.com

TypeScript - Все для студента

Jess Chadwick, 2016. — 220 p. JavaScript is old and its dynamic nature can make it very difficult to build large applications in a maintainable way. But, add the immense power of compile-type static typing and all of the sudden you've got an enterprise-ready language that saves you from many common JavaScript issues and actually makes web development an enjoyable experience....

  • №1
  • 3,09 МБ
  • добавлен 10.12.2016 02:51
  • изменен 10.12.2016 04:52

Depot legal - Bibliotheque et Archives national du Quebec, 2018. — 175 p. — ISBN 10 2981311069, ISBN 13 978-2981311061. What will you learn? This book is for people with an interest to improve their development velocity by using static typing with Typescript. A basic understanding of JavaScript and web development is suggested. This book doesn't cover how to develop client-side...

  • №2
  • 254,77 КБ
  • добавлен 25.04.2018 11:28
  • изменен 25.04.2018 20:12

Packt Publishing, 2018. — 158 p. Work with everything you need to create TypeScript applications TypeScript is designed for the development of large applications and can be used to develop javascript applications for both client-side and server-side execution. This book is the ideal introduction to TypeScript, covering both the basics and the techniques you need to build your own...

  • №3
  • 1,43 МБ
  • добавлен 27.09.2018 17:17
  • изменен 28.09.2018 00:09

Packt Publishing, 2018. — 158 p. Work with everything you need to create TypeScript applications TypeScript is designed for the development of large applications and can be used to develop javascript applications for both client-side and server-side execution. This book is the ideal introduction to TypeScript, covering both the basics and the techniques you need to build your own...

  • №4
  • 1,05 МБ
  • добавлен 27.09.2018 17:19
  • изменен 28.09.2018 00:09

Apress, 2014. — 233 p. — ISBN-10: 1430267917, ISBN-13 (electronic): 978-1-4302-6790-4. На англ. языке. JavaScript is everywhere, both as a pure language and in popular libraries like Angular, jQuery and Knockout, but users of modern object-oriented languages like Java and C# often find JavaScript frustrating to use and hard to extend to large-scale applications. TypeScript...

  • №5
  • 3,92 МБ
  • добавлен 11.11.2014 21:44
  • изменен 12.11.2014 10:12

Apress, 2017. — 304 p. — ISBN 1484232488. Explore the features of this innovative open source language in depth, from working with the type system through object-orientation to understanding the runtime and the TypeScript compiler. This fully revised and updated second edition of Steve Fenton’s popular book covers everything you need to discover this fascinating language and...

  • №6
  • 1,36 МБ
  • добавлен 26.11.2017 02:56
  • изменен 26.11.2017 03:30

Apress, 2017. — 304 p. — ISBN 1484232488. Explore the features of this innovative open source language in depth, from working with the type system through object-orientation to understanding the runtime and the TypeScript compiler. This fully revised and updated second edition of Steve Fenton’s popular book covers everything you need to discover this fascinating language and...

  • №7
  • 4,66 МБ
  • добавлен 26.11.2017 02:56
  • изменен 26.11.2017 03:30

Syncfusion Inc, 2013. — 82 p. Categories: Web Development, JavaScript The extensive adoption of JavaScript for application development, and the ability to use HTML and JavaScript to create Windows Store apps, has made JavaScript a vital part of the Windows development ecosystem. Microsoft has done extensive work to make JavaScript easier to use. Microsoft's TypeScript extends...

  • №8
  • 2,11 МБ
  • добавлен 08.07.2016 16:29
  • изменен 08.07.2016 16:58

Syncfusion Inc, 2013. — 75 p. Categories: Web Development, JavaScript The extensive adoption of JavaScript for application development, and the ability to

www.twirpx.com