So-net無料ブログ作成

日付け [雑談]

日付けの書式って、何種類くらいあると思います?ここで言う書式には、和暦や June 15, 2009 のようなものは含まず、年、月、日を区切り記号で区切っただけのようなものを指します。

単純に並べ方だけを見ると、年月日、月日年、日月年の 3 通りしかないので、区切り記号に色々使われたとしても、両手で収まる程度だと思っていたのだけど、、、。

.NET Framework で利用可能な CultureInfo を使って 2017 年 1 月 7 日の書式を出力させてみたら、こんなにあった。


01/07/2017
ロケールに依存しない言語 (ロケールに依存しない国)[]
07.01.17
ベラルーシ語 (ベラルーシ)[be-BY], バシュキール語 (ロシア)[ba-RU], ルクセングルグ語 (ルクセンブルグ)[lb-LU]
07.01.17 ý.
トルクメン語 (トルクメニスタン)[tk-TM]
07.01.2017
ドイツ語 (ドイツ)[de-DE], ノルウェー語、ブークモール (ノルウェー)[nb-NO], ルーマニア語 (ルーマニア)[ro-RO], ロシア語 (ロシア)[ru-RU], ウクライナ語 (ウクライナ)[uk-UA], タジク語 (キリル、タジキスタン)[tg-Cyrl-TJ], アルメニア語 (アルメニア)[hy-AM], アゼルバイジャン語 (ラテン、アゼルバイジャン)[az-Latn-AZ], マケドニア語 (マケドニア旧ユーゴスラビア共和国)[mk-MK], グルジア語 (ジョージア)[ka-GE], 北サーミ語 (ノルウェー)[se-NO], ウズベク語 (ラテン、ウズベキスタン)[uz-Latn-UZ], タタール語 (ロシア)[tt-RU], サハ語 (ロシア)[sah-RU], ドイツ語 (スイス)[de-CH], イタリア語 (スイス)[it-CH], ノルウェー語 ニーノシク (ノルウェー)[nn-NO], アゼルバイジャン語 (キリル、アゼルバイジャン)[az-Cyrl-AZ], ウズベク語 (キリル、ウズベキスタン)[uz-Cyrl-UZ], ドイツ語 (オーストリア)[de-AT], ドイツ語 (ルクセンブルグ)[de-LU], フランス語 (スイス)[fr-CH], ルレ サーミ語 (ノルウェー)[smj-NO], ドイツ語 (リヒテンシュタイン)[de-LI], 南サーミ語 (ノルウェー)[sma-NO]
07.01.2017.
ラトビア語 (ラトビア)[lv-LV]
07/01/17
セツワナ語 (南アフリカ)[tn-ZA], ウェールズ語 (英国)[cy-GB], ディヘビ語 (モルディブ)[dv-MV], セソト サ レボア語 (南アフリカ)[nso-ZA], バレンシア語 (スペイン)[ca-ES-valencia], セツワナ語 (ボツワナ)[tn-BW]
07/01/2017
カタルニア語 (カタルニア)[ca-ES], フランス語 (フランス)[fr-FR], ヘブライ語 (イスラエル)[he-IL], イタリア語 (イタリア)[it-IT], ポルトガル語 (ブラジル)[pt-BR], ウルドゥー語 (パキスタン・イスラム共和国)[ur-PK], インドネシア語 (インドネシア)[id-ID], ペルシャ語 (イラン)[fa-IR], ベトナム語 (ベトナム)[vi-VN], マルタ語 (マルタ)[mt-MT], マレー語 (マレーシア)[ms-MY], ラオス語 (ラオス人民民主共和国)[lo-LA], ガリシア語 (ガリシア)[gl-ES], シリア語 (シリア)[syr-SY], ケチュア語 (ボリビア)[quz-BO], ブルトン語 (フランス)[br-FR], マオリ語 (ニュージーランド)[mi-NZ], オクシタン語 (フランス)[oc-FR], コルシカ語 (フランス)[co-FR], アルザス語 (フランス)[gsw-FR], キチェ語 (グアテマラ)[qut-GT], ウォロフ語 (セネガル)[wo-SN], スコットランド ゲール語 (英国)[gd-GB], アラビア語 (イラク)[ar-IQ], 英語 (英国)[en-GB], スペイン語 (メキシコ)[es-MX], ポルトガル語 (ポルトガル)[pt-PT], アイルランド語 (アイルランド)[ga-IE], マレー語 (ブルネイ・ダルサラーム国)[ms-BN], シンド語 (パキスタン・イスラム共和国)[sd-Arab-PK], フラニ語 (ラテン、セネガル)[ff-Latn-SN], ケチュア語 (エクアドル)[quz-EC], アラビア語 (エジプト)[ar-EG], スペイン語 (スペイン)[es-ES], ケチュア語 (ペルー)[quz-PE], アラビア語 (リビア)[ar-LY], スペイン語 (グアテマラ)[es-GT], スペイン語 (コスタリカ)[es-CR], フランス語 (ルクセンブルグ)[fr-LU], 英語 (アイルランド)[en-IE], フランス語 (モナコ)[fr-MC], アラビア語 (オマーン)[ar-OM], 英語 (ジャマイカ)[en-JM], アラビア語 (イエメン)[ar-YE], 英語 (カリブ)[en-029], スペイン語 (コロンビア)[es-CO], アラビア語 (シリア)[ar-SY], 英語 (ベリーズ)[en-BZ], スペイン語 (ペルー)[es-PE], アラビア語 (ヨルダン)[ar-JO], 英語 (トリニダード・トバゴ)[en-TT], スペイン語 (アルゼンチン)[es-AR], アラビア語 (レバノン)[ar-LB], 英語 (ジンバブエ)[en-ZW], スペイン語 (エクアドル)[es-EC], アラビア語 (クウェート)[ar-KW], アラビア語 (アラブ首長国連邦)[ar-AE], スペイン語 (ウルグアイ)[es-UY], アラビア語 (バーレーン)[ar-BH], スペイン語 (パラグアイ)[es-PY], アラビア語 (カタール)[ar-QA], スペイン語 (ボリビア)[es-BO], スペイン語 (エルサルバドル)[es-SV], スペイン語 (ホンジュラス)[es-HN], スペイン語 (ニカラグア)[es-NI], スペイン語 (プエルトリコ)[es-PR]
07-01-17
バングラ語 (インド)[bn-IN], パンジャーブ語 (インド)[pa-IN], グジャラート語 (インド)[gu-IN], オディア語 (インド)[or-IN], テルグ語 (インド)[te-IN], カナラ語 (インド)[kn-IN], マラヤラム語 (インド)[ml-IN], フランス語 (ベルギー)[fr-BE], バングラ語 (バングラデシュ)[bn-BD], パンジャブ語 (パキスタン・イスラム共和国)[pa-Arab-PK]
07-01-2017
デンマーク語 (デンマーク)[da-DK], ロマンシュ語 (スイス)[rm-CH], ズールー語 (南アフリカ)[zu-ZA], フェロー語 (フェロー諸島)[fo-FO], ヒンディー語 (インド)[hi-IN], タミール語 (インド)[ta-IN], アッサム語 (インド)[as-IN], マラーティー語 (インド)[mr-IN], サンスクリット語 (インド)[sa-IN], コンカニ語 (インド)[kok-IN], グリーンランド語 (グリーンランド)[kl-GL], マプドゥングン語 (チリ)[arn-CL], タミール語 (スリランカ)[ta-LK], タマジット語 (ラテン、アルジェリア)[tzm-Latn-DZ], 中央アトラス タマジット語 (ティフィナグ、モロッコ)[tzm-Tfng-MA], アラビア語 (アルジェリア)[ar-DZ], アラビア語 (モロッコ)[ar-MA], アラビア語 (チュニジア)[ar-TN], スペイン語 (ベネズエラ ボリバル共和国)[es-VE], スペイン語 (チリ)[es-CL], 英語 (インド)[en-IN]
09/04/38
アラビア語 (サウジアラビア)[ar-SA]
1/7/2017
英語 (米国)[en-US], スワヒリ語 (ケニア)[sw-KE], チェロキー語 (チェロキー)[chr-Cher-US], ネパール語 (ネパール)[ne-NP], フィリピノ語 (フィリピン)[fil-PH], ハワイ語 (米国)[haw-US], モホーク語 (モホーク)[moh-CA], 英語 (フィリピン共和国)[en-PH], スペイン語 (米国)[es-US]
1438/4/9
パシュトゥー語 (アフガニスタン)[ps-AF], ダリー語 (アフガニスタン)[prs-AF]
2017.01.07.
ハンガリー語 (ハンガリー)[hu-HU]
2017/01/07
日本語 (日本)[ja-JP], バスク語 (バスク)[eu-ES], コサ語 (南アフリカ)[xh-ZA], アフリカーンス語 (南アフリカ)[af-ZA], 中央クルド語 (イラク)[ku-Arab-IQ]
2017/1/7
中国語 (繁体字、台湾)[zh-TW], チベット語 (中国)[bo-CN], イ語 (中国)[ii-CN], 中国語 (簡体字、中国)[zh-CN], モンゴル語 (伝統的モンゴル文字、中国)[mn-Mong-CN]
2017-01-07
韓国語 (韓国)[ko-KR], ポーランド語 (ポーランド)[pl-PL], スウェーデン語 (スウェーデン)[sv-SE], リトアニア語 (リトアニア)[lt-LT], モンゴル語 (キリル、モンゴル)[mn-MN], クメール語 (カンボジア)[km-KH], シンハラ語 (スリランカ)[si-LK], 北サーミ語 (スウェーデン)[se-SE], フランス語 (カナダ)[fr-CA], 英語 (カナダ)[en-CA], ルレ サーミ語 (スウェーデン)[smj-SE], 英語 (南アフリカ)[en-ZA], 南サーミ語 (スウェーデン)[sma-SE]
2017-1-7
ウイグル語 (中国)[ug-CN]
7. 1. 2017
チェコ語 (チェコ共和国)[cs-CZ], 上ソルブ語 (ドイツ)[hsb-DE], 下ソルブ語 (ドイツ)[dsb-DE]
7.01.2017
エストニア語 (エストニア)[et-EE]
7.1.2017
フィンランド語 (フィンランド)[fi-FI], アイスランド語 (アイスランド)[is-IS], スロバキア語 (スロバキア)[sk-SK], アルバニア語 (アルバニア)[sq-AL], トルコ語 (トルコ)[tr-TR], スロベニア語 (スロベニア)[sl-SI], スウェーデン語 (フィンランド)[sv-FI], 北サーミ語 (フィンランド)[se-FI], ボスニア語 (ラテン、ボスニア ヘルツェゴビナ)[bs-Latn-BA], ボスニア語 (キリル、ボスニア ヘルツェゴビナ)[bs-Cyrl-BA], スコルト サーミ語 (フィンランド)[sms-FI], イナリ サーミ語 (フィンランド)[smn-FI]
7.1.2017 г.
ブルガリア語 (ブルガリア)[bg-BG]
7.1.2017.
クロアチア語 (クロアチア)[hr-HR], セルビア語 (ラテン、セルビアおよびモンテネグロ (旧))[sr-Latn-CS], セルビア語 (キリル、セルビアおよびモンテネグロ (旧))[sr-Cyrl-CS], クロアチア語 (ラテン、ボスニア ヘルツェゴビナ)[hr-BA], セルビア語 (ラテン、ボスニア ヘルツェゴビナ)[sr-Latn-BA], セルビア語 (キリル、ボスニア ヘルツェゴビナ)[sr-Cyrl-BA], セルビア語 (ラテン、セルビア)[sr-Latn-RS], セルビア語 (キリル、セルビア)[sr-Cyrl-RS], セルビア語 (ラテン、モンテネグロ)[sr-Latn-ME], セルビア語 (キリル、モンテネグロ)[sr-Cyrl-ME]
7/01/2017
キニヤルワンダ語 (ルワンダ)[rw-RW], オランダ語 (ベルギー)[nl-BE], イヌクティトット語 (ラテン、カナダ)[iu-Latn-CA], 英語 (オーストラリア)[en-AU], 英語 (ニュージーランド)[en-NZ]
7/1/17
スペイン語 (パナマ)[es-PA], スペイン語 (ドミニカ共和国)[es-DO]
7/1/2017
ギリシャ語 (ギリシャ)[el-GR], イヌクティトット語 (カナダ音節文字、カナダ)[iu-Cans-CA], アムハラ語 (エチオピア)[am-ET], ハウサ語 (ラテン、ナイジェリア)[ha-Latn-NG], イボ語 (ナイジェリア)[ig-NG], ティグリニア語 (エチオピア)[ti-ET], ティグリニア語 (エリトリア)[ti-ER], 中国語 (繁体字、香港)[zh-HK], 中国語 (簡体字、シンガポール)[zh-SG], 中国語 (繁体字、マカオ)[zh-MO], 英語 (マレーシア)[en-MY], 英語 (シンガポール)[en-SG]
7/1/2560
タイ語 (タイ)[th-TH]
7-1-2017
オランダ語 (オランダ)[nl-NL], フリジア語 (オランダ)[fy-NL]
7-қаң-17
カザーフ語 (カザフスタン)[kk-KZ]
7-янв 17
キルギス語 (キルギス)[ky-KG]
9/4/1438
ヨルバ語 (ナイジェリア)[yo-NG]


なかには原型をとどめていないようなのもあり、ちょっとびっくり。


Boolean [雑談]

最近のプログラミング言語では論理値(あるいは真理値)を表す型がサポートされている。以前は整数型で代用されることがあったけれど、つまらないバグを生むからという理由だろうか、整数型とは互換性のない(相互にキャストすることができない)型として定義されるようになってきている。

Windows の API は C 言語をベースに作られているために、そもそも論理値という考え方がない。API の呼び出し結果が成功 or 失敗を返す際、失敗なら FALSE、成功なら FALSE 以外を返すというパターンが殆どで、思いつく限り成功時に TRUE を返すというものはない。

なので

if (AnyFunction() == TRUE) {
    //  成功した場合の処理
}

なんて記述してしまうと面倒なことになりかねない。論理値を扱えるならこんなことはない(false でなければ true しかない)のだけれど、昔のイヤな経験がトラウマになっているのか、今ひとつしっくりこない感じがある。


※ FALSE を「ファルス」と発音するエンジニアは、それだけで信用したくない。


 


VB.NET [雑談]

.NET Framework に関わる作業を生業としていると、Visual Basic (VB.NET) の評価の低さが気になることが多い。

Visual BASIC という名前の通り、初心者にでも扱える言語ではあるけれど、.NET Framework の環境で動作するものはオブジェクト指向を実践するための能力を備えていると思える。ただし、過去のバージョンのしがらみのせいか、いくつかの抜け道が用意されており、純粋なオブジェクト指向に徹しきれていないところが避けられてしまう要因なのではないかと思う。

逆に、C# は扱いやすくなった Java として認知されていることが、多くの .NET ファンが公開するコードの多くは C# で記述されていることからも感じられる。

Visual Basic と C# は、.NET Framework のバージョンアップに追従するフラグシップ的な存在している。そのため、どちらか一方だけに提供されている機能というのは(皆無ではないが)多くはない。C# のほうが最適化されたコードを吐くということを聞いたことがあるけれど、どの程度の違いが出るのか私自身は検証したことがない。

C# にあって Visual Basic にない機能と言えば、最初に思いつくのが unsafe。C/C++ のような、割とコアな作業をすることを得意とする言語から派生しているだけに、アセンブラ言語の優位性を求めるプログラマーのために盛り込んだような仕様。Java がポインターという概念を捨ててしまったのとは対照的に、C# では、それを使いたいと思うユーザーに機能を提供している。
Visual Basic には、元々ポインターなどという概念は存在しないために unsafe のような機能も存在しない。

逆に、Visual Basic にあって C# にない機能を言えば、、、XML リテラル、、、これは、私がそう思っているだけで反対意見をもつ人も多いかもしれない。ただ、その実装を見たときに「苦労して Basic にまったく関係ないものを取り込んでしまうなんて、おまえらバカだろう」と思ったことも確かではある。使い込んでいくいうちに、「バカ」というのは(プログラマーにとっての)最大の褒め言葉なんじゃないこともも思えてきた。

もうひとつは C# でいうところの dynamic 型。最近になって C# で遅延バインディングを(簡単に)実践するための機能として追加された機能ではあるけど、Visual Basic では標準機能としてずっと存在している機能。型が不明確になってしまうというデメリットはあるものの、新しい仕様として C# に取り込まれたということは、遅延バインディングのメリットが認知された結果なのではないだろうか。

Visual Basic という言語は C# ほど記号を多用しない。そのため、コードサイズが膨れ上がる傾向がある。その上、自由構文ではないために、行末に無意味に見える継続行のマークが散乱し、その意味を知らない人たちにとってはゴミにしか見えないコードになってしまうことも少なくないようだ。
Visual Basic では(この点を考慮してかどうかは知らないけど)、コードの自動生成機能が多く用意されている。スニペットのように、その存在を知っていて利用するものではなく、インテリセンスと自動補完によって提供される機能は、Visual Basic 特有のものではなく C# でも利用できるのだけれど、元々のコーディング量が多くなりがちな Visual Basic では、より効果が見えやすくなっているように思う。

C# に比べると Visual Basic の癖は結構強いものがあるとは思う。それでも、好き嫌いせずにてを出してみたら、意外にはまってしまうところがおおいと考えますが、いかがでしょう。

ちなみに、私は VB.NET より前の Visual Basic については殆ど触れたことがありません。

 


単位 [雑談]

TByte、GByte、MByte、KByte... これは情報量を表す単位。1 Byte = 8 bit というのが一般的だということで使われるようになった単位ではあるけど、実はこの前提が「絶対」ではない世界も存在する。なので、本来であれば bit を使った呼び方をした方が正確ではあるのだろうけど、ネットワークの転送速度以外にはあまり使われることもない。

単位換算という事を小学校の低学年あたりで習うようになり、結構イヤな思いをした経験があるのだけれど、生業としてコンピューターと付き合うようになり昔の悪夢を思い出すことがしばしば。

小学校の授業では、長さの単位としてのメートル (m)、重さの単位としてのグラム (g)くらいはまだいい、時間の単位としての秒 (sec)、分 (min)、時間 (hour)が出てきて、更には面積や体積が出てくるあたりでパニックになる。さすがに今ではパニックってことはないのだけれど単位換算というのトラウマになっている人も多いみたい。

プログラマが日常的に遭遇する単位といえば、情報量を表すビット (bit) あるいはバイト (Byte)、時間を表す秒 (sec)、そしていきなり畑違いの感のある周波数 (Hz)ではないだろうか。

情報量というのもなかなか馴染みのない表現だとは思うけど、意外にそれに戸惑う人は多くはない感じ。全く異なる概念である長さや重さと同一視しているような感じだけど、話が通じなくなるようなこともないので、技術の話をするとき以外には違和感を無視することで対処できる。

時間の単位。普段、生活をしているときに感じられる時間の単位と言えば、オリンピック中継の中で出てくるような 1/100 秒がせいぜい。それより細かい単位なんて気にする必要は全くないと言っても過言じゃないだろう。そして、自分の感覚では認識できないような単位で物事を考えなければならない人種、プログラマーは 1/1000 秒、1/1000000 秒という単位を相手にする(事もある!!決して常にじゃない!!)。ミリ秒とかマイクロ秒といった単位でヒトにはなかなか認識できない時間ではあるのだけれど、パソコンレベルのコンピューターであってもそれはほぼ永遠と思えるような長さの時間だったりする。

周波数。パソコンに載っているプロセッサによって若干の違いはあるのだけれど、動作クロックが 3GHz 程度なら普通に入手可能なレベル。周波数というのは 1 秒間の振幅の数といいったところだけど、最近のプロセッサは、この振幅 1 回の時間で簡単な演算であればできてしまう。光の速度というのを覚えているだろうか?光は 1 秒間で地球を 7 周半回れる。およそ300,000 km/sec とすると計算がしやすい。先ほどの 3GHz と合わせて 1 クロック(振幅 1 回分)で光がどの程度進める時間なのか計算してみると面白い。

距離 = 300,000 km / 3G
   = 300,000,000 m / 3,000,000,000
   = 0.1m

これは、一般家庭にあるようなパソコンでも、光が 10 cm 進む時間で計算ができてしまうという事を言っている。それこそアッという間...というか声にもならないような時間。多少余裕をみても相当な計算力(ただし整数の、加算、減算、乗算に限る)と考えることができる。実際にはプロセッサの動作を阻害する要因が多いためこのような結果は「理論値」ということになってしまうのだけど、阻害要因さえなくなれば実現が可能かと思うとちょっとワクワクする。

ここ数日、マイコンを弄っているのだけど、それ(ちょっと古めのプロセッサ)はパソコンとは比べ物にならないほど性能は低い。それでも、ヒトの認識できるレベルからすると超高速と思える演算性能を発揮してくれる。

パソコンがこんなに高クロックで動作する割りに、モッサリ感がぬぐえないのは...。

 


コメント [雑談]

前回に引き続きコメントのお話。

私は基本的にコードにコメントを付けない人。コーディング規約等で 「メソッドには XML ドキュメントを付ける」という縛りがなければ、きっと一言も書かないんじゃないかと思う。

逆に、ステートメントごとにコメントつける主義の人もいないことはない。「自分とは話が合わなそうだなぁ」とコードを見るたび(レビュー等で見せられることがあるから)に思う。

割りと多いのが、(if とか、for とかの)ブロックごとにコメントを付けていくタイプ。

Readable Code ではないけど、コードを読むより正確に処理(考え方?)を記述しているコメントであれば良いけど、、、コメントに目を奪われないようにしなけりゃならないこともある。

コードレビュー。

コードレビューでコメント信じてしまうと、殆どレビューにならない。コメントがメンテナンスされていないなんて言うのは普通にあるし、理想的なコメントを書いている割にコードがグダグダなんてのも山ほど出てくる。

私はレビューが始まるとすぐに(ホワイトボードの)マーカー借りて、印刷されたコードのコメントを塗りつぶすことから始めるようにしている。大量のコメントに埋もれたほんのわずかなコードがバグだらけだったりすると、レビューするほうの集中力も一気に霧散してしまうと思うのは私だけ?

これだ!! というような、コメントの付け方っていうのは無いのだろうか。今のところ「どんなコメント書いても実行コードには影響しない」という考えは揺らいでいない。

 

 


Readable Code ? [雑談]

今から遡ること 3 年ほど前、Readable Code という書籍が出版され話題になったことがある。プログラムのロジックではなく、表現力を向上させるためのノウハウのような、この分野ではちょっと変わった内容の書籍。要は、読みやすいコードを書くことに注力していくことで、コードを共有することが容易になり、しいては、他人にコードの内容を説明するという、ある意味無駄な作業を回避するための手法のあれこれ。

当時は、主にコードを書く人たちに取り上げられ、話題になって行ったようだけど、今では、会社ぐるみで(強制ではないけど)実践を促すようなところも出てきているようだ。それ自体は悪いことではないと思うし、読みやすいコードを書いてくれるなら、そりゃ、ありがたいとは思うんだけど...。

コードに埋め込まれるコメントについては、いろいろなところで議論されてきている。コメントは多ければいいというわけではないし、全くないからと言ってそれで出荷停止になるようなものでもない。必要なところに必要なだけ埋め込むのが最良ではあるけど、その閾値には個人差が(相当)あるみたい。

左記の Readable Code にも、コメントを埋める際の指針のようなものが示されているのだけど、実践となるとなかなか上手くいかないのが現状らしい。さらに厄介なのが、書に例として挙げられてるコメントをそのまま埋める輩が出てきた。

// このメソッドは重い。繰り返し呼び出されると、パフォーマンスに影響が出る可能性がある

このコメントを免罪符のように扱うようになると、コード品質は地に落ちるのではないかと危惧する。アルゴリズムの改善を検討する前に、逃げ口上を用意しているようなものだし。

その後、このコメントが添えられたメソッドは、識者の手によってパフォーマンスを気にしなくても問題のないレベルに書き換えられた。所要時間、30 分ほどだったとか。

 そして、オリジナルのコードは全てコメントアウトされた上に、、、一言、「晒されたくなかったら、真似するな」

 

 

 


PSR [雑談]

Windows 7 以降、ステップ記録ツール(環境によって表記が異なるようです)というスクリーンショットを撮るためのツールがインストールされるようになっている。

以前は [PrintScrn] キーで撮ったイメージをいちいちファイルに落とす作業が必要だったけど、このツールを起動しておけば画面操作を自動でファイル化してくれる。もともとは問題を再現するための手順を記録するためのものだったようだけど(英名は Problem Steps Recorder)、それ以外の用途でも結構使える。

ただ、Windows 7 でこの機能を使おうとすると、ひとつだけ難点がある。どこに登録されているかわからない...。一応はコントロールパネルから辿ることはできるのだけど、道程が長いので実用的じゃない。

多分、一番簡単なのは、[Windows] キー + [R] を押下して [ファイル名を指定して実行] ウィンドウを表示させ、[名前] に psr と入力して [Enter] キー押下。この方法は Windows 8 にも適用可能。

PSR という名前がなかなか出てこないこともあるのだけど、そんな時に備えて(以前、話題になった) GodMode のショートカットを作っておくのも便利かもしてない。GodMode の一覧には [トラブルシューティング] の項目があり、[問題を再現する手順の記録] から起動できる。

 


この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。