応用情報処理 V(2003) もっとプログラミングをしたい人のた めに 新居雅行 2003/1/19
教科書で学んだこと Java 言語の基本 JBuilder の使い方 ユーザーインタフェース作成の基本 イベント処理
学んでいないこと Java に関する知識 (Java) ソフトウエア工学に関する知識 (Soft) OS/Network に関する知識 (Net)
(Java) ファイル処理 データをファイルに残したり、あるいは データをファイルから取り込んだりする。 それほど難しいプログラミングではないが、 現実問題として細かいことがある 文字コードのこと サイズは一定しない、など メモリ利用効率や、あるいはコード処理の 自動化部分を理解するときちんと使える
(Java) さらなるユーザインタフェー ス構築 メニュー( Java ではちょっと面倒) 紹介していないさまざまなコントロール (タブやテーブルなど) たくさんのイベントがあるが、考え方はア クションイベントとほぼ同じ 「レイアウト」と「イベント」でこの部分 のハードルは越えたも同然。あとは、 API 仕様書を読めるようになれば OK
(Java) データの扱いについて 国際化 言語に応じた日付や通貨の表示 言語に応じて画面メッセージを切り替える コレクション API 複数のデータを効率的に管理するメカニズムがある この機能を理解するのは必須! 数値処理 Java はそれほど強力ではないが、どこにあるのかを 知っておかないとわけがわからない
(Java) マルチスレッド 並列に実行するプログラム 単に並列に動かすだけなら至極簡単(テキ ストの第 9 週目を参照) ただし、現実的には複雑な問題がからむ ある 1 つのデータを複数のプログラムが同時に 使おうとしたら? ある処理は同時にはできない。 では待ちに入るとしたら?双方が待ちに入る と?
(Java) ネットワーク等 通信を含むプログラムを作成する機能が充 実している 他のコンピュータにあるプログラムを呼び 出すということもできる セキュリティ(暗号化、認証)
(Java) コンポーネント化 JavaBeans という枠組みがある ソフトウエアの再利用を効率的に行う手法
(Java) サーバ向けアプリケーション Servlet Web サーバで動かす CGI のようなメカニズムで、 Java のプログラムを動かす Java Server Pages ( JSP ) JavaScript 等のように、 HTML に Java のプログラムを 混ぜるような形式でプログラムを作成できる データベース こうしたアプリケーションはデータベースとの連動が 多い。 JDBC 、 Enterprise JavaBeans ( EJB )
(Java) 携帯電話向けアプリケーション i アプリ、 Java2 ME など パソコンと違って制約された環境で稼動す る 少ないメモリ、遅い通信環境 ユーザインタフェース機能は弱い エミュレータを使っての開発が一般的 ボタンなど携帯電話独特の機能を使いこな す
(Soft)UML Unified Modeling Language 一定の規則に従った作図を行うことで、シ ステムの分析や設計を行うための手法 流れ図的な手順を示すものや、データ間の 関連を示すもの、配置を示すものなどいく つかの種類がある 作成や解読が比較的容易であることが特徴
(Soft) パターン ソフトウエアで構築する機能を分類したも の 「パターン」という日本語の響きとは微妙に 違う 「形」とか「スタイル」に近いニュアンス 一般には UML で記述されている それをもとに、プログラムを書いて実装す る
(Soft) 正規表現 テキスト処理を効率的に記述する表現方法 任意の文字列とか、数字、大文字アルファ ベットといった文字クラスの扱いが可能 検索や置換での利用
(Soft)XML 構造を持ったデータを、テキストで記述で きる メリットはあるのだが、説明は難しい すでに、データ交換のスタンダードとなり つつある Web を利用した処理のリクエストとレスポン スを行う SOAP Web ページでデータとレイアウトを分離でき る XSTL
(Soft) フレームワーク 開発のベースになる機能 言語よりもこちらが大切 Java はフレームワークを包含している Windows アプリケーションは MFC ( Microsoft Foundation Class ) 最近では.NET も注目されている
(Net)TCP/IP とサービス インターネットの基本的な仕組み それが OS でどのように実装されているの か どんなサービスがあるのか
(Net)UNIX 管理作業をコマンドを使ってできるように なりたいところ サーバを立てる お金がかからないことでもあるので、取り 組んでもらいたい
(Net)Windows Windows を単に使うのではなく、システ ム管理、あるいはネットワークの中核とし て利用するような知識 個人でやるには費用がかかるだろうけど、 興味があるなら、雑誌などで知識を集めれ ばよい
(Net) スクリプト言語 OS を使いこなすにはスクリプト系言語の 知識は不可欠 Perl 、シェルスクリプトが有名だが、さま ざまなものがある ニーズにあった処理を自動化することで効 率化する
(Net) セキュリティ アカウント、パスワードに対する理解 ウイルスに対する理解 ネットワークアタックに対する理解 不正利用に関する理解
エンジニアリングの世界 いろいろな仕事があります 理科系でなければできないわけではありま せん プログラムなどの能力も必要ですが、業界 が求めているのは、協調性 ほかの人の話を聞き、理解をして必要な行 動が取れる人