Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introduction to angular (Front-end Beer Bash #1)

Introduction to angular (Front-end Beer Bash #1)

Front-end Beer Bash #1 のLTで発表した「Angularの特徴」をカジュアルにご紹介しています。しゃべり中心でスライド単体だけでは把握しづらい点もございますが、導入検討の参考になれば幸いです。

masahiko.asai

July 07, 2017
Tweet

More Decks by masahiko.asai

Other Decks in Programming

Transcript

  1. About Me Masahiko Asai ビズリーチ HRMOS事業部 フロントエンドエンジニア 2011-2014 PHP エンジニア

    兼 HTML/JS コーダー(某大手ECサイト) 2015- フロントエンドエンジニア(AngularJS, Angular 4)
  2. とはいえ現実的には… 1. プロジェクトディレクトリを作成 2. package.json のセットアップ 3. Angular をインストール 4.

    TypeScript をインストール 5. タスクランナーやビルドツールのセットアップ 6. ・・・ 7. ・・・ 8. ・・・
  3. とはいえ現実的には… 1. プロジェクトディレクトリを作成 2. package.json のセットアップ 3. Angular をインストール 4.

    TypeScript をインストール 5. タスクランナーやビルドツールのセットアップ 6. ・・・ 7. ・・・ 8. ・・・ 何もない状態からセットアップするのは大変…
  4. Angular CLI とは? • Angular アプリケーション プロトタイプを構築できるツール ◦ React でいう

    create-react-app ◦ Vue.js でいう vue-cli に相当するもの • npm でインストールすると、ng コマンドで scaffold が作れるよ • CLI自体は ember-cli ベースで作られているそう
  5. Angular Augury • Angular アプリケーションをデバッグするのに便利な Google Chrome 拡張機能 • React

    の React DevTools、Vue.js の devtools に相当するもの • モデルの値やフォームの Valid/Invalid 状態が リアルタイムに確認できる
  6. アプリケーションと UI Component の分離 UI Components 個々のコンポーネントデザインとインタラクションを実 装。 Atomic Components

    の考え方をもとにUIパーツを分 解して実装。 App Components アプリケーションは、 UI Componentsを用いてア プリケーションを実装する。 持っているデータをUI Componentsに与えて画 面を描画、ビジネスロジックを実装。
  7. Atomic Components Atom, Molecule, Organism, Ecosystem, Environment 引用: A brief

    look at Atomic Components https://medium.com/joeydinardo/a-brief-look-at-atomic-components-39cbe71d38b5
  8. さわってみた所感 • All-in-one なので、必要なものは揃っている。 • 公式サイトのドキュメントは丁寧 ◦ やりたいことは、ある程度公式ドキュメントに載っている • アップデートが速い、LTSあり

    ◦ 週1回 BugFix Release、月1回 Minor Version Update、半年に1回 Major Version Update ◦ 現行のAngular 4は2018年10月までサポート • angular-cli によってWeb アプリケーションを速く構築できる ◦ アプリケーションの開発実装に集中できる環境を作ってくれる ここはイイ!
  9. さわってみた所感 • 日本語の情報、ドキュメント、記事はまだまだ少ない • Angular の採用事例、導入事例がなかなか聞かない ◦ 業務用 Web アプリで採用されることが多いから、話題に上がってこない…?

    • 導入コストは高い。TypeScript, Angular, RxJSの習得コストとか… • 周辺ライブラリ(外部モジュール)はまだβ版が多い • All-in-oneのため、アプリはどうしても Fat になる ◦ Webサイト(LP)に導入するには選択肢に入らないかな ここは課題