0

私が質問していることに一般的な用語が存在するかどうかはよくわからないので、用語の愚かな誤用の可能性についてお詫び申し上げます.

「純粋なロジック」コード、アーキテクチャパターンの抽象化、およびそれに基づくアーキテクチャ固有のコードの後の世代を作成するためのソリューションまたは少なくとも実験がある場合、私は興味があります。

例えば:

「純粋な論理」とは、2 つの整数 a と b の加算です。

インライン「= a + b」としてダンプできます

または関数 "function sum(a,b){return a+b}; =sum(a,b)" として

またはクラスとして "class Sum(a, b){...}; s = new Sum(a,b); =s.result();

または、このクラスにはコンストラクター引数がなく、構築後にそれらを適用する必要があるかもしれません

または、必要な2つを含む12の可能なキーを持つ辞書を受け入れます

あるいは、DI/IoC コンテナーがあり、2 つの注入された引数を使用して遅延ロードされたシングルトン サービスを呼び出す場合もあります。

等々

つまり、基本的には、グローバル関数と変数を組み合わせて、生成ルールとテンプレートを適用して、特定のコーダー フレンドリーな結果を得るようなものです。

4

1 に答える 1

1

基本的に、いくつかの構文を定義しなければならず、それにセマンティクスを与えることから逃れることはできません。そして、それはあなたに言語を与えます。この言語では、型 (整数) と操作 (それらを追加できます) があります。

つまり、コードを生成するこのビジネスは、基本的に言語のコンパイラーであり、さまざまな高水準言語をバックエンドとして使用します。

一部の言語はおそらく高水準言語ほど「純粋」ではないか、さまざまな意味で意味的に離れているため、バックエンドの方言の一部で生成されたコードは、正確に実装するために犬の朝食のようになる可能性があります。セマンティクス。

于 2013-10-24T06:05:14.163 に答える