先にお話した「プログラムについて」では、プログラムの流れや構成、考え方などについて述べました。これはこれでとても重要なのですが、windowsプログラムなどの大規模なプログラムを考える場合、これだけでは不十分です。

 

windowsプログラムにおいては、たとえば結果を画面のwindow上に出力したり、ビデオカメラからデータを受け取ったり、CGモデルを取り込んだりと、色々と考える必要があります。これらを一からプログラミングするには、相当な知識と量が必要になります。

 

そこで、ある一定の働きをするプログラム群を用意しておき、これらを利用できるようにすれば、開発効率はぐっと上がります。これらが、APIとかライブラリとか呼ばれるものです。もちろん、C言語において最初に習うprintfscanfなども一種のプログラムですが、これらだけでは到底不十分です。

 

さらに、オブジェクト指向プログラミングと呼ばれる手法を用いるプログラミング言語を使用すれば、様々な機能を有するプログラム群を利用することができます。ただしオブジェクト指向プログラミングにおいては、プログラミング手法の概念自体を理解する必要があり、慣れるのに多少の時間がかかると思います。

 

たとえば、クラス、オブジェクト、インスタンス、コンストラクタ、メンバ(メソッド、変数)などの概念があります。また、概念と併せて、実際のコーディングの仕方にも慣れなければなりません。APIやライブラリについてもクラスの考え方が必要であるため、使い方が少し難しいかもしれません。ただ、現代のIT社会におけるアプリケーション開発にはオブジェクト指向プログラミングは不可欠ですので、是非マスターして欲しいと思います。

 

代表的なものには、JavaC++などがあります。Javaの方が比較的習得しやすいかもしれません。Javaといっても、Java Script, Java Applet, JSP, Java Servletなど、用途によって様々なものがあります。これらはWebアプリケーションを開発するのに便利で、現代社会はネットワーク社会と言い換えても良いくらいですから、これらの言語の重要性が理解できるのではないでしょうか。また、そこではセキュリティという問題がついてまわりますので、そういった知識も重要となります。そういう意味でJavaはセキュリティに比較的優れた言語となっていますが。

 

結局、現在、そしてこれからの社会を支えるアプリケーション開発に携わるプログラマーは、とても大変な職種なのではないだろうか、と思うかもしれません。確かに簡単な仕事ではないと思います。

 

でも、現在では様々な種類のアプリケーションがすでに開発されており、それなりのノウハウがあります。何か新しいアプリケーションを開発する際にも、これまでのノウハウが利用できるのです。さらに、開発者のために、統合開発環境も整ってきています。たとえばC++であれば以前からvisual studioJavaであればEclipseなどがあります。こういったツールを利用すれば、複雑なアプリケーション開発もある程度は容易に行えます。