\r\n\r\n
宣言型プログラミングと命令型プログラミングは、一般的なプログラミングパラダイムである。宣言型プログラミングと命令型プログラミングの大きな違いは、宣言型プログラミングはプログラムが何を達成すべきかを重視し、命令型プログラミングはプログラムがどのように結果を達成すべきかを重視する点です。
プログラミングパラダイムは、プログラミング言語をその特徴によって分類するために使われます。また、特定の問題を解決するために、特定のパターンやスタイルに従うことを可能にします。
1. 概要と主な違い 2. 宣言型プログラミングとは 3. 命令型プログラミングとは 4. 横並び比較 - 表形式での宣言型プログラミングと命令型プログラミング 5. まとめ
宣言型プログラミングは、実際のシナリオで説明することができます。例えば、ユーザーが新しいメールをチェックする必要があるとします。そのための一つの方法が、受信トレイの通知を有効にすることです。ユーザーは一度通知を有効にするだけで、新しいメールが届くたびに自動的に通知を受け取れるようになります。宣言型プログラミングもこれに近い。シンプルさを提供します。宣言型プログラミングは、望ましい結果を表すものです。制御フローを記述せずに、計算のロジックを説明するものです。
図01:プログラミング例
以下は、配列の数値に定数を掛けて、新しい配列に格納する宣言型プログラミングの例です。
変数の数 = [1,2,3]。
var new number = digital map (function (number) {)
リターン数 * 5.
});
Console.log(新しい番号)。
上の例では、'map'が配列の各項目に対して反復処理を行い、各項目に対してコールバック関数を呼び出し、その戻り値を新しい配列に格納する指示を与えています。このプログラムでは、5を掛けるという主目的をmap関数で実現しています。各要素を繰り返し処理し、コールバック関数を使用して値を計算し、新しい配列に格納します。すべてのステップを提供する必要はありません。達成すべき目標にフォーカスしています。
命令型プログラミングは、これまでと同様に実際のシナリオを使って説明することができます。新着メールを確認するには、ユーザーはgmailにログインし、ページを更新し続けることで、新着メールが届いているかどうかを確認することができます。これは、命令型プログラミングに似ています。結果を出すまでの各ステップを解説しています。プログラムの状態の変化を表現するためにステートメントを使用します。
以下のように,配列の要素に定数を掛けて,その値を新しい配列に格納する命令型プログラミングを行います.
変数の数 = [1,2,3]。
var newnumbers=[].
for (int i=0; i<number.length;i++){。
新しい番号をプッシュする(番号 [i]*5)。
}
Console.log(新しい番号)。
上の例では、数値は配列になっています。ループが回ると、各数値は5倍され、newnumbers配列に追加される。ループの終わりには、新しい数値の内容、すなわち5、10、15がプリントされる。
このように、「祈り」のスタイルでは、タスクを完了するためのすべてのステップが提供されます。カウンタ変数 'i' を使って配列を繰り返し処理する方法、ループを抜けるまでに何回繰り返し処理するか、計算した値を新しい配列に ** 入れる方法などを表現している。
宣言型プログラミングと命令型プログラミングを使い分けることで、同じ問題を解決することができるのです。
宣言型プログラミングと命令型プログラミング | |
宣言型プログラミングとは、制御フローを記述せずに計算の論理を表現するプログラミングパラダイムである。 | 命令型プログラミングは、プログラムの状態を変更するステートメントを使用するプログラミングパラダイムです。 |
主な焦点 | |
宣言型プログラミングは、プログラムが何を達成すべきかを考えるものです。 | コマンドプログラミングは、プログラムがどのように結果を出すべきかを考えるものである。 |
柔軟性 | |
宣言型プログラミングは自由度が低い。 | コマンドベースのプログラミングは、より柔軟性があります。 |
複雑さ | |
宣言型プログラミングは、プログラムを単純化します。 | コマンドベースのプログラミングは、プログラムの複雑さを増す可能性があります。 |
分類 | |
関数型、論理型、問合せ型プログラミングは宣言型プログラミングです。 | 手続き型プログラミングとオブジェクト指向プログラミングは、命令型プログラミングです。 |
本稿では、2つの主要なプログラミングパラダイム、すなわち宣言型プログラミングと命令型プログラミングの違いについて説明する。宣言型プログラミングと命令型プログラミングの違いは、宣言型プログラミングはプログラムが何を達成すべきかを重視し、命令型プログラミングはプログラムがどのように結果を達成すべきかを重視することである。