window.pipedriveLeadboosterConfig={です。 ベース:'leadbooster-chat.pipedrive.com'、 companyId:11580370, playbookUuid: '22236db1-6d50-40c4-b48f-8b11262155be', version: 2、 } ;(function () { var w = window もし (w.LeadBooster) {なら console.warn('LeadBooster already exists') } else { w.LeadBooster = { {. q: [], on: function (n, h) { this.q.push({ t: 'o', n: n, h: h }) }, trigger: 関数 (n) { { this.q.push({ t: 'o', n: n, h: h }) this.q.push({ t: 't', n: n }) }, } } })() なぜ(おそらく)Typescriptを使うべきなのか - The Codest
The Codest
  • 会社概要
  • サービス
    • ソフトウェア開発
      • フロントエンド開発
      • バックエンド開発
    • Staff Augmentation
      • フロントエンド開発者
      • バックエンド開発者
      • データエンジニア
      • クラウドエンジニア
      • QAエンジニア
      • その他
    • アドバイザリー
      • 監査&コンサルティング
  • 産業
    • フィンテック&バンキング
    • E-commerce
    • アドテック
    • ヘルステック
    • 製造業
    • 物流
    • 自動車
    • アイオーティー
  • 価値
    • CEO
    • CTO
    • デリバリー・マネージャー
  • チーム
  • Case Studies
  • ノウハウ
    • ブログ
    • ミートアップ
    • ウェビナー
    • リソース
採用情報 連絡先
  • 会社概要
  • サービス
    • ソフトウェア開発
      • フロントエンド開発
      • バックエンド開発
    • Staff Augmentation
      • フロントエンド開発者
      • バックエンド開発者
      • データエンジニア
      • クラウドエンジニア
      • QAエンジニア
      • その他
    • アドバイザリー
      • 監査&コンサルティング
  • 価値
    • CEO
    • CTO
    • デリバリー・マネージャー
  • チーム
  • Case Studies
  • ノウハウ
    • ブログ
    • ミートアップ
    • ウェビナー
    • リソース
採用情報 連絡先
戻る矢印 戻る
2021-03-26
ソフトウェア開発

おそらく)Typescriptを使うべき理由

The Codest

ドミニク・グジェジエルスキ

シニア Software Engineer

JavaScriptエコシステムを使っている人なら、誰もがTypescriptについて知っている時代です。Typescriptは最も愛されている技術*の1つであり、その使用率は常に増加している(使用シェアは2018年の52%から2020年には78%に増加)*。

Typescriptの現在の地位は、その技術が開発者の経験を本当に向上させることができるものであることから、突然生まれたものではありません。より明示的なコーディングは コード.
この記事では、Typescriptを使うように説得しようと思う。

*- データソース JSの現状2020 そして スタック・オーバーフロー開発者調査2020.

エラーの早期発見

通常、アプリケーションを JavaScriptあなたの流れは
こんな感じだ:

  1. 変化を起こせ、
  2. アプリにアクセスし、変更された部分/(関連する)テストの実行をチェックする。
  3. 問題がないかどうかを確認する。

Typescriptを使えば、実際に変更を加えることができ、その際に 型エラー コンパイラのエラー・メッセージやIDEのリアルタイム・フィードバックによって、コードにエラーがあればすぐにわかります。
もちろん、Typescript コンパイラがすべての問題を解決してくれるわけではありませんし、すべてのバグについて警告してくれるわけでもありません。

IDEでのシンタックス補完の改善

実に簡単なことだ。WebStormやVSCodeのような優れたIDEを使用している場合、次のようなものが得られます。
Typescriptでの構文補完の改善。これは開発者の経験を大きく向上させるものには聞こえないかもしれないが、結局のところ、時間を節約し、またタイプミスやミスを防ぐことができるため、ひとつひとつの改善が重要なのだ。また、型やインターフェースを一度定義すれば、常に構造を覚えておく必要がなくなるので、ビジネスロジックを書くことに集中することができます。

コード
JSコード

苦痛の少ないリファクタリング

何らかの理由でリファクタリングしなければならなくなったとします。 プロジェクト 新しい機能を追加するタスクが発生したが、その機能はレガシーコードと何らかの関係がある。
Typescriptは、あなたが変更を加えたときに、別の変更を加えなければならない別の場所があると、コンパイラが警告してくれるので、より簡単で苦痛を少なくすることができる。

例えば、関数のシグネチャが変更されたとか、変更後に
関数はまったく異なるものを返すので、返される型も異なる。

コードベースに自信を持つ

JavaScriptは弱く動的に型付けされるので、変数を値 let query = '' コードの後半で、開発者が誤って不合理なことをするかもしれない。 クエリー = trueそしてそれは有効なJSコードとなる。

よく書かれたコードでは、以前は文字列だった変数にブール値を代入することは起こらないはずだ。つまり、通常、型変更を伴う代入はミスから生じるのだ。

Typescriptを使用する場合、変数の型を変更することはできない。 let query = '' 変数は、次のようになる。 ストリング タイプに変更することはできない。

変数を複数の型にしたい場合は、常に明示的にユニオン型を使用します。 文字列|数字.

したがって、Typescript はコードをより予測可能で明示的なものにする。
また、Typescriptは制御フロー解析における明示性に配慮し、何かがうまくいかない可能性があれば警告してくれる。

コードサンプル

最初の例 もし ブロックではエラーが発生する:

TS2339:プロパティ 'battery' がタイプ 'ClothingProduct' に存在しません。 2回 バッテリーそして ラム の特性を持つ。

第2ブロック その他というエラーが出る。 サイズ プロパティを持つ。もちろん、これはあくまで一例であり、どのようにして 被差別組合 そして 制御フロー解析 Typescriptで作業しているので、そのコードで複雑なことはしていない。

JavaScriptからの容易な段階的移行

有効な JavaScript コードは、同時に有効な Typescript コードでもあるので、コードベースを段階的に移行することができます。通常、Typescript で strict mode を使用することは良い習慣ですが、この場合はそうではありません、
まずは "strict": false で tsconfig.json さらに2つのオプションを設定する必要がある。

"allowJs": true, // .jsファイルの使用を許可し、型チェックは行わない。
"skipLibCheck": true // 使用するライブラリの型チェックを省略する。

これらのオプションを使えば、JSからTSへの移行をステップバイステップで行うことができる。 .js(x) への .ts(x) とファイル内に型を追加する。この方法を使えば、何百、何千という恐ろしいコンパイル・エラーを避けることができる。

概要

を使うべきだと思う。 タイプスクリプト 何度でも 可能なぜなら、それは長期的に本当に有益だからだ。プロジェクトを維持し、開発者の経験を増やし、コードベースをより明確で信頼できるものにするのに役立ちます。

ただし、いつものように例外もあります。たとえば、シンプルなランディングページの場合
JavaScriptがクラスの切り替えにしか使われないような単純なケースでは、Typescriptは意味をなさない。
また、Typescript をフルに活用するには、十分なレベルで使いこなす必要があり、それには時間がかかることも忘れてはならない。それでも、非常に有益な時間の投資だと思います。

続きを読む

Ruby 3.0.Rubyとあまり知られていないプライバシー管理方法

SaaSプロジェクトにおける最高品質のコード。技術者ではない)創業者として、なぜそれを気にする必要があるのでしょうか?

*タイトルのグラフィックはKnow Your Memeウェブサイトより。

関連記事

ソフトウェア開発

将来を見据えたウェブ・アプリケーションの構築:The Codestのエキスパート・チームによる洞察

The Codestが、最先端技術を駆使してスケーラブルでインタラクティブなウェブアプリケーションを作成し、あらゆるプラットフォームでシームレスなユーザー体験を提供することにどのように秀でているかをご覧ください。The Codestの専門知識がどのようにデジタルトランスフォーメーションとビジネス...

ザ・コデスト
ソフトウェア開発

ラトビアを拠点とするソフトウェア開発企業トップ10社

ラトビアのトップソフトウェア開発企業とその革新的なソリューションについて、最新記事でご紹介します。ラトビアの技術リーダーたちがあなたのビジネスをどのように向上させるかをご覧ください。

thecodest
エンタープライズ&スケールアップ・ソリューション

Javaソフトウェア開発の要点:アウトソーシングを成功させるためのガイド

outsourcingのJavaソフトウェア開発を成功させるために不可欠なこのガイドを読んで、The Codestで効率性を高め、専門知識にアクセスし、プロジェクトを成功に導きましょう。

thecodest
ソフトウェア開発

ポーランドにおけるアウトソーシングの究極ガイド

ポーランドのoutsourcingの急増は、経済、教育、技術の進歩がITの成長とビジネス・フレンドリーな環境を促進していることによる。

ザ・コデスト
エンタープライズ&スケールアップ・ソリューション

IT監査ツール&テクニック完全ガイド

IT監査は、安全かつ効率的で、コンプライアンスに準拠したシステムを保証します。その重要性については、記事全文をお読みください。

The Codest
ヤクブ・ヤクボヴィッチ CTO & 共同創設者

ナレッジベースを購読して、IT部門の専門知識を常に最新の状態に保ちましょう。

    会社概要

    The Codest - ポーランドに技術拠点を持つ国際的なソフトウェア開発会社。

    イギリス - 本社

    • オフィス 303B, 182-184 High Street North E6 2JA
      イギリス、ロンドン

    ポーランド - ローカル・テック・ハブ

    • ファブリチュナ・オフィスパーク、アレハ
      ポコジュ18、31-564クラクフ
    • ブレイン・エンバシー, コンストルクトースカ
      11, 02-673 Warsaw, Poland

      The Codest

    • ホーム
    • 会社概要
    • サービス
    • Case Studies
    • ノウハウ
    • 採用情報
    • 辞書

      サービス

    • アドバイザリー
    • ソフトウェア開発
    • バックエンド開発
    • フロントエンド開発
    • Staff Augmentation
    • バックエンド開発者
    • クラウドエンジニア
    • データエンジニア
    • その他
    • QAエンジニア

      リソース

    • 外部ソフトウェア開発パートナーとの協力に関する事実と神話
    • 米国から欧州へ:アメリカの新興企業がヨーロッパへの移転を決断する理由
    • テックオフショア開発ハブの比較:テックオフショア ヨーロッパ(ポーランド)、ASEAN(フィリピン)、ユーラシア(トルコ)
    • CTOとCIOの課題は?
    • The Codest
    • The Codest
    • The Codest
    • Privacy policy
    • ウェブサイト利用規約

    著作権 © 2025 by The Codest。無断複写・転載を禁じます。

    jaJapanese
    en_USEnglish de_DEGerman sv_SESwedish da_DKDanish nb_NONorwegian fiFinnish fr_FRFrench pl_PLPolish arArabic it_ITItalian ko_KRKorean es_ESSpanish nl_NLDutch etEstonian elGreek jaJapanese