3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Webを支える技術を研修で読んでる まとめ1

Posted at

輪講形式で読んでいて、気になった点をまとめておく

第1部:Webの概要

  • RPC
    • 分散システムを実現するための技術の1つ
  • 分散システムの流れが来たが、複雑さの問題から発展しなかった
  • Webはシンプルな単方向リンクだけを持つものとして開発
  • SOAP
    • メッセージ転送の方法だけを定めたプロトコル
    • 標準化戦争勃発
  • REST
  • リソース
    • リソースとはWeb上の情報
    • 世界中の無数のリソースは、それぞれURIで一意の名前を持つ
    • URIを用いることで、プログラムはリソースが表現する情報にアクセス出来る
  • RESTなアーキテクチャのために
    • クライアント/サーバ
      • ユーザインターフェースと処理を分離する
    • ステートレスサーバ
      • クライアントのアプリケーション状態をサーバで管理しない
      • ステートフルな場合、Cookieを使ったセッション管理をしている
        • REST的には間違い
    • キャッシュ
      • 一度取得したリソースをクライアント側で使い回す
        • 効率化はできるが、情報の信頼性が下がる
    • 統一インターフェース
      • URIで指し示したリソースに対する操作を統一した限定的なインターフェースで行う
    • 階層化システム
      • サーバとクライアントの間にロードバランサを設置して負荷分散を行う
    • コードオンデマンド
      • ブラウザ以外にクライアント側を拡張出来る
        • JSやFlashなど
      • プログラムをクライアントにダウンロードして実行する

第2部:URI

  • URIの仕様
    • railsのrouteファイルなどに関わってくるから、ここから大事!
  • URIスキーム
    • http://hogehoge.com
    • httpの部分がURIスキーム
  • URIフラグメント
    • hogehoge/member#user1
    • ページ内の#以下の文字列の要素を示す
  • URIの設計
    • 変わりにくいURIのために
      • プログラミング言語に依存した拡張子やパスを含めない
        • メンテナンス性や可読性
      • メソッド名やセッションIDを含めない
        • リファクタリングの時に大変なことに
      • URIはリソースを表現する名詞にする
        +
    • シンプルで分かりやすいものがCool
    • 拡張子で表現する方法
      • .jaや.enなどの言語を指定する時に使う
      • .txtや.jsonを付けてやる(rails

第3部:HTTP(Hypertext Transfer Protocol)

  • HTTPの基本
    • 階層型プロトコル
      • p69参照
    • 同期型プロトコル(レスポンスを待つ)
    • HTTPメッセージ
      • ヘッダとボディーに分かれておく
3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?