A-Listers

140字に収まらない海外テックネタヘッドライン

Stack Overflow発 プログラミングの隠語(ジャーゴン)30選

with 3 comments

お馴染みのCoding Horrorでプログラミングの隠語(ジャーゴン)についての記事が話題です。

このエントリの元になったのはStack Overflow上で行われた「あなたが新しく作ったプログラミングのジャーゴンはなんですか?(New programming jargon you coined?)」という質問です。この質問にはなんと386もの回答が寄せられ、その中でStack Overflowのコミュニティの投票で上位になった30のジャーゴンをリストにして解説したのがCoding Horrorの「Coding Horror: New Programming Jargon」という記事です。

下記がコミュニティによって選ばれたジャーゴンのリストです。

1. Yoda Conditions(ヨーダ条件式)


変数とリテラルを比較する際にリテラルを左辺に置く記述。スターウォーズのヨーダが「The sky is blue」ではなく「if blue is the sky」と喋る事から。

2. Pokémon Exception Handling(ポケモン例外処理)

全ての例外を捕まえようとする事。

try {
}
catch (Exception ex) {
   // Gotcha!
}

3. Egyptian Brackets(エジプト人ブレース)


行の最後でブレースを開くスタイル。エジプト人のイラストの手の位置から。

if (a == b) {
    printf("hello");
}

4. Smug Report(ドヤ顔レポート)

自分自身では大した事はしていないのにでシステムデザイン事がわかっているつもりの人によって投稿されるレポート。見当違いの詳細や(間違った)解決策の提案などが添えらている。

関連語としてDrug Report(ラリってるレポート)、Shrug Report(エラーメッセージなどが無く動かないとだけ書かれている)などがある。

5. A Duck

理由もなく追加され、不要な影響を避ける為に結局取り除かれる機能。

あるアーティストがアニメーションの制作に参加した際に、他のアニメーションに影響を与えないようにカモのキャラクターを追加した。プロデューサーによるデビューの際、プロデューサーからのコメントは「良いね、ただカモだけは取り除いてくれ」

6. Refuctoring(リファクリング)

良いデザインのコードにしようとしてあちこち弄り回した結果、誰にもメンテナンスできないコードになること。

7. Stringly Typed(謎の型付け)

強い型付け(strong typing)のもじり。適切な型のパラメータを取ればよいのに、わざわざ独自の文字列を使ったりするなど。

8. Heisenbug(ハイゼンバグ)

それを調査しようとすると変貌したり消えたりするバグである。この名前は不確定性原理を提唱したハイゼンベルクのもじり。

ex) この名前は不確定性原理を提唱したハイゼンベルクのもじり。

9. Doctype Decoration

DoctypeだけHTML5でマークアップは滅茶苦茶といったような様子。

10. Jimmy

標準的な新人プログラマの名前。「もしジミー君が属性の更新をしなかったらどうなるでしょう?」というような例えに使う。

11. Higgs-Bugson(ヒッグスバグ粒子)

ヒッグス粒子 – Wikipediaのもじり。非常に僅かなログなどで存在すると仮定されるが、存在は確認されていないバグ。

12. Nopping

アセンブラなどで使う何もしない命令、NOP – Wikipediaから。昼寝(Napping)に似ているが寝ている訳ではない。

13. Unicorny

かなり初期の計画段階の為、まるで空想の出来事のように説明がつかない機能。

14. Baklava Code(バクラヴァコード)

Baklava - Turkish special, 80-ply.JPEG

トルコのミルフィールのような菓子。レイヤーが多すぎる事。

15. Hindenbug(ヒンデンバグ)

ヒンデンブルグ号の爆発事故のように悲劇的なデータ消失を引き起こすバグ。

16. Fear Driven Development(恐怖駆動開発)

解雇、締め切りの前倒し、リソースの削減などのプレッシャーが管理者から加えられる事。

17. Hydra Code

不死身のヒドラのように直せないコード。1つバグを直すと新しく2つのバグが発生する。

18. Common Law Feature

間違っているのにも関わらず、仕様の一部になってしまったバグ。

19. Loch Ness Monster Bug(ネス湖の怪物バグ)

再現性がなく、目撃者が1人しかいないバグ。

20. Ninja Comments

見えないコメント、秘密のコメント、またはコメントが無い事。つまりコメントが無い。

21. Smurf Naming Convention

全てのクラスに同じプリフィクスがついていること。
例:ユーザがボタンをクリックするとSmurfAccountViewがSmurfAccountDTOをSmurfAccountControllerへ渡す。

22. Protoduction(プロトダクション)

プロトタイプのまま世に出たもの。

23. Rubber Ducking

問題を誰かに説明していると自然と解決策が見つかる事があるので、アヒルのおもちゃに語りかけてみること。

24. Banana Banana Banana

あとでドキュメントを書く所に埋めておくテキスト。IDEの警告を回避する為にとりあえず埋める。

/// <summary>
/// banana banana banana
/// </summary>
public CustomerValidationResponse Validate()

25. Bicrement

変数に1を加算する(インクリメント)ではなく2を加算する。

26. Reality 101 Failure

意図したとおりに動いているが意味のないコード。

27. Mad Girlfriend Bug(怒ったガールフレンドバグ)

明らかに何かが起きているかが、ログやメッセージは「何でもない」というバグ。

28. Megamoth(モスラ)

MEGA MOnolithic meTHod(一体化した巨大なメソッド)。2画面以上に渡っていたりする。

29. Hooker Code

アプリケーションのダウンなどを度々引き起こすようなコード。

30. Jenga Code(ジェンガ)

1ブロックでも変更すれば全体が崩壊しそうなコード。

ちなみにこの記事の元になった質問はStack Overflowのポリシーに反しているので現在、サイトからは削除されています。人気を博した事でサイトで見られるように削除を取り消すかどうかも議論されています。

参考:
新しいプログラミングのジャーゴン – YAMDAS現更新履歴
Island Life – New programming jargon

via:Coding Horror: New Programming Jargon

Written by yandod

2012/07/25 @ 11:42

カテゴリー: Uncategorized

Tagged with ,

コメント / トラックバック3件

Subscribe to comments with RSS.

  1. pgmyja でリブログ.

    pgmyuri

    2012/07/27 at 12:04

  2. こんにちは、英語のネイティブです。日本語のプログラミング隠語が知りたくて調べていたら、逆にこのサイトを見つけて、面白く読ませていただきました。

    一つ訂正しますと、ヨーダは「If blue is the sky」ではなくて、「Blue, the sky is.」と喋るのです。

    tylertape

    2013/09/06 at 12:02

  3. コメントありがとうございます。
    Transcriptを検索して確認してから記事にしたですが、知りませんでした。
    字幕や吹き替えではヨーダのそのしゃべり方は失われているので映画を知っているつもりでも知りませんでした。

    yandod

    2013/09/06 at 12:06


コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。