大原常徳作品一覧
-
-【さまざま領域に活用範囲を広げる、新進気鋭の言語のポテンシャル】 本書では、Webアプリケーション、機械学習、IoTなどでのElixirの活用方法を解説します。サンプルアプリケーションを開発しながらコードを紹介しつつ解説しています。Phoenix、Nx、Livebook、Nervesといったツールやライブラリの実践的な活用方法も紹介しているので、今の開発に即した実践的な知識が身に付けられます。 ■こんな方におすすめ ・なんらかのプログラミング言語を習得している人で、新しい言語としてElixirを習得したい人 ■目次 第1章:Elixir小史 Elixir言語の特徴 Erlang/OTP──Elixirの実行基盤 Elixirの誕生 Elixirの持つポテンシャル 第2章:Elixirの基礎 Elixirのインストール Elixirコードの実行方法 基本的な文法 制御フロー 第3章:基本的な型とパターンマッチ 基本的な型 シジル──リテラルを表現する記法 パターンマッチ──データとパターンの照合 第4章:モジュール モジュールと関数によるプログラムの構造化 String──文字列操作を扱う標準モジュール File──ファイル操作を行う標準モジュール IO──標準入出力を扱う標準モジュール Enum──コレクションを「いい感じ」に扱う標準モジュール Map──マップを「いい感じ」に扱う標準モジュール Stream──コレクションを遅延評価する標準モジュール ExUnit──Elixirの単体テスト標準モジュール 第5章:Mixを使ったElixirプロジェクトの開発 Mixの基本的な使い方 Mixタスク──Elixir開発を支える便利なコマンド 開発に便利なTips 第6章:並行プログラミング プロセスによる並行プログラミングの実現 OTPによる並行プログラミングの実現 第7章:Phoenixの概要 Phoenixとは何か──Elixir製のWebアプリケーションフレームワーク Phoenixの基礎知識 Phoenixの基本的な使い方 第8章:Ectoによるデータベース操作 Ectoとは何か──Elixir製のデータベースライブラリ Ectoの基礎知識 Ectoの基本的な使い方 第9章:phx.gen.authによる認証 phx.gen.authとは何か──ビルトインのMixタスク phx.gen.authの基礎知識 phx.gen.authの基本的な使い方 第10章:LiveViewによるフロントエンドの開発 LiveViewとは何か──Elixirで実装するリアルタイムWeb LiveViewの基礎知識 LiveViewの実践的な使い方 第11章:実践的なWebアプリケーションの開発 ブログアプリケーションRealWorldの実装 記事のCRUD機能の開発 コメント機能の開発 タグ機能の開発 認証機能の開発 LiveViewによるRealWorldの開発 デプロイ 第12章:行列演算ライブラリNxの概要 Nxとは何か Nxの基本的な使い方 第13章:Axonの概要と機械学習システム開発の進め方 Axonとは何か Axonの基本的な使い方 SciDataとNxによる学習データの準備 Axonによるモデルの構築 Axon.Loopによるモデルの学習と可視化 Axon.Loopによるモデルの検証 Axon.predict/4──推論の実行 第14章:機械学習向けのライブラリ Kino──Livebook用のUIライブラリ StbImage──軽量画像読み書きライブラリ Evision──OpenCVラッパー Bumblebee──学習済みTransformerモデル提供ライブラリ 第15章:実践的なAxonアプリケーションの開発 画像分類を行うWebアプリケーションの実装 LiveViewページの作成 ファイルアップロード機能の実装 学習済みモデルでの画像分類機能の実装 第16章:Nervesの概要 Nervesとは何か Nervesの動作するIoTボード 第17章:Nervesでの開発の進め方 用意するもの Nervesプロジェクトの基本的な開発の進め方 第18章:Elixir Circuitsによるモジュールの制御 Elixir Circuitsとは何か──Elixir/Nerves向けのモジュール制御ライブラリ モジュールの通信方式 用意するもの Elixir Circuitsの使い方 第19章:実践的なIoTアプリケーションの開発 開発するもの データ受け取りサーバの作成 データのリアルタイム表示部の作成 データ送信モジュールの作成 ボタンの押下によるデータ測定 ■著者プロフィール 栗林 健太郎:GMOペパボ株式会社で取締役CTOを務めるかたわら、北陸先端科学技術大学院大学博士後期課程に在学中の社会人学生。IoTシステムへのElixirの応用について研究している。 大原 常徳:株式会社ドリコム SRE部門のマネージャー。tokyo.exというElixirのコミュニティを運営。 大聖寺谷 一樹:本業では主にKotlinを使った開発をしてるが、副業でElixirやElmを触っているなんちゃってアルケミスト。 山内 修:日本マイクロソフト賞④受賞。Elixir本体、Ectoに貢献歴あり。 齋藤 和也:Webのサーバサイド開発やクラウドインフラ構築が得意なエンジニア。Elixir/Phoenixのお仕事や情報発信もしています。複数社で技術顧問を務めている。 隆藤 唯章:僧職系フリーランスプログラマー。ElixirMobileというElixirのコミュニティのオーガナイザー。最近はElixirでモバイルアプリの開発、モバイルアプリと機械学習との連携についての研究を行っている。 高瀬 英希:旧くからの組込み屋さん、最近の言い方ではIoT屋さん。ElixirだけでIoTシステムをすべからく包括的に開発できたら楽しい世界になると信じて研究を進めている。