2019-01-01から1年間の記事一覧

【プリンシプルオブプログラミング】法則

目次 目次 はじめに 法則 〜プログラミングのアンチパターン〜 ブルックスの法則 コンウェイの法則 割れた窓の法則 エントロピーの法則 80-10-10の法則 ジョシュアツリーの法則 セカンドシステム症候群 車輪の再発明 ヤクの毛刈り はじめに この記事は「プリ…

【プリンシプルオブプログラミング】手法

目次 目次 はじめに 手法 〜プログラマの道具箱〜 曳光弾 契約による設計 防御的プログラミング ドッグフーディング ラバーダッキング コンテキスト はじめに この記事は「プリンシプルオブプログラミング」を読んで自分なりにまとめた学習メモです。 プリン…

【プリンシプルオブプログラミング】習慣

目次 目次 はじめに 習慣 〜プログラマのルーティーン〜 プログラマの3大美徳 怠慢 短気 傲慢 ボーイスカウトの規則 パフォーマンスチューニングの箴言 エゴレスプログラミング 1歩ずつ少しずつ TMTOWTDI はじめに この記事は「プリンシプルオブプログラミ…

【プリンシプルオブプログラミング】視点

目次 目次 はじめに 視点 〜プログラマの観る角度〜 6つの視点 凝集度 結合度 直交性 可逆性 コードの臭い 技術的負債 はじめに この記事は「プリンシプルオブプログラミング」を読んで自分なりにまとめた学習メモです。 プリンシプル オブ プログラミング3…

【プリンシプルオブプログラミング】UNIX哲学

目次 目次 はじめに 思想 〜プログラミングのイデオロギー〜 UNIX哲学 9個の定理 小は美なり 一つ1仕事 即行プロトタイプ 効率性より移植性 データはテキスト レバレッジ・ソフトウェア シェルスクリプト活用 対話インタフェース回避 フィルタ化 はじめに …

【プリンシプルオブプログラミング】UNIX思想

目次 目次 はじめに 思想 〜プログラミングのイデオロギー〜 UNIX思想 17個の原則 モジュール化の原則 明確性の原則 組み立て部品の原則 分離の原則 単純性の原則 倹約の原則 透明性の原則 安定性の原則 表現性の原則 驚き最小の原則 沈黙の原則 修復の原則 …

【プリンシプルオブプログラミング】7つの設計原理

目次 目次 はじめに 思想 〜プログラミングのイデオロギー〜 7つの設計原理 単純原理 同型原理 対称原理 階層原理 線形原理、透明原理 明証原理 安全原理 はじめに この記事は「プリンシプルオブプログラミング」を読んで自分なりにまとめた学習メモです。 …

【プリンシプルオブプログラミング】アーキテクチャ非機能要件

目次 目次 はじめに 思想 〜プログラミングのイデオロギー〜 非機能要件 6つの観点 変更容易性 相互運用性 効率性 信頼性 テスト容易性 再利用性 はじめに この記事は「プリンシプルオブプログラミング」を読んで自分なりにまとめた学習メモです。 プリンシ…

【プリンシプルオブプログラミング】アーキテクチャ根底技法

目次 目次 はじめに 思想 〜プログラミングのイデオロギー〜 アーキテクチャ根底技法 10の技法 抽象 カプセル化 情報隠蔽 パッケージ化 関心の分離 充足性、完全性、プリミティブ性 ポリシーと実装の分離 参照の一点性 分割統治 はじめに この記事は「プリ…

【Git】よく使うコマンド一覧

目次 ローカルリポジトリ Gitの初期設定 add commit branch checkout merge rebase リモートリポジトリ clone pull push remote ローカルリポジトリ ローカルリポジトリとは、自分のマシン内にある作業ディレクトリのことです。 Gitの初期設定 // 初期化する…

【Docker】よく使うコマンド一覧

目次 目次 docker Image Container docker-compose Dockerネットワーク Dockerfile docker-compose.yml Other docker Image イメージ一覧 docker images イメージ取得 docker pull <イメージ名> イメージ削除 docker rmi <イメージID/イメージ名> Container…

【プリンシプルオブプログラミング】プログラミングセオリー

目次 目次 はじめに 思想 〜プログラミングのイデオロギー〜 プログラミングセオリー 「最高のコード」の定義 プログラミングセオリーを支える3つの価値 プログラミングセオリーを実現する6つの原則 結果の局所化 繰り返しの最小化 ロジックとデータの一体…

【プリンシプルオブプログラミング】7つの原則

目次 目次 はじめに 原則 〜プログラミングのガイドライン〜 7つの原則 KISS DRY YAGNI PIE SLAP OCP 名前重要 はじめに この記事は「プリンシプルオブプログラミング」を読んで自分なりにまとめた学習メモです。 プリンシプル オブ プログラミング3年目ま…

【Webを支える技術】第5部 Webサービスの設計 学習メモ

目次 目次 はじめに 第5部 Webサービスの設計 第15章 読み取り専用の Web サービスの設計 リソース設計 リソース指向アーキテクチャのアプローチ 第16章 書き込み可能な Web サービスの設計 設計のバランス 第17章 リソースの設計 関係モデル オブジ…

【Webを支える技術】第4部 ハイパーメディアフォーマット 学習メモ

目次 目次 はじめに 第4部 ハイパーメディアフォーマット 第10章 HTML HTML(Hypertext Markup Language) HTMLのメディアタイプの種類 拡張子 HTMLの構成要素 リンク 第11章 microformats microformats セマンティクス(Semantics) RDFとmicroformats…

【リーダブルコード】まとめ

目次 目次 はじめに 1章 理解しやすいコード 第 I 部 表面上の改善 2章 名前に情報を詰め込む 3章 誤解されない名前 4章 美しさ 5章 コメントすべきことを知る 6章 コメントは性格で簡潔に 第 Ⅱ 部 ループとロジックの単純化 7章 制御フローを読みや…

【Webを支える技術】第3部 HTTP 学習メモ

目次 目次 はじめに 第3部 HTTP 第6章 HTTPの基本 HTTP(Hyper Text Transfer Protocol) TCP/IP(Transmission Control Protocol / Internet Protocol) プロトコル 階層型プロトコル クライアントで行われること サーバで行われること HTTPメッセージ HT…

【Webを支える技術】第2部 URI 学習メモ

目次 目次 はじめに 第2部 URI 第4章 URIの仕様 URIとは URIの構文 絶対URIと相対URI URIの長さ制限 さまざまなスキーム 第5章 URIの設計 クールなURIは変わらない URIの設計指針 URIのユーザビリティ URIを変更したいとき URI設計のテクニック URIを強く…

【AppGoat】学習メモ

目次 目次 はじめに 本記事について AppGoat とは 脆弱性とは クロスサイト・スクリプティング(XSS) 概要 影響 種類 検査方法 対策方法 SQLインジェクション 概要 影響 種類 検査方法 対策方法 補足 CSRF(クロスサイト・リクエスト・フォージェリ) 概要 …

【Webを支える技術】第1部 Web概論 学習メモ

目次 目次 はじめに 第1部 Web概論 第1章 Webとは何か Webとは Webを支える最も基本的な技術 Webは、情報システムとして見ると2つの側面を持つ 第2章 Webの歴史 Web以前 Webの誕生 第3章 REST ―― Webのアーキテクチャスタイル RESTとは リソース ―― RES…