MW211 EXIT

devlog
設計/バージョンの正式版までの流れ
2014年03月27日
大きくいって、以下のような段階を踏んで正式版となる。

【アルファ版】接尾辞:A(Alpha、α)
  内部(開発者・評価者)向け開発初期版。
  性能や使い勝手を評価するためのもの。
  未実装機能や不安定な動作を許容する(最悪システム破壊の危険性もあり)。

【ベータ版】接尾辞:B(Beta、β)、CB(Closed Beta)、OB(Open Beta)
  外部向け試用版。
  ユーザ目線での性能やデザインを評価するためのもの。
  死角となっていたバグ情報も吸い上げる。
  以下の二種類に分けられる。
    ・クローズドベータ版(CB)…限定外部者(関係者・公募者)向け
    ・オープンベータ版  (OB)…一般外部者向け

【リリース候補版】接尾辞:RC(Release Candidate)
  ベータ版よりも正式版に近い(より公式な)位置づけのもの。

【正式版】接尾辞:なし(Stable)
  評価が完了した製品版。安定版ともいわれる。
分類:設計
設計/紛らわしい英数字
2014年03月24日
シリアル番号などの照合用文字列を英数字で作る場合、
避けた方がいいですよという文字をまとめてみた。
┌─┬─┬──────────────────────────────────┐
│×│0 │「O」、「D」、「Q」、「o」                              と紛らわしい│
│×│1 │「I」、「l」、「7」、「L」、「i」、「j」                と紛らわしい│
│×│2 │「Z」、「z」                                            と紛らわしい│
│○│3 │                                                                    │
│○│4 │                                                                    │
│△│5 │「S」、「s」                                            と紛らわしい│
│△│6 │「b」                                                   と紛らわしい│
│△│7 │「1」、「I」、「l」、「L」、「i」、「j」                と紛らわしい│
│○│8 │                                                                    │
│×│9 │「q」、「g」                                            と紛らわしい│
├─┼─┼──────────────────────────────────┤
│○│a │                                                                    │
│△│b │「6」                                                   と紛らわしい│
│△│c │「C」                                                   と紛らわしい│
│○│d │                                                                    │
│○│e │                                                                    │
│○│f │                                                                    │
│△│g │「g」、「9」                                            と紛らわしい│
│○│h │                                                                    │
│△│i │「j」、「1」、「I」、「l」、「7」、「L」                と紛らわしい│
│△│j │「i」、「1」、「I」、「l」、「7」、「L」                と紛らわしい│
│△│k │「K」                                                   と紛らわしい│
│×│l │「1」、「I」、「7」、「L」、「i」、「j」                と紛らわしい│
│○│m │                                                                    │
│○│n │                                                                    │
│×│o │「O」、「0」、「Q」、「D」                              と紛らわしい│
│○│p │                                                                    │
│×│q │「9」、「g」                                            と紛らわしい│
│○│r │                                                                    │
│×│s │「S」、「5」                                            と紛らわしい│
│○│t │                                                                    │
│×│u │「v」、「y」、「U」、「V」、「Y」                       と紛らわしい│
│△│v │「u」、「y」、「V」、「U」、「Y」                       と紛らわしい│
│×│w │「W」                                                   と紛らわしい│
│×│x │「X」                                                   と紛らわしい│
│△│y │「v」、「V」、「Y」、「u」、「U」                       と紛らわしい│
│×│z │「Z」                                                   と紛らわしい│
├─┼─┼──────────────────────────────────┤
│○│A │                                                                    │
│○│B │                                                                    │
│△│C │「c」                                                   と紛らわしい│
│△│D │「O」、「0」、「Q」、「o」                              と紛らわしい│
│○│E │                                                                    │
│○│F │                                                                    │
│○│G │                                                                    │
│○│H │                                                                    │
│×│I │「1」、「l」、「7」、「L」、「i」、「j」                と紛らわしい│
│○│J │                                                                    │
│△│K │「k」                                                   と紛らわしい│
│△│L │「1」、「I」、「l」、「7」、「i」、「j」                と紛らわしい│
│○│M │                                                                    │
│○│N │                                                                    │
│×│O │「0」、「Q」、「D」、「o」                              と紛らわしい│
│○│P │                                                                    │
│×│Q │「0」、「O」、「D」、「o」                              と紛らわしい│
│○│R │                                                                    │
│×│S │「5」、「s」                                            と紛らわしい│
│○│T │                                                                    │
│×│U │「V」、「u」、「v」、「y」、「Y」                       と紛らわしい│
│△│V │「Y」、「U」、「v」、「y」、「u」                       と紛らわしい│
│×│W │「w」                                                   と紛らわしい│
│×│X │「x」                                                   と紛らわしい│
│△│Y │「V」、「y」、「v」、「U」、「u」                       と紛らわしい│
│×│Z │「z」                                                   と紛らわしい│
└─┴─┴──────────────────────────────────┘
分類:設計
設計/正しい日本語
2014年01月29日
機械的に文字を組み合わせた用語の場合、得てして変な日本語になる場合が多い。

しかし、内部向けの資料の場合、周囲との意思の疎通があれば気にしなくてよいと思う。
そもそも内部向け資料は産業スパイ対策でわざとわかりづらく作るところもあるそうだ。
「かんばん方式」や「あんどん」といった素人にはわかりづらい言葉を使っているのも
そもそもはそういう訳だったと聞く。

だから、多少日本語がおかしくても気にしなくてもいいのではないだろうか。

もちろん、外部向けにはわかりやすい言葉を使わなければならないが。
分類:設計
DB/権限(authority)と特権(privilege)
2013年10月31日
「特権」は個々の操作権のこと。
「権限」はそれらをグループ化したもの。

「管理者」区分は、「管理者権限」で管理されることになる。

「管理者権限」を持てば、管理者の「特権」を全て使えるということになる、
分類:設計
設計/日時の切り上げ
2013年09月29日
日時を切り上げる場合には注意が必要だ。

例えば、10秒単位に切り上げる場合(例えば、12秒は20秒に切り上げられる)、
51秒は60秒に切り上げられるのだが、時刻関数が0~59秒までしか許容していない場合、
エラーとなってしまう。
例)PHPのDateTimeクラスのコンストラクタなど

だからといって、「+1分と0秒」とかで安易に対応してはいけない。
今度は「59分51秒」の場合、「60分00秒」で0~59分しか許容していない場合、
こちらでエラーとなってしまうからだ。

切り捨てはたいてい問題はない。0秒を下回ることはないからだ。

ということで、切り捨てて、一単位分加算するという回避方法が考えられる。
例えば、こんな感じ(PHPのDateTimeクラスの例)。
┌──────────────────────────────────────┐
│if ($newDateTime->format('i') % $ブロック単位) {                            │
│    $ss = floor($newDateTime->format('s') / $ブロック単位) * $ブロック単位; │
│    $newDateTime->modify(sprintf('%04d-%02d-%02d %02d:%02d:00',             │
│                                 $newDateTime->format('Y'),                 │
│                                 $newDateTime->format('m'),                 │
│                                 $newDateTime->format('d'),                 │
│                                 $newDateTime->format('H'),                 │
│                                 $newDateTime->format('i'),                 │
│                                 $ss));                                     │
│    $newDateTime->modify('+' . $ブロック単位 . ' seconds');                 │
│}                                                                           │
└──────────────────────────────────────┘
分類:設計
設計/チャンクサイズ
2013年09月19日
「チャンクサイズ(Chunk_Size)」。
「Chunk」は「塊」の意。よって、データを区切る大きさのことを言う。
RAIDアレイ管理の場合は「ストライプサイズ」とも。
これらの総称として「ブロックサイズ」がある。
分類:設計
設計/Web画面の入出力
2013年08月27日
Web画面における入出力情報をまとめてみた。
【入力】
  ・URL
  ・GETパラメータ
  ・POSTパラメータ
  ・ファイルアップロード
【出力】
  ・画面表示
  ・ファイルダウンロード
  ・メール送信
分類:設計
BOMコードと空っぽ
2013年08月10日
(UTF-8の)BOM付きで空っぽのファイルを保存すると、
「EF BB BF」のみの3バイトの空ファイル(?)が作成される。

つまり、0バイトの空ファイルではない。

この挙動は、メモ帳、秀丸エディタ、サクラエディタで確認した。
分類:設計
BOMコードとエディタ
2013年08月09日
各エディタにおけるファイル保存時のBOM指定を調べてみた。

メモ帳の場合、BOM指定がない。つまり強制的にBOM付きになってしまう。
┌──────────────────────────────────────┐
│                  ┌────┬─┐                                          │
│文字コード        │UTF-8   │▼│                                          │
│                  └────┴─┘                                          │
└──────────────────────────────────────┘

秀丸エディタの場合、チェックボックスがある。
┌──────────────────────────────────────┐
│                  ┌────────┬─┐                                  │
│エンコードの種類  │Unicode(UTF-8)  │▼│  □BOMを付ける                   │
│                  └────────┴─┘                                  │
└──────────────────────────────────────┘

サクラエディタの場合も、チェックボックスがある。
┌──────────────────────────────────────┐
│                  ┌────┬─┐              ┌─────┬─┐          │
│文字コードセット  │UTF-8   │▼│  改行コード  │変換なし  │▼│  □BOM   │
│                  └────┴─┘              └─────┴─┘          │
└──────────────────────────────────────┘
分類:設計
設計/緊急度文言
2013年07月08日
緊急度順に以下の文言を使用するとよい。
・「直ちに」対応する
・「速やかに」対応する
・「計画的に」対応する
分類:設計
前へ 1 2 3 4 5 6 7 8 次へ