こんにちは、あっきーです。
2019年秋期の試験をもって基本情報技術者試験の試験改正がおこなわれました。
午後試験については、プログラミング言語「COBOL」が廃止され、プログラミング言語「Python」が新しく追加されました。
また、午後試験の出題数や解答数、配点などの見直しもおこなわれ、プログラミング問題の配点が高くなり、プログラミング能力を重視するテストへと基本情報技術者試験は改正されています。
「Pythonって最近注目を浴びているよね!」
「基本情報技術者試験の午後試験でPythonを選択するのってどうなんだろう?」
こんな興味や悩みをもっている方が多いのではないでしょうか?
本記事では、そんなあなたに向けた基本情報技術者試験で出題されるプログラミング言語Pythonについて紹介します。
この記事を読むことで、プログラミング言語Pythonに関する理解を深めることができ、基本情報者試験でどのプログラミング言語を選択すべきか知ることができます。
そもそもPythonとは?
Pythonは1991年にオランダのグイド・ヴァンロッサムによって開発されたオープンソースのプログラミング言語です。Pythonが利用される場面として、組み込み開発やWebアプリケーション、AI開発、ビッグデータ分析などが挙げられます。
Pythonは、近年最も注目を浴びているプログラミング言語といっても過言ではありません。
そのため、基本情報技術者試験でも試験問題として取り上げられるようになりました。
Pythonはコードがシンプルでありながら汎用性が高いため、多くのITエンジニアに支持されています。
Pythonの特徴
ここでは、Pythonの特徴について3点紹介します。
処理速度が遅い
Pythonは他のプログラミング言語と比較すると、処理速度が遅い傾向があります。
理由は、Pythonはインタプリタ言語であるため、ソースコードを一行ごとに機械語に翻訳して実行するためです。
一方、C言語などのコンパイラ言語は、ソースコードを一括して機械語に翻訳するため、処理速度が比較的速いです。処理速度が遅いことから、リアルタイム処理など迅速な処理が要求される場面では、使い勝手が悪いといえます。
ライブラリが豊富
Pythonはライブラリが豊富な点も特徴といえます。
(なお、ライブラリとは、汎用性の高い複数のプログラムを再利用できる形でまとめたものを指します)
たとえば、numpyというライブラリを利用することで、高度な計算も容易におこなうことが可能です。
そのため、Pythonは統計解析や機械学習の分野で活用されることも多いです。
また、機械学習の分野では複雑な計算が必要となります。機械学習には、Pythonは処理速度が遅いことから向いていないと疑問を抱く方もいるかもしれません。
しかし、ライブラリに関しては処理速度が速いため、Python自体の処理速度について気にする必要はそれほどありません。
フレームワークが優秀
Pythonには、優秀なフレームワークがあるのも特徴です。
(なお、フレームワークとはプログラミングにおいて、必要な機能があらかじめ別として実装されたものを指します)
フレームワークにはWebアプリケーションを開発する際に必要な機能が兼ね備えてられているため、開発コストを削減することができます。たとえば、FlaskやBottleなどが代表的なフレームワークとして挙げられます。
Pythonの難易度
Pythonは、ソースコードが読みやすく、習得が比較的容易といわれています。
理由としては、他のプログラミング言語と比較してPythonの規約が厳しいため、誰が記述しても同様なコードとなる場合が多いためです。
また、Pythonはスクリプト言語であるため、PHPやRubyなどのプログラミング言語と同様に学習コストが少なくて済むように開発されています。
(なお、スクリプト言語とは、ソースコードが読みやすく、比較的簡単に記述できる言語の総称を指します)
近年、Pythonは多くの企業で導入されるようになりました。
以上から、Pythonの難易度は他のプログラミング言語と比較すると容易であるといえるでしょう。
Pythonよりアセンブラ言語の方が簡単
基本情報技術者試験の午後試験で出題されるプログラミング言語 は、「C言語」「Java」「Python」「アセンブラ言語(CASL2)」の4つの中から選択することができます。
そのなかでも最も容易とされているのがアセンブラ言語です。
アセンブラ言語とは、コンピュータが理解する機械語に近い低水準言語を指します。そのため、メモリやアドレス、ハードウェアの動作なども意識しながらソースコードを記述する必要があります。
独立行政法人情報処理推進機構IPAではアセンブラの入門言語「CASL2」というIT業界初心者の方でも学びやすい言語を開発しました。
CASL2は命令数が28と他の言語と比較すると少ないため、短時間で習得できます。
したがって、C言語やJava、Pythonと比較するとアセンブラ言語の方が難易度は易しいといえるでしょう。
アセンブラ言語をもっとよく知りたい方は以下の記事もどうぞ!

まとめ
いかがでしたでしょうか?
本記事では以下のことをご紹介させていただきました。
- Pythonは1991年にオランダのグイド・ヴァンロッサムによって開発されたオープンソースのプログラミング言語である
- Pythonは「処理速度が遅い」「ライブラリが豊富」「フレームワークが優秀」という特徴がある
- Pythonはソースコードが読みやすく、習得が比較的容易である
- アセンブラ言語の方がC言語やJava、Pythonと比較すると難易度は易しい
Pythonは近年最も注目を浴びているプログラミング言語の一つです。
AIやビッグデータ、機械学習などのトレンドである分野でも活躍が期待されています。
そのため、基本情報技術者試験の午後試験の問題としてPythonは取り上げられるようになりました。
基本情報技術者試験の午後試験で「どのプログラミング言語を選ぶべきか?」についてはプログラミング経験にもよります。
プログラミング経験があり、今後もIT業界で技術を磨いていきたいと考えている方は、市場価値が高いPythonを選択してもよいかもしれません。
一方、プログラミング未経験者で基本情報技術者試験を合格することが目的の場合、
難易度が低いアセンブラ言語を選択することをおすすめします。
※アセンブラを選択して基本情報技術者試験に合格したい方はこちらがオススメです!

ここまでお読みいただきありがとうございました!
あっきーでした。