非手続き型言語とは?
非手続き型言語とは、プログラムが実行される手順を示す手続きを明示的に書かないプログラミング言語のことです。手続き型言語と比較されることが多く、手続き型言語ではプログラムが実行される過程を手続きに分けて書き、その手続きを順序通りに実行することでプログラムを実行します。
非手続き型言語は、手続き型言語に比べてプログラムが短く、読みやすく、保守性が高いという特長があります。また、オブジェクト指向言語の多くが非手続き型言語であり、プログラムの再利用性が高くなっています。
非手続き型言語の基本概念
1. データと処理を一体化した「オブジェクト」を扱う
非手続き型言語では、データと処理をオブジェクトとして一体化して扱います。オブジェクトは、そのオブジェクトに対して実行可能なメソッドと呼ばれる手続きを持ち、オブジェクト同士がメッセージをやりとりすることでプログラムが実行されます。
2. 継承とポリモーフィズム
オブジェクト指向言語では、クラスという概念を用いてオブジェクトを定義します。クラスは、属性とメソッドの集合として定義され、クラス同士は継承やポリモーフィズムという機能を使って関連付けることができます。このように、オブジェクト指向言語はクラスに基づく継承とポリモーフィズムが利用可能で、より柔軟なプログラムを実現することができます。
3. ガベージコレクション
非手続き型言語では、使用されなくなったメモリを自動的に解放する「ガベージコレクション」という機能があります。ガベージコレクションは、プログラマがメモリ解放のために手続きを書かなくても、不要なメモリを解放することができます。これによって、プログラムの保守性が向上し、プログラマが開発に費やす時間やコストを削減できます。
まとめ
非手続き型言語は、手続き型言語とは異なるプログラミングスタイルを持ち、データと処理を一体化したオブジェクト指向プログラミングが特徴です。オブジェクト指向言語の多くが非手続き型言語であり、プログラムの再利用性が高くなっています。また、オブジェクト指向言語は継承やポリモーフィズムといった機能を備え、柔軟で保守性が高くなっています。
参考記事
合わせて読みたい
【Google Chrome】右クリックで翻訳がでなくなった時の対策方法の決定版