重要なビジネス ロジックを取得する (機械翻訳)
Ted Neward
これは、雑誌を目の前に到着した 4 月の月ですが (またはメールボックスまたは電子メールの受信トレイまたは.何) どこかまたはその 4 月 1 日ごろ、日付はアメリカ合衆国と他の西欧諸国で「エイプリルフールの日」として呼ばれます氏は、列には重要なビジネス ロジックを取り込むことができます言語には思えました。(そこの首都は注意してください。 どのようにビジネスの人々 は常にどのようなだけ我々 が崇拝の同じ学位を参照してください適切なので、彼らが望むばかばかしいの新機能と、それに値する尊重を参照してです。それが我々 をキャプチャ重要なビジネス ロジックは最も重要であるに注意してくださいすることが重要です、真剣さと誠意をもって 。 この言語では、ビジネスの所有者と顧客の代表者 (とマーケティング部門のほとんど) を理解することができることを意味します。
そう、重大な誠実な態度で存在する場合、重要な言語を .NET プログラミング ツールのことです。LOLCODE を紹介します。
LOLCODE
それは長い間科学者と猫が本当に彼らの所有者と通信できないことを同様の犬の所有者の意見をされているが、猫の所有者は彼らがうまく通信年間知っている-ちょうどその猫がちょうど彼を通知にもかかわらず 5 は、供給する猫は、猫の co-residing 人間を求めます。(初心者に最新のような活動には、通常騒々しい猫の鳴き声が含まれます、頭、鼻、罪のない式、時折、非常にわずかな猫の爪に敏感な人間の身体の部分を屈曲尻)
機械式マウスの猫を発見以来、しかし、静かな革命、インターネット経由で行われている:猫が着実に自分の写真にどのような多くの人類学者および歴史家で書かれた説明を掲載することによりコミュニケーション能力向上 (すべての人の猫の恋人は — 犬愛情のある人類学者や歴史家の「このコメントを利用可能」だったこと) は基本的な構築ブロックすべて人間言語に同意します。この基本的な言語は不完全人間が"LOLspeak"の名で呼ばれること(それの例は、あなたの Facebook で見つけることができます、ふりをしないので、Twitter のフィードは、私が参照している知っていない)
幸いなことに、善意エンジニア .NET プラットフォームでなじみの猫を所有して撮影この言語を .NET プラットフォームに拡張します。 2 つこのような努力は、実際には、場所にあったが、1 つだけ残念なことに、この日に生存しています。最初に、動的言語ランタイム (DLR) マーティン Maly とジョン ・ ラムから戻って、DLR 新しい (2007 年)、それは消えているようだが、実装だった。2 番目は、同じ時間枠が、コードを .NET アセンブリにコンパイルするよりも、ソースを直接解釈する回避プロジェクトからです。そのプロジェクトでホストされている bit.ly/AJeM、オープン ソースであることです"svn チェック アウト http://lolcode-dot-net.googlecode.com/svn/trunk/"1 つのビア Subversion を介して簡単にアクセス可能なローカルのコマンド ライン ウィンドウでコマンド。構築後、我々 はこの素晴らしいと強力な言語を探検を開始できます。
LOLCODE 言語の詳細については、LOLCODE の Web サイトをチェック lolcode.com、LOLCODE 言語仕様の特定のチェックで、すべてのヨーロッパの猫プログラマの協会 (ECPA) 基準では lolcode.com/specs/1.2。LOLCODE.NET は、LOLCODE の最新の標準である LOLCODE 1.2 の多く (すべてではない) を実装します。
ハイ
もちろん、誰もこれまで任意の新しい言語で書いている最初のプログラムがその言語のバージョンの"Hello World,"する必要があります、LOLCODE へのダイブは異なるでしょう。
HAI
BTW Greet the people
VISIBLE "Hello, world!"
KTHXBYE
LOLCODE のすべてのプログラムは伝統的な挨拶で「はい」から始まり、伝統的な決算では、"KTHXBYE"を終了すべてのキーワードと、LOLCODE で、これらは大文字と小文字、すべて大文字で入力する必要があります。「見える化」である、場合もありますが、標準出力ストリームに書き込むには、コマンドの推論、"BTW"単一行コメントです。(複数行のコメント"OBTW"と"TLDR"を開く)
LOLCODE.NET ソース ツリーから構築"lolc"コンパイラを使用してくれます (.NET コンパイラの伝統的な方法で) ソース ファイル後という従来の .NET アセンブリ、前のコードは、"hello.lol、"、"hello.exe"に格納されている場合、中間言語 (IL) が含まれています。
私は糸を持っています
LOLCODE は、世界で唯一の 4 つの種類があることを認識します。文字列 (糸)、数値 (numbr を参照)、ブール値 (TROOF)、配列 (BUKKIT) が、猫は決して最後の瞬間までに何かをコミットするため、値が割り当てられているまで LOLCODE (「私は、」構文を使用) で変数宣言が型指定されず。重要な決定もすると、猫は意思決定に責任になりますので変数 LOLCODE に柔軟に、入力された変数値を保持することができることを意味、その型の新しい値を反映するために必要に応じて変更します。
I HAS A COOLVAR ITZ THREE
LOL COOLVAR R 3
コードの最初の行は"COOLVAR"という名前の変数を宣言し、文字列 (糸) 値 3 を割り当てます。コードの 2 行目は同じ変数 3、numbr を参照型の値に設定します。初期化されていない変数が含まれている null の値は、"NOOB"
キーワードのような変数は大文字と小文字、慣用的な LOLCODE を示唆している明確にするためのすべての大文字が小文字、使用することがあります。C# の場合は、ような変数名は文字で始める必要がありますが、文字、数字またはアンダー スコアを含めることができます。
コンソールからの読み取りは"GIMMEH"を使用して行いますコマンドは、ユーザーを迎える、彼は彼の名前をお願いして彼に出力する 2 番目のプログラムは、次のように見えるように。
HAI
I HAS A NAME ITZ "Ted"
VISIBLE "d00d type in ur name"
GIMMEH NAME
VISIBLE "d00d ur name is " NAME
KTHXBYE
L33tspeak コンソールで必要な言語の一部ではないが、慣用的に正しいと良いフォームと見なされます。
[フロー制御]
「あるらしいですか?」「RLY 式真実支部"いいえ WAI"を定義する雅」を使用して、式の後、式"の終わり示す OIC"の false 分岐を配置して場合/次構造作成の場合/次を完全に構築。これは審美的に喜ぶである場合はコンマで区切った 1 行に複数のステートメントがすることができます。(他の少ない猫向け言語"else if"と呼ぶ) 2 つ以上の分岐がある場合は、この"雅 RLY"と"いいえ WAI"ブロックの間に定義されている「ほれ」ブロックで示します。比較演算は、完全に LOLCODE 1.2 仕様が「ぷんぷん」(等値) で表示され、"DIFFRINT"(不等号) 演算子は、最も一般的にほとんどの現代のプログラミング言語の場合と同様比較は、使用する可能性があります。ブール演算には、" の両方 "私たちは論理を与える- と、" のいずれか [は] "私たちは論理 OR と" のウォンを与える [は] "論理 XOR は私たちを与えます。
ループは、ループ構造を開始および"IM OUTTA YR "コンストラクトを終了する"IM の YR "キーワードを使用して示されます。 なし終了条件ループ コンストラクトの開始時に、与えられた「こま」がまたは「フェイント」式の実行無限、"IM の OUTTA YR"キーワードの後にすぐに制御を返します、「離れて行く」式で終了するまでループされます。
このすべて一緒に入れて、たとえば、次のプログラムもあります。
HAI
I HAS A NAME ITZ ""
IM IN YR LOOP
VISIBLE "Gimmeh ur name or 'gtfo' to GTFO"
GIMMEH NAME
SAEM NAME AN "gtfo", O RLY?
YA RLY, VISIBLE "L8r!", GTFO
NO WAI, VISIBLE "Yo " NAME
OIC
IM OUTTA YR LOOP
KTHXBYE
ループ、「ループ」ない終了条件、無限ループ「離れて行く"という...「雅 RLY」ブランチで」を使用していますO 本当ですか?"条件は、ユーザーの種類には"離れて入力として行くイベント"プログラムを終了します。
どのようにを DUZ 私は.
コードを簡単に使用できる単位に分離することを要求するプログラミングの練習良いと LOLCODE 似たような機能がないです深刻なビジネス対応言語ではないでしょう。使用して、"方法を DUZ 私は"「IF U と言うだからです」キーワード ペア操作を実行する呼び出される関数を定義することができます。
HAI
HOW DUZ I GREET
I HAS A NAME ITZ "Ted"
VISIBLE "d00d type in ur name"
GIMMEH NAME
VISIBLE "d00d ur name is " NAME
IF U SAY SO
GREET
KTHXBYE
これは、「メイン プログラムから、ユーザーを迎えるし、彼の名前をエコー バックを使用して挨拶、」1 つの関数を定義します。関数のパラメーターには、"年"と名前の組によって与えられています。
溶接熱影響部図書館?
もちろん、LOLCODE の本物の利点プログラムの退屈な退屈な部分を書くではない (本物の猫は決してかがまないだろうに退屈で退屈なもちろん)。 代わりに、LOLCODE の真の利点は、重要なビジネス ロジックをキャプチャし、Web サービスまたは Windows プレゼンテーション Foundation (WPF) GUI または何かを公開することであります。このため、LOLCODE コンパイラも、ユビキタスをサポート"/ターゲット: ライブラリ"標準的な .NET ライブラリ アセンブリを生成するオプション-ただし、これはまだ".exe"生成する-にもかかわらず、メインは、単に何もしないアセンブリ、プログラムの Main メソッドがつきます。これは、ファイルの先頭が、全体としてプログラムへのエントリ ポイントであると仮定他現代の言語は実際にかなりいます。 1 つ (にもかかわらず空の) 常に存在しているため LOLCODE は単に常に、メインを提供する余分なステップを取っています。
ライブラリまたは実行可能ファイルとしてコンパイルするかどうか、LOLCODE 常に、生成されたコードを「プログラム」と呼ばれるクラスにラップします。名前空間の機能はありません — 自尊心のある猫が姓、名、いずれか承諾しないでしょう。
すぐにミッション ・ クリティカルなベスト プラクティスする
LOLCODE は強力ですが、残念ながらその受容は多くのビジネス アナリストやカスタマーはビジネス ロジックを表現する利点を理解するポイント至っていません。幸いにも、オープン ソースなので、言語の拡張機能は簡単では、この言語は 2014 年までに、業界標準のミッション クリティカルなベスト プラクティスになります。最良の結果については、建築家 LOLCODE の力で実践的なコーディング セッションを発揮、好ましくは事前の警告や事前の高レベルの幹部との会談でお知らせすることをお勧めです。コーディングを楽しんでください。
Ted Neward完全にすべてを LOLCODE 言語に関する部分を除くことです-すべてのことは絶対に本当。 彼は 100 以上の記事を書いて、作成またはなど、たくさんの書籍は共著の「プロ F c# 2.0"(Wrox、2010年) しかしどれもこの記事のような冗談として。彼は、F c# MVP であり、世界中のカンファレンスで話します。彼は弁護士で設計者のアドバイスの最後のビットの後から怒りの手紙を避けるために彼は、あらゆる手段を公開しないことを知らされていたが、このコラムの長年の読者は、すでに彼に到達する方法を知っています。
この記事のレビュー Neward 家族の中で次の技術専門家のおかげで:スクーター、影、プリンセス、氏。綿毛の綿毛