1 名前:nobodyさん [2008/06/09(月) 02:48:24 ID:leLDOgm2] いまさらだが、後付感たっぷりでワロタ PHPの方がはるかに自然な形で実装しているわ。 なんだろうね。言語仕様の説明=内部実装の説明になっていて 使うためではなく、言語の勉強のための言語だなぁと思った。
50 名前:nobodyさん mailto:sage [2008/06/17(火) 22:14:08 ID:???] コンストラク作るのは面倒じゃないだろ。その仕組みを理解するのは面倒というか大変だが。
51 名前:nobodyさん mailto:sage [2008/06/21(土) 13:06:50 ID:???] >>1 比較相手にPHPを持ち出し、しかもPHPの方がマシって…wwwww PHPは糞中の糞
52 名前:nobodyさん mailto:sage [2008/06/21(土) 14:14:24 ID:???] perlよりは上等だよ
53 名前:nobodyさん mailto:sage [2008/06/22(日) 18:07:57 ID:???] >>51 サーバサイドスクリプトとして比較するならPHPの方が上に決まってんじゃん
54 名前:nobodyさん mailto:sage [2008/06/22(日) 18:34:19 ID:???] まあ、PHP以外の、PerlとかRubyとか知ってる人にとっては、PHPの低機能はつらいものがあるよ。 初心者が書いても、上級者が書いても、同じようなコードにしかならないんだから。 プログラム書いててこれほどつまらない言語はない。
55 名前:nobodyさん mailto:sage [2008/06/22(日) 18:45:36 ID:???] ふむ、同意だけど もしかしたらそれで逆に 保守性の水準を確保してたりしてな
56 名前:nobodyさん mailto:sage [2008/06/22(日) 18:54:53 ID:???] 同じ様なコードにしかならないことが低機能?イミフ
57 名前:nobodyさん mailto:sage [2008/06/22(日) 20:38:16 ID:???] コードを書くことが目的なんでしょw $_ みたいな同じ名前の変数ばかり多用する 醜いソースかいたりなw
58 名前:nobodyさん mailto:sage [2008/06/22(日) 21:34:09 ID:???] Javaのように厳密に書くことも出来なければ、PerlやRubyのように記述性が高いというわけでもない。簡単だから覚えるのは速いのが唯一の長所。それがPHP。
59 名前:nobodyさん mailto:sage [2008/06/22(日) 23:33:15 ID:???] でもまあ、クラスの定義を 普通に class キーワードを使って かけるのはすばらしいと思うよ。 class Foo extends Bar { private $a; function __construct() {} function func() {} } $foo = new Foo(); $foo->func(); オブジェクト指向を知っている人なら誰だってすぐわかるでしょ? 自然なオブジェクト指向。
60 名前:nobodyさん mailto:sage [2008/06/23(月) 00:03:23 ID:???] クラスベースOOPの書法が大好きなのは判わんでもないけどさ そもそもクラスベースってほんとに良いものなのかとか語られる昨今だしな ECMAScrips3rdの単純さと汎用性の兼ね合いなんか絶妙だしな
61 名前:nobodyさん mailto:sage [2008/06/23(月) 00:16:33 ID:???] 世の中の主流はクラスベースOOP
62 名前:nobodyさん mailto:sage [2008/06/23(月) 00:24:08 ID:???] うん判るのよそれは boost触っててクラスとかもうどうでもよくね見たいに 脳味噌が腐った豆腐になってる馬鹿の戯れ言です rubyやpythonその辺の手懐けかた上手いよな perlにはこの際、我が道突っ切ってもらった方が面白そうな
63 名前:nobodyさん mailto:sage [2008/06/24(火) 08:04:23 ID:???] 文法は一番PHPがわかりやすいというか、自然だわな。CやJavaやPerlなんかを知ってれば、特別学習しないでもだいたい予測つく。
64 名前:nobodyさん [2008/06/25(水) 20:05:34 ID:eRXwF1Bb] つか、OOPの書き方そのものの参考文献が少なすぎるんだよ。 ・OOPとは……知ってるから! ・言語XXXでOOP……基礎過ぎるから! ・言語XXXでデザインパターン……急に高度過ぎるから! もっと、初・中級者向けのOOP書き方入門が欲しいですよ。 オブジェクト指向Perlマスターコースだって? あんなの日本語じゃねーよ(読破したけどさw)
65 名前:nobodyさん mailto:sage [2008/06/25(水) 22:44:06 ID:???] >>64 >・言語XXXでOOP……基礎過ぎるから! >・言語XXXでデザインパターン……急に高度過ぎるから! そこは別に飛躍してなくね? OOPの基礎が判ったら、ちょっと実践パターン見て行きましょうか…… という流れだし 逆にどうしろと。 単に、実感湧かないってことかもしれないな。 Perlじゃないけど、俺はるびま出張版として出版された「正しいRuby コードの書き方講座」が言語問わず参考になった。 他人の成果物の設計に駄目出ししまくるだけの本wなので、妙に実感あったw 青木に煽られない程度のコードを保ちたいなという、欲求が探究心に繋がった感じ。 ああいう傾向の本、言語問わず他にねえもんかな。 >あんなの日本語じゃねーよ(読破したけどさw) 逆に読みたくなるぜ、その感想w 多分おれはヘン
66 名前:nobodyさん mailto:sage [2008/06/26(木) 00:52:18 ID:???] >>65 たぶん、分かってるとは思うけど、 OOP基礎 → デザパタ本は、急に難しくなりすぎだよ。 OOP基礎本は、本当に基礎の基礎しか書いてないもん。 その方向は間違ってないんだけどさ。 その間を埋める本がないんだよ。 つまり、>>65 のいう「正しいRubyコードの書き方講座」や Periで言えば、宮川氏のML(いつものことながら途中で飽きやがった!)のような。 デザパタってある程度実践詰んでないと、 意味……というかメリット理解できないじゃん。 Ruby触ったこと無いけど、最近本も充実してきたし、手出してみるかな。
67 名前:nobodyさん [2008/06/28(土) 14:14:12 ID:SGqDbYHd] 私はこれで Perl から乗り換えました。 web.archive.org/web/20010427071311/www.ruby-lang.org/ja/column/v0004.html バベル案内 www.aoky.net/articles/steve_yegge/tour_de_babel.htm Perlもまた、間もなくなくなる。 Perl, Python, Ruby の比較 www.shido.info/py/python1.html perl/Ruby、これから覚えるべきなのは? q.hatena.ne.jp/1145610898
68 名前:nobodyさん mailto:sage [2008/06/29(日) 01:47:37 ID:???] しかし何でPHP5は寸前のところでnamespaceをなくしてしまったのか。 クラス名をアンダーバーで繋げるという回避策は悲しすぎる。 唯一悔やまれる点だわ。
69 名前:nobodyさん mailto:sage [2008/06/29(日) 02:20:58 ID:???] そんなにネームスペースって必要かなぁ? アンダーバーでつなげればいいだけでしょ?
70 名前:nobodyさん mailto:sage [2008/06/29(日) 02:30:45 ID:???] それがまんどくせえんだよ
71 名前:nobodyさん mailto:sage [2008/06/29(日) 02:40:05 ID:???] >>70 えっ? (ネームスペースがあるほかの言語で)ネームスペースの部分省略してるの? もし名前がかぶったらどうするの?
72 名前:nobodyさん mailto:sage [2008/06/29(日) 11:24:57 ID:???] ネームスペースがない、パッケージがないのは、PHPにろくなクラスライブラリがない理由の一つだな。 好き勝手にファイル名やクラス名をつけるから、使いまわしが利かない。
73 名前:nobodyさん mailto:sage [2008/06/29(日) 11:41:43 ID:???] すごいこじ付けを見たw
74 名前:nobodyさん mailto:sage [2008/07/01(火) 17:19:40 ID:???] ネームスペースがかぶったらどうすんの?
75 名前:nobodyさん mailto:sage [2008/07/04(金) 23:38:23 ID:???] PHP5.3からnamespage復活するのってホント?
76 名前:nobodyさん [2008/07/08(火) 05:19:35 ID:TOo0hU7/] 目次 - oreilly.co.jp -- Online Catalog: 初めてのRubyより 1章 ようこそ、Rubyのある生活へ 1.1 Rubyの特徴 1.1.1 オブジェクト指向言語 1.1.2 より良いPerl blog.livedoor.jp/dankogai/archives/51077051.html
77 名前:nobodyさん mailto:sage [2008/07/08(火) 08:36:37 ID:???] ポチろうと思ってて忘れてたわ
78 名前:nobodyさん mailto:sage [2008/07/09(水) 00:13:50 ID:???] >>24 ペリw
79 名前:nobodyさん mailto:sage [2008/07/11(金) 16:14:23 ID:???] >>72 >ネームスペースがない、パッケージがないのは、PHPにろくなクラスライブラリがない理由の一つだな。 それは探せる頭が無いだけ。 ネイティブインストールしなきゃ使えないPerlモジュールより、よっぽど充実してて汎用も効くクラス多いよ。
80 名前:nobodyさん mailto:sage [2008/07/12(土) 02:14:10 ID:???] PHPにまともなクラスライブラリなんてないよ。あるのは膨大な組み込み関数とあまたあるフレームワーク付属のヘルパークラスだけ。
81 名前:nobodyさん mailto:sage [2008/07/12(土) 02:47:00 ID:???] まともなクラスライブラリが無い。ってことは 足りないクラスライブリががあるってことだよな? その足りないクラスライブラリ、いってみて。
82 名前:nobodyさん mailto:sage [2008/07/12(土) 03:46:28 ID:???] 少なくともPearにあるライブラリのPHP5・E_STRICT対応版
83 名前:nobodyさん mailto:sage [2008/07/12(土) 11:27:01 ID:???] notice出ちゃなんでだめなの?
84 名前:nobodyさん mailto:sage [2008/07/12(土) 15:03:35 ID:???] もしかしてここ間違ってないですか?っていう程度。 意図的にそうしているのなら問題ない。
85 名前:nobodyさん mailto:sage [2008/07/12(土) 20:15:01 ID:???] 本来ZendフレームワークがPearを引き継ぐはずだったけど、そうはなりませんでした。
86 名前:nobodyさん mailto:sage [2008/07/12(土) 20:18:18 ID:???] 2-3号前のWEB+DBプレスの座談会に書いてあったけど、普通そこそこPHPやってると飽きる。他の言語に行く。だから、ユーザコミュニティのレベルが一向に上がらない。
87 名前:nobodyさん mailto:sage [2008/07/12(土) 22:00:02 ID:???] >>86 それは飲み屋での雑談よりも信頼すべき話なのか?
88 名前:nobodyさん mailto:sage [2008/07/13(日) 06:47:45 ID:???] 小山哲氏って日本のPHP界じゃトップクラスの有名人だと思うけど、PHPのダメさをあれだけ自覚して語ってるのにはちょっと好印象を持った。仕事として割り切ってるんだろうな。
89 名前:nobodyさん [2008/07/13(日) 09:48:13 ID:aIClzZPC] Ruby 及び Perl におけるクラスの生成について。 b.hatena.ne.jp/entry/http://tomato.or.tp/programming/memo/class/class.html
90 名前:nobodyさん mailto:sage [2008/07/14(月) 18:01:42 ID:???] >>88 > 小山哲氏って日本のPHP界じゃトップクラスの有名人だと思うけど だれ? デイトレーダー? 日本の歴史学者? ぐぐってもわからないや。
91 名前:nobodyさん mailto:sage [2008/07/14(月) 18:15:31 ID:???] 日本のPHP界っていうほどのコミュニティがあるの?
92 名前:nobodyさん [2008/07/18(金) 11:00:23 ID:UyOFQs+N] 344 :デフォルトの名無しさん:2008/07/18(金) 00:56:41 >>334 同意。 PerlのEncodeは終わってる。 言っておくが、自分には使える。 Perl好きだし、Encodeモジュールもわかっているつもり。 ただ、そこまでPerlにはまっていない周りには使えないし、わかってもらえない。 これが致命的。 (よくはまるのは、UTF-8フラグのついた文字列と バイト列としての UTF-8文字列の違いとかのあたり) それに、ソースコードを UTF-8 で書くと、システムがローカルエンコーディングの場合 ファイルを開いたりするのさえ面倒。 Unicode がらみのスクリプトを書くたびに、 sub e { Encode::encode('cp932', $_[0]) } sub d { Encode::decode('cp932', $_[0]) } sub E { map { Encode::encode('cp932', $_) } @_ } sub D { map { Encode::decode('cp932', $_) } @_ } ↑こんなのを上に貼って、 open IN, e"日本語.txt"; とか書いたり、デバッグする時に b 30 ($str eq d"日本語") とかやったりしてるけど、正直言って超バッドノウハウ。 人が見てもやっぱりわからないし。
93 名前:nobodyさん mailto:sage [2008/07/18(金) 12:29:11 ID:???] UTF-8フラグの存在がUnicodeの扱いをかなり複雑にしているよな。 なんでそんなものを作ったのか理解できない。 他の言語にはそんなもの無くてもうまくやっていけてるじゃないか。
94 名前:nobodyさん mailto:sage [2008/07/18(金) 12:34:30 ID:???] >>92 の元書き込み pc11.2ch.net/test/read.cgi/tech/1180713251/l50
95 名前:nobodyさん mailto:sage [2008/07/18(金) 22:19:32 ID:???] PHPだと全部mb_に差し替えないと行けない。
96 名前:nobodyさん mailto:sage [2008/07/18(金) 22:29:23 ID:???] > PHPだと全部mb_に差し替えないと行けない。 見てのとおり、すごくわかりやすいルールです。 一方Perlの場合・・・複雑すぎて ここでは説明し切れません ;;
97 名前:nobodyさん mailto:sage [2008/07/18(金) 23:17:48 ID:???] 複雑者ねー世。外人が作ったライブラリでも日本人が作ったライブラリでも透過的に扱える。
98 名前:nobodyさん mailto:sage [2008/07/18(金) 23:21:26 ID:???] ただし、外人が作ったライブラリがUTF-8(UTF8フラグ)を考慮して ちゃんと作られている場合は。だろ?
99 名前:nobodyさん mailto:sage [2008/07/19(土) 01:30:32 ID:???] 最近でたオブジェクト指向Perlの本ってアルパカ本と比べてどうなの?
100 名前:nobodyさん mailto:sage [2008/07/19(土) 01:53:35 ID:???] Encodeは始め面倒だな〜と思ってJcodeに逃げてたけど使い慣れてくるとしっくりとくる。
101 名前:nobodyさん mailto:sage [2008/07/19(土) 18:13:37 ID:???] そりゃPerl標準なんだからしっくりこないとダメだろw 問題は、慣れないといけないような仕様だってことだ。
102 名前:nobodyさん mailto:sage [2008/07/20(日) 01:21:38 ID:???] 別にJcodeで済むんだったら、Jcodeでもいいけどな。
103 名前:nobodyさん mailto:sage [2008/07/24(木) 12:41:16 ID:???] Ruby = オブジェクト指向Perl でしょ?
104 名前:nobodyさん [2008/08/02(土) 01:11:51 ID:U1SzvOGo] 「美しいコードを書けるからRubyを選んだ」---Ruby on Rails作者 David Heinemeier Hansson氏:ITpro itpro.nikkeibp.co.jp/article/NEWS/20060620/241346/ DHH:いろんなPerlソースを見ていると,頭が爆発しそうでした。 なぜかというと,どのコードを見てもスタイルがそれぞれ違って, 正しいのはどれかがわからない。 それぞれおもしろいんだけど,自己主張が激しすぎると感じました。 一方で,Rubyで書いたものはどれも, 同じことをする場合はだいたい似たように見える。 この「統一感」がすごく重要でした。
105 名前:nobodyさん mailto:sage [2008/08/02(土) 11:29:04 ID:???] >>104 Perlは確かにひどいが、Rubyも大して統一感なんてないけどな…
106 名前:nobodyさん mailto:sage [2008/08/02(土) 15:59:10 ID:???] Perlはuse strictを使えるのがいい。
107 名前:nobodyさん mailto:sage [2008/08/02(土) 23:05:16 ID:???] Perlはひどい書き方ができるけどきれいに書こうと思えば書けるだろ。
108 名前:nobodyさん mailto:sage [2008/08/03(日) 00:32:48 ID:???] strictプラグマを使えば、PerlはLLの中で一番厳密なコーディングを強制される。 PHPなんかだと、コンテントタイプヘッダが自動で出力されるとか、最近は減ったけどregister globalsがオンになってるせいで、それこそやりたい放題に書いてもそれなりに動いてしまう。 多分、書き慣れたPerlが怪奇に見えるのは、関数に()が省略できたり、returnを省略できたりするところだと思うんだけど、それはRubyも一緒だよね。
109 名前:nobodyさん mailto:sage [2008/08/03(日) 00:44:26 ID:???] >書き慣れたPerlが怪奇に見えるのは、関数に()が省略できたり、returnを省略できたりするところだと思うんだけど そんな些細なところじゃないと思うんだけど
110 名前:nobodyさん mailto:sage [2008/08/03(日) 01:52:23 ID:???] じゃ、どの辺?
111 名前:nobodyさん mailto:sage [2008/08/03(日) 01:54:17 ID:???] $@とか$/とかの特殊変数はたいした問題じゃない。使うのは限られてるし、そういうもんだと思えばどうってことない。忘れたら、調べればいいだけ。 isset()なのかis_set()なのか忘れてしまうのと変わらない。
112 名前:nobodyさん mailto:sage [2008/08/03(日) 04:48:01 ID:???] 正規表現とか$_なんかは奇妙に見えるな。 for(1..40) { print $_ . "..aho\n" if /3/; }
113 名前:nobodyさん mailto:sage [2008/08/03(日) 22:19:46 ID:???] 行末が ; で終わってない言語はクソ
114 名前:nobodyさん mailto:sage [2008/08/03(日) 23:54:50 ID:???] おっとECMAScriptの悪口はそこまでにしてもらおうか
115 名前:nobodyさん mailto:sage [2008/08/04(月) 02:25:58 ID:???] >>110 いろんなものを省略できるところ。 コンテキストという概念 bless UTFフラグ
116 名前:nobodyさん mailto:sage [2008/08/04(月) 02:36:41 ID:???] perlは記述するコードをUTF8(BOM無し)固定にすりゃいいんだよね そうすりゃちったぁラクになるべ?
117 名前:nobodyさん mailto:sage [2008/08/04(月) 02:44:47 ID:???] コンテキストを省略、blessを省略、何のことだ? Perlは複雑なデータ構造を表す場合、リファレンスを使う必要があり、リファレンス・デリファレンスで記号が長く続き、読みづらくなるというのはある。 すべてを順番付きのハッシュで済ませらるPHPと比べると、断然見づらい。 が、仕事でプログラムをするような人間が、Cのポインタが分からないとか、Perlのリファレンスが分からないとか、論外だな。 趣味のプログラマーにとってPerlが難解だというのはそうかもしれないが。
118 名前:nobodyさん mailto:sage [2008/08/04(月) 02:51:00 ID:???] おそらくUTF8の話は、ム板から得た知識だろうが、マルチバイトを扱う時にUTF8フラグをつける、出力するときに外す、だけでいいことだ。 そもそもUTF8フラグのせいで、ソースが読みづらくなるなんてことは有り得ない話。
119 名前:nobodyさん mailto:sage [2008/08/04(月) 19:54:52 ID:???] >>118 本当にそれだけなら、内部で勝手にやってくれという話。 なんでコードでUTF8フラグをつけたり消したりする命令があるのか。 それはUTF8フラグあるせいで、いろんなライブラリが、 UTF8フラグをつけていたり、つけていなかったりするから。 UTF8フラグの存在がなければ、そんな混乱は起きないんだがな。
120 名前:nobodyさん mailto:sage [2008/08/04(月) 19:56:09 ID:???] >>117 仕事だから、難解なものでもやれというのはわかる。 だが、今はやるかやらないかの話はしていない。 難解なのか、難解ではないのかの話。 答えは出ている。難解だ。
121 名前:nobodyさん mailto:sage [2008/08/04(月) 21:06:24 ID:???] だからどこら辺が難解なの? PerlのOOなんて変数に名前空間結びつけただけだろ
122 名前:nobodyさん mailto:sage [2008/08/04(月) 21:16:33 ID:???] フラグついてりゃ3byte文字も1文字換算だし ついてなけりゃbyte単位だから処理違うしな inしてきたものにはかならずフラグつけてoutのときにはずせば混乱はない decode, encodeってのがちょい紛らわしいネーミングだとおもうけど
123 名前:nobodyさん mailto:sage [2008/08/04(月) 21:37:34 ID:???] 明示的にデコードしなくてもフラグ付くことがあるのが問題。 暗黙的なスタイルと明示的なスタイルが混在して、もうわけわかめ。
124 名前:nobodyさん mailto:sage [2008/08/05(火) 01:23:55 ID:???] もともとの話はPerlのソースコードが読みづらいかどうかだから。 UTF8フラグとソースコードの読みづらさは関係ないし。
125 名前:nobodyさん mailto:sage [2008/08/05(火) 01:42:33 ID:???] それってスタイル、好み、技量の問題じゃないの? 読む側、書く側、双方ともに
126 名前:nobodyさん mailto:sage [2008/08/05(火) 09:27:52 ID:???] utf8フラグが勝手に付くって何のことだ?
127 名前:nobodyさん mailto:sage [2008/08/05(火) 13:42:50 ID:???] >>107 それをプロジェクト内のPerlプログラマ全員にやらせてみろよ
128 名前:nobodyさん mailto:sage [2008/08/05(火) 13:46:43 ID:???] 色んな書き方が出来る反面 「自分の書き方」 をもてない奴がコピペばかりしたり、 サンプルを自分の書き方に直せない人が多いだけなんだと思う まぁ利用者が多いゆえの弊害だと思う
129 名前:nobodyさん mailto:sage [2008/08/05(火) 14:14:52 ID:???] >>127 それはPerl以外の言語にもいえる事では
130 名前:nobodyさん mailto:sage [2008/08/05(火) 15:04:15 ID:???] >>129 Perlは他言語に比べ突出してると思う。 でもコード規約でなんとかなる。
131 名前:nobodyさん [2008/08/05(火) 19:44:17 ID:y2irazDO] PERLの記述性はそのままRUBYにも当てはまる。 JAVAみたいな型の指定を強制してステップをかける言語の方が記述性が低い分、統一感は高いと思うが、PYTHON以外のスクリプト言語はどれも大差ない。
132 名前:nobodyさん mailto:sage [2008/08/05(火) 21:03:27 ID:???] コード規約で何とかしないで Pragmaでも作ってほしいね。 $_ の使用を禁止するとか
133 名前:nobodyさん mailto:sage [2008/08/05(火) 22:48:20 ID:???] $_ は可読性の低下を招くので使わないようにしてる
134 名前:nobodyさん mailto:sage [2008/08/06(水) 11:40:34 ID:???] $_を使わないことで可読性は上がるだろう しかしそれだったらrubyかPHP使う
135 名前:nobodyさん mailto:sage [2008/08/06(水) 15:54:52 ID:???] $_ の問題だけで Perl を使わない理由にはならない
136 名前:nobodyさん mailto:sage [2008/08/06(水) 17:00:44 ID:???] 同じ変数を使いまわさない。 つまり、一つの関数内で同じ変数名の変数を 違う目的に使わないって事だけど、 これ、言語に限らずコーディング規約としてでてくる。 多分だれしも納得がいく理由だろう。 $_ はそれと同じ問題をはらんでいる。 変数名にはわかりやすい名前をつけましょう。
137 名前:nobodyさん mailto:sage [2008/08/06(水) 17:52:20 ID:???] Perlはstrictプラグマが標準で、変数を宣言して使うから、不用意に変数を初期化したり、ゴミとして残ることがない。 局所化されてるから、安心して同じ変数名を使いまわしていい。 他の言語のように、条件分岐やループの深いところで突然多次元配列に値を入れたりすることがないし、実行されない処理についてもコンパイラがエラーを検知してくれるから、発生しづらい条件のエラーがすぐにわかる。 ただ、strictプラグマはPerlのコード品質を押し上げているわけだけど、KENTのCGIレベルのプログラマーからだとジャンプアップが大きく、初級のプログラマーがPHPに流れる原因にもなってる。 が、PHPはどう書いてもそれなりに動いてしまうばっかりにレベルの停滞を招いてるという面もある。
138 名前:nobodyさん mailto:sage [2008/08/06(水) 18:02:05 ID:???] Perlのファニーレターは、可読性を上げる点でも役立ってる。 Perlでは普通こう書く。 foreach $data (@data) { print $data; } PHPでは、こう書くしかない。 foreach ($data as $tmp) { print $tmp ; } あるいは、こうしてみたり。 foreach ($data_list as $data) { print $data ; } 変数名からだけでデータ型が分かるのがPerlの可読性の高さ。
139 名前:nobodyさん mailto:sage [2008/08/06(水) 18:50:51 ID:???] foreach $data (@data) { print $data; } って何か気持ち悪いんだよな・・・ でいつもこうしてます foreach $data (@datas) { print $data; }
140 名前:nobodyさん mailto:sage [2008/08/06(水) 20:39:27 ID:???] print for @data;
141 名前:nobodyさん mailto:sage [2008/08/06(水) 21:32:17 ID:???] >>139 そう言われると俺も @data とか @file とかにしてたwww あなたはやっぱり @lists とかにしてるの? リストそのものが複数形だとおもうんだけど 。。。 あれ違うか?w
142 名前:nobodyさん mailto:sage [2008/08/06(水) 21:36:39 ID:???] いくら名前空間が別でも同じ名前にはしないな。
143 名前:nobodyさん mailto:sage [2008/08/07(木) 01:45:13 ID:???] >>138 > Perlのファニーレターは、可読性を上げる点でも役立ってる。 > Perlでは普通こう書く。 > foreach $data (@data) { > print $data; > } foreach my $datum (@data) { print $datum; }
144 名前:nobodyさん mailto:sage [2008/08/07(木) 01:47:11 ID:???] >>141 > あなたはやっぱり @lists とかにしてるの? foreach my $elem (@list) { print $elem; } ナドト
145 名前:nobodyさん mailto:sage [2008/08/07(木) 03:54:18 ID:???] 名前空間が別なのではない。変数のスコープが別なのだ。 $tmpとか$nとか$iとか、数行のブロック内でしか使わない一時的な変数のためにイチイチ長ったらしい変数名を使うのは可読性が下がる。 コードの大事なポイントをぼかしてしまうから。
146 名前:nobodyさん mailto:sage [2008/08/07(木) 05:17:58 ID:???] 変数名やらコーディング規約やらはPerl Best Practicesを読むといいですよ 書いてあることがすべて正しいとは思わないけどbetter practiceが見つかるのは間違いないです
147 名前:nobodyさん mailto:sage [2008/08/07(木) 12:57:23 ID:???] >>139 dataは既に複数形で、単数形はdatum云々、、、、
148 名前:nobodyさん mailto:sage [2008/08/07(木) 13:36:43 ID:???] PBP!PBP!
149 名前:nobodyさん mailto:sage [2008/08/07(木) 15:47:43 ID:???] >>141 >>143 >>147 ああ、俺がアホだった・・ dataの時はdatumを使います でもいつも厳密には考えてなく my @dates = localtime; my $date = sprintf '%04d/%02d/%02d', $dates[5] + 1900, $dates[4] + 1, $dates[3]; のような事もしちゃってます。こっちのが気持ち悪いか・・・ Perl6では@date[1]のように参照出来るらしいから感覚的に少しはマシになるのかも
150 名前:nobodyさん mailto:sage [2008/08/07(木) 21:02:27 ID:???] 横レスすると手を抜いて配列に入れるんじゃなくて スカラーでもハッシュでもいいから名前付けたほうが見やすいわかりやすいのは明白