なぜClassiはReactが盛り上がってる2017年にAngularを選択したのか?/why we use angular

D604f023b849832e420673fac231bad6?s=47 Eiji Hachiya
January 31, 2019
1k

なぜClassiはReactが盛り上がってる2017年にAngularを選択したのか?/why we use angular

Classi Angular Night #1 で話した資料です。

D604f023b849832e420673fac231bad6?s=128

Eiji Hachiya

January 31, 2019
Tweet

Transcript

  1. Copyright © 2019 Classi Corp. All Rights Reserved. なぜClassiはReactが盛り上がってる2017年に Angularを選択したのか?

    2019/01/31
  2. Copyright © 2019 Classi Corp. All Rights Reserved. •八谷 英治(はちや

    えいじ) @hachi_eiji •Classi株式会社 エンジニア •Rails、Angular、自称 Chief 球拾い Officer •AngularをClassiに持ち込んだ張本人 1 自己紹介
  3. Copyright © 2019 Classi Corp. All Rights Reserved. 2 ◯

    高校への営業 ◯ 学習支援アプリ開発 ◯ 活用コンサルテーション ◯プラットフォーム開発 ◯ ネイティブアプリ開発 ◯ 学校へのICT関連サポート 会社概要 ベネッセとソフトバンクのジョイントベンチャー
  4. Copyright © 2019 Classi Corp. All Rights Reserved. •全国の高校40%超に導入 •お客様(契約者)は学校

    •ユーザは先生・生徒・保護者 •47都道府県制覇 3 サービス紹介
  5. Copyright © 2019 Classi Corp. All Rights Reserved. 4

  6. Copyright © 2019 Classi Corp. All Rights Reserved. 5 Angularを選ぶ前の2016年

  7. Copyright © 2019 Classi Corp. All Rights Reserved. 2016年開発時のフロントエンドフレームワーク 6

  8. Copyright © 2019 Classi Corp. All Rights Reserved. 2016年開発時のフロントエンドフレームワーク フレームワーク・ライブラリ

    • AngularJS(1.2, 1.3, 1.5) • Backbone.js • React + Mobx • jQuery • CSSの重い有料ライブラリ • Classi独自のCSSスタイル 言語 • JavaScript(Not ES2015) • CoffeeScript 7
  9. Copyright © 2019 Classi Corp. All Rights Reserved. なぜ? •

    機能ごとに開発する会社が違っていた • 業務委託・受託開発で開発をお願いしていた • 少なくとも4社に開発を依頼している • フロントエンド フレームワークの混沌期に飲み込まれた 8 社内で技術のコントロールができてない
  10. Copyright © 2019 Classi Corp. All Rights Reserved. Angular vs

    React vs Vue.js 9
  11. Copyright © 2019 Classi Corp. All Rights Reserved. 何を大事にしたか? •

    開発時に人が入れ替わることは日常茶飯事 • サービス作るというところに注力したかった • みんなが使いやすい 1年で機能がクローズすることはないので長期メンテが基本 10
  12. Copyright © 2019 Classi Corp. All Rights Reserved. 11 npmのダウンロード数(2018年1月〜2019年1月)

    https://www.npmtrends.com/@angular/core-vs-react-vs-vue
  13. Copyright © 2019 Classi Corp. All Rights Reserved. Googleトレンドで見る3強 12

  14. Copyright © 2019 Classi Corp. All Rights Reserved. 個人的な予想 予想

    理由 React ◎ 同時どの会社もReactを採用していた Angular ◯ まだ採用事例が多くなかった。AngularJSのトラウマ Vue.js ? 薄すぎるのでちょっとないかなぁ 13
  15. Copyright © 2019 Classi Corp. All Rights Reserved. • 一番の大きな要因はTypeScriptの採用

    • Reactを採用しても結局state管理ライブラリ、ルーター、etc... と ライブラリを選ぶ必要があり、そこで疲弊しそうだった • パフォーマンスに関してもReactのほうが早いが実用レベルで そこまで差が出ないだろうと判断した • 開発のスタイルとして毎週リリースというのはないので、ライト に書けるよりも安定性や堅牢性を重視 結論 14
  16. Copyright © 2019 Classi Corp. All Rights Reserved. • エンジニア採用

    • 猫も杓子もReact • 採用エージェントもエンジニアも下手するとAngularとAngularJSの区 別すら... • ググラビリティが悪い • Angularで検索するとAngularJSとかもヒットする • 検索はAngular2で検索する • 導入事例が少ない いいことばかりではない 15
  17. Copyright © 2019 Classi Corp. All Rights Reserved. • 3強は変わらない

    • すべてのフレームワーク/ライブラリでTypeScriptが使える • Angular CLI、Vue CLI、Nuxt が出てきた • 採用をやってるとVue.jsをやってる人が一気に増えた • 肌感で3人に1人はReact,Vueのどちらかを経験済み • 最近はVueやってる人が多い。特にNuxt。 • Angularやってる人はたまーx10に来る orz React vs Angular vs Vue.js vs others ? in 2019 16
  18. Copyright © 2019 Classi Corp. All Rights Reserved. • TypeScriptのバージョンアップに追従している

    • テストフレームワークも決まってる • Angular Update Guide の存在は大きい • ng update xxx で必要なものをバージョンアップしてくれる • Angular Wayの上にきちんと乗れば強い • Angular日本語ドキュメントができたので大きい • 採用は頑張れ、俺 2019年で選定してもAngular 17
  19. Copyright © 2019 Classi Corp. All Rights Reserved. • Polyfillがマジ便利とか

    • IntelliJ IDEA(WebStorm)で書くとTSLintと相まって最強 18 続きは懇親会で