> 今日の仮想通貨ニュース
bitcoin
bitcoin

$93113.538616 USD

-0.11%

ethereum
ethereum

$1748.590950 USD

-2.15%

tether
tether

$1.000392 USD

0.02%

xrp
xrp

$2.177851 USD

-1.16%

bnb
bnb

$600.317897 USD

-0.84%

solana
solana

$151.339663 USD

1.47%

usd-coin
usd-coin

$0.999927 USD

0.01%

dogecoin
dogecoin

$0.179240 USD

2.45%

cardano
cardano

$0.707230 USD

2.73%

tron
tron

$0.243466 USD

-0.61%

sui
sui

$3.323843 USD

10.76%

chainlink
chainlink

$14.828095 USD

0.41%

avalanche
avalanche

$21.905207 USD

-0.82%

stellar
stellar

$0.275988 USD

4.91%

unus-sed-leo
unus-sed-leo

$9.206268 USD

0.44%

手続き型プログラミング

手続き型プログラミングとは何ですか?

手続き型プログラミングは通常、開発者が最初に学ぶパラダイムです。基本的に、手続き型コードは、論理フェーズでタスクを実行する方法をデバイスに直接指示するコードです。プロシージャ呼び出しの概念に基づいて、手続き型プログラミングではプログラムをプロシージャ (ルーチンまたは関数とも呼ばれる) に分割します。これらのプロシージャは単に実行される一連のアクションを持ちます。このパラダイムは直線的なトップダウン アプローチを採用し、データとメソッドを 2 つの独立したエンティティとして見なします。

手続き型プログラミングの特徴

パラメータの受け渡し: パラメータの受け渡しは、関数、サブルーチン、またはプロシージャにパラメータを渡すために使用される手法です。パラメータの受け渡しは、「値による受け渡し」、「参照による受け渡し」、「結果による受け渡し」、「値と結果による受け渡し」、「名前による受け渡し」によって行うことができます。

ローカル変数:ローカル変数はメソッドのメイン構造で定義され、指定されたローカル スコープに限定されます。定義されたメソッド内でのみ使用でき、定義されたメソッドの外で使用された場合、コードは動作しなくなります。

定義済み関数:定義済み関数は、多くの場合、名前で示される命令です。通常、事前定義された関数は高レベルのプログラミング言語に組み込まれますが、プログラムではなくライブラリまたはレジストリから取得されます。

事前定義関数の一例は、文字列内の文字位置を検索する「charAt()」です。

モジュール性:モジュール性とは、2 つの異なるシステムが 2 つの異なる目標を抱えているにもかかわらず、より大きなジョブを先に完了するために統合されることです。すべてのシステム セットは、すべてのタスクが完了するまで、独自のタスクを次々に実行します。

グローバル変数:グローバル変数は、コード内で指定された他のすべての関数の外側で宣言される変数です。このため、ローカル変数とは異なり、グローバル変数はすべての関数で利用できます。

オブジェクト指向プログラミング (OOP) と手続き型プログラミング

オブジェクト指向プログラミング (OOP) は、データ (フィールドまたは属性の形式) とコードを「オブジェクト」(プロシージャまたはメソッドの形式) に格納するプログラミング パラダイムです。

オブジェクト指向プログラミングは、オブジェクトの概念を使用して実際の世界と対話するトップダウンのプログラミング方法です。 C++、Python、Java など、広く使用されているプログラミング言語の大部分は、オブジェクト指向プログラミング パラダイムを含むさまざまなパラダイムを採用しています。

手続き型プログラミングは主に関数に焦点を当てているのに対し、OOP は主にオブジェクトに基づいているという点で、手続き型プログラミングはオブジェクト指向プログラミングとは異なります。これら 2 つのプログラミング パラダイムの主な違いを次に示します。

焦点

アルゴリズムは、主にデータの保存、操作、管理に関係する手続き指向のプログラミング パラダイム (実行可能なコンピュータ命令の有限シーケンス) の基礎です。

動作メカニズム

手続き型プログラミングの基本戦略は、難しい問題を、理解しやすく、扱いやすく、管理しやすい小さな部分に分割することです。

一方、オブジェクト指向プログラミング (OOP) は、オブジェクトを処理するための技術やロジックではなく、処理されるオブジェクトに重点を置きます。

起源

手続き型プログラミング パラダイムは命令型プログラミング モデルから開発されたものであるのに対し、宣言型プログラミング パラダイムは OOP パラダイムに関連しています。

プログラムの部門

プログラムは、手続き型プログラミング パラダイムに基づいて関数またはコード ブロックに編成されます。関数は、このパラダイムにおけるプログラミング単位です。プログラムは、オブジェクト指向プログラミング パラダイムの下でクラスの複数のオブジェクトに編成され、プログラミング単位はクラスです。

メモリ要件

オブジェクト指向プログラミングのデータ指向アプローチには、大容量のメモリが必要です。

一方、手続き指向プログラミング パラダイムは、非常に少ないメモリで動作します。

アプローチ

手続き型言語は問題解決にトップダウンのアプローチを使用し、巨大で複雑な問題を個別に検討できる小さなセクションに分割します。

オブジェクト指向プログラミングはボトムアップ戦略を採用しており、小さなチャンクを組み立てて大きなオブジェクトを構築する必要があります。

前者は巨大なプログラムを小さな部分に分割しますが、後者は多数の小さなプログラムから大きなプログラムを組み立てます。このように、手続き指向とオブジェクト指向のプログラミング手法は正反対です。

コードのデバッグと再利用

手続き型言語のデバッグは複雑ですが、オブジェクト指向言語のデバッグはシンプルで簡単です。さらに、手続き指向プログラミング パラダイムと比較して、オブジェクト指向プログラミングではコードの再利用がかなり簡単になります。

データの保管

オブジェクト指向プログラミング パラダイムでは、データと関連する動作は 1 つの場所に保存されますが、手続き指向プログラミング パラダイムでは、データと関連する動作はさまざまな領域に分離されて保存されます。

並列プログラミングは、手続き型プログラミング パラダイムではサポートされていませんが、オブジェクト指向プログラミング モデルではサポートされています。

コミュニケーション

手続き型プログラミング パラダイムでは、コードはプログラムの関数を呼び出すことによって通信されます。

オブジェクト指向プログラミングでは、オブジェクトはメッセージを渡すことによって相互に通信します。

手続き型プログラミング言語の例

Haskell、C、Pascal、Fortran、BASIC などは、手続き型プログラミング パラダイムを可能にする言語です。

C++、Python、Java は、OOP パラダイムをサポートする言語のよく知られた例です。