第30回U-20プログラミング コンテスト 平成21年度情報化月間 トップへ戻る

平成21年度 入選作品紹介

経済産業大臣賞
Alcor Orihalconb
経済産業大臣賞 Alcor
伊藤 康人
慶應義塾大学 情報工学科 2年

作品概要

携帯端末用のプログラミング環境です。ファイラ・テキストエディタ・言語処理系・実行時入出力インターフェース・デバッガなどのセットです。言語はCとBASICに対応しています。エディタは複数回のアンドゥリドゥや範囲指定を用いた編集に対応し、言語処理系の字句解析器を用いてハイライト表示を行います。プログラムは整数・実数・文字列・配列を扱うことができ、必要に応じて自動変換されます。実行をブレークポイントを設定した行で止めることができ、変数の確認などができます。

制作目的・テーマ 高校生のとき、数学Bの教科書やセンター試験のBASICを利用してプログラミングを広めようとしたものの、その場に実行できる環境がなく、うまくいかなかったのがそもそものきっかけです。その時実行環境として使えそうだと思っていたのが携帯電話でした。
テーマはずばり「携帯端末で快適にプログラミングができるようにすること」です。
作品のアピールポイント 携帯端末での作業を快適にするために最重要だと思われる操作性に気をつけました。MIDPは汎用の規格なので入力デバイスが厳密に定義されていません。エディタの操作は上下左右と行編集・挿入・削除の7キーで操作できるようにし、キーコンフィグ可能にしました。行単位の編集にすることで、テキストの入力で端末の最適な方法が使えるようにしました。
プログラミング上での工夫した点 レキサとパーザのテストは通常のプロジェクト内で行い、それが済んだらソースを携帯端末用のプロジェクトにコピーするようにしました。JFlexやCUP(レキサ・パーザジェネレータ)によるソースコードの生成と別プロジェクトへのコピーはAntを使いました。また、JFlexのユーザーコードの部分を工夫して、エディタのハイライト表示とパーザに渡すときの両方に使用できるようにしました。
開発言語、
ツール
開発言語:JavaME CLDC1.1 + MIDP 2.0
統合開発環境: Eclipse
レキサジェネレータ:JFlex
パーザジェネレータ:CUP
ビルドツール:Ant
バージョン管理システム:Subversion
応募したきっかけ 3年前に応募していたため。
プログラミング歴 7年
どうやって勉強したか 主にインターネットでの情報収集。買ったものの他に学校の図書館で見つけた本。特に言語処理系に関しては他大学の講義資料も参考にしました。
入賞した感想 半年間初めてのツール・ライブラリを相手に手探りで開発を進めてきた結果がここに出たことを嬉しく思います。常に過去の自分と比べて進歩していられるようにがんばりたいと思います。
トップへ