某SIerのSEが、おすすめ書籍や仕事の話題を色々語ります。今はWindows系がメインです。→某SIerを退職しました。PCアーキテクチャの概要がわかりますの記事にて、「はじめて読む8086」の次に読む本として「はじめて読む486―32ビットコンピュータをやさしく語る」を推奨していました。私は幸いそう高くない値段で本書を手に入れられたのですが、本書は品薄でAmazon等で中古本がプレミア価格で中々手に入れづらい状況でした。先日、ふとAmazonのページを見ているといつの間にか電子書籍化されてます。Kindleと楽天Koboで電子書籍化されており、それにより中古本の価格も値下がりしているようです。電子書籍はどうも...という人も含めて、適正価格で手に入れられる状態になっています。「はじめて読む486―32ビットコンピュータをやさしく語る」の書籍が気になっていた方は、これを機会に本書にチャレンジしてみてはいかがでしょうか。次に担当したのは全くの新規システムで、サーバー側をC++、クライアント側をJavaで実装するクライアント・サーバー型のシステムでした。わたしは主にクライアント側の実装を担当しました。今では考えられませんが、十数年前はサーバーをJavaで実装するのはリスキーという判断があり、上記のような構成になりました。私は主にクライアントのJava側を担当したのですが、Swingの概念は面白いと思ったものの、その理解には苦労しました。今ならググって参考になるサンプルを探せばなんとかなるのでしょうが、当時はネット上に上がっているサンプルも少なく、例えば画面上にグリッドを表示しグリッド内のセルをクリックするとセルの種別に応じた編集用のエディタがポップアップする、というような処理を実装するのに相当悩んだ覚えがあります。参考になる書籍もあまりなく、以下の書籍くらいしかなかったような気がしますね。■C++とJavaのクライアント・サーバ間通信も実装しました当時は、C++とJavaといったような異環境間の通信方式としてCORBAを使うケースが結構有ったと思います。本システムでも当初はCORBAを検討していたようですが、CORBAを使うためのミドルウェアの費用面でNGとなり、通信部分もスクラッチで実装することになりました。スクラッチで実装する場合、クライアント・サーバ間で通信するためのデータ形式(バイト列の意味、例えば4バイト目から8バイト目は〇〇番号を示すといったようなこと)を予めインターフェースとして定義しておく必要があります。通常、そのようなインターフェース定義はExcel等の設計書で作成しますが、確かそのExcelのVBAの機能を使って、インタフェース定義からJavaとC++の通信用クラスを自動生成するようなマクロを作った覚えがあります。当時はこの手のソースコードの自動生成という概念が結構流行ってたと思いますが、最近はあまり無いですかね。この仕事で、Java、C++、VBAについてひと通りのコーディングを学んだ気がします。