【勉強するのは】PHPとPerl【どっちが最初?】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2006/07/13(木) 16:36:16ID:Rs7Ov+hWC++ だの VBだのみたいなプログラムより、
PHPやCGIのようなウェブアプリを書いてみたい。
そこで特にプログラミング経験のない香具師にとって
WEBプログラムの勉強をするのは
PerlとPHPどっちが最初のほうがいいと思う?
作りたいものとしてはまず自分で
掲示板とかカウンターとか作ってみたい。
0177nobodyさん
2007/09/08(土) 10:04:57ID:???何その遠回り…
素直にPHPから入った方が良いとおもうぞ。
カウンターや掲示板なんてPHPで簡単に作れるし、
PHP対応のレンタルサーバーもたくさんある。
0178nobodyさん
2007/09/08(土) 12:47:14ID:sxL4DOGKただ、現状でC/C++の高度なエンジニアになるのは難しい。
俺はC/C++から入ったから、JAVAもPerlもPHPもRubyも楽勝だった。
0179nobodyさん
2007/09/08(土) 13:12:21ID:fXVTs4ZJ0181nobodyさん
2007/09/08(土) 13:59:11ID:???Perlのデバッグってどのように行うのですか?
0182nobodyさん
2007/09/08(土) 14:29:03ID:???0183nobodyさん
2007/09/08(土) 17:24:47ID:???変数ダンプ:use Data::Dumper; print Dumper $val;
コアモジュールだからインストールしないで使えるよ。
PHPで簡単に出来るのにアレ出来ね〜と思ったときに便利なモジュール
DB接続:DBI
画像生成:Image::Magick or GD
mbstring→Jcode or Encode
smarty→Template
初めに学ぶのならPHPから入ると当然だと思ってたことが通用せず
他の言語に対して拒否反応する奴が多いから私はPerl、出来ればCがいいと思うな。
PHPだとポインタやスコープ等の基本的なことも覚えられないし。
0184181
2007/09/08(土) 20:31:55ID:???やはりPHPは他言語と較べても扱いやすいのですね。
実はPerlも書けるようになりたいと思っていたのですが、Internal Errorのみで
困っていたため、質問させて頂きました。
今後のPerl学習の参考にさせていただきます。
ありがとうございました。
0185nobodyさん
2007/09/09(日) 10:12:55ID:???0186nobodyさん
2007/09/09(日) 10:48:18ID:???0187nobodyさん
2007/09/09(日) 11:35:23ID:???0188nobodyさん
2007/09/09(日) 11:46:27ID:???0189nobodyさん
2007/09/09(日) 12:00:40ID:???0190nobodyさん
2007/09/09(日) 16:18:31ID:???0191nobodyさん
2007/09/10(月) 07:20:50ID:???0192nobodyさん
2007/09/11(火) 08:36:54ID:???http://www.amazon.co.jp/exec/obidos/ASIN/4881665936/sotechscojp-22
0193nobodyさん
2007/09/11(火) 16:48:48ID:STk5D3wIポインタは覚えられませんが、 スコープは覚えられます。
0194nobodyさん
2007/09/11(火) 17:14:48ID:???0195nobodyさん
2007/09/11(火) 18:58:45ID:???0196nobodyさん
2007/09/11(火) 19:02:44ID:???Perlを知らないのかも知れないけど。
PHPのarray(1,2,array(3,4))は、Perlだと(1,2,[3,4])。(1,2,(3,4))とは別物だよ。
0197nobodyさん
2007/09/12(水) 01:49:37ID:???でリファレンスといえば使い慣れてくると
$var = [
{
name => 'taro',
age => 28,
child => [
{
name => 'taroJr',
age => 3,
},
],
},
{
............
},
];
こんな感じになってアロー演算子ばっかになる奴を何度か見た^^;
PHPは意識しなくても言語側が勝手に最適化してくれるから初心者に嬉しいね。
0198nobodyさん
2007/09/12(水) 02:28:28ID:???確かに他の言語とは違ってるので、奇妙な感じはする。
しかし、非固定数個の引数を渡すときはそっちの方がいいだろ。
JavaとかPHPで非固定数個の引数は扱いが不自然だ。
PHPの配列がLinkedHashMapしかないことは初心者向けとしてはいいが、その分速度を犠牲にしてるしな。
0199nobodyさん
2007/09/12(水) 09:20:48ID:???あーそれもポインタっていうのか。
↓こっちのことかと思ってた。
$pointer = &$source;
int* p = *s;
//↑こんな書き方であってたっけ?もう10年ぐらいCは触って無いなぁ
0200nobodyさん
2007/09/12(水) 14:24:25ID:???@a = (1,2,[3,4]);
$p = \@a;
print @$p->[2]->[0],"\n";
0201nobodyさん
2007/09/13(木) 12:59:49ID:???perl使いな奴らって、判りにくいソース書いて『お前、こんな簡単なのも理解できね〜のかよ!』って感じで
見下した態度がムカつく。
せめて、変数名だけでももう少し判りやすくしてくれないの?
0202nobodyさん
2007/09/13(木) 14:08:46ID:???慣習とか無視してアホな変数名つけるやつはどこにでもいる。
それより引数の受け取りであまりにもいろんな書き方ができるのが萎える。
あとオブジェクトの導入部なんとかしてほすい
($proto, @args) = @_;
$class = ref $proto || $proto;
$parent = ref $proto && $proto;
$argref = ref $args[0] eq 'HASH' ? $args[0] : {@args};
$self = bless $argref, $class;
↑こんな回りくどいコード書かなきゃならない糞言語です、Perlは
0203nobodyさん
2007/09/13(木) 14:35:44ID:???PHPでも同じ事が出来てコードもほとんど一緒だよ。
deep structure、参照渡し、デリファレンスを説明するのに簡潔で分かりやすい例だと思うけど。
0204nobodyさん
2007/09/13(木) 22:01:29ID:???単なるサンプルコードにそんなこと言われても。一応arrayだから@a、pointerだから$pなんだが。
それにこのコードはPerlの多次元配列操作の基本で、これが理解できないということはPerlでプログラミングできないというのと等しいんだが。
0205nobodyさん
2007/09/13(木) 22:03:29ID:???子飼のブログからコードをコピペしたんだろうけど、
それは「Perlは非常に豊富で柔軟な言語機能を持ち、わずか数行でこんな多機能なオブジェクトを作れます」という解説をするために書かれた物。
実際にはそんなコードを書くことはまずない。
0206nobodyさん
2007/09/13(木) 22:08:08ID:???PHPでは出来ないよ。PHPで出来るのは参照渡しだけ。
もっともリファレンスは、Perlのリストがフラットにしかデータを格納できないというデメリットでもあるわけで、PerlとPHPどっちがいいかは分からない。
ただ、より低レベルな操作が出来る(強いられる)Perlの方が結果的に表現力が高いと思う。
0207203
2007/09/13(木) 22:27:59ID:???$a = array(1, 2, array(3, 4));
$p = &$a;
print $p[2][0]."\n";
$p[2][0] = 1;
print $a[2][0];
---結果---
3
1
----------
これで出来てない?
0208nobodyさん
2007/09/14(金) 03:16:03ID:???use Data::Dumper;
@arr = (1,2,3);
$ref = \@arr;
undef @arr;
print Dumper \@arr;
print "----------\n";
print Dumper \@{$ref};
これの実行結果が、
$VAR1 = [];
----------
$VAR1 = [];
0209nobodyさん
2007/09/14(金) 03:17:57ID:???$arr = array(1,2,3);
$ref = &$arr;
unset($arr);
var_dump($arr);
print "----------\n";
var_dump($ref);
これの実行結果が、
NULL
----------
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
0210nobodyさん
2007/09/14(金) 13:04:25ID:???でも、メモリー効率(?:言葉合ってるか?)は、Perlの方がいいんだよね。
データベース絡みのプログラムすると実行パフォーマンス気になる。
0211nobodyさん
2007/09/14(金) 22:17:03ID:???ほとんどデータベース内で終わってしまうのであまり気にするまでもない。
phpで操作するのは画面に表示されるデータ(せいぜい100件程度でしょ?)ぐらいだから。
0212nobodyさん
2007/09/15(土) 01:41:09ID:???0213nobodyさん
2007/09/15(土) 01:51:45ID:???0214nobodyさん
2007/09/15(土) 02:02:13ID:???0215nobodyさん
2007/09/15(土) 03:48:43ID:???そうなるとSQLの作成センスが問われる。もう言語全然関係ねー
0216nobodyさん
2007/10/03(水) 20:51:37ID:L+I4Rl+Lもし、アドバイスしてくださる方が居れば、こちらへ宜しくお願いします。
http://php121.blog121.fc2.com/
0217nobodyさん
2007/10/05(金) 12:40:56ID:???xampp使ってるなら、設定は殆どノータッチでOKだ。
できていないとかいうソース、文字コードどうなってる?
UTF-8でBOM付きなら、BOMを抜く。
または、成功したソースを持ってきて、そいつをベースにリネームしてPHPを書き直す。
とにかく頑張れ!
0218nobodyさん
2007/11/03(土) 01:03:28ID:2Hq0fwdi5つの世界がある。
その5つとは:
1.パッケージ
2.インターナル
3.組み込み
4.ゲーム
5.使い捨て
スクリプト言語の得意分野は、5.
0219nobodyさん
2007/11/03(土) 12:45:49ID:???素人が適当なこといってんじゃねーw
0220nobodyさん
2007/11/03(土) 12:46:44ID:???0221nobodyさん
2007/11/03(土) 18:34:38ID:4p7+M7CDスレの趣旨からすると、Perlはおすすめできんな。勉強するなら制約が
きつい言語からやったほうがいいと思う。PHPもメチャクチャ柔軟だからなぁ。
DelphiとかVBとかのほうがいいんじゃないの?
コンパイルするってやっぱ大事な気がする。
0223nobodyさん
2007/11/04(日) 11:34:21ID:???あるかもしれないが、ほとんどつかわれてないだろう?
そういうのは無難とは言わない。
0224nobodyさん
2007/11/05(月) 08:16:20ID:???つ http://japanese.joelonsoftware.com/Articles/FiveWorlds.html
ジョエル・スポルスキは、ニューヨーク市の小さなソフトウェア会社
Fog Creek Software の設立者です。
イェール大学を卒業後、マイクロソフト社、Viacom社、 Juno社でプログラマとして働きました。
0225nobodyさん
2007/11/06(火) 23:50:13ID:???Cは何かできるようになるまでのステップが多すぎる
Perlはソース他人に見せると嫌われる
Pythonは資料が悲しいぐらい少ない
Rubyは使えるサーバーが少ない
よってPHPが最強です^^
0226nobodyさん
2007/11/07(水) 15:46:20ID:???0227nobodyさん
2007/11/07(水) 21:14:23ID:???0228nobodyさん
2007/11/08(木) 00:09:51ID:???わざとそうしない限り、ならないだろw
名前空間をなんか勘違いしているんじゃね?
0229nobodyさん
2007/11/08(木) 13:58:50ID:???0230nobodyさん
2007/11/09(金) 01:57:02ID:???0231nobodyさん
2007/11/09(金) 04:43:29ID:iDdn1iaRhttp://www.aoky.net/articles/steve_yegge/tour_de_babel.htm
Perlもまた、間もなくなくなる。
0232nobodyさん
2007/11/10(土) 11:30:19ID:???スクリプト言語連中の技術レベルはせいぜい自動車修理工レベル。
自動車を設計開発している連中はどこに隠れている?
0233nobodyさん
2007/11/11(日) 01:27:05ID:???0234nobodyさん
2007/11/18(日) 16:41:40ID:???0235nobodyさん
2007/11/26(月) 03:49:34ID:???0236nobodyさん
2007/12/01(土) 05:14:32ID:G65/6OzT初めてのperl オライリー
を読んでからだと、ほかのプログラム言語の本の解説のよくわからん部分や説明の間違ってるところが良くわかります。
0237nobodyさん
2007/12/01(土) 14:24:25ID:sHsJYYNzやってることに大差はないよ
0238nobodyさん
2007/12/02(日) 03:37:09ID:8rkVEOQoスクリプトと、プログラミング言語じゃ大分違う
0239nobodyさん
2007/12/02(日) 12:17:28ID:???ウェブ系PGじゃどんなに頑張っても月100万がいいとこ。
0240nobodyさん
2007/12/02(日) 13:04:14ID:???こんな事は、PHPじゃ起きないんだろうな〜と思ったが
TMTOWTDIの暗黒面にどんどん堕ちて行くぜ
0241nobodyさん
2007/12/02(日) 14:06:20ID:???0242nobodyさん
2007/12/02(日) 15:08:47ID:???お呼びもしないメソッドがすっ飛んでくると、言語的な限界を感じる。
それを避けるようコーディングすると、第三者から何この汚いコード、とか思われる。
0244nobodyさん
2007/12/02(日) 23:28:32ID:???0245nobodyさん
2007/12/18(火) 18:00:21ID:???OSいじっても金にはならんよ。オープンソースOSの開発者のジリ貧を見れば分かる
0246nobodyさん
2007/12/18(火) 20:42:14ID:???0247nobodyさん
2008/01/08(火) 21:27:11ID:8m9VlFVV特にターゲットや仕様は決まっていないのですが、業務として
掲示板やらSNSやらの様なWebのサービスを始めたいのです。
クライアント側は、JavaScriptを最近始め、prototype.jsを
組み合わせて、こちらはこれで何とかなるかなと。
サーバサイドでは、手始めにどの言語を習得すれば良いでしょうか?
C++でのソフトウェア開発は、業務として10年以上の経験アリです。
後はほとんど役に立ちませんが、アセンブラですね。
Perlは、さわり程度はやった事ありますが、難解な省略表記になじめず。
サクッと仕上げるなら、PHPが良い、との意見が多いようですが、
いずれは携帯のアプリなんかも手がけたいと思っていて、そうなるとJava?
すみませんが、ご意見お聞かせください。
0248nobodyさん
2008/01/08(火) 21:30:02ID:???0249nobodyさん
2008/01/09(水) 01:24:33ID:P4m5lmUyマジレスすると、まず1番最初はPHPが無難だと思います。
PHPで飽き足らなくなったら他の言語も使い出すと思います。
私の場合は、C→Perl→Java→PHPと来ましたが、
自分の経験では、Webアプリ作成だと、利用頻度はPHP>>>Java、Perlでした。
0250247
2008/01/09(水) 12:26:41ID:9hmTtWFPやはり手始めにPHPですかね〜。
0251nobodyさん
2008/01/09(水) 12:37:46ID:???Web特有の知識を一年くらいで覚えれば
0252247
2008/01/09(水) 14:54:59ID:9hmTtWFPそうですね〜プログラム自体より、Web特有の知識が大変そう(汗
それと、ちょっとスレ違いかもですが、C#ってどうなんでしょう??
0253nobodyさん
2008/01/09(水) 22:32:22ID:???Microsoft版のjavaだよ。
ASP.NETで組むWebアプリもあるから、そっちでもいいと思うよ。
だけど、バージョンが頻繁にあがっているとか、安定していない
ところもあったりする。あと、ネット上での情報は少ないとか。
なので、私は個人的には、Microsoft製の言語は便利ではあるけれど、
最初にはしない方がいいと思っている。
言語が変わろうとも基本概念は同じなので。
0254nobodyさん
2008/01/09(水) 22:39:34ID:???表記の違いなどは違和感があったけれど、
すんなりいけたよ。
ただ、オブジェクト指向は、工夫をしてオブジェクト指向を
実現しているだけにすぎなくて、違和感を感じるから、
packageあたりはいきなりやらない方がいいと思う。
あと、ハッシュ(連想配列)はすぐに分かると思うけど、
難解な省略記号というのは正規表現のことかな?
あれは使い慣れたらすごく便利だから覚えた方が良いよ。
極論を言うと、以下の表記方法だけ知ってるだけでも十分だw
$s =~ s/[変換前の文字列]/[変換後の文字列]/g;
0255247
2008/01/09(水) 23:50:14ID:???お返事有難うございます。
ネット上の情報は確かに少ないですね〜。 > C#
IDEとして、使い慣れたVisualStudioが使えるのが魅力なんですよね。
>>254
お返事有難うございます。
さらっとしかやってないので良く理解出来てないのかもしれないです。
ハッシュはすぐに理解出来ました。
省略というか、Cと違って、かなり短い表記で色んな事が行われるので、
可読性が悪いというか、まぁ慣れの問題なんでしょうけど、難解なんですよ(^^;
例えば、
while (<IN>) とかが、while ($_ = <IN>) と等価だったり。
ここに書いておいて、既に、$_って何だっけみたいな..。
正規表現とか使えるのは確かに便利なんですよね〜。
知っていて損は無いので、時間が許せば挑戦したいなぁ。
0256nobodyさん
2008/01/10(木) 00:01:44ID:???Perlで難しいのは、中間変数を作らずにリファレンスデリファレンスして、それをmapでループ処理したりするやつだろ。
なんでそういう書き方するかというと、十分Perlを分かってる人間にとってはそれが可読性の高いコードだから。
ifの後置なんかもそう。前置なら{}を合わせて3-4行かかるのを後置なら1行で書ける。
もちろん1行が100文字超になるようなら前置を使った方がいいと思うけど、それは経験やセンスだな。
別に中間変数を使いまくって、mapは一切使わずwhileやforで書いてもいいんだけど、長いコードは読みにくいからな。
JavaとかC#とかみたいに優秀なIDEがあれば別だけど。
0257nobodyさん
2008/01/10(木) 01:27:37ID:???コンパイルなしのスクリプト言語で、Webアプリなら
・Perl
・PHP
・Python
・Ruby
の4択ですね。
それぞれの特徴をリサーチして、順番を決めれば良いと思います。
もし全部を押えておきたい場合、今の自分が昔の自分にアドバイスするなら、
PHP → Python → Ruby → Perl
の順番がいいよと言うかも。
PHP=簡単で学習コストが少ない。情報も豊富。即戦力で使える。レンタルサーバ選びも困らない。
Python=誰が書いてもコードの可読性が高い、読みやすい。IronPythonなどもあって応用範囲が広い。
Ruby=Ruby on Railsを使ったWebアプリ作成のやり方を知っておくためだけ。
Perl=とりあえず過去の資産は豊富なので、一応知っておく程度でOK。WEBアプリ界のCOBOL?
本業の片手間に、それぞれ1ヶ月程度の期間をさけば、広く浅く学ぶには十分でしょうか?
気に入ったやつを深く追求すればOK
0258nobodyさん
2008/01/10(木) 02:59:11ID:???0259nobodyさん
2008/01/10(木) 11:08:36ID:???どっちが最初かなんて考えてる暇があれば、それだけ手を動かしたらどうかなとw
例えば運動なんかでもそうだろ?あれこれ考えるよりも練習をした方が
上達するわけだ。プログラミングなんて実技的なものなのだから。
しかし、Microsoftのを最初にやると苦労するな。言語以外の概念的なものは
公式の書籍などではほとんど触れられていないから。(ま、これが当たり前と
いってしまえばそうなんだけれど)
Perlとかだと、概念も知らない人向けの解説があったりする。
0260nobodyさん
2008/01/14(月) 14:10:04ID:???それくれ。どこにあるんだ?
0262nobodyさん
2008/01/21(月) 02:37:03ID:???0263nobodyさん
2008/02/13(水) 05:28:44ID:???VerUPで動かなくなるPerlやPHPなんてサッサと卒業すべきだわ
0264nobodyさん
2008/02/14(木) 21:37:21ID:???0265nobodyさん
2008/02/15(金) 12:39:16ID:???APIやフレームワークになるとそれぞれ方言みたいな使い方になって、
とたんに複雑になる。
0266nobodyさん
2008/02/21(木) 16:54:32ID:???たしかにね、初めてパソコンやってそのうちインターネット使い始めて
HTMLさわった時なんて何もわかんなかったけど、
弄くれるまでになるのは、勉強よりなにより実践でさんざん弄ってからだもんね
0267nobodyさん
2008/02/22(金) 00:22:43ID:???perlにもmod_perlがあるけど使える鯖があまりない
0268nobodyさん
2008/03/02(日) 02:29:04ID:UewuyGZDもうJava勉強してるときは何がなんだかわからなかったけど、
Javaやった後perlやphpやったら簡単すぎてびっくりした。
時間あるならデータ型とかきちんと学べてオブジェクト指向とかも学べるから
Javaからやってみそー
0269nobodyさん
2008/03/02(日) 21:14:13ID:???Perlはリファレンスとか無名ハッシュとか、変にややこしい。
初心者はPHPに転んで当然だ。そりゃPHPの方が普及する。
Perlは最初から多次元配列が可能であれば、
もっと受け入れられやすいものになってたのに。
0270nobodyさん
2008/03/02(日) 22:10:54ID:???どっちをやってもCやJavaを勉強するときは糞の役にも立たない。
0273nobodyさん
2008/03/03(月) 00:42:24ID:???0274nobodyさん
2008/03/03(月) 00:55:34ID:???0275nobodyさん
2008/03/03(月) 01:09:06ID:???わけわかんねwwww よっぽどつらいことがあったんだなw
■ このスレッドは過去ログ倉庫に格納されています