一週間でわかるプログラマになる方法

第4日目:GUIをつけてみる

GUIをつけてみる


見栄えを良くしよう

図4-1.GUIアプリを作ってみる
GUIアプリの操作

キーボードから、文字の入力で操作するような、成績管理アプリケーションを作るこちに成功したら、次はいよいよこれにGUIをつけてみましょう。グラフィカルユーザインターフェース(Graphical User Interface)の略語です。 コンピュータへ出す命令・指示を、ユーザが画面上で視覚的に捉えて行動を指定できるものです。これに対し、キーボードから文字を入力するなどして操作するようなユーザーインターフェースのことを、CUI(Character-based User Interface)などと言います。

とはいえ、一口にGUIといってもたくさんあります。たとえば、Androidのようなアプリケーション上のGUIであったり、ウェブアプリのウェブ上のGUI出会ったりと、実に様々です。

しかし、ここではそのこと自体はあまり重要ではありません。ここで大事なのは、このGUIと、内部のプログラムを完全に切り離すことです。ここまでできるようになれば、プログラミング能力はかなり向上したと言っていいでしょう。

GUIについて勉強してみる

作ってみたプログラムにGUIを組み込む前に、まずはGUIに関する勉強をある程度しておきましょう。Javaの場合、Webアプリであれば、Java/Servletと言われる技術があり、Androidのアプリには、Androidプログラミングの本がありますから、そういった専門書を利用したり、ネット上の入門サイトを利用して、ある程度の知識を身につけましょう。

ただ、ここに出てくる知識は膨大にあり、すべてをマスターするのはなかなか大変です。そのため、アプリを作るために必要と思われる知識が身についたら、そこで終わりましょう。その知識が身についたら、再びアプリ作りに戻り、足りない知識があればそのたびに調べるようにするだけで十分です。

→ Webアプリ関連の書籍

→ スマートフォン・タブレットアプリ関連の書籍

CUIアプリから、GUIアプリへ


GUIからの入力に反応する処理を作る

図4-2.GUI部分とその他の部分に分割
GUI部分とその他の部分に分割

GUIに関する知識が身につけば、次はいよいよそれをアプリに組み込んでみましょう。つまり、それまではコンソール画面でキーボードからの入力を受け付けて行っていたような処理を、今度はGUIにゆだねるわけです。このような場合、GUIの処理部分その他の処理部分からの処理をもとにそれを画面に表示する部分の処理と、ユーザーからの入力を処理部分に渡す処理ができればいいわけです。(図7-2.)

この考え方はコンピュータのOS上で直接実行されるアプリ(ネイティブアプリと言います)も、Webアプリもさほど変わりはありません。

処理部分を更に分割する

図4-3.処理部分を更に分割する
処理部分を更に分割する

このような構造にすると、処理部分は、さらにに二分割できることがわかります。それは、データ処理をする部分と、それをGUIに接続する部分です。データ処理部分とは、具体的にはファイルにデータの書き込み・訂正・削除と、検索を行う部分です。

GUIを処理部分と切り離すことができたら、更にこの2つの処理部分にわけます。すると、データ処理部分は純粋に使用するGUIの環境とは独立したものになります。

すると、これが例えばJavaのプログラムであった場合、GUIがAndroidのネイティブアプリを、Web上で実行することが容易にできるようになるわけです。実際にこの作業をやってみると、オブジェクト指向のありがたさがわかると思います。(図4-3.)

オブジェクト指向の利点は、システムの抽象度を上げることができる点にあります。この点がわかってくると、プログラムの腕はかなり上昇してることがわかります。

戻るトップへ戻る次へ

↑ PAGE TOP