Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.
Elixirハンズオン
[Elixir概要]
2017/10/29
Powered by tokyo.ex
Agenda
• イベントの趣旨
• Elixirとは
• Phoenixとは
• Phoenixアプリの特徴
• 基本シンタックス
• 基本モジュール
• ライブラリ
• ハンズオンで作成するアプリ
イベントの趣旨
• ハンズオンのゴール
– Elixir/Phoenixのアプリ作成の流れを体験する
– Webアプリの作成を体験する
• ハンズオンでやること
– Phoenixアプリのプロジェクト作成
– Phoenixを使ったMVCアプリ...
Elixirとは
• ErlangのVM上で動くプログラミング言語
• 関数型言語
• コンパイラ型言語
• プロジェクト管理ツール(mix)がバンドル
– プロジェクト管理、ライブラリの取得、etc
– DEMO
• REPL(iex)がバン...
Phoenixとは
• ElixirのWebアプリケーションフレームワーク
– デファクトスタンダード
– RubyにおけるRails(のようなポジション)
• リアルタイム処理を扱うのが得意
– WebSocket上の仮想的なPhoenixC...
Phoenixの特徴
• 超軽量
– 1つのコネクション = 1つのErlangプロセス(OSのプロセスではな
い)で表現される
– 同時に多くのコネクションを扱いたい時に便利
– WebSocket周りは、RailsのActionCableに...
基本シンタックス(型)
基本シンタックス(モジュール)
基本シンタックス(パイプ)
基本シンタックス(パターンマッチ1)
基本シンタックス(パターンマッチ2)
基本モジュール
• ドキュメント
– http://elixir-lang.org/docs.html
– https://hexdocs.pm/elixir/Kernel.html
• iex の「h <モジュール>」でドキュメント表示
基本モジュール(IO)
基本モジュール(Enum)
ライブラリ
• Hex.pm(https://hex.pm)がホスティング
• Git(github)からも取得可能
• 手順
– 1) mix.exs のdepsに対象ライブラリを記述
– 2) mix deps.get で取得
• deps...
ハンズオンで作成するアプリ
• Phoeinxを使ったWebアプリケーション
– 挨拶アプリ
• MVCの基本機能を使った画面
– チャットアプリ
• PhoenixChannelを使ったリアルタイムコミュニケーショ
ン
それではハンズオンへ
テキスト:
https://github.com/ohr486/elixir_handson_demo2/wiki
Próxima SlideShare
Cargando en…5
×

Elixirハンズオン2

1.022 visualizaciones

Publicado el

elixir handson #2

Publicado en: Tecnología
  • Sé el primero en comentar

Elixirハンズオン2

  1. 1. Elixirハンズオン [Elixir概要] 2017/10/29 Powered by tokyo.ex
  2. 2. Agenda • イベントの趣旨 • Elixirとは • Phoenixとは • Phoenixアプリの特徴 • 基本シンタックス • 基本モジュール • ライブラリ • ハンズオンで作成するアプリ
  3. 3. イベントの趣旨 • ハンズオンのゴール – Elixir/Phoenixのアプリ作成の流れを体験する – Webアプリの作成を体験する • ハンズオンでやること – Phoenixアプリのプロジェクト作成 – Phoenixを使ったMVCアプリの作成 – Phoenixを使ったチャットアプリの作成 • ハンズオンでやらないこと – 詳細な文法、マクロ
  4. 4. Elixirとは • ErlangのVM上で動くプログラミング言語 • 関数型言語 • コンパイラ型言語 • プロジェクト管理ツール(mix)がバンドル – プロジェクト管理、ライブラリの取得、etc – DEMO • REPL(iex)がバンドル – DEMO
  5. 5. Phoenixとは • ElixirのWebアプリケーションフレームワーク – デファクトスタンダード – RubyにおけるRails(のようなポジション) • リアルタイム処理を扱うのが得意 – WebSocket上の仮想的なPhoenixChannelの層を 使って簡単にリアルタイム処理を記述できる
  6. 6. Phoenixの特徴 • 超軽量 – 1つのコネクション = 1つのErlangプロセス(OSのプロセスではな い)で表現される – 同時に多くのコネクションを扱いたい時に便利 – WebSocket周りは、RailsのActionCableに比べて超軽量 • エコシステム – 一通りのことはできるが、Ruby,Nodeに比べるとライブラリ数が 圧倒的に少ない – DEMO • 性能 – http://phoenixframework.org/blog/the-road-to-2-million- websocket-connections – Phoenixで200万のWebSocketの同時接続のベンチーマク – DEMO
  7. 7. 基本シンタックス(型)
  8. 8. 基本シンタックス(モジュール)
  9. 9. 基本シンタックス(パイプ)
  10. 10. 基本シンタックス(パターンマッチ1)
  11. 11. 基本シンタックス(パターンマッチ2)
  12. 12. 基本モジュール • ドキュメント – http://elixir-lang.org/docs.html – https://hexdocs.pm/elixir/Kernel.html • iex の「h <モジュール>」でドキュメント表示
  13. 13. 基本モジュール(IO)
  14. 14. 基本モジュール(Enum)
  15. 15. ライブラリ • Hex.pm(https://hex.pm)がホスティング • Git(github)からも取得可能 • 手順 – 1) mix.exs のdepsに対象ライブラリを記述 – 2) mix deps.get で取得 • depsディレクトリに配置される – 3) mix deps.compile でコンパイル • _buildディレクトリに配置される – 4) iexを起動すると自動でコンパイルされる
  16. 16. ハンズオンで作成するアプリ • Phoeinxを使ったWebアプリケーション – 挨拶アプリ • MVCの基本機能を使った画面 – チャットアプリ • PhoenixChannelを使ったリアルタイムコミュニケーショ ン
  17. 17. それではハンズオンへ テキスト: https://github.com/ohr486/elixir_handson_demo2/wiki

×