株式会社日本教育クリエイトITソリューション事業部's job postings
今回は、学び得たものをみなさんにも共有です✨
プログラミングパラダイムとは、プログラムを作成するための「考え方」や「アプローチ」を指します。プログラミングの基本的な目標は、コンピュータに対して何かしらの指示を出し、その通りに動かすことですが、その目的を達成するための方法にはいくつかのスタイルがあるのです。それが「プログラミングパラダイム」と呼ばれています
日常の生活において、同じ目的を達成するためにいろいろな道があるのと同じで、プログラミングでも目的に応じて適切なパラダイムを選びます。下記内容は、主要なプログラミングパラダイムとその特徴をわかりやすくまとめたものです🏫
1. 手続き型プログラミング
- 特徴: コンピュータに対して「手順」を一つ一つ具体的に教えるスタイルです。
- イメージ: レシピに従って料理をするようなもの。
- 例: 1. 野菜を切る → 2. フライパンを熱する → 3. 野菜を炒める。
- 使われる言語: C言語、BASICなど。
- 具体例: Web開発では、たとえばデータベースからデータを取り出し、それを加工し、最終的に表示する一連の流れを手続き型で書くことがあります。
2. オブジェクト指向プログラミング
- 特徴: 「モノ(オブジェクト)」を中心に考えるスタイルです。モノには「属性(色や名前など)」と「動き(行動や操作)」がセットになっています。
- イメージ: おもちゃの車が自分で動くように、それぞれのオブジェクトが自分の動きを持っている感じ。
- 例: 車(モノ)には「色」や「速度」があり、「走る」や「止まる」という動作もできます。
- 使われる言語: Java、C++、JavaScriptなど。
- 具体例: Webシステム開発では、「ユーザー」というオブジェクトを作り、その中に「名前」「メールアドレス」などの属性や「ログイン」「ログアウト」などの動作を組み込むことがあります。
3. 関数型プログラミング
- 特徴: 計算を「関数」に分け、データを入力すると必ず同じ結果を返すように設計します。
- イメージ: 数学の関数(f(x) = x + 2 のようなもの)と似ていて、変わらないもの(副作用がない)を重視します。
- 例: 「2 + 2」という計算はいつでも4になる、という考え方。
- 使われる言語: Haskell、Scala、JavaScript(一部の機能)など。
- 具体例: Webシステムでは、入力されたデータを受け取り、それを整形したり、必要な計算を行って結果を返す処理に使われます。
4. 宣言型プログラミング
- 特徴: 「何をしたいか」を明示するだけで、具体的な手順はプログラミング言語やフレームワークに任せるスタイルです。
- イメージ: 「料理を作りたい」と伝えるだけで、自動的に作ってくれるキッチンマシンのようなもの。
- 使われる言語: SQL、HTML、CSSなど。
- 具体例: Webシステムでデータベースから「全てのユーザーの名前を取得する」といった処理をSQLで書く場合、
SELECT name FROM users;といった形で指示を出します。
なぜパラダイムが重要?
プログラミングパラダイムを理解することで、開発するシステムや状況に応じて最適な方法を選べるようになります。たとえば、データの構造が複雑であればオブジェクト指向が役立つし、計算を多用する場面では関数型が適しているかもしれません。
ということで、日本教育クリエイトの開発チームは、プログラミングパラダイムを理解して、開発するシステムや状況に応じて最適な方法を選べるようにしています✨
プログラミングパラダイムって、日常の生活において、同じ目的を達成するためにいろいろな道があるのと同じような考え方なので、エンジニア業務に限らず、普段業務をするうえで、大事な考え方だなぁと気づきがありましたので、今回ストーリーに投稿しました💡