"TypeScript ビギナー&ステップアップ" に参加してきました!

1/27(土)にPlus Programming .net 主催のhttps://atnd.org/events/93615?kme=clicked%2Bjoined_mail_url に参加してきました! そのイベントレポートになります。

TypeScriptの概要・書籍がカバーする範囲・ステップアップ

アバナード株式会社 マネージャー 古賀 慎一さんのセッションとなります。

内容

  1. TypeScript とは  JavaScriptの弱点を補ってとても使いやすくなる言語
    TypeScriptはビルドするとJavaScriptになる言語

    • 他の言語にコンパイルして動くという特徴的な点がある。
    • Microsoftいよって開発された言語(文法はC#に近い)
    • 2017/4にGoogleの社内標準言語に追加された。
       登場の経緯は?
        * JavaScript(だけ)で本格的な開発は難しい。
        * JavaScriptはプログラム言語のひとつだが、最も扱いやすい言語とは言い難い部分もある。
       型の宣言  ・変数の型を明確に宣言しないため、「問題」が実行してみないと分からない場合がある。
        →複数人の開発だとこの問題が大きくなる。
       ・TypeScriptを使うとビルドエラーとなるためすぐに気付くことができる。
        「問題」が実行しなくてもわかる。
        JavaScriptでも自分が「気をつければいい?」
         TypeScriptにJavaScriptでもかけるが自分で気をつけないといけない。
         ・ 気をつけるのにがコストがかかる(その間に「価値」は増えていない)
         ・ 気をつけるのはTypeScriptにやらあせて、もっと価値を生み出すことに時間をかけた方が良い。
        ・JavaScriptはバージョンによる違いが大きい、TypeScriptではJavaScriptに対するバージョンは意識せず常に最新の(楽な)書き方ができる。
         ES2015以降だとそのまま、ES2015以前を指定すると補完されたコードで自動生成されるなど。
       TypeScriptではコードをもっと楽な書き方ができる。
        ・強力な型推論もある。
        ・非同期処理Promiseをasync/awaitでシンプルに扱える。
       TypeScritとは(まとめ)
        ・ビルドするとJavaScriptになる言語
        ・変数の型を明確に扱うのでビルドエラーで問題を発見・修正できる。
  2. どうやってTypeScriptを始めれば良いか?
     必要なもの
      ・コードをビルドできる環境
         VisualStudio2017 や VisualStudioCode など
      ・ビルドしたJavaScriptを実行環境へ配置する方法の習得。
      ・実装、デバッグ、実行環境へ配置するまでの開発プロセスの理解
      ・TypeScritp言語使用の習得。
       コードの書き方
       オブジェクト指向プログラミング/ジェネリック/非同期処理/エラー処理
      ・TypeScriptの採用について
       クラスを本格的に使うかどうか?検討する。
       オブジェクト思考、高度なデータ型が必要かどうか?

TypeScript + Angular Web開発

インフラジスティックス・ジャパン 桐生 達嗣さんのセッション

内容

slides.com

開発環境は"VisualStudioCode + AngularEssentials"がおすすめ

Angular 概念と基本 ・Component と Module
 Component = 部品
 Module = 機能の固まり
   Root Module = アプリケーション起動に必須 Feature Module = アプリケーションを機能ごとに分割、サードパーティ製のモジュール ・Container component と Presentational
  Container component は データ・状態を扱う。
  Presentational Component は 渡されたデータを表示
Angularの基本
 Component … .ts / .html / .scss から成り立つ
 Binding … Property Binding, Event Bindingがある
 CustomPropertyやCustomEventが定義できる。
 ngIfやngForなどの機能が便利です。
  メインは1時間でTODOアプリを最速作成するという内容でした。
1. AngularCLI によるAnglarプロジェクトを作成する。
2. TODOアプリの構成を考える。
3. サードパーティーモジュールの追加方法など
 Ignite UI for Angularは非商用利用であれば無償で利用できる。
 AnglarCLIでは手動でファイルを作成せずコマンドでも作成することができる。

本当に1時間で作っちゃうのが凄いかったです。 ちゃんとデータの保持・編集・削除まで。 他、デバッグや実装に役立つ実践的なTipsを色々紹介して頂きました!

TypeScript + Bot Framework Node.js開発

日本マイクロソフト株式会社 物江 修さんのセッション

内容

BOTとは、自動で動作するアプリ。
昨今ではBOT=チャットアプリと認識されることが多いがそれは違うと。

また、マイクロソフトでは庶務BOTがあり名刺発注など簡単な仕事の受付をしてくれる。
デモも見せてくれましたが綺麗に動いてました。
うちにも欲しいなー。 また、Bot Frameworkは他のメッセンジャーチャンネルを接続できる(Skype,Slack,Teams,Email,Twilloなど) 色々な幅が広がりそうです。