データベーススペシャリスト令和2年秋期 午前T 問3

午前T 問3

オブジェクト指向のプログラム言語であり,クラスや関数,条件文などのコードブロックの範囲はインデントの深さによって指定する仕様であるものはどれか。
  • [この問題の出題歴]
  • 応用情報技術者
    令和2年秋期 問7と同題

分類

テクノロジ系 » アルゴリズムとプログラミング » プログラム言語

正解

解説

Python(パイソン)は、1991年にグイド・ヴァンロッサム氏によって開発された汎用の高水準プログラミング言語です。コードブロックのインデントが構文規則となっていることがソースコード上の特徴です。小さなプログラムから大規模なシステムまで、そしてデスクトップアプリケーションからWebアプリケーションの開発まで様々な場面で使用されています("YouTube"や"Dropbox"などが有名)。簡潔な文法と使いやすさ、対応するプラットフォームの多さ、優れたライブラリの存在等により、AI開発に適した言語としても人気が過熱しています。

C、Java、および選択肢のJavaScript、Perlを含む一般的なプログラミング言語では、以下のようにコードブロックを"{"と"}"で囲って示します。
if (条件式) {
 処理1
 処理2
} else {
 処理3
}
コードブロック内の字下げ(インデント)は、コーディング規約上の指定であり言語仕様上は任意です。また、コードブロック内の処理が1つのときには"{ }"を省略可能となっています。したがって、上記のコードを次のようにわかりにくく記述してもコンパイルは問題なくできるわけです。
if (
条件式)
{ 処理1
処理2 }
else 処理3
一方、Pythonではコードブロックをインデントの深さによって示す言語仕様になっており、"{ }"で囲む必要がありません。また条件式全体を"( )"で囲むこともありませんので見た感じがスッキリします。インデントの強制により誰が記述してもある程度整形されたソースコードになるため、可読性に優れていると言えます。
if 条件式:
 処理1
 処理2
else:
 処理3
  • JavaScriptは、"{"と"}"で囲むことでコードブロックを指定します。
  • Perlは、"{"と"}"で囲むことでコードブロックを指定します。
  • 正しい。Pythonは、インデントの深さでコードブロックを指定します。
  • Rubyは、特定のキーワードと"end"で囲むことでコードブロックを指定します。
© 2016-2020 データベーススペシャリストドットコム All Rights Reserved.

Pagetop