プログラミング言語の特徴と対応状況

2022年度からはじまる新指導要領の教科「情報」では、「表現するプログラムに応じて適切なプログラミング言語を選択する力」が求められています。各言語の特徴とMonaca Educationの対応状況をお伝えします。

言語 特徴 対応状況
Python AIや統計などの分野で非常に人気の言語です。 対応済み(Brython)
JavaScript 主にウェブサイトで使われている言語です。 標準対応
Swift 主にAppleのOSで使われている言語です。 非対応
Scratch 教育向けで非常に人気のあるビジュアルプログラミング言語です。 非対応
SQL データベースを操作するための専用言語です。 対応済み(AlaSQL)
HTML 文章を構造化するためのコンピューター言語です。ウェブページの作成に使われています。 標準対応
CSS 装飾を定義するためのコンピューター言語です。ウェブページのデザインで使われています。 標準対応

各言語に対応した教材のご案内

Monaca Educationの有料プランでは、各言語の印刷教材も用意しています。先生方には見本誌の提供も行っていますので、お気軽にお問い合わせ下さい。

補足:高等学校学習指導要領(平成30年告示)解説に対応するために

「表現するプログラムに応じて適切なプログラミング言語を選択する力」については、指導要領の

イ(イ) 目的に応じたアルゴリズムを考え適切な方法で表現し,プログラミングによりコ
ンピュータや情報通信ネットワークを活用するとともに,その過程を評価し改善すること

にて言及されています。

(イ)では、関数・ライブラリ・APIの活用も求められています。また、ツールやアプリケーションの開発、画像認識や音声認識及び人工知能の組み込み、人に優しく使いやすいインタフェースについて触れることも言及されています。

これらは、一つの言語だけでカバーすることはできません。
また、指導者の方が全ての言語や技術をマスターすることは困難でもあります。
言語の特徴をある程度抑えた上で、生徒に道を示して頂ければ幸いです。

関数・ライブラリ・APIの活用

最近人気のある汎用言語は概ね、これらの機能をサポートしています。

ツールやアプリケーションの開発

スマホやブラウザ上で動く作品を作るのであれば、配付機能のあるMonaca Educationをお勧めします。
iOS限定ならSwiftがお勧めです。

人工知能の組み込み

人工知能の「モデル」を組み込むだけなら、Python以外の言語でも対応は広がっています。
例えばJavaScriptではTensorFlowのJS版であるTensorFlow.jsを使うことでモデルの作成と利用の両方を行えます。
しかし、人工知能に関する情報量の多さではPythonに一日の長があります。
また、言語を使わずにウェブ上で画像を登録してモデルを生成するサービスも増えつつあるため、人工知能を活用した作品作りは高校現場でも徐々に身近になっていくと考えられます。

人に優しインタフェース

JavaScriptの場合にはHTMLxCSSでインタフェースを作れるため、情報デザイン領域と合わせて学習することが可能ですが、汎用プログラミング言語は基本的にユーザーインターフェースをサポートしていないため、インタフェース用のライブラリ等を活用して作成する必要があります。
Pythonの場合にはTkinterというライブラリを使うか、サーバーサイドでPythonを動かしてブラウザにHTMLxCSSを出力する方法などがあります。