もくもくろぐ

技術力

「Webを支える技術」を読んだ

読みました。

Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)

Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)

内容

ふ〜ん


Web概論

Webってなに、とかWebの歴史とかでふ〜んという感じだった。

URI

クールはURIは変わらない!!!

内部の変更によってURIが変わってしまうことではユーザビリティが低下してしまう。
検索エンジンにひっかからなくなってしまうしね。

ユーザがURIを見たときにどの階層にいるのか、どの階層にいるのか分かるようなものがよい。
また、拡張子やセッションIDは隠す。余分な情報を載せない。
リソースを表現する名前にする。

例えばこんなんあるよね。日記とか。

example.com/blog/2014/5/13

アプリケーションだとこういうのかな

example.com/sample/people/123

階層の命名は名詞で行うべきで、動詞はさけた方がよいとのこと。

HTTP

GET, POST, PUT, DELETE など8種類のメソッドでHTTPは成功したとのこと。

telnet で遊んでみました。

% telnet mokumokucloud.net 80  // もくもくの80番ポートに接続
Trying 49.212.198.151...  
Connected to mokumokucloud.net.  
Escape character is '^]'.  

// つながったことがわかる
// GETしてみます
GET / HTTP/1.1  
Host: mokumokucloud.net

// 2回エンターするとリクエストが送られる

HTTP/1.1 200 OK
Date: Tue, 13 May 2014 08:28:30 GMT
Server: Apache/2.2.25
Last-Modified: Wed, 18 Dec 2013 07:15:31 GMT
ETag: "10e318f-55c-4edc9cf6bcac0"
Accept-Ranges: bytes
Content-Length: 1372
Content-Type: text/html

<!doctype html>
<html>
<!--
    ╹◡╹ ) ŧ‹ŧ‹
-->
<head>
... (以下省略)

楽しい!!✌('ω'✌)三✌('ω')✌三(✌'ω')✌


ハイパーメディアフォーマット

ハイパーメディアクリエイター

HTMLやそれにまつわるお話でした。 まぁぼくが改めてまとめるようなこともなかったのでよし。


Webサービスの設計

ここでは例として、「郵便番号検索システム」をとりあげて、どのような設計手順になるのかというフローが紹介されていました。

アプローチとしては、

  • Webサービスで提供するデータを特定(郵便番号から住所を特定するデータがほしい)
  • データをリソースにわける(都道府県/市町村ごとのデータがほしい)
  • リソースにURIで名前をつける({都道府県}/{市町村}/{それ以下} というURIにしよう)
  • クライアントに提供するリソースの表現を設計する(拡張子は .html にしよう)
  • リンクとフォームを利用してリソース同士を結びつける
  • イベントの標準的なコースを検討する(ユーザはこういう道順でアクセスをするに違いない)
  • エラーについて検討する(こんなエラーがでるだろうからこう対処しよう)

ということが書いてありました。なるほどね〜


まとめ

Webにまつわる技術が「どんなものか」を説明した本でした。
これに書いてあることはいわゆる 常識 なので全部知っておこうという気持ち。
ぼくも読んでみて、改めて学んだ事がいっぱいありました(もちろん初めて知ったことも多い)。

Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)

Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)