- PR -

クラス名とデータ変数を区別する記法はありますか

投稿者投稿内容
ほむら
ぬし
会議室デビュー日: 2003/02/28
投稿数: 583
お住まい・勤務地: 東京都
投稿日時: 2003-09-09 10:43
ども、ほむらです。
Javaって日本語名使えたんですね(笑
--------
僕もプログラム中に日本語を使用するのはあまり好きではありません。
入力がめんどくさいというのもありますけど
見慣れていないのでコード的にもすきなれないというのが
その理由です。

まぁ最近はVBAの関係であまり違和感なくつかってますが。。。。
ちなみに、僕が日本語を使用するのは以下のようなものです。
()内はJavaで使うとしたらですね。
・オブジェクト名(class,interface,コントロール類)
・関数名(でも、実際には使わないかも。。。)
ということで変数の名前そのものには日本語は使用しません。。。
Jun氏の例をまねるのなら
コード:
public class あずさ implements 車両
{ 
  public static void main(String[] args) 
  { 
    車両 azusa2go = new あずさ(); 
    ... 
  } 
} 
とか。。かな?


でも、日本語(というかCKJ)の使用は移植性にかかわるので
プログラムで使用するのはどうかとも思いますけどね。。。
僕が使っているのもあくまでその場限りの個人利用目的ですし
Jun
大ベテラン
会議室デビュー日: 2003/08/25
投稿数: 141
投稿日時: 2003-09-09 11:21
なるほどやっぱりクラス名などと変数名を区別するとなると
片方は英語でということになるのでしょうか.名前の先頭に何かつけるとしても
適当なものは見つからないし

いずれにせよ基底クラスや自分で作る汎用的(国際的に使用可能な)クラスは
私は英字名を使っているので混在はさけられないのですが

でも日本語のソースは読みやすいですよ
それに名前を考える苦労がいらないし, とても短くなります.
日本の規格に関するものなぞ,そのまま規格の名称を使えます.
まりり
ぬし
会議室デビュー日: 2001/12/05
投稿数: 329
投稿日時: 2003-09-10 01:38

引用:

Junさんの書き込み (2003-09-09 11:21) より:
なるほどやっぱりクラス名などと変数名を区別するとなると
片方は英語でということになるのでしょうか.名前の先頭に何かつけるとしても
適当なものは見つからないし


別に素直に「〜クラス」というルールをつけたっていいと思うんですけどね。

引用:

いずれにせよ基底クラスや自分で作る汎用的(国際的に使用可能な)クラスは
私は英字名を使っているので混在はさけられないのですが

でも日本語のソースは読みやすいですよ
それに名前を考える苦労がいらないし, とても短くなります.
日本の規格に関するものなぞ,そのまま規格の名称を使えます.


元が英語ぽいソースの中に日本語がパラパラと混在するのは読みやすいです?
ぱっと想像しただけではとても思えないです・・・

とはいえ、今ではRDBMSによっては日本語テーブル名とか日本語列名とか
使えちゃったりするので、サンプルなんかでは使われちゃったりするのかも
しれません。

でもやっぱり気持ち悪いですね。感覚的に。
Jun
大ベテラン
会議室デビュー日: 2003/08/25
投稿数: 141
投稿日時: 2003-09-10 08:24
引用:

まりりさんの書き込み (2003-09-10 01:38) より:
別に素直に「〜クラス」というルールをつけたっていいと思うんですけどね。


そういえばそうですね.全然思いつきませんでした.
言われてみるとそのほうがかえって自然だし, 長々とパッケージ名で修飾するより
よほど短くなるし
早速使い始めたばかりのeclipseを使って置換することにしました.
引用:

元が英語ぽいソースの中に日本語がパラパラと混在するのは読みやすいです?
ぱっと想像しただけではとても思えないです・・・

とはいえ、今ではRDBMSによっては日本語テーブル名とか日本語列名とか
使えちゃったりするので、サンプルなんかでは使われちゃったりするのかも
しれません。

でもやっぱり気持ち悪いですね。感覚的に。


これは慣れの問題化と思います.
私も最初抵抗がありましたが, 慣れると何ということは無いです.
でもソースを見てて時々ひとりで笑っちゃうことがありますけど
らすかる
会議室デビュー日: 2003/08/18
投稿数: 5
投稿日時: 2003-09-10 09:27
[/quote]
これは慣れの問題化と思います.
私も最初抵抗がありましたが, 慣れると何ということは無いです.
でもソースを見てて時々ひとりで笑っちゃうことがありますけど
[/quote]

私も、慣れればどうってことはないと思いますよ。
どうもみなさん、日本語を使うことを敬遠してるようですが、
日本人はもっと積極的に日本語を使うことを考えてもいいと思うんです。
みなさん、「英語がいい」と主張するほど英語が得意なんでしょうか。
得意な方もいるでしょうが、たとえ本人が英語が得意でも
ソースコードは通常作った本人だけが見るものではないです。
誰が見ても処理内容がわかりやすいソースコードが一番ですよ。
日本語で書けば、ソースを見ただけで処理内容が一目瞭然じゃないですか。
(もちろん汚いソース書けばいくらでも読みにくくはできますが)

英語で書こうとすると、名前が長くなりがちだし
最悪なのは、長くなるからといってわけのわからん略語だらけにすること。
「ユーザ名パスワード登録処理」を「usrNmPsWdRgPrc」とか。
こんなふざけた命名規約があまりにも一般的にまかり通ってます。
これだけで開発・メンテナンス効率を著しく落としてるのは明らかです。

もっと日本語命名が広まってほしいな〜

unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2003-09-10 10:04
unibon です。こんにちわ。

プログラムのソースコード中にある文字列が、
クラス名なのか変数名なのか、や、
変数がインスタンス変数なのかローカル変数なのかは、
少なくとも Java ならばそれが登場しているコンテキストで一意に決定できます。
したがって、プログラマがいちいち、○○クラス、とか、○○インスタンス変数、
などのように名前を修飾する必要はないと思います(型についても同様に)。

といっても上記は、理想論であり、前提としては、
オンザフライでコンパイルできてしまい、
IDE などのツールが自動認識して色分けなどして表示できて、
といったプログラマに対する支援機能が不可欠ですが。

なお、変数名に日本語を使うかどうかですが、
現状でたとえば、

コード:
public class キャイ〜ン implements お笑い芸人 {
}


とかはコンパイルできません(波の文字がダメ)。
これはユニコード絡みの問題ですが、
これに限らずいろいろトラブルの元になりますので、
使わずに済むなら使いたくないところです。

あと、外来語をどうするか、という問題があります。
http://www.kokken.go.jp/public/gairaigo/Teian2_tyuukan/iikaego.html
を見ると、たとえば「login(ログイン)」は「接続開始」とする案がありますが、
コード:
public class Telnet {
    public void connect(); // Establish connection.
    public void login(); // Open session.
}


を日本語にすると、
コード:
public class 遠隔仮想端末規約 {
    public void 接続();
    public void 接続開始();
}


になるのでしょうか。良く分からなくなってしまいます。
ほむら
ぬし
会議室デビュー日: 2003/02/28
投稿数: 583
お住まい・勤務地: 東京都
投稿日時: 2003-09-10 10:12
ども、ほむらです。
----------------
先にも言いましたが英語というかASCII文字以外の利用は
利用できる環境の限定につながります。
たとえば、海外に友達ができたとして便利なエクセルのマクロがあったとしても
日本語を使用してしまった時点で日本語版のofficeでしか動作保証がもてません。

# だれがみてもわかり易くするためにプログラムにはコメントが必要なのです。
# 一昔前はコメントすら英語でしたが(笑

まぁなんていうか。。。
ソースコードは書きやすくなるけど環境が変わったときに発生したバグの
根深さはかなり深いということですか

# 普通のPerl(not JPerl)で日本語を扱ってみればこの辺実感が出来るかもw
らすかる
会議室デビュー日: 2003/08/18
投稿数: 5
投稿日時: 2003-09-10 10:33
引用:

先にも言いましたが英語というかASCII文字以外の利用は
利用できる環境の限定につながります。

たとえば、海外に友達ができたとして便利なエクセルのマクロがあったとしても
日本語を使用してしまった時点で日本語版のofficeでしか動作保証がもてません。



その辺はケースバイケースで考えましょう。
日本語以外の環境で開発する・使用することが想定されるのであれば、
ASCII以外の文字は使うべきでないのは当然です。
外人にまで日本語を読めとは言いませんし^^;

現実問題、どう考えても日本語環境以外で使用することがありえない
開発プロジェクトであれば、
わざわざ日本語以外の環境のことを考えたってしょうがないです。
環境の問題、ソースコードの読みやすさを天秤にかけて、
日本語を使うことを選択するケースは、もっと多くてもいいはずでは、
というのが私の主張です。
頭ごなしに「環境の問題」「気持ち悪い」と
日本語が敬遠されるのはもったいないと思うんですよ。

繰り返しますが、常に日本語を使うのがいいとは言いません。
(前の投稿の私の説明も足りなかったですね。)


># だれがみてもわかり易くするためにプログラムにはコメントが必要なのです。

よかったら、マーチン・ファウラーの「リファクタリング」読んでみてください。
この常識が覆されます^^;


#なんか、スレッドの本題から外れてますね・・・

スキルアップ/キャリアアップ(JOB@IT)