これからオブジェクト指向プログラミングを勉強してみたいと思っている人に推薦するプログラミング言語 2005年版

JavaScript

 これからオブジェクト指向プログラミングを勉強してみたいと思っている人に推薦するプログラミング言語としては、どの言語がいいだろうか。

 まず、普及しているオブジェクト指向プログラミング言語を考えてみることにする。注目を浴びている言語としてはC#がある。Webアプリケーション構築ではJavaとPHPがよく使われている。デスクトップアプリケーションではVisual Basicといった言語がある。基本的には Windowsでしか動作しないが、そもそもデスクトップ用OSの普及率を考えると、Windows上で動作すれば十分だという話である。エンジニアに人気が高いCをオブジェクト指向へ拡張をしたC++もなかなか人気が高い。スクリプト言語ながら人気があるのはRubyである。Webブラウザ上でプログラムを動作させるために一番よく使われているのはJavaScriptになる。Flashなどのアニメーション系ではActiveScriptといった言語もあるが、これはJavaScriptの独自拡張だと考えてもいい。

 こうしてみると、オブジェクト指向言語といっても数多くの言語があることに気がつく。この中から選択をするわけだが、どの言語も一長一短であり、どのような立場でオブジェクト指向言語を学びたいかによって選択肢は変わってくる。

 ところで、プログラミングの楽しさは、コンピュータを自分の思ったとおりに動かせることにあるわけだが、そのレベルに達するようになるまでに知らなければならない事柄は非常に多い。段階を追って色々な技術を身につけていくしかないのであるが、そのためのロードマップを考えたとき、一つの言語だけで学ぶのでは足りないことに気がつく。もちろん、基本とする言語は一つであった方がよいのだが、実際に何かのアプリケーションを実現しようとすると、機能ごとにその実現を得意とする言語をいくつか組み合わせる必要がある。すると、結局のところ複数のプログラム言語を扱わざるを得ないのである。

 このことから、プログラミング言語教育においては、初学者が興味を惹くような題材を簡単に扱える言語により、プログラミングの基礎である構造化プログラミングについて理解をさせた後で、本格的にオブジェクト指向について教授するという2段階の方式がよいと考えられる。このとき、あまりに文法が異なると初学者にとっては学習に要する負担が高くなってしまうため、組み合わせについては考慮が必要であろう。

 では、次に誰でも興味を持つ題材とは何かということを考えると、これがなかなか見つからない。やはり立場によって興味を持つ内容が変わってきてしまうのである。趣味でプログラミングを学びたいと思っている人にとっては、ゲームというのはモチベーションを維持できるだろう。一方、仕事でプログラミングを学びたいと思っている人にとっては、ゲーム会社で働こうと思っていなければ、あまり興味が持てないだろう。こういう人にとっては直接収入や職場での高い評価に結びつくプログラム能力を身につけたいはずである。こう考えてみると、ビジネス用アプリケーション、Webアプリケーションに結びつくような内容が良いのではないだろうか。学校などで題材とするのに適しているプログラムは何だろうか。学校では原理を知ることに主眼をおくことが大切なので、あまり現場で役に立つテクニックは必要ではないの分、内容は少なくて良いのだが、学習者の目的が一番曖昧な場合が多い。そうすると、できるだけ身近なものがいいだろう。今や携帯電話に搭載されている電卓の仕組みであるとか、自動販売機のコインカウントの仕組みとかが考えられる。もしくは、自分の成績を記録するプログラムであったり、住所録を管理するプログラムであったり、こづかい管理プログラムであったり、色々あるだろう。こういったことを考えると、なかなか誰もが興味を持つ題材というのはないことがわかる。結局、講義をするときに、対象者についてよく考えながら題材をきめることになる。

 最後に、組み合わせる言語のパターンについて考えてみよう。色々考えられるはずであるが、文法の類似性、開発環境構築の容易さ、実行環境構築の容易さ、適用分野での普及率、参考資料入手の容易さ、言語仕様の標準化の度合い、といった観点から評価して選択するべきだろう。C + Java とか、BASIC + Visual BASIC とか、JavaScript + Java とか、JavaScript + Visual BASIC とか、JavaScript + Ruby とか、いくつかあるが、個人的には普及率、文法の類似性といった観点から、JavaScript + Java という選択はかなり良い線をいくのではないだろうかと考えている。特にJavaScriptはインターネット接続ができれば、いたるところで使われている生のプログラムソースコードを参照できるというのは魅力的である。ページを開かせて、このプログラムを解析してみましょう、といったアプローチも簡単にできてしまうのである。そういう意味では、JavaScriptは究極のオープンソースだともいえる。

カテゴリー: Java

W32S report topics3

(最初から読む)

Topics3 : 「W32S」と「CLIE PEG-TH55」のある生活

– 音楽を聴きながらBlogの原稿を書く –

18:30 – 19:30 今日の仕事も終わったので、もうひとつの注目機能だった着うたフルも試してみました。何も考えずに携帯電話からEzウェブサイトへアクセスを始めたら、すぐに迷ってしまった。迷っている間もパケット代はかかっているはずなので、焦りながら着うたフルのダウンロードを探すが、特にこれが欲しいというわけでもないので、無駄にお金と時間を費やしてしまいました。なにごとも、もっと計画的にするようにしたいところです。

19:30 – 20:00 とりあえずダブル定額にしてあったので、今月はめいっぱい使ってもいいかと開き直ったのですが、コンピュータで検索するのに比べてストレスがたまってきたので、たまらずコンピュータで検索したところ、DUOGATEというページを発見しました。とりあえずここで「着うたフル」の「アーティスト」で検索をしてみます。「BUMP OF CHICKEN」の「天体観測」が欲しかったのですが、ありません。「小田和正」の「キラキラ」も欲しかったのですが、ありません。「中島みゆき」もありません。さすがにおかしいな、と思って「浜崎あゆみ」を入力するとたくさんでてきます。「布施明」を試したらありましたが、欲しい曲はありませんでした。「ビートルズ」をいれてみたら、なんだかしらないビートルズがでてきて、まいりました。こんな感じで探していたのですが、なかなか見つからないので、「大塚愛」の「プラネタリウム」にすることにしました。聴いたことはないのですが、ヒットしているようなので、ものは試しにということで選んでみました。ダウンロードしようとしたところ、EZパスワードとかプレミアムEZパスワードの登録を促されたので、一瞬あせりました。あわててパソコンで調べると、W31SA/SAIIのオンラインマニュアルのEZパスワードを登録/変更するというページが見つかりました。どうやらau携帯電話で提供されているサービスのようなので、信用することにしてパスワードを登録しました。これでやっと、ダウンロードすることができました。

20:00 p.m. – 20:30 ダウンロードした曲を早速聴きながら、このブログの記事をCLIEで執筆。テキストを作成したりスケジュールを管理したりするにはパソコンを使うまでもありません。余計な作業ができない分、集中もできます。なんていいながら、実はすぐ隣でWeb検索に大活躍だったパソコンが動いていたりするのですが (^^;。「ちょっとお金がかかったかな」と思ったりもしましたが、何事も経験しないとわかりませんから、よしとしておきます。ここでダウンロードした曲をメモリースティックとかへコピーできないと、携帯電話の中のデータフォルダがすぐにいっぱいになってしまいそうです。KDDI、「着うたフル」対応、PCサイトビューアー搭載のWIN4機種を発表という記事を見ると、セキュアminiSDとかなら可能なようです。マジックゲート対応メモリースティックならできるかもしれませんが、ここらの技術には疎いので、また調べてみようかと思います。なにはともあれ、これまではCLIEで原稿を書いている最中は音楽を聴くことができませんでしたが、それができるようになったのは、大変嬉しいことです。 「W32S」と「CLIE PEG-TH55」で音楽を聴きながらBlogの原稿を書くという充実した生活ができそうな予感です。ってあくまで予感なんですが ;-)。

カテゴリー: etc

W32S report topics2

Topics2 : おサイフケータイで、お買い物がもっと楽になる

 さて、登録が済んだら後は使うだけです。でも使う前に、大事な設定があります。携帯電話を落としてしまったときに、拾った人に勝手に使われないようにしておかないと、いざというときに心配です。他人に勝手に使われないようにするには、ロックをかけておきます。

 実は、説明書を読む前にもちょっとメニューを眺めてみたのですが、どこで設定するかよくわかりませんでした。説明書によると、どうやら[ツール]-[機能設定]-[プライバシー]-[アクセス制限]の中にあるようです。実際にやってみると、ありました、ありました。[Felicaロック]という項目のことです。ちなみに、「解除コード」というのもあって、クイック解除機能を使うときには設定をしておいた方が安心です。ということで、全部設定をしておきました。

 これで携帯電話でできる設定は終わったので、いざお店にいって入金です。今回はサークルKへ行って使ってみました。店員さんへ「おサイフケータイへ入金したいのですけど」とお願いすると、「携帯電話のFelicaマークがある面をリーダの上へ乗せてください」と言われたので、うまくいくかドキドキしながら乗せました。しかし、うまく認識してくれません。何事も初めてのときって、そういうものですよね。たまたま、その間に後ろに行列ができてしまったので、あわててどいて、レジをゆずりました。

 待っている間、よく考えたらクイック解除をしていませんでした。とりあえず失敗のないように、Felicaロックを解除してリーダへ置いたところ、今度はばっちりうまく認識してもらえました。後はお金を払うと、実際に入金される金額がこちら向きのレジ画面で表示されました。そこで確認をした後に、[確認]ボタンを押して入金が完了しました。結構簡単です。

 せっかくなので、そのまま「にくまん」を購入してみました。おサイフケータイをおいたまま、こちらは待っているだけでいいので楽ちんです。おつりのやりとりとかで、財布からお金を出したり、しまったり、レシートをもらったり、それをまた片付けたり、意外と時間がかかってしまうことが、手間をかけることなくできるようになったので、嬉しいかぎりです。サイフを扱う動作が日頃から「とろい」ので、これからはおサイフケータイを使う機会が増えそうです。

カテゴリー: etc

W32S report topics1

Topics1 : お財布感覚で使える携帯電話の「Felica機能」

 何気なく立ち寄ったauショップで、新機種の電話を眺めながら、「最近はまた機能が増えていて凄いなぁ」と感心していると、オサイフケータイの文字が目に飛び込んできました。auではW32HとW32Sの2種類があるようですが、今使っている機種がSony Ericssonのものだったので、どうしてもW32Sの方が気になります。ちょっと調べてみたところ、いままで我慢していた着うたフルとかも使えるようだったので、おもわず購入してしまいました。実は期間限定の割引セール中だったという後押しもありました。どうしてもこういう雰囲気に乗せられてしまうのですが、なぜなのでしょうか。お店の戦略にまんまとはまってしまっているあたり、ちょっと悔しい気持ちもしますが、クリスマスも近いことだし、自分へのプレゼントということでいいかな、と思う方が大きいので、よしとします。

 機種変更と同時に契約内容の見直しもしたのですが、着うたフルを使いたいという話をしたとたんに、パケット代がかかりますといわれました。ここであきらめるのも勿体ないので、とりあえずダブル定額の契約をして半年ぐらい様子をみることにしました。日頃携帯電話を使用する機会が増えてきているので、ちょっと固定費があがってしまいますが、それぐらいは必要だと思ったからです。肝心要のFelica機能を使うにもEzアプリのダウンロードが必要なので、それを考えるとそんなに悪い選択ではないと考えています。

W32S 01

 さて、Felica機能で注目しているのは、2006年1月まで待たないといけないのですが、JR東日本での切符支払いができるというものです。ちょっとした乗り換えなどでいちいちお金を払うのも面倒なので、是非使ってみたいところです。ということで、とにかくFelica機能を使ってみようと、説明書を片手に携帯電話の電源をいれて設定をしてみます。電子マネーEdyの設定が必要らしいので、アプリのボタンを押して表示されるメニューから、Edyアプリを選択して起動します。起動された画面で指示に従って設定をすると、簡単に登録ができました。クレジットカードの登録もできるようでしたが、まずは様子見のためにクレジットカード番号の登録はしませんでした。登録にあたってはWebサイトへアクセスする必要があるので、注意が必要です。

W32S 02

 とりあえず、今回はここまでで、実際の使い勝手のレポートはまた今度にしたいと思います。

カテゴリー: etc

fml configuration

fmlの設定について

fmlで作成したメーリングリストのカスタマイズをするためには、config.phの後ろの方の編集可能な領域に設定を追加します。最後にある1;より後に追加してはいけません。いつも設定するときは、cfの最後に追加するということもできます。

  • Reply-Toの強制
    &DEFINE_FIELD_FORCED(‘Reply-To’, ml_name\@y-min.or.jp”);
  • Referenceの追加
    $AGAINST_MAIL_WITHOUT_REFERENCE = 1;
  • Multipartのtext部分抽出
    &ADD_CONTENT_HANDLER(‘multipart/.*’, ‘text/plain’, ‘allow’);

MEMO

約一ヶ月も前に書いて没になっていたメモ

ソースコード全削除

ひさしぶりに、ソースコード全削除というミスをしました。最近はCVSを使っていたので、こういったミスはほとんどなかったのですが、たまたまCVSに登録していなかったソースコードを誤操作で全削除してしまいました。まさかソースフォルダを選択した状態になっているとはおもわずに、削除したい他のファイルと一緒に削除してしまいました。一瞬まっさおになりましが、Eclipseのローカルヒストリ機能でなんとか復帰できました。さすがEclipseです。ただし、パッケージを移動したクラスがいくつかあり、そのクラスも復帰候補としてでてきたので、どれが必要なものなのか判断するのがちょっと大変でした。

サーバクラックされる

サーバがクラックされてしまったので、しばらく更新ができませんでした。復旧にあたっては新しいハードウェアを購入してOSも入れ直しました。一部のソフトについてバージョンが古かったためにやられてしまったようです。Webサイトのトップページを書き換えられただけで、その他については特に侵入された形跡はありませんでした。こういうときの対応はかなり大変なので、普段から色々と対応をしておきたいところです。

CPUの温度

久しぶりにマシンを組み立てたところ、なぜかインストールCDからのブート途中で電源が切れてしまいます。最初はさっぱりわけがわからなかったので、BIOSの設定をみていたところ、やっぱり電源が急に切れます。ということで、どうやらハードウェアの問題らしいということがわかったので、再起動がかかる前に急いでBIOSの設定を確認していくと、CPUの温度が異常に高いことが判明しました。普通は40度は越えないらしいのですが、なんと100度を越えていました。これが原因ということでCPU FANのところを再チェックしたところグラグラしていました。きっちり固定したところ、きちんとCPUの温度が正常値になりました。これは初めての経験だったので勉強になりました。

パーツの購入

今回は、5万円程度のパーツを購入して、サーバ再構築をしました。CPU、メモリ、マザーボード(LANカード、ディスプレイカード機能内蔵)、電源つきケースだけなのですが、結構な値段になっています。オンラインショップだと4万円あれば、結構なマシンが手にはいるのですが、とりあえず今回は急をようするということで、地元のお店で購入しました。ケースはアルミ性で、ものすごく軽いのには驚きました。他の部品はよくわかりません。そこそこの性能で動作すると思うので、あまり追求しないことにしました。

カテゴリー: etc

WPS

 躍る大捜査線コンプリートBOXを入手しました。

 テレビ放送時、いつも前半を見逃していたので、第1話から第4話あたりが抜けています。それで、これを機会に全部チェックしようかと思い購入してみました。それ以降は全部観たり録画してあったりするので、実はDVDを手に入れる必要もないといえばないのですが、「コンプリートボックス」という名前につられてしまいました。うまく企画にのせられてしまったわけですね。ボリュームいっぱいなのでいつ見終わることができるのか、わかりません。ちなみに購入してから気がついたのですが、special booklet なるものがついていました。ちょっと得した気分です。

 中身ですか? すみません、この記事を書いている時点では、まだ未開封だったりします。えぇ。9月に予約したんですが、そういうもんですよ、大人になると。子供の頃はすぐに封を開けて楽しんだもんなんですけどね。

 実は、刑事コロンボのDVDボックスも半年以上前に購入してあるのですが、まだ未開封だったりします。いや、観る暇がないんですよね。ボックスだと全部一気にみちゃいそうで、見始めるのにちょっとしたきっかけが必要なんです。

 ということで、いつみることになるかは不明だったりしますが、年度内には観てしまいたいと思っています。HDDレコーダ購入以降、以前よりも録画したテレビ番組を観るようになってしまって、反省することが多いのですが、ちょっとは楽しみも欲しいですから、仕方がないところです。

 たまには、Amazonのでかい広告でもリンクしてみることにします。いつか関連劇場映画2本も購入しようかと思っています。「躍る大捜査線」に興味がでてきましたら、どうぞリンクを辿ってみてください。

カテゴリー: etc