2011-04-09
良いコードを書く技術
良いコードを書く技術 ?読みやすく保守しやすいプログラミング作法 (WEB+DB PRESS plus)
- 作者: 縣俊貴
- 出版社/メーカー: 技術評論社
- 発売日: 2011/04/09
- メディア: 単行本(ソフトカバー)
- 購入: 46人 クリック: 2,325回
- この商品を含むブログ (63件) を見る
今日から読んでいます。
サポートページ
書籍サポート:良いコードを書く技術 ― 読みやすく保守しやすいプログラミング作法:サポートページ|gihyo.jp … 技術評論社
良いコードの定義
- 保守性が高い
- すばやく効率的に動作する
- 正確に動作する
- 無駄な部分がない
コード検索サービス
(良いも悪いも)他人が書いたコードを読もう。
言語別の良書の例
Java
プログラミング言語Java (The Java Series)
- 作者: ケン・アーノルド,ジェームズゴスリン,デビッドホームズ,柴田芳樹
- 出版社/メーカー: ピアソンエデュケーション
- 発売日: 2007/04
- メディア: 単行本
- 購入: 27人 クリック: 747回
- この商品を含むブログ (70件) を見る
JavaScript
- 作者: David Flanagan,村上列
- 出版社/メーカー: オライリー・ジャパン
- 発売日: 2007/08/14
- メディア: 大型本
- 購入: 50人 クリック: 911回
- この商品を含むブログ (263件) を見る
Perl
- 作者: ラリーウォール,ジョンオーワント,トムクリスチャンセン,Larry Wall,Jon Orwant,Tom Christiansen,近藤嘉雪
- 出版社/メーカー: オライリー・ジャパン
- 発売日: 2002/09
- メディア: 単行本
- 購入: 8人 クリック: 206回
- この商品を含むブログ (125件) を見る
- 作者: ラリーウォール,ジョンオーワント,トムクリスチャンセン,Larry Wall,Jon Orwant,Tom Christiansen,近藤嘉雪
- 出版社/メーカー: オライリー・ジャパン
- 発売日: 2002/09
- メディア: 単行本
- 購入: 4人 クリック: 83回
- この商品を含むブログ (58件) を見る
C
- 作者: B.W.カーニハン,D.M.リッチー,石田晴久
- 出版社/メーカー: 共立出版
- 発売日: 1989/06/15
- メディア: 単行本
- 購入: 24人 クリック: 606回
- この商品を含むブログ (205件) を見る
Ruby
- 作者: まつもとゆきひろ,David Flanagan,卜部昌平(監訳),長尾高弘
- 出版社/メーカー: オライリージャパン
- 発売日: 2009/01/26
- メディア: 大型本
- 購入: 20人 クリック: 314回
- この商品を含むブログ (116件) を見る
PHPはどれかな・・・?ないのかな・・・
名前付け
大学の研究室の教授も「名前は重要」って言ってたな。その通りだな。
名前の省略の例
- 先頭の文字を残す。複数形の場合は最後のsは残すことが多い。
- ingの削除。
- これは初めて知った
- 単語の削除。
- 語頭以外の母音を削除する。
- image→img
- imgはこのパターンだったのか。へー。
- 強い音を残す。
- server→svr
- これも初めて
- 一般的な略語の利用
- database→db
短縮語検索
AcronymFinder: Index-
こんなサイトあるんだ。
言語別コーディング標準
Java
- オブジェクト倶楽部版 Javaコーディング規約 pdf
- Java 言語 コーディング規約 目次
- 1999年の時点でもうあったのか。そりゃそうか。
Ruby
PHP
- Zend Framework: Documentation: Zend Framework PHP 標準コーディング規約 - Zend Framework Manual
- Manual :: 標準コーディング規約
Perl
Python
C#
メソッド名について
となっていることが多い。
スコープ
JavaScript1.6にはブロックスコープがない
関数内で宣言されたローカル変数のスコープは、すべて関数の先頭で宣言されたものと同じ意味になる。
- 見かけ上のスコープ(でもこっちのほうがいい)
function calc() { var total = 0; for (var i = 1; i < 10; i++) { var n = i * i; total += n; } alert(total); }
- 本当のスコープ
function calc() { var total, i, n; total = 0; for (i = 1; i < 10; i++) { n = i * i; total += n; } alert(total); }
メソッド
引数
言語別テスティングフレームワーク
Java
Ruby
PHP
Python
Perl
.NET
JavaScript
こころがけ
- YAGNI - Wikipedia
- Don’t repeat yourself - Wikipedia
- 単純に「コードの重複」が悪ではなく、意味をきちんと理解していない「処理の重複」が悪。
抽象化
コードリーディング
- 静的
- 動的
- 動かしながら
参考文献(抜粋)
- 作者: WINGSプロジェクト佐藤匡剛,山田祥寛
- 出版社/メーカー: 技術評論社
- 発売日: 2006/11/29
- メディア: 大型本
- 購入: 11人 クリック: 177回
- この商品を含むブログ (56件) を見る
リファクタリング―プログラムの体質改善テクニック (Object Technology Series)
- 作者: マーチンファウラー,Martin Fowler,児玉公信,平澤章,友野晶夫,梅沢真史
- 出版社/メーカー: ピアソンエデュケーション
- 発売日: 2000/05
- メディア: 単行本
- 購入: 74人 クリック: 2,462回
- この商品を含むブログ (275件) を見る
Code Craft ~エクセレントなコードを書くための実践的技法~
- 作者: Pete Goodliffe,後藤正徳,鵜飼文敏,平林俊一,トップスタジオ,まつもとゆきひろ
- 出版社/メーカー: 毎日コミュニケーションズ
- 発売日: 2007/11/29
- メディア: 単行本(ソフトカバー)
- 購入: 3人 クリック: 172回
- この商品を含むブログ (77件) を見る
エンタープライズ アプリケーションアーキテクチャパターン (Object Oriented Selection)
- 作者: マーチン・ファウラー,長瀬嘉秀,株式会社テクノロジックアート
- 出版社/メーカー: 翔泳社
- 発売日: 2005/04/21
- メディア: 単行本
- 購入: 8人 クリック: 516回
- この商品を含むブログ (127件) を見る
Webを支える技術
Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)
- 作者: 山本陽平
- 出版社/メーカー: 技術評論社
- 発売日: 2010/04/08
- メディア: 単行本(ソフトカバー)
- 購入: 134人 クリック: 4,140回
- この商品を含むブログ (157件) を見る
読んだ。あとで書く。
名代とんかつかつくら
4/9 16:00ごろ訪問。
お客は4、5組くらい。
ヒレカツ膳80gを注文。1200円。
ごはんは麦ごはん、おひつで。みそ汁、漬け物。
テーブルの上にも別の漬け物があった。
お上品なとんかつ。おいしかったです。
- ジャンル:とんかつ
- 住所: 川崎市幸区堀川町72-1 4階(プラザイースト)
- このお店を含むブログ (2件) を見る
- (写真提供:店舗)
