手続きに名前を付けられないツールの可読性の低さ
適度な大きさの、変数や関数を作れないと、内部を逐一読まないと何をやっているのかわからない
具体例
CSSの各propertyの指定
Shell Script
SQL
jQuery
例
code:bash
git branch --merged develop |
sed -e '/^\*/d' | # exclude current branch
sed -E '/develop|master/d' | # exclude develop and master
sed -e 's|^ | M|' # marked merged
git branch --no-merged develop |
sed -e '/^\*/d' | # exclude current branch
sed -e 's|^ | |' # formatting
自分で書いたコードだけど、時間が経ったら、コメントがないとたぶん意図が理解できないと思う CSSはSASSを使うなどすればmodule化でき、
ShellScriptも関数使えばmodule化っぽいことはできるが、
1つ1つの命令に対する命名がしづらい
jQueryもだ
こんな感じの処理をベタ書きすると内容を読まないと何をやっているのかわからない
code:js
$('.hoge').each(function () {...})
こう修正する
code:js
submit();
function submit() {
$('.hoge').each(function () {...})
}
ただしこの修正はclickとかchangeとかのaction系にはやりづらい
何かをclickした時に起動する処理にいちいち名前を付けるのも微妙な気がする
仕方無しにコメントを追加することになる
個人的にはこんな感じのレイアウトになるように書いている
code:js
initialize();
function initialize() {..}
// 送信ボタンをclick
$('..').on('click', function() {..})
// hogeを選択
$('..').on('change', function() {..})
function f() {..}
function g() {..}
function h() {..}
初期表示時に実行するものはinitialize()にまとめて明示する
他のaction系は$('..')...をトップレベルに書き、コメントを添える
この中では、↓の関数を呼ぶ
その他、名前をつけられる処理は関数として下の方にまとめて書く
こうすれば修正時も上の方の$('..')...の中から探せば該当の処理を見つけられる