- 締切済み
javaの日本語プログラムについて
お世話になります。 JAVAのプログラミングについて、ご質問させてください。 今回、プロジェクトで利用を検討しているツールがあって、 そのツールから、javaのクラスを自動生成して、プロジェクト で利用することを検討しています。 ちなみに、作成予定のシステムはWebアプリケーションです。 ただ、ここで問題になっていることが、ツールから吐き出されるソースのjavaのオブジェクトの名称が日本語で記述されているという何ともナンセンスな仕様になっているということです。 実際に、自動生成したクラスを呼び出すプログラムのサンプルイメージは以下の通りです。 import CorticonService.Cargoデシジョンサービス; import CorticonService.CargoデシジョンサービスLocator; import CorticonService.CargoデシジョンサービスSoap; public class ServiceTest { 中略… Cargoデシジョンサービス service = new Cargoデシジョンサービ スLocator(); CargoデシジョンサービスSoap soap = null; try { soap = service.getCargoデシジョンサービスSoap(); } catch (ServiceException e1) { // TODO 自動生成された catch ブロック e1.printStackTrace(); } CorticonResponseType res = null; try { res = soap.processRequest(param); } catch (RemoteException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); } } …っといったような記述になります。我ながら、こんなプログラムを書きたくないな~っとは思うのですが、ローカルでの検証では問題なく動きます。ただ、実際に上記のような日本語JAVA?を含むプログラムを多種多様な環境で動作させようとした場合、どのような弊害が発生する可能性が あるのでしょうか? こんな質問をすることは、馬鹿げているかもしれませんが経験の浅さからか自分自身検討がつきません。。。 どなたかお答え願えませんでしょうか?
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- luckymako
- ベストアンサー率55% (29/52)
吐かれたソースの文字コードは何ですか? Unicodeなら問題ないでしょう。 他のコードならASCII文字以外は使わないのがいいと思います。
- thamansa
- ベストアンサー率40% (95/232)
こういう選択肢があると思います。 ・ツールに入力するときから、Javaクラス名を意識して英語またはローマ字で入力する。(CargoDecisionService) ・ツールから出力されるファイルの日本語を変換するツールを作成する。(デシジョンサービス→DecisionService) このツールを使わない場合でも、設計時の日本語をいつかはJavaクラス名にする辞書を作るわけですから、どのタイミングでクラス名にするかですね。
- rinkun
- ベストアンサー率44% (706/1571)
Javaの場合、クラス名と記述するファイル名を一致させるようにしているので、ソースファイルの文字コードとファイル名の文字コードの関係によってトラブルが発生する可能性はあります。 まあ現在のちゃんと設定された日本語環境のあるOS上なら問題ないかもしれませんけど。
- _ranco_
- ベストアンサー率58% (126/214)
ふつうに日本語環境のあるマシンとOSの上なら、なにも問題ないはずです。 なお、ソースについては、各プラットホームの上で開発等をするなら、各プラットホームのデフォルトのエンコーディングで書かれている必要があります。でも、テキストファイルのエンコーディング変換は簡単でしょう。