エンジニアが発信する【2007年05月】の記事です

エンジニアが作る最新ITブログ トップ>【2007年05月】

2007年05月31日

高校でのVBA

他所のブログを見ていると、どうやら高校でVBAのテストがあったりするらしい。


シラバスを見る限りはVBAが出てきているようではない。確か、教育用には「インタプリタ言語が望ましい」ように定義してあったように思う。なら確かにExcel VBA はうってつけかもしれない。


しかし、どういう教育をしているのだろうか?気になる。

2007年05月31日

バグトラッキングシステムの作成

Alinous-Coreで動くアプリケーションが無かったので、実用も兼ねてバグトラッキングシステムを作ってみた。

2007年05月31日

Java

現在一番開発で使われている言語ではないかと思う。

そして、JavaというとWeb開発というイメージをもたれる方が多いのではないでしょうか?


JavaはSmalltalkとC++から良いところを取った言語です。

完全なオブジェクト指向であるSmalltalkにC++の構文やプリミティブ型等を入れることによってかなり使いやすい言語に仕上がっているものです。

さらに、どのプラットフォームでも同じ動作をするのでWindowsやLinuxなどOSを選ばない所も魅力的です。

(C++とかは、OSによって使える関数が違ったりする。)


ただし、それだけの事を実現するためにはネイティブコードを捨てなければならないのです。

すなわち処理速度がかなり遅いという欠点があるのです。


その欠点をある程度埋めたのが、Javaサーブレットです。

(アプレットは遅すぎて見れたものではない・・・。)


もともと、CGI(Parl)全盛期の頃にCGIの遅さを解消したのがJavaサーブレットでした。

CGIはアクセスがあるたびにプログラムをロードして実行していたのですが、Javaサーブレットはサーバー上にあらかじめプログラムをロードしておき、アクセスがあるたびにスレッドを発行して処理速度を向上させたのだ。

(Apacheも2.0になってからマルチスレッドに対応している。)


これによって、Java=遅いという概念を消し去り


Web=Java


という構図を作り出したのです。

それによりJavaは急速に発達していったのです。

HTMLの出力を簡単に行える言語であるJSPの出現や、J2EEテクノロジーの出現などWeb開発ではJavaの独壇場になって行きました。

(小さいプロジェクトではPHPの方が強いです。それは開発速度と処理速度がかなり速いためだと思います。)


また、IDEであるEclipseも相当使いやすく、Visual Studioより多機能で玄人にはたまらない開発環境だと思います。

(Eclipseは最低限の機能しか触れないので、深く書けません。)



ちなみに、私の主観としてもかなり使いやすい言語です。

ポインタを意識的に使えなくしているので、C++のような可読性の悪いコードはあまり見かけません。

(C#でも、限定条件上でしかポインタは使えません。ポインタは可読性を著しく下げたりバグを引き起こしやすい代物ですからね・・・。)

C++から来ている構文なので技術移行も簡単です。



ただし、テクノロジーやプラグインが多いので覚えることが多く開発環境を整えるまでが大変だと思います。

熟練者がいるなら兎に角、これから初めてJavaで開発しようと思ったら相当の勉強が必要でしょう。(お遊びでやるならそこまでの勉強は要らないかもしれませんが・・・。Webサーバーだけでもいくつ候補があることやら・・・。)


また、C#から移行するとポインタ系の命令が使えなかったりStaticクラスが使えなかったりとオブジェクト指向がらみで少し戸惑いますw


P.S.

JavaとC#の目的は違いますが、言語が進化していく過程は同じ感じがします。

ジェネリックや可変長引数、EnumなどJavaとC#で共通している物はかなり多いのです。

2007年05月30日

バージョンの異なるExcelを用意する

Excel VBAで開発していると、数行しか修正していないのに該当ブックのファイルサイズが数キロ~数メガバイト増えた経験はあるだろう。
モジュールをエクスポート/インポートすることでファイルサイズを抑えることも可能だが、この方法だと逆にファイルサイズが増える場合もある。


こういう場合、別のバージョンのExcelで開き、VBAを数行修正し、保存するとファイルサイズが劇的に減少することがある。
ある程度勝手に履歴を持っていてくれて、その履歴がバージョンごとに持ち方が違うのかな?という推測をしているが、実際のところは定かではない。


なお、上記の措置はExcel2000/2002/2003 間、Excel97/2000間で確認している。それより以前やそれ以外の組み合わせでは確認していない。

また、サービスパックが違うだけでも同様な事象は経験した。あまり気にしていなかったが、Excel2000のSP1とSP2?だったか?

なお、上記は動作保障をするものではありません。念のため。



エンジニアが作る最新ITブログ トップ>【2007年05月】

メンバー紹介

タグパネル

ランキング

エンジニアが作る最新ITブログ DODA