- - PR -
Javaと.NETとの相性は?
投稿者 | 投稿内容 | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-09-12 13:01
wiemさんは部門におけるシステムアドミニストレータ的な役割で、業務最適化のためのアプリケーションを随時ExcelとVBAとADOを利用して作成されていて、長年の改修にわたって処理も徐々に複雑化しパフォーマンスも悪くなってきている既存のアプリケーションを会社のシステム再構築のついでに、開発経験があるVBの後継であるVB.NETで再開発しようと考えられているのだと思います。(推測)
結局のところ「Javaを中心としたイントラネットと.NETの相性」というよりはシステム間のインターフェース方式をどの様に行うか、ということになるかと思います。というのもwiemさんの所属する部門のアプリケーション(システム)は既に全社的なシステムライフサイクルから独立した存在であると考えられるからです。 現在は法令準拠(コンプライアンス)がまずシステム再構築の際に重視されると思いますので、相手先のDBMSに接続してデータを好きなだけ引きずり出してくることは難しいと思います。おそらく相手先からファイルをもらうことになるはずです。 .NETで開発されるのであればインターフェースとしてはXMLが良いと思います。あらかじめこちらからスキーマなどの要件を伝えて「相性」を確保するのが良いと思います。 ※その際にシステム仕様書を作成されることをお勧めします。wiemさんが所属する部門はシステムをwiemさんに頼り切っているようなので、もしwiemさんが急病、離職などで職場を離れられた場合、システムのメンテナンスができなくなり業務が停止します。これはものすごいリスクです。 | ||||||||||||||||||||
|
投稿日時: 2005-09-12 20:54
このような文脈で、Java は言語なので、フレームワークである .NET とは比較できない, という意見を初めて見ました。まず「Javaと括った場合は確実に言語になる」というのが誤りだと私は思います。Java は確かに「言語」ではあるけど、決してそれだけじゃないです。Java はプログラム実行の「プラットフォーム」でもあるし、膨大で高レベル(←品質とか技術が高レベルということではなく、いままでの言語の標準ライブラリとは比較にならないほど高いレイヤーの便利APIが整備されているということ)な標準ライブラリ群を含めて考えるなら Java は言語ではなく環境と言えます。 Java ≒ C# ではなく、Java ≒ C# + .NET フレームワーク(クラスライブラリ) Java が好きな人ってのは、Java の言語仕様が好きなわけではなく、標準ライブラリのスタイルや文化が好きなんじゃないかと。良く言われる「Java 便利だよ。」とか「Java って簡単だよ。」という、この Java ってのは言語仕様ではなくたいていはクラスライブラリを指しているわけで。 Java と .NET は十分過ぎるくらいに比較対象であり、好敵手です。 | ||||||||||||||||||||
|
投稿日時: 2005-09-13 04:08
皆さんのご意見をありがたく、拝見させていただいております。
私の部署での処理は、現在自分でしか処理できません。 というのも、部署の業務システム自体が自分ひとりの手で出来上がってしまっているためなのです。もちろん、そのアプリが誰にでも扱えるレベルまで高ければよいのですが、何しろその辺がプログラマではないことの証かもしれませんが、満足なヘルプのない状態です。 現在出来上がっているいくつかのフォームなどでは、到底説明不足のままです。 皆さんにとっては当たり前でしょうが、個々の作業をコンピュータ処理に統一し、それによるメモリによるスピードと、整合性による正確さは、手作業では到底かなうものではありませんので、業務内容を熟知していても、その業務を行うことはできませんし、また一方で、自力で業務システムを作り上げることができる人でも、業務自体の詳細を知らなければ何も処理できません。 こんなわけで、自分がいないと成立しない部署になってしまっています。 そのうえ、社内のいろいろな部署に付加価値を付けて情報を配信するにあたり、相手側の部署では、その情報を大いに利用しながら業務を進めるという状態になってきています。 当初の予定通りというところなのですが、もともと、自分だけができるというのは本意ではありません。何かが起きたらそれまでです(この辺はAnthyhimeさんのご指摘通りです)。 こんな風で、Javaだの.NETだの言う前に、部署の業務を図解するところから始めるべきかもしれません。 そして、説得(この辺は、さるさんのご指摘通りです)。 一方では、一般業務レベルまで高められたアプリを作る経費を考えると、どうだろう?などと、弱気にもなっています(実際にそのような経費は回ってこないのですが)。 せっかく皆さんからJava移行への示唆などをいただいていながら、自分が社内の動きをつかめずに漠然とした不安を感じているようでは、解決できないかもしれません。 しかし、困ったなぁ。ひとまず、この困った状況を社内に説明するところから、初めていこうと思いますが、Javaへの移行も視野に入れてみます。 ちなみに、C#を覚え始めています。これも最初にJavaがよぎったからなのですが。まだ、VSTOを利用していませんが、Excelを操作するのは、なかなか難しくていまのところ先行き暗いな、と悲しくなっていました。 | ||||||||||||||||||||
|
投稿日時: 2005-09-13 09:33
VSTO は情報が少ないので、困りますよね... とりあえず、以下のサイトをどうぞ。 Visual Studio Tools for Office Users Group Japan または、COM を利用して... ぎゃー、try 〜 finally の嵐ですw COM オブジェクトを解放する _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||||||||||
|
投稿日時: 2005-09-13 10:01
それが一番良いかも知れませんねぇ〜。 とりあえず、仲間を増やせる事をお祈りしてます。 がんばってねぇ〜!! | ||||||||||||||||||||
|
投稿日時: 2005-09-13 14:02
どもです。がるです。
えっと…ごめんなさい。スレ主がさるさんだと思ってました(苦笑 # どーやって間違えたんだか… < おいら
うい。この辺の「サーバ側とクライアント側で違う言語で実装できる」のって、サバクラ系の利点ですよねぇ。
ん〜…両方(笑 言語の勉強&アルゴリズムやら設計手法の勉強ってのも大切だと思いますし、ただ他方でプロトコルなどの「やり取りの仕方」ってのもとても大切だと思っているので。 優先順位は「興味が向いたほう」でよいと思っているのですが(笑
なるほど。 私の周囲だと、JavaといえばJava言語単体を差して、実際に会話をするときには例えば「JavaでJSP」とか「JavaでJ2EE+JSP」とか「JavaのJ2EEで特にEJBメイン」とか、そんな風に切り分けて話をしているので、Javaとみて単純に言語を連想していました。
ちなみに、上記の発言から察すると「Java と .NET C# は十分過ぎるくらいに比較対象であり」なんですかね? それともJavaと.NET(言語はC#でもVBでもCobolでもよし)は…なんでしょうか? いずれにしても、Javaという単語でフレームワークまで含むっていうのはあまりないことだったので勉強になりました。 | ||||||||||||||||||||
|
投稿日時: 2005-09-13 15:50
Java と .NET 全般(VB.NETなどでも) で十分比較対象になると思います。世間で C# や VB.NET と言っているのだって大半は純粋な言語としての話ではなく .NET の標準クラスライブラリを絡めた話だと思いますし。
なるほど。「JavaでJSP」なんて会話が聞こえたら「Java以外でJSPってあるのかよっ」と、ツッコミそうになりますが。まあ、それはそれですかね。 ところで、がるがるさんの指す Java (言語単体) の範疇ってどの辺ですか? java.lang や java.io, java.net あたりは「Java」と言えますか? | ||||||||||||||||||||
|
投稿日時: 2005-09-13 16:49
どもです。がるです。
確かにこれについてはほぼ同意です。 懸念点としての「例えばC#で違うプラットフォームが出たら…」って頭がないわけではないのですが。 例えばJavaはもうちょっと「まじめに」懸念しているのですが、C#とかは結局MSが推している言語なので、彼らのプラットフォームが確定でスタンダードになるであろうという予想から、実際に「違うプラットフォームの可能性」は限りなく0だとは思っております :-P
んっと。「Java以外でJSPってあるのかよっ」ってのはそうなのですが。たまに「JSP以外でJavaってあるんですか?」とかいう恐い発言を耳にします(苦笑 結局のところ集合の問題なのですが。そのあたりがあるので、割合その辺は気を使うようにしているです。
んっと、あげられたあたりは3つともJ2SEでしね。なので、ちゃんと会話するときは「JavaのJ2SEの…」というくだりになるです。 実際においらがJavaという単語を単体で使うときは、ものすごく基本的な「言語仕様」部分のみを言及するときだと思うです。 で、それ以外の、いわゆるさまざまなAPIクラスの類は、そのクラスを持っているプラットフォームとかの名前を出来るだけ併用するようにしてるです。 いやまぁ面倒なんですがね(苦笑 特にJavaはその傾向が激しいのですが、「どれを使っているのか」ってのが意外と暗黙の了解になりやすくて、でもその暗黙の了解が「個人ごとに違う」とかっていう状況を結構見ているので。 意識的に気にするようにしているです。 |