2022.08.03
IT用語
プログラミング言語(programming-language)
プログラミング言語は、プログラムを作るための言語で、コンピュータにさせたい処理があるときに使われる専用の言語です。
よく使われているプログラミング言語は、Java、Javascript、C言語、C++、C#、PHP、Python、Visual Basic、FORTRANなどです。Googleが社内の標準として使っている言語は、Java、C++、Pythonといわれています。
Java(ジャバ)
Javaは、1995年に米国のサン マイクロシステムズ(Sun Microsystems)社が開発したオブジェクト指向型のプログラム言語です。
主な特徴は、プログラミングに必要なライブラリが充実していることと、プラットフォームに依存しないことです。例えば、C言語やC++で開発したプログラムは、Windows、Linux、macOSなど、ぞれぞれのオペレーティングシステム(OS)向けに開発する必要がありますが、Javaの場合は、各OS向けに開発する必要はありません。JVM(Java仮想マシン)がインストールされているコンピュータであれば、Javaで開発したプログラムを動作させることができます。
基幹系システム、Androidアプリ、Webサービス、Webアプリ、IoT、組み込みシステムなどの開発に使われています。
習得の難易度は、やや高めです。
C++(シープラスプラス、シープラ、シープラプラ)
C++は、オブジェクト指向型の言語で、C言語を拡張した言語です。プログラムの自由度が高く、基本的には何でも開発することができます。
C++で作成したプログラムは、他のプログラミング言語(C言語は除く)に比べて高速です。画像処理、ゲームエンジン開発、物理エンジン開発、大量のデータ解析など高速に処理するプログラムを開発するために使用できます。ポインタでメモリに直接アクセスできるので、データの読み書きが高速に行えるためです。Windows、Linux、macOSなどインターフェースが違うプログラムを開発する場合、それぞれのOSで動作する開発環境を使用し、それぞれの仕様に従ったソースコードを作成し、コンパイルする必要があります。
ゲーム、IoT、OS、アプリケーション、ファームウェア、デバイスドライバーなどの開発に使われています。
習得の難易度は、高めです。オブジェクト指向とポインタの考え方が難しくて挫折する人も多いようです。
C言語(シーゲンゴ、シー)
C言語は、1972年にAT&Tベル研究所のデニス・リッチーが主体となって開発したプログラミング言語です。
C++と同様に、プログラムの自由度が高く、作成したプログラムが高速に動作します。C++と比較すると、C言語にはオブジェクト指向の考え方がないので、作成するプログラムが複雑化します。
ゲーム、IoT、OS、アプリケーション、ファームウェア、デバイスドライバーなどの開発に使われています。
習得の難易度は、高めです。ポインタの考え方が難しくて挫折する人も多いようです。
C#(シーシャープ)
C#は、マイクロソフトが開発したオブジェクト指向型のプログラミング言語です。アンダース・ヘルスバーグ(Anders Hejlsberg)を筆頭に2000年に開発されました。
GUIアプリの開発、Webアプリの開発、ゲームエンジンUnityを使ったゲーム開発などが行えます。
習得の難易度は、やや高めです。Javaに似ています。
JavaScript(ジャバスクリプト、js)
JavaScriptは、ブラウザで動作するインタプリタ方式、オブジェクト指向のプログラミング言語です。
プログラムの開発に最低限必要なものが、テキストエディタだけなので、初心者でも学習を始めやすい言語です。作成したテキスト形式のプログラムをブラウザで読み込んで実行します。文字や図形、画像を表示したり、アニメーション作成、簡単なゲーム開発、データベースへのアクセスなどが比較的簡単に行えます。
JavaScriptは、各種Webサービスなどの開発に使われていて、世界中で最も人気のある言語の1つです。
習得の難易度は、やや低めです。初心者でも始めやすい言語です。
Python(パイソン)
Pythonは、インタプリタ方式、オブジェクト指向のプログラミング言語です。
Pythonの場合は、プログラマが利用できるライブラリ(プログラムの部品)が充実していて、インターネット等から得られる技術情報も多いので、プログラムの知識が乏しくてもデータサイエンスなどの専門的な知識があれば、高度なサービスやアプリケーションの開発が行えます。
AI(機械学習・深層学習)、ブロックチェーン開発、Webサービス、ゲームなどの開発に使われています。
習得の難易度は、やや低めです。言語の習得は比較的簡単ですが、実際の開発となると高い専門知識を求められる場合があります。
FORTRAN(フォートラン)
FORTRANは、1954年にIBMのジョン・バッカスによって作られた世界初の高級プログラミング言語です。
数値計算に便利な機能があらかじめ組み込まれているため、科学技術計算に適しています。
最近では、使われることが少なくなってきていますが、学術分野では利用されています。
関連コンテンツ
JVM(Java Virtual Machine)は、OSとJavaの間で動作するソフトウェアで、Java仮想マシン、Javaバーチャルマシンと呼ばれます。詳しくは、記事をご覧ください。
オペレーティングシステムは、コンピューターに入っている基本のソフトウェアで、電源を入れると最初に起動します。オペレーティングシステムが持っている機能って何?
2値化は、画像処理の1つの方法で、カラー画像を2つ色だけで表現する画像に変換することです。この記事では、2値の画像メモリを使って変換しています。
数値を2進数で表したときの各桁の「0」と「1」に対して演算を行えます。4種類の演算、AND(論理積)、OR(論理和)、XOR(排他的論理和)、NOT(否定)を詳しく説明しています。
ソースコードを読みやすくするインデントって?
画像処理プログラムの簡単な例として、JPEGフォーマットの画像ファイル(.jpg)を、PNGフォーマットの画像ファイル(.png)に変換するソースコードを解説します。
円の中に含まれる格子の数と格子の外の数から円周率πを計算する方法を紹介しています。図とJavaのソースコードでくわしく説明していますので、興味のある方は記事をご覧ください。
このサイトのオリジナルクラスのMyBufferedImage0クラスを利用して、JPEG、PNG、BMP、TIFFなどの各種画像の横と縦のピクセル数を求めるプログラムを紹介しています。
このサイトのオリジナルクラスのMyBufferedImage0クラスを利用して、フルカラーの画像をセピア色に変換してをJPEGG形式のファイルに保存するプログラムを紹介しています。
このサイトのオリジナルクラスのMyBufferedImage0クラスを利用して、JPEG、BMP、TIFFなどの各種画像ファイルをPNG形式のファイルに保存するプログラムを紹介しています。