「RubyとRailsの学習ガイド」の読書メモ
April 12, 2021
未経験からエンジニアとして働きはじめて 5 ヶ月が経った。Ruby や Rails はスクールでも学んできたが、もう一度体系だって理解し直す必要があると思えてきたので、基礎の基礎から復習する。
現場では、技術で対応できることは前提で、いかにユーザーに価値を届ける実装ができるかが第一に求められる。そのような実装をするには再度基礎からの理解が不可欠に思えたからだ。
ということで何から復習しようかと考えたが、まずは学習すべき範囲を眺める必要がある。なので「Ruby と Rails の学習ガイド」を選んだ。
地図が頭にできたので気持ちよかった!
以下、読書メモ。
・まず自分ができることの範囲を増やし、得意・好きなところを見つけていく
・1つの技術の学習が難しくて進めなくなったときは、まずは全体を通して勉強し、そのあとで戻ってくる
・Rails は Web アプリ(ブラウザからアクセスするアプリ)をかんたんに作るための便利な道具と規約を集めたフレームワークのこと。
・shell はコンピュータを操作するための世界。「web デザイナーの為の「本当は怖くない」"黒い画面"入門」がおすすめ。
・JSON はデータをやりとりすることを目的としてデータ形式の一つ
・HTML は、ブラウザで見ることが主目的であるデータ形式のため、データをやりとりするのには適してない。だから API では JSON で返すのだろう。
・Swagger は API を仕様(API スキーマ)を記述する記法とそれに関連して動作するソフトウェアのこと。
・需要の高まりをうけ、Swagger を標準化した技術が OpenAPI。
・GraphQL は API をのためのクエリ言語(DB にとっての SQL)。サーバーサイドで GraphQL API をサーバーサイドで提供し、クライアントが必要な情報を指示して取得する。
・Git はソースコード管理システム。GitHub はソースコード管理システムに加えて、コードで対話する Pull Request などの機能を提供する開発プラットフォームのこと。
・Puma は Rails アプリのソースコードを OS 上に起動して、OS が提供する通信などの機能を利用して、アプリへの HTTP 通信を可能にする
・Puma などで起動できる Web アプリの標準仕様を定めたものを Rack という
・現在のマシンとは別のマシンへ shell から接続するときに SSH(Secure Shell )プロトコルを利用する
・ソースコードを AWS や GCP などで運用するサーバへ配置することをデプロイという。デプロイには Capistrano というツールがよく使われる。
・AWS などのクラウドサービス上のサーバマシンのセットアップ作業もプログラムで書くことができる。Itamae、Chef などのツールがある。
・DevOps とはアプリ開発者とインフラエンジニアが歩み寄って開発する考え方
・知識を増やすステップと分からないことを減らすステップがある
[https://booth.pm/ja/items/1312664:embed:cite]