̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ IT ニュース&コラム 2012/2/27 通巻559号 縮小版 ソフトウェアデザイン館 Sage Plaisir 21  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ >>> ついに、USB を上下逆さまにしても、挿すことができるように。 * The others Last week watched News  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ◇ バッファローコクヨ、世界初のコネクタをどちら向きでも挿せるUSB Hub。 http://pc.watch.impress.co.jp/docs/news/20120220_513292.html … 挿し間違い(エラー)を、受け入れる方向で解決したことがすばらしい。 ◇ USBを挿すときに接続方向をミスらないようにするちょっとしたアイディア。 http://gigazine.net/news/20120219-eidetic-usb/ … 残念。 エラーを事前チェックできるところは、よかったが。 ◇ Googleのプライバシーポリシー統合。どんな情報が保存されているのか http://internet.watch.impress.co.jp/docs/column/google_policy/20120217_512856.html … 個人情報の関連付けは、情報漏洩の結果でもある。 ◇ 次第に明らかになるARM版 Windows 8。Microsoftの次世代OS戦略。 http://cloud.watch.impress.co.jp/docs/column/infostand/20120220_513239.html … 既存の x86 アプリケーションはARM版では動かない。 ARM 版が提供されなければ。 ◇ Ubuntu for Android 発表、スマートフォンがデスクトップPCに。 http://news.mynavi.jp/news/2012/02/22/017/index.html … スマートフォンの中ではなく、ドック経由のディスプレイに Ubuntu。 ◇ 米MSが個人向けVistaのサポート打ち切りを撤回、2017年まで延長。 http://www.nikkeibp.co.jp/article/news/20120218/299576/ … Vista は、もうすぐ切れるところだった。 ◇ MS、Windows 8のSkyDrive連携機能を紹介、エクスプローラーとの統合など。 http://cloud.watch.impress.co.jp/docs/news/20120221_513543.html … PC、タブレット、クラウドのすべてで、Metro スタイル。 ◇ リコー、紙とデジタルを融合する RICOH TAMAGO Clicker。 http://japan.cnet.com/news/service/35014281/ … サーバーにある雑誌データと照合して、該当ページを検索。全雑誌もできる? ◇ Jailbreakやroot化された端末での電子証明書利用を禁止、ベリサインが対応。 http://www.itmedia.co.jp/enterprise/articles/1202/20/news033.html … 電子証明書の無断複製を防止。                      Snap Note 3 開発BLOG  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ [ タブ文字の幅を変えても崩れないソースコードの書き方 ] Linux のリーナスは、タブ文字の幅を8にするように強制しています。 Python は、タブ文字を使わないで、4つの空白文字を使うように 推奨しています。 ベストなタブ幅はいくつでしょうか。 それはソフトウェアの種類や、プログラマーの慣れや気分によって変わります。 タブ幅が8ではないと、インデントが見にくいといった主張や、タブ幅 が2ではクレイジーだ(リーナス)とか、タブ幅が8では1行に書ける 文字数が少なくなるから2が良いとか、4ぐらいが丁度いいとか、 理由は様々です。 インデントを深しなければタブ幅が8でも十分だとか、インデントを 深くしなくて済むタイプのソフトウェアではないとか、別の方向に議論が 発散する危険もあります。 結論としては、絶対的なベストなタブ幅は無いということでしょう。 そんな気まぐれなプログラマーに応えるタブ文字の記述方法があります。 まず、 ★(1) インデントに使う文字は、空白文字ではなくタブ文字にします。 インデントの幅を、テキスト・エディターのタブ文字の幅に設定しても、 インデントの幅が変わらなくなってしまうからです。 もう1つは、 ★(2) 行頭以外にタブ文字を使わないで空白文字を使うことです。 行頭以外にタブ文字を使うと、次のように列をそろえたとき、タブ文字の 幅の設定が異なるテキスト・エディターを使うと、列が揃わなくなります。 タブ幅8で、列(paramX)をそろえたとき、 ^_______int^____param1`=`10; ^_______short^__param2`=`1000; タブ幅4で、表示させると、列(paramX)が揃いません。 ^___int^param1`=```10; ^___short^__param2`=`1000; ( ^ はタブ文字、_ はタブ文字による余白、` は空白文字です) 行頭以外にタブ文字を使わないで空白文字を使えば、 タブ幅8で、列(paramX)をそろえたとき、 ^_______int`````param1`=```10; ^_______short```param2`=`1000; タブ幅4で、表示させても、列(paramX)は揃います。 ^___int`````param1`=```10; ^___short```param2`=`1000; ただし、 ★(3) 行の途中からタブ文字から空白文字に変えなければならないことがあります。 タブ幅8で、列(1と4)をそろえたとき、 ^_______int``array[]`=`{`1,`2,`3, ^_______^_______^_______`4,`5,`6 }; タブ幅4で、表示させると、列(1と4)が揃いません。 ^___int``array[]`=`{`1,`2,`3, ^___^___^___`4,`5,`6 }; 行の途中からタブ文字を使わないで空白文字を使えば、 タブ幅8で、列をそろえたとき、 ^_______int``array[]`=`{`1,`2,`3, ^_______`````````````````4,`5,`6 }; タブ幅4で、表示させても、列は揃います。 ^___int``array[]`=`{`1,`2,`3, ^___`````````````````4,`5,`6 }; 最後に、 ★ コーディング・ルールは、強制してはいけません。 上記の3つのルールも強制してはいけません。推奨です。 コーディング・ルールの強制は、開発効率を落とす原因となります。 例外の無いルールは無いという法則が、コーディング・ルールには よくあてはまるからです。 そもそも読みやすいコードは、文章と 同じで、簡単にルール化できるものではありません。 簡単なルール (低コスト)だから少しでもルールを使った方がいいだろうという 考えは間違いです。 弊害が出るのです。 文章家が規制によって、 自由を奪われそうになったときによく主張される弊害が、そのまま あてはまります。 Linux が共産主義と同じように、良かれと思って トップが指導したことが、自由を奪うのは偶然でしょうか。 どうしてもコーディング・ルールが強制されるときは、変換ツールを 使いましょう。 開発中の vbslib4 には、タブ文字と空白文字を変換 するコマンドを用意しています。 列が崩れることが無いように、 タブ文字の位置によって空白文字の数を変えています。 上記(3)のケースは、機械的に判断できないため、列が揃わなくなり ますが、幸い列をそろえることまで強制しているところは少なそうです。         ソフトウェアデザイン館 Sage Plaisir 21 について  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ホームページ  >>> http://www.sage-p.com/ メルマガ    >>> http://www.mag2.com/m/0000083983.html ブログ     >>> http://blog.livedoor.jp/sage_p/ ツイッター   >>> http://twitter.com/Ts_Neko ダウンロード  >>> http://www.sage-p.com/freesoft.htm サポート掲示板 >>> http://www.sage-p.com/kg_ban09/z6037C8.cgi 東日本大震災  >>> http://www.sage-p.com/saigai.html メール   >>> ts-neko◇sage-p.com ←◇を@に変えてください          緊急メールは件名に「うどんメール」を付けてください。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ このメルマガの登録・解除をするときは… >>> http://www.mag2.com/m/0000083983.htm  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ News & Column are composed by T's-Neko 2012  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄