TypeScriptとNodeを使ったWeb開発あれこれ

TypeScriptとは

TypeScriptは2014頃にJavaScriptの拡張版として開発された言語です。
JavaScriptとの違いは静的型付き言語である点で、変数のデータ型を指定することにより、
大規模開発でのエラーを未然に防ぎ易いメリットがあります。
TypeScriptではクラスを定義することが可能です。

JavaScriptに変換してスクリプトを実行できる互換性も兼ね備えています。

js.studio-kingdom.com

Interface

動的型付き言語しか触ってこなかったので(静的は昔C++とかは軽くいじってた程度)、
Interfaceに概念に最初つまづきました。

Interfaceは型を集めた集団とのことです。

interface Person {
    member: string;
    stuff: string;
}

function greeter(team: Person) {
    return "Hello, " + team.member + "& " + team+stuff;
}

いわばこれがTypeScriptのHelloWorldです。

WebApp開発におけるお話

自分は今は文法の勉強をし始めたくらいの超初級ですが、
どのようにして環境構築が進むのだろうと気になりました。

future-architect.github.io

Compiler

TypeScriptで書かれているCodeをJavaScriptに変換する際に、
TypeScript純正もしくはBabelプラグインが活用されることが一般的らしいです。

静的チェックツール

静的チェックツールでは書き方が大きく変わるJavaScriptにおいて、
特にフロントエンドにおいて古い書き方を検知して警告を出してくれます。
Eslintが一般的なようです。

Task Runner

Task Runnerでは様々なツールを活用し、その取り決めが複雑になりがちですが、
複数人で開発する場合はそこの環境をきちんと定義してあげないといけません。

有名どころだとgulpやGruntがあるようですが、若干違うようです。

app.codegrid.net

学習コストが低いのにはnpm scriptがあります。

qiita.com

自分はイマイチ理解してないので、今回は貼ってみただけです。

Bundler

様々なファイルを結合して最終的には1つのファイルに結合します。
有名どころにはwebpackがあります。

今週〜来週

今週はTypeScropt/Vue祭りになります。