Webを支える技術1-60

ツノ
·

読む目的

エンジニアで働く上で前提知識で語られることが多いため。また、推薦図書の一部に入っていたため

読んだ部分

2ポモドーロで60Pくらい。流し読みでも思ったより時間がかかった。もう一度読むとして、気になった部分と疑問点を思い出しておく

気になった部分

1章:Webのアーキテクチャ

  • Web以前を割にしっかり書き込んでいた。

  • RESTは「アーキテクチャパターン」の一つ。WebはRESTを採用したためここまで伸びた。

  • リンク切れとうの不完全さをトレードオフに手軽さを選択することが、流行った理由

  • SOAPとの戦いもあったが、仕様策定がWEB(H)

  • RESTの定義は以下の通り

    • クライアントサーバ:受け手、貰い手が協力するシステムであること

    • ステートレス:いつ中断してもいいハンバーガー屋みたいなもの

    • キャッシュ:PCの効率に頼って表示を早める

    • 統一インターフェース:8個?のメソッドでやり取りする

    • コードオンデマンド:JavaScriptによるブラウザ側での機能提供

    • 階層型システム:プロキシやロードバランサを使うことで負荷分散す

2章:URI

  • 単一となるリソースを指し示す(データの更新なども含む)

  • いいURLは変わらない

  • 設計として考え抜くべき場所

    • 言語の拡張子は入れるべきではない

    • 言語で提供している機能(servletなど)は含めるべきではない

    • セッションIDとかは入れるべきではない

  • jaやenとかは入れてもいい

  • 変わってしまったらリダイレクトすること

疑問点

  • ハイパーメディアの説明がイマイチ理解できなかった。リンクでデータのやり取りができる(非線形なつながりを持っている)

  • Web以前の説明はそこまで解像度が高く理解できなかった。

  • URLとルーティングって、なぜ名前が違うのか

    • 例えていうと、URLは郵便システム、リーティングは郵便の配達ルートみたいな関係

  • URLってVueRouterだとどこまで指定することができるのか?

  • グラフQLってRESTなの?

    • 根本的に違う。GraphQLはエンドポイントが一つでそこにクエリを流し込んでデータを取得する

@2nofa11
ゆっぽくんが好きなエンジニア