Що таке JavaScript?
JavaScript - це мова сценаріїв, яка допомагає створювати інтерактивні веб-сторінки. Він дотримувався правил програмування на стороні клієнта, тому він працює у веб-браузері користувача без потреби у будь-яких ресурсах веб-сервера. Ви також можете використовувати Javascript з іншими технологіями, такими як REST API, XML та ін.
Ідея розробки цього сценарію полягає в тому, щоб зробити його додатковою мовою сценаріїв, як Visual Basic для C ++ в мовних сім'ях Microsoft. Однак JavaScript не призначений для великих складних додатків. Він був розроблений для додатків з кількома сотнями рядків коду!
У цьому підручнику ви дізнаєтесь
- Що таке Typescript?
- Чому саме JavaScript?
- Чому машинопис?
- Історія Javascript
- Історія машинопису
- Особливості Javascript
- Особливості машинопису
- Машинопис проти JavaScript
- Що краще?
Що таке Typescript?
Машинопис - це сучасна мова розробки Javascript. Це статично складена мова для написання чіткого та простого коду Javascript. Його можна запустити на Node js або будь-якому браузері, який підтримує ECMAScript 3 або новіші версії.
Машинопис надає необов’язкові статичні типи, класи та інтерфейс. Для великого проекту JavaScript прийняття Typescript може принести вам більш надійне програмне забезпечення та легко розгорнутий за допомогою звичайного додатка JavaScript.
КЛЮЧОВА РІЗНИЦЯ
- JavaScript - це мова сценаріїв, яка допомагає створювати інтерактивні веб-сторінки, тоді як Typescript - надмножина JavaScript.
- Код Typescript потрібно компілювати, тоді як код JavaScript не потрібно компілювати.
- Typescript підтримує функцію прототипування, тоді як JavaScript не підтримує цю функцію.
- Typescript використовує такі поняття, як типи та інтерфейси, для опису використовуваних даних, тоді як JavaScript не має такої концепції.
- Typescript - це потужна система шрифтів, що включає загальні функції та функції JS для великих проектів, тоді як JavaScript - ідеальний варіант для малих проектів.
Чому саме JavaScript?
- Проект з відкритим кодом з патронажем Microsoft
- Спеціально розроблений інструмент для невеликих сценаріїв
- Підтримує класи, інтерфейси та модулі.
- Скомпільований JavaScript працює в будь-якому браузері
- Дозволяє перехресну компіляцію
- Ви можете розширити JavaScript для написання великих програм
- Додає підтримку класів, інтерфейсів та модулів
Чому машинопис?
- TypeScript підтримує бібліотеки JS та документацію до API
- Це надмножина Javascript
- Це додатково набрана мова сценаріїв
- Код TypeScript можна перетворити на звичайний код JavaScript
- Краще структурування коду та об'єктно-орієнтовані методи програмування
- Дозволяє покращити підтримку інструменту часу розробки
- Це може розширити мову за рамки стандартних декораторів, async / await
Історія Javascript
Програміст Netscape Communications Corporation Брендан Ейх створив Javascript. Це було призначено для працюючого навігатора Netscape. Однак, ставши популярним інструментом сценаріїв, він став LiveScript. Пізніше він був перейменований на JavaScript, щоб відобразити підтримку Netscape Java у своєму браузері.
Давайте побачимо важливий орієнтир в історії Javascript:
- Він був запущений у вересні 1995 року, і на розробку цієї мови сценаріїв, яка спочатку називалася Mocha, знадобилося лише десять днів
- У листопаді 1996 р. Netscape подала JavaScript до ECMA (Європейської асоціації виробників комп'ютерів) International
- ECMAScript 2 був випущений в 1998 році
- ECMAScript 3 був випущений в 1999 році
- У 2005 році Eich і Mozilla приєднуються до ECMA для розробки сценарію E4X Java
- У січні 2009 року було розпочато проект CommonJS з метою визначення загальної стандартної бібліотеки
- У червні 2011 року було випущено ECMAScript 5.1
- У червні 2015 р. Вийшов ECMAScript 2016
- Поточна версія - ECMAScript 2017, яка вийшла в червні 2017 року
Історія машинопису
Давайте побачимо важливі орієнтири з історії машинопису:
- Вперше машинопис був опублікований у 2012 році
- Після двох років внутрішнього розвитку в Microsoft. TypeScript 0.9, випущений в 2013 році
- Додаткова підтримка дженериків TypeScript 1.0 була випущена в Build 2014
- У липні 2014 року з’явився новий компілятор TypeScript, який у п’ять разів швидший за попередню версію
- У липні 2015 року підтримка модулів ES6, ключове слово простору імен, для, підтримки, декораторів
- У листопаді 2016 року додано таку функцію, як типизовані типи ключів та пошуку, а також відпочинок
- 27 березня 2018 р. Умовні типи, вдосконалений ключ із типами перетину підтримує доданий в Typescript.
Особливості Javascript
- Це міжплатформова мова
- Він використовується для клієнта та сервера
- Це легко навчитися і почати з цього
- Це динамічна мова: гнучка та потужна
- У вас є «велика свобода» робити все, що завгодно, з будь-якими предметами
- Сильний робочий процес тестування
- Додані залежності
- Фреймворк не підтримується
Особливості машинопису
- Ремонтопридатність
- Запропонував велику продуктивність для розробників
- Кодова навігація та запобігання помилкам
- Код "виявлення" та рефакторинг
- Необов’язково Анотація статичного типу / Статичне друкування
- Додаткові функції для функцій
- Підтримує ES6
- Підтримує інтерфейси, підінтерфейси, класи та підкласи
- Масштабована розробка на стороні клієнта HTML5
- Доступна розширена IDE з функціями автозаповнення та навігації кодом.
- Об'єктно-орієнтована на основі класів спадкування приватних членів та інтерфейсів.
Машинопис проти JavaScript
Параметр | Машинопис | JavaScript |
---|---|---|
Що | Потужна система типу, включаючи загальні засоби та функції JS | Легка, інтерпретована, об’єктно-орієнтована мова з першокласними функціями |
Прив'язка даних | TypeScript використовує такі поняття, як типи та інтерфейси, для опису використовуваних даних. | Жодна така концепція недоступна з JavaScript. |
Екосистема | Екосистема досить потужна та інтуїтивно зрозуміла. Таким чином, це дозволяє статично вводити різні типи ідіоматичних функцій JavaScript, таких як типи об'єднання, перетин, дискримінаційне об'єднання. | Javascript пропонує можливість досліджувати та створювати код без кроку збірки. |
Пакет Npm | За допомогою Typescript багато пакетів npm або постачаються зі статичними визначеннями типу, або мають зовнішній, який легко встановити. | Javascript пропонує можливість досліджувати та створювати код без кроку збірки. |
Крива навчання | Жорстка крива навчання. Потрібні попередні знання сценаріїв. | Гнучка та проста у вивченні мова сценаріїв. |
Прототипування | Машинопис має особливість прототипування. | JavaScript не має цієї функції. |
Громада | Typescript не має великої спільноти розробників. | JavaScript має величезну спільноту розробників |
Компіляція | Потрібно скомпілювати код TypeScript | Не потрібно компілювати JavaScript. |
Анотація | Щоб отримати максимум від можливостей TypeScript, розробники повинні постійно коментувати свій код. | Анотації не потрібні для Javascript. |
Відома компанія, що використовує технологію | Асана, Розумник, Нагорода на екрані | Airbnb, Codecademy, Instagram |
Зарплата | Середня зарплата "розробника машинопису" становить приблизно 148 027 доларів на рік у США | Середня зарплата розробника Javascript у Сполучених Штатах становить 110 777 доларів на рік. |
Що краще?
Зрештою, ми можемо сказати, що якщо досвідчений розробник працює над відносно невеликими проектами кодування, то JavaScript ідеально підходить. Однак якщо у вас є команда з розробки знань та досвіду, то Typescript є найбільш бажаним варіантом.