アカウント名:
パスワード:
言語の文化みたいなのは当然あるとは思いますが、JavaなのにgetAplCfgStrとかなってるほうがよっぽどイヤです。許せない。
といいますか、あんな原型不明まで切り詰めた略記に違和感を感じないのは、UNIXとCの呪いです。UNIXとC界隈のほうがイレギュラーなんですよ。
他でもLisp系の言語を書いているはずなのに、何故か途中からC関数のmanを引いている…って事態ありますし。Cを知らないなら、strftimeとかsscanfとかあんな命名しませんよ。
学校の一年生でいきなりC言語を教えるから、切り詰めすぎた命名法が身についてしまうのかなぁ。最初はJavaかLispを教えた方がいいと思う。
Unix and C are the ultimate computer viruses.(CとUNIXは最悪のコンピュータウイルス)http://www.jwz.org/doc/worse-is-better.html [jwz.org]
ただし、名前を短くするのが古い言語は多くがそう。1行が80文字以上にのばせない(パンチカード)とか、リンカの外部シンボル識別文字数に6文字とか8文字とかの制限があったりした。Cはイレギュラーじゃない。長生きして世の中の体勢が変わってしまってイレギュラーにおもえるようになっちゃっただけ。
ぶっちゃけ、UnixやC標準ライブラリなんて、内輪向けの機能で、素人に使わせることなんて想定してない。
本気で教育用に使うなら、まともなコマンドとライブラリを用意して、生のコマンドやライブラリを使わずに済ませるべきなんだよね。
ま、当然、そのままじゃ学外じゃ即戦力にはならないけど、実習で使ったライブラリしか知らないような人間は、そもそも即戦力足り得ないから問題無い。
その辺を理解せずに、即戦力風味な新人出荷したんじゃ、教育の意味が無い。これは、教える側の手抜きが酷すぎると考えるべきかと。
それに、「プログラミング教育」で要求されるのは、中途半端な小技じゃなく、きちんと物を組み上げる能力の筈。ローカルなライブラリしか使えなくても、それが只の便利ツールじゃなく、自力での「組み立て」を要求するプリミティブな物なら、その技術はすぐに別環境でも応用出来るし、そう云う人材の方が使える場合が多いと思う。
「半端に知ってる奴」が一番手に負えないのは、皆分かってると思うから、「生のUnixコマンドやC標準ライブラリは、初心者には教えない」って云う気風が望ましいかと。
わけわからない。初心者はコマンドやライブラリをどうしろっていうのさ?
ぶっちゃけ(笑)
お前が言うな >> lispcontents-of-the-address-part-of-register-number [wikipedia.org]contents-of-the-decrement-part-of-register-numberとか使ってるんか
K&Rの出だしのころは、自前リンカがつかえなくて、FORTRAN準拠だったりして、外部名(グローバル変数とか関数)に実は7文字制限がでたりした。manglingするにも短すぎる。
6文字のunlinkやumountがあるからcreateをcreatに切り詰めた理由としては弱い。導入時期違うかもしれないけど。
最初に戻ってやり直せるんだったら creat() を create() に全部書き換えたいとカーニハン博士が言っていた覚えがあるんですが、ちょっとした綴り誤りが発端だったのではないでしょうか。今となっては書き直すことはとても出来ないというだけ。B言語でもそうなんでしたっけ?
creat うんぬんの話は「UNIX プログラミング環境」 7 章 1 の脚注に、Ken Thompson のことばとして載っています。あと、その話を知っているとこれ [bell-labs.com]の "C Programming" の節でクスリと笑えるかも知れません。
いや、UNIX と C だけではなく、昔の処理系だと8文字とか31文字くらいの制限がいろいろあったからでは。C に限らず Basic やアセンブリ言語とかも。
ま、長すぎても短すぎてもわかりづらいですがね。
一時間のカセットテープが540KByte程度だったし、読み込みも1200bpsだったので、関数名の長さはクリティカルだった。
ハードディスク前提の言語とそれ以前の言語を一緒にしちゃいけない。FORTRAN77なんてもっとひどい、紙テープ前提の言語だ。
昔のFORTRANの変数名が6文字までなのは、最初の実装であるところのIBM704が36bitワードマシンで1ワードに6bit文字を6つ格納できたためです
> getAplCfgStr子音で省略しまくるのは MFC の流れだな。省略派の俺でも気持ちが悪いです。
getApplicationConfigurationString() の省略は、getAppConfString() くらいが正常な落とし所だと思う。# あと、戻値が string や configString 型なら、getAppConf() or getApp() でいいと思うけど。
どちらにせよ、クラスやメンバ名が20文字で説明できないくらい複雑な処理をその中でさせてるんだったら、そもそも設計から見直した方がいいんじゃない、って思う。
# 特に .NET な
Appは略さずApplicationと書きましょうよ
1. 元コメントはまさにセンスのない略し方の例示であろうに。2. getAppConfigString なんてのがセンスのある略し方のつもり?
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
アレゲはアレゲを呼ぶ -- ある傍観者
むしろ省略するほうが許せない (スコア:1, すばらしい洞察)
言語の文化みたいなのは当然あるとは思いますが、
JavaなのにgetAplCfgStrとかなってるほうがよっぽどイヤです。許せない。
CとUNIXの呪い (スコア:1)
といいますか、あんな原型不明まで切り詰めた略記に違和感を感じないのは、UNIXとCの呪いです。
UNIXとC界隈のほうがイレギュラーなんですよ。
他でもLisp系の言語を書いているはずなのに、何故か途中からC関数のmanを引いている…って事態ありますし。
Cを知らないなら、strftimeとかsscanfとかあんな命名しませんよ。
学校の一年生でいきなりC言語を教えるから、切り詰めすぎた命名法が身についてしまうのかなぁ。
最初はJavaかLispを教えた方がいいと思う。
Unix and C are the ultimate computer viruses.(CとUNIXは最悪のコンピュータウイルス)
http://www.jwz.org/doc/worse-is-better.html [jwz.org]
Re:CとUNIXの呪い (スコア:2)
ただし、名前を短くするのが古い言語は多くがそう。1行が80文字以上にのばせない(パンチカード)とか、リンカの外部シンボル識別文字数に6文字とか8文字とかの制限があったりした。Cはイレギュラーじゃない。長生きして世の中の体勢が変わってしまってイレギュラーにおもえるようになっちゃっただけ。
教育現場の手抜きが問題 (スコア:1)
ぶっちゃけ、UnixやC標準ライブラリなんて、内輪向けの機能で、素人に使わせることなんて想定してない。
本気で教育用に使うなら、まともなコマンドとライブラリを用意して、生のコマンドやライブラリを使わずに済ませるべきなんだよね。
ま、当然、そのままじゃ学外じゃ即戦力にはならないけど、実習で使ったライブラリしか知らないような人間は、そもそも即戦力足り得ないから問題無い。
その辺を理解せずに、即戦力風味な新人出荷したんじゃ、教育の意味が無い。
これは、教える側の手抜きが酷すぎると考えるべきかと。
それに、「プログラミング教育」で要求されるのは、中途半端な小技じゃなく、きちんと物を組み上げる能力の筈。
ローカルなライブラリしか使えなくても、それが只の便利ツールじゃなく、自力での「組み立て」を要求するプリミティブな物なら、その技術はすぐに別環境でも応用出来るし、そう云う人材の方が使える場合が多いと思う。
「半端に知ってる奴」が一番手に負えないのは、皆分かってると思うから、「生のUnixコマンドやC標準ライブラリは、初心者には教えない」って云う気風が望ましいかと。
-- Buy It When You Found It --
Re: (スコア:0)
わけわからない。
初心者はコマンドやライブラリをどうしろっていうのさ?
ぶっちゃけ(笑)
Re: (スコア:0)
でも、あのシンプルさが好きなんだよなぁ。
Re:CとUNIXの呪い (スコア:1)
お前が言うな >> lisp
contents-of-the-address-part-of-register-number [wikipedia.org]
contents-of-the-decrement-part-of-register-number
とか使ってるんか
Re:実はFORTRANの呪い (スコア:0)
K&Rの出だしのころは、自前リンカがつかえなくて、FORTRAN準拠だったりして、
外部名(グローバル変数とか関数)に実は7文字制限がでたりした。
manglingするにも短すぎる。
Re: (スコア:0)
6文字のunlinkやumountがあるからcreateをcreatに切り詰めた理由としては弱い。導入時期違うかもしれないけど。
Re:実はFORTRANの呪い (スコア:1)
最初に戻ってやり直せるんだったら creat() を create() に全部書き換えたいとカーニハン博士が言っていた覚えがあるんですが、ちょっとした綴り誤りが発端だったのではないでしょうか。今となっては書き直すことはとても出来ないというだけ。
B言語でもそうなんでしたっけ?
Re:実はFORTRANの呪い (スコア:1)
creat うんぬんの話は「UNIX プログラミング環境」 7 章 1 の脚注に、Ken Thompson のことばとして載っています。
あと、その話を知っているとこれ [bell-labs.com]の "C Programming" の節でクスリと笑えるかも知れません。
Re: (スコア:0)
いや、UNIX と C だけではなく、昔の処理系だと
8文字とか31文字くらいの制限がいろいろあったからでは。
C に限らず Basic やアセンブリ言語とかも。
ま、長すぎても短すぎてもわかりづらいですがね。
Re: (スコア:0)
一時間のカセットテープが540KByte程度だったし、読み込みも1200bpsだったので、関数名の長さはクリティカルだった。
ハードディスク前提の言語とそれ以前の言語を一緒にしちゃいけない。
FORTRAN77なんてもっとひどい、紙テープ前提の言語だ。
Re: (スコア:0)
昔のFORTRANの変数名が6文字までなのは、最初の実装であるところのIBM704が36bitワードマシンで1ワードに6bit文字を6つ格納できたためです
Re: (スコア:0)
> getAplCfgStr
子音で省略しまくるのは MFC の流れだな。
省略派の俺でも気持ちが悪いです。
getApplicationConfigurationString() の省略は、
getAppConfString() くらいが正常な落とし所だと思う。
# あと、戻値が string や configString 型なら、getAppConf() or getApp() でいいと思うけど。
どちらにせよ、クラスやメンバ名が20文字で説明できないくらい複雑な処理を
その中でさせてるんだったら、そもそも設計から見直した方がいいんじゃない、
って思う。
# 特に .NET な
Re: (スコア:0)
Appは略さずApplicationと書きましょうよ
Re: (スコア:0)
1. 元コメントはまさにセンスのない略し方の例示であろうに。
2. getAppConfigString なんてのがセンスのある略し方のつもり?