TypeScript - панацея?

Привіт, я працюю в Playtika на флагманському проєкті, якому вже майже 14 років. Хочу поділитися думками про використання TS для створення проєктів рівня enterprise.

Автор: Austin Distel. Опубліковано на Unsplash
Автор: Austin Distel. Опубліковано на Unsplash

В моїй компанії TypeScript використовується майже для всього, від клієнта на різних платформах (IOS, Android, Amazon, WEB само собою)
до деяких мікросервісів на бекенді. Що цікаво, останнього значно менше.

Навіщо?

R&D пройшов довгий шлях до того щоб звести різні проєкти до використання TypeScript’a, але це однозначно спростило розробку та мінімізувало такий важливий для бізнесу показник як TTM (time to market).

Також це теоретично мало би вирішити проблему пошуку кадрів, адже популярність мови впливає на кількість доступних спеціалістів. (Я не впевнений що була поставлена подібна мета, але гадаю що це був приємний бонус).

Як?

Звісно, сам перехід тривав довго. Зі стартової точки де клієнтський код написаний на C# до моменту коли в нас з’явився перший варіант конвертованого коду на TS пройшло майже 2 роки. Але ретроспективно можна сказати що перехід відбувся на 99% успішно.

Багатьом розробникам доводилося вивчати TypeScript, але його створив той же дядько що й створив C#, доволі легкий перехід як на мене.

Чи потрібно це Вам?

Думаю в більшості випадків - ні. Насправді я думаю що ви вже пишете на TS і зайшли щоб почитати про чийсь досвід. Проте я склав список критеріїв які можуть стати вирішальними при прийнятті рішення про міграцію:

  • Величина проєкту
    Це, мабуть, найголовніший фактор. Якщо ваша кодобаза не надто велика для переносу то можливо є сенс просто почати писати на TypeScript з нуля.

  • Екосистема
    Спробуйте знайти бібліотеки чи будь які технології які ви вже використовуєте в своєму проєкті. Можливо на TS’і ще немає аналогів, а це може значно сповільнити розробку і збільшити витрати.

  • Команда
    Спробуйте обговорити це питання з вашими колегами. Звісно, рішення про перехід варто приймати всім учасникам процесу розробки.

Сподіваюсь це було корисним! Напишіть про ваш досвід з TypeScript в коментарях, або про просто те що вас цікавить, буду радий обговорити.

Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
Микита Сиромятніков
Микита Сиромятніков@msyromiatnikov

25Прочитань
1Автори
0Читачі
На Друкарні з 14 травня

Вам також сподобається

  • Лише Гуру TypeScript побачать помилку в цьому рядку коду!

    Уважно подивіться на наведену нижче TypeScript функцію з одного рядку коду. В ній є проблема пов’язана з типами. Чи можете ви її побачити?

    Теми цього довгочиту:

    Typescript
  • Що таке патерни проєктування?

    Патерни проєктування подібні до стандартних конструкцій у будівництві. Наприклад, "патерн Фасад" відповідає фасаду будинку, який приховує деталі і надає простий інтерфейс. "Патерн Одинак" подібний до створення лише одного ключа для доступу до чогось цінного.

    Теми цього довгочиту:

    Програмування
  • Better Plugin Collection

    Мене звати Аркі. С часом я почала помічати що Unity не вистачає деякого функціонала, тому я вирішила займатись розробкою плагінів.

    Теми цього довгочиту:

    Unity

Коментарі (0)

Підтримайте автора першим.
Напишіть коментар!

Вам також сподобається

  • Лише Гуру TypeScript побачать помилку в цьому рядку коду!

    Уважно подивіться на наведену нижче TypeScript функцію з одного рядку коду. В ній є проблема пов’язана з типами. Чи можете ви її побачити?

    Теми цього довгочиту:

    Typescript
  • Що таке патерни проєктування?

    Патерни проєктування подібні до стандартних конструкцій у будівництві. Наприклад, "патерн Фасад" відповідає фасаду будинку, який приховує деталі і надає простий інтерфейс. "Патерн Одинак" подібний до створення лише одного ключа для доступу до чогось цінного.

    Теми цього довгочиту:

    Програмування
  • Better Plugin Collection

    Мене звати Аркі. С часом я почала помічати що Unity не вистачає деякого функціонала, тому я вирішила займатись розробкою плагінів.

    Теми цього довгочиту:

    Unity