このページは以下の「ITパスポート シラバス6.3」学習用コンテンツです。
◆大分類:7.基礎理論
◆中分類:14.アルゴリズムとプログラミング
◆小分類 | ◆見出し | ◆学習すべき用語 |
---|---|---|
38.プログラム言語 | (1) プログラム言語 | C Fortran Java C++ Python JavaScript R |
C
C言語は1970年代に開発された汎用のプログラミング言語で、システムプログラムや組み込みシステムの開発によく利用されます。
C言語は低レベルな操作が可能で、ハードウェアに近い制御を行うことができます。
コードの実行速度が非常に速く、効率的なメモリ管理が可能なため、OSやコンパイラの開発にも利用されています。多くの現代のプログラミング言語はC言語を基にしておりその構文や概念を継承しています。
Cに関する学習用問題
問題
C言語の特徴として正しいものはどれですか?
- 自動ガベージコレクションがある
- 低レベルな操作が可能
- スクリプト言語である
%%replace6%%
正解
2 低レベルな操作が可能
解説
C言語は低レベルな操作が可能であり、ハードウェアに近い制御を行えるのが特徴です。
選択肢1のガベージコレクションはC言語にはありません。選択肢3のスクリプト言語は、C言語ではなくPythonやJavaScriptに該当します。
問題
C言語がよく使用される分野として適切なものはどれですか?
- 組み込みシステム開発
- ウェブデザイン
- データサイエンス
%%replace6%%
正解
1 組み込みシステム開発
解説
C言語は効率的なメモリ管理と高速な実行が求められる組み込みシステムの開発で広く使われています。
ウェブデザインやデータサイエンスでは、より高レベルの言語がよく使用されます。
問題
C言語がサポートしていない機能はどれですか?
- ポインタ操作
- オブジェクト指向プログラミング
- 条件分岐
%%replace6%%
正解
2 オブジェクト指向プログラミング
解説
C言語は構造化プログラミング言語であり、オブジェクト指向プログラミングの機能はサポートしていません。
ポインタ操作や条件分岐はC言語で利用可能です。
Fortran
Fortranは1950年代に開発されたプログラミング言語で、主に科学技術計算や数値解析の分野で使用されています。
名前は「Formula Translation」の略で、高速な数値計算が可能であることから物理学や工学のシミュレーション、気象予測などの分野で広く使われています。
現在でもFortranは高性能計算の分野で根強い人気を持ち、最新のバージョンでは現代的なプログラミングの概念も取り入れられています。
Fortranに関する学習用問題
問題
Fortranの特徴として正しいものはどれですか?
- 主にウェブ開発に使用される
- 数値計算に強い
- オブジェクト指向プログラミング言語である
%%replace6%%
正解
2 数値計算に強い
解説
Fortranは高速な数値計算が可能で科学技術計算やシミュレーションなどに利用されています。
ウェブ開発やオブジェクト指向プログラミングはFortranの特徴ではありません。
問題
Fortranが最も適している用途はどれですか?
- ウェブアプリケーションの開発
- GUIアプリケーションの作成
- 物理シミュレーション
%%replace6%%
正解
3 物理シミュレーション
解説
Fortranは物理シミュレーションや数値解析など、計算量が多い分野での利用に適しています。
ウェブアプリケーションやGUIアプリケーションの作成には他のプログラミング言語が使われることが多いです。
問題
Fortranに関する誤った説明はどれですか?
- 最新バージョンはオブジェクト指向の概念を含む
- 文字列処理が得意である
- 科学技術計算に適している
%%replace6%%
正解
2 文字列処理が得意である
解説
Fortranは数値計算に特化しており文字列処理は得意ではありません。
選択肢1と3は正しい説明で特に科学技術計算には非常に適しています。
Java
Javaは1990年代にサン・マイクロシステムズによって開発されたプログラミング言語でオブジェクト指向の特徴を持ちます。
Javaはプラットフォームに依存せず、どこでも動作する「Write Once, Run Anywhere」の性質が特徴です。
幅広い用途で使用され、ウェブアプリケーションやモバイルアプリケーションの開発においても人気があります。Javaはセキュリティ機能が強化されており、エンタープライズシステムやサーバーサイドのプログラムでも多く利用されています。
Javaに関する学習用問題
問題
Javaの特徴として正しいものはどれですか?
- オブジェクト指向プログラミングをサポートする
- コンパイル後は特定のOSでしか動作しない
- 主に数値解析に使用される
%%replace6%%
正解
1 オブジェクト指向プログラミングをサポートする
解説
Javaはオブジェクト指向プログラミングをサポートしており、再利用性や保守性に優れています。
コンパイル後のコードはJava仮想マシン(JVM)で実行され、OSに依存しません。選択肢3の数値解析はJavaの主な用途ではありません。
問題
Javaが得意とする開発分野として適切なものはどれですか?
- 組み込みシステムの開発
- ウェブアプリケーションの開発
- 高性能計算のシミュレーション
%%replace6%%
正解
2 ウェブアプリケーションの開発
解説
Javaはウェブアプリケーションの開発に広く使用されており、その安定性とセキュリティ機能からエンタープライズシステムでも利用されています。
組み込みシステムや高性能計算には他の言語が使われることが多いです。
問題
Javaに関する説明として誤っているものはどれですか?
- 「Write Once, Run Anywhere」の特徴を持つ
- メモリ管理が手動で必要である
- プラットフォームに依存しない
%%replace6%%
正解
2 メモリ管理が手動で必要である
解説
Javaは自動的なガベージコレクション機能を持っており、手動でメモリ管理を行う必要はありません。
その他の選択肢はJavaの正しい特徴を示しています。
C++
C++はC言語を拡張して1980年代に開発されたプログラミング言語です。オブジェクト指向プログラミングの特徴を取り入れており、柔軟で効率的なプログラム作成が可能です。
C++は高性能なアプリケーションやゲームエンジン、リアルタイムシステムの開発によく使われます。また、C++はC言語の互換性を保持しており、低レベルなシステムプログラミングから高レベルなアプリケーションまで幅広い用途に対応します。
C++に関する学習用問題
問題
C++の特徴として正しいものはどれですか?
- オブジェクト指向プログラミングをサポートしていない
- 主にウェブ開発に使用される
- C言語の後継として開発された
%%replace6%%
正解
3 C言語の後継として開発された
解説
C++はC言語を基にして開発され、オブジェクト指向プログラミングをサポートしています。
ウェブ開発にはあまり使用されず、主に高性能なアプリケーションやゲーム開発に利用されます。
問題
C++がよく使用される分野として適切なものはどれですか?
- データサイエンス
- リアルタイムシステムの開発
- フロントエンドウェブ開発
%%replace6%%
正解
2 リアルタイムシステムの開発
解説
C++はリアルタイムシステムやゲームエンジンの開発において、そのパフォーマンスと柔軟性が重宝されています。
データサイエンスやフロントエンドウェブ開発には他のプログラミング言語が一般的です。
問題
C++と比較してC言語にない特徴はどれですか?
- ポインタ操作
- 条件分岐
- オブジェクト指向プログラミング
%%replace6%%
正解
3 オブジェクト指向プログラミング
解説
C++はC言語にオブジェクト指向の概念を追加しており、再利用性や保守性を向上させています。
ポインタ操作や条件分岐はC言語でもサポートされています。
Python
Pythonは1990年代に開発された高レベルなプログラミング言語で、シンプルで読みやすいコードを書くことができるのが特徴です。
Pythonは豊富なライブラリと多くのフレームワークが揃っており、ウェブ開発、データサイエンス、機械学習など、幅広い分野で利用されています。
また、Pythonはインタプリタ型の言語であり、プラットフォームに依存せずに動作します。開発のスピードが速く、初心者にも扱いやすい言語です。
Pythonに関する学習用問題
問題
Pythonの特徴として正しいものはどれですか?
- インタプリタ型の言語である
- メモリ管理が手動で必要である
- コンパイルが必須である
%%replace6%%
正解
1 インタプリタ型の言語である
解説
Pythonはインタプリタ型の言語であり、コードを逐次実行していくため、プログラムのテストやデバッグが容易です。
メモリ管理は自動的に行われ、コンパイルは必須ではありません。
問題
Pythonが特に得意とする分野として適切なものはどれですか?
- 組み込みシステムの開発
- 高性能シミュレーション
- 機械学習
%%replace6%%
正解
3 機械学習
解説
Pythonは機械学習やデータサイエンスで広く使用されており、豊富なライブラリとフレームワークが利用可能です。
組み込みシステムや高性能シミュレーションでは、CやFortranのような他の言語がよく使われます。
問題
Pythonのコードが動作する環境として正しいものはどれですか?
- JVM上で動作する
- プラットフォームに依存しない
- 特定のOSでしか動作しない
%%replace6%%
正解
2 プラットフォームに依存しない
解説
Pythonはクロスプラットフォームの言語であり、異なるOS間でコードを実行することが可能です。
JVMはJavaのための仮想マシンであり、特定のOSに依存することもありません。
JavaScript
JavaScriptは1995年に開発されたプログラミング言語で、主にウェブブラウザ上で動作します。JavaScriptはウェブページに動的なコンテンツを追加するために使われ、クライアントサイドスクリプトとしての役割を持っています。
近年ではサーバーサイドでも使用されるようになり、Node.jsなどのプラットフォームで動作します。
JavaScriptはインタプリタ型の言語であり、プラットフォームに依存しないため、非常に広範な用途で利用されています。
JavaScriptに関する学習用問題
問題
JavaScriptの特徴として正しいものはどれですか?
- 主にサーバーサイドで動作する
- インタプリタ型の言語である
- バイトコードにコンパイルされる
%%replace6%%
正解
2 インタプリタ型の言語である
解説
JavaScriptはインタプリタ型の言語で主にクライアントサイドで動作しますが、近年ではNode.jsを使用してサーバーサイドでも活用されています。
バイトコードへのコンパイルは行いません。
問題
JavaScriptの主な用途として適切でないものはどれですか?
- ウェブページの動的な操作
- サーバーサイドのプログラム
- モバイルアプリのネイティブ開発
%%replace6%%
正解
3 モバイルアプリのネイティブ開発
解説
JavaScriptは主にウェブページの動的操作やサーバーサイドプログラムに使用されます。
モバイルアプリのネイティブ開発にはJavaやSwiftなどの言語が使われることが多いです。
問題
JavaScriptの実行環境として適切なものはどれですか?
- クライアントサイドのブラウザ
- Java仮想マシン(JVM)
- デスクトップアプリケーション専用の環境
%%replace6%%
正解
1 クライアントサイドのブラウザ
解説
JavaScriptは主にクライアントサイドのブラウザで実行され、ウェブページの動的なコンテンツを制御します。
JVMやデスクトップアプリ専用の環境はJavaScriptの実行環境として適切ではありません。
R
Rは1990年代に開発されたプログラミング言語およびソフトウェア環境で、統計解析やデータ可視化に特化しています。Rは多数の統計学的手法をサポートしており、データサイエンスやバイオインフォマティクスの分野で広く利用されています。
Rはオープンソースであり、ユーザーが自由にパッケージを追加して機能を拡張できるため、非常に柔軟な環境です。また、グラフの作成が簡単であり、データ分析の結果を視覚的に表現するために最適です。
Rに関する学習用問題
問題
Rの特徴として正しいものはどれですか?
- 統計解析やデータ可視化に特化している
- 主にウェブ開発で使用される
- 高速な実行性能を持つゲーム開発向けの言語である
%%replace6%%
正解
1 統計解析やデータ可視化に特化している
解説
Rは統計解析やデータ可視化に特化した言語であり、データサイエンスの分野で広く利用されています。
ウェブ開発やゲーム開発には他のプログラミング言語が一般的に使われます。
問題
Rが特に得意とする分野はどれですか?
- 組み込みシステムの開発
- 統計学的データ分析
- モバイルアプリケーションの開発
%%replace6%%
正解
2 統計学的データ分析
解説
Rは統計学的データ分析に特化しており、豊富な統計機能を持つライブラリが多数存在します。
組み込みシステムやモバイルアプリケーションの開発はRの主要な用途ではありません。
問題
Rに関する誤った説明はどれですか?
- オープンソースのソフトウェア環境である
- 主にデータサイエンスの分野で使用される
- ウェブデザインに特化している
%%replace6%%
正解
3 ウェブデザインに特化している
解説
Rは統計解析や
データ可視化に特化した言語であり、ウェブデザインには特化していません。
その他の選択肢はRの正しい特徴を示しています。