投稿

ラベル(web framework)が付いた投稿を表示しています

Elixir の Web Framework である Phoenix を使って初めてのアプリケーションを作成してみる (Phoenix入門の入門)

イメージ
はじめに ¶ 環境 OS: Ubuntu 18.04.3 Desktop Elixir は Erlang を基とする関数型言語です。 Elixir は Web Framework である Phoenix を記述するのに用いられます。 インストール ¶ ※ Desktop版を使っているので Server だと別途何か必要かもしれません。 Elixir ¶ Elixirの公式サイトの手順 に従ってインストールします。 最新の情報は公式サイトから見たほうが確実ですが、 2019/09/01 現在では以下の通り。 リポジトリを追加し、最新情報にアップデート後 apt でインストール。 元が Erlang であるため Erlang のインストールからしていますね。 wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb && sudo dpkg -i erlang-solutions_1.0_all.deb sudo apt update sudo apt install esl-erlang sudo apt install elixir 以上で elixir の導入は完了。 Phoenix ¶ つづいてPhoexnix を入れていきます。 まずはPhoenixを入れる前にHexを入れます。 HexはElixirのパッケージマネージャです。 mix local.hex 続いてPhoenixをいれます。 mix archive.install hex phx_new このほかにもPhoenixを使う上で必要なパッケージはあるのですが、 それは使っていくうちに Phoenix が親切にも教えてくれるので 取りあえずは置いておきます。 Node.js (nvm) ¶ 続いて、Node.js を入れます。 Node.jsを直接入れるよりも、 nvm(Node Version Manager) を経由した方が良いです。 nvmの入れ方は 公式リポジトリの説明 を読んでいきましょう。 一応この記事を書いたときのリポジトリから抜き書きすると以下のように入れます。 # curlはインストールされていないことがあるのでその...

Ruby on Rails の User 認証ライブラリである Devise を使ってみる

イメージ
初めに ¶ 以下操作は WSL で実施しています。 Rails の操作ばかりなのでOSには依存しないと思いますが。 Ruby / Rails の環境は以下です。 $ ruby -v ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-linux] $ rails -v Rails 6.0.0 Getting Started をなぞる ¶ インストール ¶ Deviseをテストするために新規プロジェクト作成。 既にプロジェクトがあってそこでテストできるならここは別にやらなくてもよいです。 rails new devise_test -d postgresql # プロジェクトの作成が完了したら移動 cd devise_test devise を入れるために Gemfile に以下の記述を追加する。 gem 'devise' Gemfile の内容を更新したので Bundle を利用してインストール。 bundle コマンド単体で bundle install の効果があります。 bundle rails generate により、 devise の最低限必要な設定ファイルを生成する。 rails generate devise:install この時に以下のファイルが生成されているはず。 create config/initializers/devise.rb create config/locales/devise.en.yml 本家サイトの Getting Started によると、 これらの設定ファイルを絶対読め、と書いてあるので読みましょう。 といっても Devise の設定ファイルとLocalizationファイルなので片方は読むというほどでもない気がしますが。 まぁ何となく雰囲気だけ察する感じで。 そして、さっきのコマンドで以下のようなガイドが表示されるので対応していく。 Some setup you must do manually if you haven't yet: 1. Ensure you have defined default url options in your environ...

Web Frameworkの速度比較サイトからどれを使おうかなと選定

イメージ
早さのイメージ Web Frameworkのベンチマークサイトがあったので、レスポンスタイムの観点から調査。 フィルターでフルスタック & メジャーな言語のみでフィルターしてみた。 参考にしたのは こちらのサイト になります。 上位のものを調べてみると、自分は知らないものばかり。 いったいどんなものなんだろう、とざっくり調べたものになります。 Joobyとは Joobyというものが上位を占めている。 Joobyってなんだろう、と調べるとJavaフレームワーク。 Javaって今の時代早くなったんですね。 なんだか昔はJVMで動くから遅いというイメージがあったんです。 Jooby公式サイト DBのORM的なものを入れるとDjangoやRailsのような感じでフレームワークとして動く模様( 参考サイト )。 これだったらRails / Django に慣れている人でも使いやすいかもしれない。 Javaというのでてっきり大仰なコードを書くことになるのかと思ったが、意外とそこまで難しくなさそう。 その他の上位ランカーたちについて Gemini Javaのframeworkらしい。 さっきのベンチマークを公開している会社が作ってるやつのようですね。 GithubのREADMEの説明がものすごく簡素...... https://github.com/TechEmpower/gemini Zebra このMediumの投稿 を見る限り、後述のGiraffeというFrameworkの性能を改善した新規バージョンなのかな? ちょっと探してみても公式サイトらしきものが見当たらず、見つけられたのが 今回のベンチマークのリポジトリ のみ。 中身を見てもあんまりそれらしき記述量じゃないので、Dockerのイメージを引っ張ってる部分に何かあるかとみてみたが、特になさそう。 なので、多分上記リポジトリの中身がZebra本体なのかもしれない。 Act こちらもJavaフレームワーク。公式サイトがhttps未対応だし、色合いが原色すぎて嫌い(調査でもなんでもない) http://actframework.org Cutelyst QtのWeb framework。 Qt自体がUIフレームワークだっ...