AltJSについて

AltjsとはJavascriptの弱点(文法の複雑さ、動的型付け)を補うために、Javascriptコンパイルして代替される言語のこと

Altjsのメリット...Javascriptよりコードが読みやすい、変更しやすく再利用しやすい(保守性が高い)

デメリット...Javascriptコンパイルする手間がある、エラーが発生した時のjavascriptがAltjsのどこに相当するのか調べないといけない

 

<主なAltjsの例>

・Typescript

中〜大規模開発の際jsに代替されるaltjs。オブジェクト指向AngularJSで採用。javascriptとの互換性を持つ。javascriptとの大きな違いはjsが動的型付けなのに対しtypescriptは静的型付けであること。静的型付けであることにより大規模開発の際、変数の型によるバグを防ぐことでより堅牢なアプリケーション作成を可能にする。

・CoffeScript

文法がRubyPythonっぽくてコード量が少なくて済み、コンパイル後のjsも綺麗。Railsで標準的にサポートされている(rails newで自動的に生成される、$rails new --skip-coffeeで作成されない)、Asset Pipelineという機能によって、自動でコンパイルされる。関数スコープに従って適切な位置で変数の自動生成される。

・PureScript

javascriptオブジェクト指向と異なり関数型言語Haskellっぽい。mapやfilter、reduceなどのメソッドをもつ。

・Elm

わりかし新しい言語。2019年わざわざ学ばなくていいプログラミング言語1位。jsの他html,cssコンパイルされる。Haskellベースで協力な静的型付け言語で純粋関数型言語。Reactなどと同じでフレームワークとなるがJSフレームワークに比べて描画が速い、SPA(SinglePageApplication)に向いてる。型検査されるためコンパイル後に壊れない

 

他にもDartHaxe、JSXとかがあるっぽい