[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/09 23:11 / Filesize : 251 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

初心者のためのプログラミング言語ガイド Part8



1 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 00:13:54 ]
これからプログラミングを始める初心者の人に言語を薦めるスッドレ

質問者の方へ
どのプログラミング言語を最初に覚えるべきかは
なぜプログラミングを始めたいのか、何を作りたいのかによってまったく変わってきます。
なんとなく、でもかまわないので動機、用途、使っているOSを明記しましょう。

各言語の特徴はこちらを参照
Wikipedia Category:プログラミング言語
ja.wikipedia.org/wiki/Category:%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E

Part7 pc11.2ch.net/test/read.cgi/tech/1200807067/
Part6 pc11.2ch.net/test/read.cgi/tech/1193132235/
Part5 pc11.2ch.net/test/read.cgi/tech/1187886538/
Part4 pc11.2ch.net/test/read.cgi/tech/1177285633/
Part3 pc11.2ch.net/test/read.cgi/tech/1152778344/
Part2 pc8.2ch.net/test/read.cgi/tech/1122205164/
Part1 pc8.2ch.net/test/read.cgi/tech/1034505166/



202 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 17:28:45 ]
それはソートプログラムなんて書かせるのが間違ってる

203 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 17:36:01 ]
ソートプログラムは簡単なのの代表的だから俺がレスに書いただけで、
ちゃんとした理工学系のような履歴の人間にもプログラム全くできない、
触ったこともない奴が含まれているらしいということさ。

204 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 18:02:44 ]
>>202
じゃあFizzBuzz

205 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 18:04:54 ]
単純ソートならなんとか書ける

206 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 21:51:44 ]
フリーウェアを作りたいと考えているのですが
昔VBやPowerBuilderの開発経験があるので
Basicでよいのがあればそちらを、無いなら
Basicから移行しやすい言語でフリーウェア作成向きの
言語って何がありますか?



207 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 21:56:36 ]
HSPとかBCBを進める 

208 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 05:00:33 ]
言語を選ぶ選択肢としては、自分の性格を見極めたほうがいいかもしれません。
私の場合、2chに書き捨てるような文章を書くのが得意かつ好きで、
ブログのような、ある程度、きちんとした文章を書くのが面倒だと思うタイプなので、
一番、書き手にメリットのあるPerlを好んで使っています。
ブログを書くのが好きな人にとっては、もう少し、厳格な言語がいいかもしれません。
人それぞれの性格によって、一番能力の発揮しやすい言語があると思います。
ほとんどの言語で、ほとんどの事は出来ると思いますので、
自分に合う合わないで決める事が、一番大切だと思います。



209 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 05:02:54 ]
ブログをやった事もあるのですが、
性格的に合わず3日持ちませんでした。
2chに書き込むのは好きで、何年もコテハンをやっています。



210 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 05:07:01 ]
書き手にとってメリットがあると言う事は、可読性を下げる要因になります。
逆に、可読性を上げるには、書き手にとっては自由を縛られる事になります。



211 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 05:40:04 ]
>>208
書き手にとってPerlがメリットがあるという話、
具体例を出して書いていただけるとおもしろいですね。

212 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 05:43:58 ]
使ったこと無いけど型宣言とかしなくても勝手に処理してくれるって事じゃないか

213 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 06:43:10 ]
>>211
例えば、ファイルを読み込んで出力するコードを書くとします。
Javaですと
import java.io.*;

class BufferedReaderTest {
public static void main(String[] args) {
try {
FileReader in = new FileReader("file.txt");
BufferedReader br = new BufferedReader(in);
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
br.close();
in.close();
} catch (IOException e) {
System.out.println(e);
}
}
}
perlですと
open(IN,"<file.txt")|| die "error";
while(<IN>){
print $_;
}

こうなります。
どちらが、人間の話す自然な言語に近いかと言う事を考えた場合
Perlがより近いのではないかと思います。



214 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 06:44:00 ]
イメージとしては、
誰もが論文のように論理的文章を書く事も話す事も出来ますが、
日常的に話すように自然に話したり書いたほうが、
普通の人には楽だと思います。
日常会話では、主語が抜けたり、暗黙の了解で
省略している部分があって、
分かりにくい場合もあります。
ただ、そのおかげで普通の人間にとっては楽に話す事が出来ると思うのです。

215 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 06:45:05 ]
close(IN);
を忘れてましたねw
適当なコードですいません。

216 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 06:53:09 ]
短い時間で、いい回答でしたね。

217 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 07:31:57 ]
>>197
オリジナルなものを書いて持っていったら、本当に入社できる
かもしれませんね。今日のプログラム開発はプロでもアマでも
多かれ少なかれ、何らかのプログラムの剽窃になってしまいます。
そう感じさせないことは大変に難しいと思いますが、自分の一番
好きなことで、こんなものあったらいいなという、日頃思っている
ものがあったら、それを作ってみることに挑戦してみたらいかがですか。
オリジナリティが生まれるとしたら、そういうテーマ以外考えられません。

218 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 07:41:11 ]
ちなみにpythonは制御文の最後に終わりを明示する},endなどの
マークが無いので制御文がどこで終わっているのか
分かりにくいと言う基本的な欠点があるので、
あまり好きではありません。
pythonだと
if a == b :
print '1'
print '2'

perlの場合
if($a==$b){
print '1';
}
print '2';

こうなり、制御文はperlのほうが分かりやすいです。

219 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 07:44:00 ]
perl やPHPはわかりにくいよ わざと書く人が難解にしてるのかもしれんが

220 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 07:59:04 ]
>>218
サイタマンって言語あれこれきちんと使ってから
批評してるんだな、感心した



221 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 07:59:58 ]
>>219
perlが分かりにくい面は否めないと思います。
どこに価値を置くかと言う点もありますね。

先ほどのpythonの制御文の欠点ですが、
自分は制御文で複雑な事をする癖があるので、
Pythonで制御文を書くと、どこまでがこの制御文の範囲なのか
訳が分からなくなってしまいます。

222 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 08:00:00 ]
>>218
Python使いだが、特に分かりづらいということはないかな。
Perlは省略した表現ばっかりで本当に魂捧げないと
リファレンス片手じゃないと打ち込めないw正規表現が使いやすいのはいいけどな

223 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 08:01:46 ]
>>221
クラスを使って、メッソドを静的に扱う。関数を同じに扱う。
@staticmethod
def hoge(x,y,z):

とか。こうして細切れにすれば、問題ないと思う。
普段からルーチンを一機能につき一つ設ける癖をつければいいとおもうよ

224 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 08:07:48 ]
>>223
そうすると、書き手にとっては非常に面倒になってしまいます。
先ほどから書いてありますが、自分は人間にとって書きやすい事を重要視していますので、
書きにくいと、生産性が落ち、面倒になってしまうんです。

225 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 08:11:11 ]
直感的に書きたい事を書きたいままに書くと言うのが、
一番、プログラムの楽しさを味わえると思います。
面倒な要素を出来るだけ排除する事で、人間はやる気や生産性が上がるんです。

226 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 08:14:05 ]
なるべく短く簡潔にすることが大事と思う
いろいろと工夫するのは駄目で便利な機能は使うべきと思う

227 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 08:20:57 ]
>>224
長々とした処理を書き続ける方が気苦労多いよ。
ローカルスコープの量は最小限に、
一度作った関数は再利用できるように、ってやらないと
後日自分が作ったもの読んだ時意味不明になるよ。

228 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 08:22:07 ]
>>227については、
入力補完しまくってくれるIDE使ってくれるなら話が変わってくるか。
だけどPerlって長々とだらだらとしたものを書くようなことを
推奨してるとは思えないんだけどなあ。

229 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 08:28:24 ]
>>227
自分は汎用以外のオブジェクトを多く作るのは
意味が無いと思ってます。
一つの処理に対しては、一つの流れとして書くほうが自然で
分かりやすいと思います。

一つ一つの処理にオブジェクトを呼び出すのは遅くなる原因となりますし、
何より、オブジェクトの数が多くなると管理も大変になります。
多く使う汎用処理のみオブジェクト化すればいいと思ってます。

230 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 08:40:59 ]
>>229
分かった、俺の負けだ‥

いつの間にサイタマンはこんなに強化されたんだw
キチンと自分の理念を持ってコーディングできてるってうらやましいな‥



231 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:14:40 ]
自演にしか見えないモレは心が病んでるのか・・・

Perlが書き捨て用に適していて、その用途の場合はわかりやすいように
関数とか作らなくてもいいんじゃね、ってのには賛成するが。

232 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:15:38 ]
数分置きに、だらだらとチラシの裏を書くやつ、どっかの掲示板でも見たおぼえあるぞ。

233 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:34:30 ]
コテつけてる時点で病気なのでスルー推奨

234 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:40:36 ]
サイタマンは昔から自作自演ばっかりだったよ、
株板で相手にされないからこっちに流れてきたんじゃないの

235 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:41:56 ]
スルーできてない人がスルー推奨してもね。
ボクはキミを無視しちゃいますよ〜というのを、無視できずにアピールしちゃうことほど
「負け」属性の強いレスは無いな。

236 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:43:08 ]
さっさと市況板にもどったら?
もう市場開いてるでしょ

237 名前:235 mailto:sage [2008/04/23(水) 09:43:45 ]
は?俺コーディングテクニック最強なんですが?
>>236は負け宣言だと思って言いよね?
バカジャネーノw

238 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 09:44:51 ]
まあまあ、有益な情報交換しましょう。
自作自演はしてませんよ。

239 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:46:33 ]
>>238
俺がレスしてるのを自演とか言ってる奴がいるんだが
別人なんだけどなあ、
ニュース速報でサイタマンが出たてのころと比べたら
本当に強化されてて感心したんだが。

2chブラウザ作るっての公言して本当に作ったしさ。すげーと思うわ。

というわけでサイタマン、さっさとソース出せ

240 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:51:39 ]

 そ ら ま た 自 演 だ



241 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:54:57 ]
>>223
初心者用のスレだから、質問します。
普段からルーチンを一機能につき一つ設ける、のルーチンの意味がわかりません。

242 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 10:08:28 ]
>>239
あれから音声読み出し機能を付けたのですが、
視覚障害者の為の2chブラウザにして配布しようかな〜と思ってます。
今のブラウザは株のトレードとセットになっているので、
2chブラウザだけを取り出しての配布になると思います。
いろいろやる事があって、今すぐには配布できませんが、
配布するので、待ってくださいね。

>>241
サブルーチンです。

perlで書くと

my $d=&call(1,2);
print $d;#結果は3


sub call{
my($a,$b)=@_;
my $c=$a+$b;
return $c;
}


243 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 10:20:13 ]
上の単純な計算までサブルーチンで行うのは
無駄だと思います。

my $c=1+2;
print $c;
で済むのですから。
こっちのほうが普通の人には分かりやすいと思います。
数多く、同じ関数を呼び出すのであれば、
関数化すればいいと思います。
それは、個人個人の判断になると思います。
一つ言えるのは、あまりに関数を作りすぎると、コーディングが面倒な事、スピードが遅くなる事、
この関数はどこにあるのか、何をしているのか訳が分からなくなる事です。管理上、不便だと思います。


244 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 10:33:09 ]
再利用できると感じたら関数化、程度でいいと思う。

245 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 11:10:28 ]
>>244
そうだね。

一応、上に書いた呼び出し方は古いから
oopでの呼び出し方も書いておきます。

use Test;
my $obj = Test->new();
my $d=$obj->call(1,2);

print $d;#結果は3

package Test;

sub new {
my $pkg = shift;
bless {},$pkg;
}


sub call{
my $self = shift;
my($a,$b)=@_;
my $c=$a+$b;
return $c;
}
1;



246 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 11:24:13 ]
test(A,B) :- test(A,B,C),write(C).
test(A,B,C) :- C is A+B.

非オブジェクト指向言語ですが、これで済むんだけどなぁ。

247 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 12:52:59 ]
これは Prolog ですが、BASIC だって似たようなものでしょう。
>>245 があまりに厚化粧で、サイタマンさんが上の方で書いていた
ご自分の好みとは随分と離れたコードを書くことも多いのだろうな
と思ったから、敢えてシンプルなものを載せました。そこで質問
なのですが、Perl の使い手にとって、オブジェクト指向とはどう
いう位置付けのものなのですか。

248 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 13:01:24 ]
>>218

Pythonだと

if a == b:
    print '1'
print '2'

Perlだと

if($a == $b){
    print '1';
}
print '2';

この例じゃ、解りやすさに差があるようには思えん。

{}言語が好きか、    言語が好きか、好みの問題に過ぎないと思う。

249 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 13:15:13 ]
perlってa,bって予約語だったっけ

250 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 17:57:38 ]
>>247
OOPする時は、サブルーチンが重複するかもしれない、
大量のコードを利用する場合に使います。
変数の競合を防ぐには局所変数で対応できますが、
関数の競合を防ぐにはOOPでなければ出来ませんから。

サブルーチン競合を心配するようなプログラムになると、
自然と使うようになります。

>>248
perlの場合はコンパイルエラーを吐いてくれますが、
pythonの場合はインデントミスが生じた場合、
エラーを吐いてくれないので、どこでエラーが生じるのかの見極めが難しいのです。





251 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 18:00:23 ]
エラーを吐いてくれないと、どこでミスしているのかが分からず、
プログラムが誤動作してしまい、バグ発見に時間が掛かります。


252 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 18:21:15 ]
OOPは自分で作ったサブルーチンを、後で再利用したい場合にも使います。
自分は利用できそうなサブルーチンをまとめてあります。

package名を付けて、
そこにサブルーチン名を貼り付けるだけで、
簡単に出来ますし、関数の競合の心配がなくなります。

253 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 21:11:33 ]
>>251
その点に関しては、perlの方がエラー出さなくて分かりにくいだろ。
未使用の変数を参照してもOKだし、さらに勝手に0や空文字と解釈してくれる。
あと、
if($x = 1){print "OK"}
とかもエラーにならない。

254 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 21:29:59 ]
>>253
Perlにはwaningsと言うモジュールがあり、
if($x=1){print "OK"}
と書くと、

Found =in conditional, Should be == at Test.pl line 2
などと、
==にしなさいと警告してくれます。

未使用の変数の参照に関しても警告してくれます。

255 名前:デフォルトの名無しさん [2008/04/23(水) 21:31:00 ]
>>218
end = 1
if a == b :
print '1'
print '2'
end
でOK

256 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 21:35:34 ]
>>254
だったら最初からやれ、って話だよ

257 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 21:45:23 ]
>>255
それなら
if a == b :
print '1'
#end
print '2'
こっちのほうがいいのでは?

>>256
もう一つpythonが自分に向いてない理由は、
コピーペーストがやりにくいと言う点です。
自分は、怠け者なので、
コードを書くよりも、昔書いたコードをコピーペーストするほうが多いのですが、
Pythonだと、インデントに意味を持っているので、
コピーペーストするといちいちインデントを揃えるのが面倒なのです。


258 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 21:46:32 ]
上の話を見てると、PerlのOOPって大したことないのか?と思ってしまうが

259 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 21:46:37 ]
257はインデントを揃えたつもりでしたが、ミスしました・・
if a == b :
 print '1'
 #end
print '2'


260 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 21:56:08 ]
>>258
PerlのOOPはクラスのインスタンス化、操作、破棄はもちろん
継承、多重継承、デザインパターンで言うとsingleton
やAUTOLOADを使ったDecoraterなど
ほとんどの機能はありますよ。



261 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 22:03:36 ]
blessって何だ?

262 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 22:09:12 ]
オブジェクトを結びつける

263 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 22:42:31 ]
Perlに今更持ち上げるだけの価値があるとは思えない
何かにつけてややこしいし

264 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 22:46:00 ]
自分も新しい言語模索してるんですが、
なかなか、いい言語が無くて・・・
何か無いですかね・・・

265 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 22:56:14 ]
自演までして「出来る人」アピールしても、言ってることがすごく浅い
比較になってない比較で啓蒙するくらいperl大好きみたいだから、perlだけやってればいいよ

266 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 22:58:32 ]
>>265
自演はしてませんよ。
そう言われるのなら、
あなたが具体的にレベルの高い議論してはどうでしょう?


267 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 23:07:14 ]
>>260
ああ、一通りあるのね
あんたが「PerlでのOOP導入の利点とは、関数名の衝突を避けられること」
なんて微妙なことを書いてるもんだから

268 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 23:08:06 ]
サイタマンの過去の発言からして
自演は良くあること

269 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 23:15:17 ]
>>267
自分がOOPを使う一番のメリットは、
関数の衝突を避ける事がメインですね。
動的束縛とポリモフィズムの利用や
デザインパターンの技法を使って
オブジェクトを細かくコマンド化したり
細分化する事には余りメリットを感じません。



270 名前:サイタマン ◆mYN3wsz7vE [2008/04/23(水) 23:17:52 ]
まあ、業務用の同じようなものばかり作ってる人にはデザインパターンは
効果的なんでしょうが。。。



271 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 23:19:44 ]
サイタマンに同調する気はないが、
デザインパターン本を見てまねするのは末期な感じがする。
さすがにそこまでやっちゃうと考える力、判断する力がつかなくなるw

272 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 23:24:07 ]
デザインパターン的発想ができるようになるってのが重要なわけだぁね。

273 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 23:30:12 ]
あくまで参考として見ておいたほうがよくて、
やはり自分で設計できるようにしたほうがいいと思うよ。

大規模開発などに携わる場合は、必要な知識かもしれないけど
個人でやる場合は無視したほうがいい。

274 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 23:33:55 ]
そうかねえ
例えば有名なGoFの23パターンだが、あれを全部とは言わずとも
大体を自力で発見できるかと言われると・・・・・・いくつか自信がない

何よりもまず、有名な手法に名前がつけられているって事が重要
名前さえあれば議論のまな板に乗せられる。伝達できる

275 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 23:54:10 ]
>>250

いや、やはり同じこと。

if($a == $b){
print '1';
}
print '2';

を間違えて、

if($a == $b){
print '1';
print '2';
}

と書いた場合、Perlのコンパイラはエラーを吐かないだろう。

276 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 23:56:03 ]
このサイタマンとやらがデザインパターン知ってたら
「ほら、Perlだったらこのパターン作るの簡単ですよ」
みたいな事ばっかり言うんだろうな・・

277 名前:サイタマン ◆mYN3wsz7vE [2008/04/24(木) 00:53:00 ]
>>275
その構文と比較するのはちょっと違います。
何故かと言うと、}の位置で一目で制御文の終了位置が分かるからです。
比較してpytyonではインデントしかありません。
>>276
デザインパターンくらい知ってますが
意味が無いので、使わないだけです。

278 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 00:54:33 ]
つーか、Rubyじゃ駄目なのか?
perlより格段にマシだと思うんだが

279 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 00:58:30 ]
>>277
思考の硬直化が見られるな。
デザパタに固執する事とデザパタを無碍にする事は
どちらも似たようなレベル。

280 名前:サイタマン ◆mYN3wsz7vE [2008/04/24(木) 00:58:41 ]
>>278
Rubyの構文自体に不満は無いですが、
遅すぎるのと、まだ枯れていないので、
バグがあるのではないかと言う事、
Perlでは検索して
やりたい事に合うモジュールを
直感的に見つけるられるのですが、
そのモジュールが少ない事がありますね。


Singleton Factory Template
辺りは良く使われてます。
Sladeにも使われてます。



281 名前:サイタマン ◆mYN3wsz7vE [2008/04/24(木) 01:21:51 ]
一応、Templateパターンもどきで書いてみました。

use Test;
my $obj = Test->new();
my $d=$obj->call(1,2);
#結果3
package Test;

sub new {
my $pkg = shift;
bless {},$pkg;
}
sub call{
my $self = shift;
my($a,$b)=@_;
my $c=$self->do_task($a,$b);
$self->do_print($c);
}
sub do_task{
my $self = shift;
my($a,$b)=@_;
my $c=$a+$b;
return $c;
}
sub do_print{
my $self = shift;
my($a)=@_;
print $a;
}
1;

282 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 01:33:53 ]
$aとか$bとか使う時点でもうダメだな。

283 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 02:02:21 ]
>>283
java,c,vc,basicくらいしか知らない学生だが
そのプログラムを見る限りperlって直感的に分かりずらいな。

あとsageろ


284 名前:サイタマン ◆mYN3wsz7vE mailto:sage [2008/04/24(木) 02:16:00 ]
まあ、perlは慣れないと難しいかもしれませんね。
ただ、慣れると非常に書き手にとってメリットのある言語です。






285 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 02:33:01 ]
サイタマン独演会になってから初心者が来なくなったなw

286 名前:サイタマン ◆mYN3wsz7vE mailto:sage [2008/04/24(木) 02:38:21 ]
少し自重します・・・

287 名前:デフォルトの名無しさん [2008/04/24(木) 05:47:20 ]
>>283
>>283はsageているじゃん。

288 名前:デフォルトの名無しさん [2008/04/24(木) 05:57:45 ]
3年前にニュース速報でプログラムなら負けない自信があるとほざいているサイタマンが
初心者スレで書き込み&名無しで自画自賛の自演してて笑った



528 名前:埼玉mikky ◆jM/TIxxEd. :2005/04/25(月) 21:49:44 ID:A5d3v8LD ?##
2chはいろんな分野の博識者が多くて為になるなぁ。
おれもPCやプログラムの事なら負けない自信あるけど、
それ以外の専門的な知識がいろいろ手に入るから便利だわ。

↓↓そして3年後↓↓

初心者のためのプログラミング言語ガイド Part8
pc11.2ch.net/test/read.cgi/tech/1208186034/

192 名前:サイタマン ◆mYN3wsz7vE [] 投稿日:2008/04/21(月) 15:12:24
まあまあ、荒れないで下さい。
初心者にもこの程度は作れるよと言いたかっただけなので。


自分で初心者って言い切ってるwwwwwwwwwww
他にもいろいろ初心者スレに出入りwwwwワロス

負けない自信のある人間が初心者スレに出入りしている矛盾!

289 名前:デフォルトの名無しさん [2008/04/24(木) 06:05:50 ]
【頭隠して】虚言病のサイタマン【尻隠さず】
live27.2ch.net/test/read.cgi/market/1188339064/

サイタマン発言まとめスレ
東京kittyに憧れ埼玉kittyというコテを名乗る、その後埼玉mikkyを経て現在サイタマン
ニート歴10年。ニート鈴木という名前でテレビ出演歴あり
株を始めて3年目で100万円を70万に減らす
自称月収200万円のIT企業だが睡眠時間以外は投資一般スレ、
ニュース速報、プログラム板に常駐

特徴は初心者のスレッドにいって別のスレで読んだことをあたかも自分の意見のように
コピペすることだけど、専門家につっこまれたら逃亡する。コテをつけはじめてから
この行動パターンは不変である。自作自演も得意

290 名前:サイタマン ◆mYN3wsz7vE mailto:sage [2008/04/24(木) 06:06:44 ]
ちょおおお
こんなところまで出張しないで



291 名前:デフォルトの名無しさん [2008/04/24(木) 06:15:40 ]
◆ここが変だよサイタマン
・自称年収4000万のIT企業社長のはずなのに起きてる時間は2chの
投資一般、ニュース速報、そして最近はプログラム板に常駐

・数億円ある両親の資産管理会社の社長の設定だったが、いつのまにか祖父の遺産を
相続して数億円は自分のものということになっている

・しかし3年間株をやって初期資金を70万以上入金できない

・MARCH卒といっていたのが最近東京六大学卒に変わってきている

・05年でプログラムは自信があるはずなのに06年にHTMLしかできないことが判明

・05年でプログラムに自信があると言い切っているのに最近初心者スレにだけ出入り


292 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 07:56:29 ]
>>284
敗北宣言ktkr
慣れた言語が書きやすいのはあたりまえだろ。

293 名前:デフォルトの名無しさん [2008/04/24(木) 07:57:59 ]
あほのさいたまんに年金手帳の質問考えてきたんだけど
質問してもいいですか?

294 名前:デフォルトの名無しさん [2008/04/24(木) 07:58:00 ]
つい最近まで1ソースに何万行も書いてたサイタマンはどこいったの

295 名前:キチガイ ◆Z4QrFDzwrY [2008/04/24(木) 08:26:25 ]
>>182
>2chブラウザを作りたい人は質問に答えますよ。
では、サイタマンさんに質問します
はなもげらって何ですか?
知らないはずがないですよねえ?
2chブラウザを作ったんですからねえ
私も2chに自作プログラムで書き込むぐらいのことはやったことがあるんですよ
まさかまさか、SaitamanSpeedとかいう専ブラが実は画面しか作ってなくて、
機能は何も実装してないなんてことはないんですよねえ?

296 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 08:34:56 ]
関数型言語初心者で、ちょっと書けるようにはなったんですが、最近
CとかC++のソースを見なきゃいけない事態になりました。こっちは
まったくやったことありません。

これって何でしょうか、何でこんなにあーでもない、こーでもない
って書き方してるんでしょうかね。あと、一つの変数に何回も
値を代入して、それによって関数の戻り値が変ったりするなど、
すごく分かりにくいです。

あと、ポインタってありますね。これとか全く意味不明というか、
混乱の元だと思うんですが。何でコーディングしながら、メモリ
の状態を考えないといけないんでしょうか。変数に値がbind
されるだけではなく、アドレスを指し示している変数が存在
する必要が分かりません。

正直、今の作業が終わったらCやC++みたいなのはずっと
やらないで済ましたいんですが、可能なんでしょうか。

297 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 08:39:05 ]
>>296
今はサイタマンを糾弾している最中だ。
質問は禁止している。

298 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 08:52:42 ]
>>296
可能性のお話なら、「可能」だろう

299 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 09:34:16 ]
>>296
どこぞの表現を借りるなら、C系は「コンピュータがどう動くか」のモデル化を主目的としているのに対し、
関数型言語は「計算というものがどう振る舞うか」のモデル化を主目的としている。
マシン語は使いたくないが、しかしコンピュータの性能をそれなりに高い純度で引き出したい、という場合、
前者を使わないわけにはいかなくなる。

従って、君がCやC++を「やらないで済ます」ことができるかどうかは、たとえば、
君の作るものがコンピュータの性能をどれくらい引き出す必要のあるものか、に依ることになる。
あと、より「社会的な」問題としては、ユーザー人口の少ない言語は処理系のライブラリ、ドキュメント、
相談相手etc、色んな物の少なさで苦労するかもしれないから、それに耐えられるかどうか、なんてのも。

ただちょっと気になったんだけど、「関数型言語初心者」でC/C++を「まったくやったことない」ってことは、
つまり君の質問の「登場人物」のどれについても、まともに理解していない段階なわけだよね?
そういう段階にいるうちは、批判精神は胸の内にしまって、黙々と勉強を続けたほうがいいと思うよ。
それよりも、>>298が仄めかしているように、自分の立ち位置(作りたいものとか、業務内容とか)を
ハッキリ表明して、「こういう状況にあるのだが、CやC++をやらずに済むだろうか?」という適切な質問を書く、
ということができない自分への批判精神を磨くほうが大事だと思う。

300 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 09:47:50 ]
>>277

Pythonの場合も、インデントで制御文の終了位置が分かる。

>>277の主張は、>>277にとっては「}」のほうが分かりやすいという感慨にのみ立脚している。
だから、「{」〜「}」よりも「    」のほうが分かりやすい人にとっては
無意味。

現実には、Pythonのコードを読みやすいと思っている人は少なくないから、>>277のような
感じ方をする人が多数派だとはいいきれない。

また、仮にインデントが分かりにくかったならば、{〜}言語や(〜)言語やbegin〜end言語で
プログラマーがコンパイラによって必要とされていないインデントを多用してコードを書く理由は
なんだろうか?

Basic系みたいに、

If a = b Then
    Print '1'
EndIf
Print '2'

なんてやれると、これは「{」〜「}」よりも圧倒的に分かりやすい。「}」は
それ自体何の終わりかわからないが、「EndIf」が「If」制御文の終わりであることははっきりして
いる。しかし、Basic系でも実際のコードではインデントが多用されている。

つまり、インデントが一番分かりやすい。

Perlの美徳としてはっきりしているのは、読みやすさではなく、書く場合の労力が
小さいことだろう。



301 名前:296 mailto:sage [2008/04/24(木) 10:06:05 ]
>>299
ちょっと分からないのは、僕等がやろうとしているのは計算処理であって、特定
コンピュータがどう動くかを云々することじゃないって認識なんですが、違う
ということですか?

コンピュータのメモリがどうのって話は、ハード屋とか、コンパイラ作ってる
人とか、OSのコア部分作ってる人たちの分野じゃないのですか?こういう
のはごく限られたその方面のエキスパート達がやればいいんじゃないかと
思います。

一般のプログラマってのは、そういう話とあまり関係なくやりたいことを記述
できればいいと思うんですよね。パフォーマンスがどうとか、そういうのは
コンパイラがやればいいと思っちゃう。そりゃ無理難題をコード化すれば
メモリオーバしちゃうでしょうけど。メモリのアドレスがどうとか考えるのは
やり過ぎじゃないですか?

関数型がマイナーだというのが僕は信じられません。Cなんかと比べて
段違いにわかりやすいと思うのですが。

302 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 10:14:44 ]
>>301
俺らがやろうとしているのは計算処理ではないよ。
コンピュータに計算処理をさせることだ。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<251KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef