目的に合う言語を知る
- 代表的な用途と条件から言語・環境を選ぶ
- JavaScriptの実行先とJavaとの違いを区別する
- コードの変換と命令の実行を区別する
- クラスの共通定義と個々の状態を分ける
点線のことばを押すと、意味と使い方を調べられます。
表示・保存
このページの目次 5節・復習と4問
- 1説明を読む
- 2復習する
- 3問題を解く
- 4次へ進む
1機器や数値計算で使う言語
Cは機器や基本ソフトウェアの制御などで使われ、メモリを細かく扱えます。C++はCの影響を受けた別の言語で、データとそれに関係する操作をまとめるオブジェクト指向の書き方も使えます。個々のオブジェクトを作るための共通の定義をクラスと呼びます。
Fortran(科学技術計算や数値計算で使われるプログラム言語)は数値計算や科学技術計算で長く使われています。目的の処理に合うライブラリ、実行環境、開発者が保守できるかも含めて選びます。どの言語も一つの用途だけに限定されるわけではありません。
ハルとビットで、使い方を確かめよう
言語を選ぶだけで全部決まる?
目的の処理や使える部品、保守できる人も一緒に考えるよ。
この説明に出てきた略語の正式名称
- Fortran
- Fortran
科学技術計算や数値計算で使われるプログラム言語
2業務処理や分析の言語
Java(仮想マシンなどの実行環境を用い、業務システム等で使うプログラム言語)は一般に仮想マシン上で動かす仕組みを用い、業務システムなどで使われます。Python(読みやすさを重視し、自動化や分析などに使うプログラム言語)は読みやすさを重視した文法を持ち、自動化やデータ処理、機械学習などで使われます。
Rは統計解析や可視化で使われる言語・環境です。言語名を覚えるだけでなく、どんな処理を組み立てたいかと既存資産を確認します。言語だけで実行速度や品質が一意に決まるわけではありません。
この説明に出てきた略語の正式名称
- Java
- Java
仮想マシンなどの実行環境を用い、業務システム等で使うプログラム言語 - Python
- Python
読みやすさを重視し、自動化や分析などに使うプログラム言語
3JavaScriptは画面にもサーバにも使える
JavaScriptはWebブラウザでボタン操作への反応や動的な表示を実装できます。Node.jsなどの実行環境を用いればWebサーバ側でも使えます。「サーバでしか動かない」は誤りです。
JavaScriptはJavaのスクリプト版ではなく別の言語です。利用者が実行前に必ずコンパイル作業をするという前提でもありません。実行環境が内部でコードをコンパイルする場合があることと、事前の手作業が必須かは分けます。
数値は学習用の例。
ハルとビットで、使い方を確かめよう
JavaScriptはJavaの簡易版?
4翻訳する処理と実行する処理を分ける
ソースコードは、人がプログラム言語で書いた処理の記述です。コンパイルはソースコードなどを機械語や中間コードなど別の表現へ変換する処理で、その処理を行うプログラムがコンパイラです。変換することと、計算や表示などプログラムに書いた仕事を実行することは別です。
インタプリタは、プログラムの命令を解釈して実行を進める処理系です。ソースコードをそのまま一文字ずつCPU(中央処理装置)が実行するという意味ではありません。例えばCPythonというPythonの処理系では、内部でソースコードを中間コードへ変換し、それを解釈して実行します。
一つの処理系で変換と解釈実行を組み合わせることがあります。
JavaScriptも、利用者が実行前に必ず手作業でコンパイルするとは限りません。一方、処理系が内部でコンパイルする場合があります。問題では「開発者が事前に行う作業」と「実行環境の内部処理」のどちらを述べているかを読み分けます。
全ての言語が同じ手順やファイルを使うという図ではありません。
この説明に出てきた略語の正式名称
- CPU
- Central Processing Unit
中央処理装置
5クラスから個々のオブジェクトを作る
オブジェクト指向では、対象のデータと、そのデータに関係する操作をひとまとまりとして考えます。クラスを使う方式では、クラスに共通の定義を記述し、そこから個々のオブジェクトであるインスタンスを作ります。操作を表す処理はメソッドと呼びます。
カフェの会員証なら、「各会員証の残高」と「残高を減らす支払い処理」を会員証クラスで定義できます。会員証AとBを作ると、同じクラスに基づいていても、Aは残高2,000円、Bは500円という別々の状態を持てます。クラスが同じだから値も全て同じ、という意味ではありません。
前に学んだレコードの説明は、関連する項目をまとめることに注目していました。ここではデータに関係する操作も含めて考えています。項目だけでなく操作も対象の側へまとめると、どのデータをどの処理が扱うかを考えやすくなります。
復習
このレッスンを振り返ろう
他の言語でできる処理でも、主目的を手掛かりに選べる?
答え方と、確認するポイント
できます。ただし特定用途に使える言語が一つだけとは限りません。
JavaScriptはサーバ専用、又はJavaの省略形?
答え方と、確認するポイント
どちらでもありません。ブラウザでも使える別の言語です。
中間コードへ変換してから解釈実行することは両立する?
答え方と、確認するポイント
一つの処理系で組み合わせられます。変換成功が処理内容の正しさを保証するわけではありません。
同じクラスの会員証AとBは、残高も必ず同じ?
答え方と、確認するポイント
いいえ。各インスタンスが個別に残高を持ち、共通定義に従う操作を使えます。
問題で確かめる
実際の問題に挑戦しよう
IPA(独立行政法人 情報処理推進機構)公開過去問1問、入門の確認問題3問で、この範囲の考え方を使います。答えを選んだら、正解の理由とほかの選択肢の違いも確かめましょう。
ヒントを見る
その言語で何が可能かと、主な設計目的は分けて判断します。
オリジナル入門問題 · シラバス 6.5
公開問題・原図の著作権はIPAにあります。表記・表の配置を整えています。解説は当サイト独自のものです。
4問中0問の答えと解説を確認しました。選んだ答えの理由も確かめてから、次へ進みましょう。
出典・参考資料を確認する
学習範囲:IPA シラバス Ver.6.5 ↗ 項目38。身近な例・会話・図解・確認問題は当サイトのオリジナルです。
学習範囲と参考資料
- Node.js公式 入門 ↗
- IPA ITパスポート試験シラバス6.5(範囲) ↗
- IPA 2024年度公開問題 ↗
- Java公式:オブジェクト指向の基礎 ↗
- GCC公式:コンパイルの説明 ↗
- Python公式:用語集 ↗
- Python公式:用語集 ↗
- IPA:公開問題(問題原本) ↗
シラバスは学習範囲の根拠です。説明・図の数値・身近な事例は学習用に作成しています。2026年9月14日確認。