• ベストアンサー

スキルを高めたい日曜プログラマへアドバイスをお願いします

はじめまして。 カテゴリ違いと指摘されるかも、とは思ったのですがより広範に情報を得たいのでこちらにPOSTさせてください。 私はperlをさわり始めて4年目くらいになる主婦です。 コンピュータの基礎教育を得て卒業し、出産退職までは一般メーカーのシステム部でシステムメンテやネットワーク管理、社内システムサポートなどをしていました。 もともとプログラマ志向が強く、育児がひと段落してからPerlのCGIを触り始め、最近は一からソースを組むことも苦ではありません。 ですが、最近は自分のソースを美しくない(醜い)と思うようになりました。 Perlの基本思想(?)であるTMTOWTDIから言えば、私のようなプログラマも受容される世界ではあると思うのですが、もっとスマートなソースを書きたいという欲が出てきたのです。 具体的に問題意識の高い順に挙げると、 ・正規表現にとても弱い!ので冗長なソースを書きがち ・家庭環境的に(たぶん年齢的にも)職場復帰しづらく、自分のソースを客観的に評価・研鑽する機会がない ・コーディングにリソースを意識しておらず、一般ISPのサーバにUPしたときに不安 ・「オブジェクト指向」という言葉を知っているが具体的にどういうことかさっぱりわからない などなど・・(本当はもっと重篤な問題点がいくつもあると思いますが)。 Perlの世界は私にとって流れの速い大海のようで、自分が今どこにいるのか、どこへ向かって泳ぎ出せばより「高み」へ進めるのかがわからない、といった感じです。 ちなみに私には「職場復帰して大規模システムの開発にかかわる」などといった野望はなく、あくまで在野にいて、一般ISP向けCGI専門として、よりクオリティの高いソースが書ける個人プログラマでありたいと考えています。 そこでこんな私に、購読すべき本・参加すべきグループ・訪れるべきサイト等があれば、ぜひおすすめいただけませんか。 手元には リャマ本、ラクダ本(Perl5)、CGIプログラミング初版、Perlクックブック2版、Perl救命病棟(翔泳社)、正規表現辞典(同) などがあります(オライリー系は皆リファレンス的な活用です) グループにはどこにも参加していません。 自宅には Vine Linux3.2 + Perl4 によるローカルテスト環境があります なんだか抽象的な質問で申し訳ありませんが、業界の一般論として有用なものがありましたらぜひお教えください。

  • Perl
  • 回答数10
  • ありがとう数16

質問者が選んだベストアンサー

  • ベストアンサー
  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.2

>最近は自分のソースを美しくない(醜い)と思うようになりました。 > もっとスマートなソースを書きたいという欲が出てきたのです。 ご自分のソースに対してこのような感想をもたれるということは、 「美しい」「スマート」と感じる基準をお持ちなわけですよね? たとえばそれが××さんの書いたソースのような、というものなら スタイルを真似してみるのも一つだと思います。 また、スタイルに限りませんが、「よいPerlプログラム(スクリプト) を書く」のには ダミアン・コンウェイの「Perlベストプラクティス」 が非常に参考になると思います。 オライリーの本でちょっと高いのでオススメしづらいのが難ですが、 値段以上の価値はあるでしょう。 正規表現に関しては書き始めると止まらないので抑えておきますが(笑) Regexp::optimizer http://search.cpan.org/~dankogai/Regexp-Optimizer-0.15/lib/Regexp/Optimizer.pm Regexp::Assemble http://search.cpan.org/~dland/Regexp-Assemble-0.28/Assemble.pm Regexp::Common http://search.cpan.org/~abigail/Regexp-Common-2.120/lib/Regexp/Common.pm あたりを活用すると良いかも知れません。 挙げられた本に入っていないので書きますが、 正規表現をとことん究めるなら、オライリーの 「詳説 正規表現」は外せないでしょう。 効率のよい正規表現の書き方などがわかります。 > 自分のソースを客観的に評価・研鑽する機会がない Rubyなんかだとわりと活発に勉強会などが開かれている のですが、Perlだとどうなんでしょうねえ 一応 Shibuya Perl Mongers http://shibuya.pm.org/ FrontPage - Kansai.pm http://kansai.pm.org/cgi-bin/wiki.cgi のようなグループはあるのですが。 > ・コーディングにリソースを意識しておらず、一般ISPのサーバにUPしたときに不安 こればっかりは場数を踏むよりないと思います。 まあこれはやっちゃだめよ的なパターンはありますけど。 ・オブジェクト指向について これもスペースが足りません(笑)が、多分誰に投げても納得させられる だろう答えは Object-oriented programming (OOP) is a programming paradigm that uses "objects" to design applications and computer programs. (英語版Wikipediaより) つまりプログラミングの中心が、手続き(関数)ではなく "オブジェクト" = 処理の対象であるということです。 詳しくは↓この辺とか。 オブジェクト指向とは何か http://iwatam-server.dyndns.org/software/devintro/oo/oo/ sumim’s smalltalking-tos - オブジェクト指向の概念の発明者は誰ですか? http://d.hatena.ne.jp/sumim/20040525/p1 > 訪れるべきサイト等 海外の事情は明るくありませんが、日本に関して言えば Perl Hackerの方々はサイトにまとめてなにかを 置くということよりも、blogという形で 断片的に残していくスタイルがほとんどだと思います。 ですので追いかけるのはちょっと大変かもしれませんが 日々ウォッチしておくとか。 小飼さん、宮川さん、竹迫さん、伊藤さん…あと誰か? ところで > 自宅には Vine Linux3.2 + Perl4 によるローカルテスト環境があります いくらなんでも Perl 4は問題ありではないかと… Vine 3.2でも 5.8あたりが入っていませんか? Perlベストプラクティス http://amazon.jp/dp/4873113008 Perl Hacks ―プロが教えるテクニック & ツール101選 http://amazon.jp/dp/4873113148

momonga_z
質問者

お礼

ありがとうございます! 問題点のひとつひとつに的確に応えていただき、まるで森の中でコンパスを与えてもらった気分です。 ご紹介いただいた内容を、すべて一巡してからお礼しようと思ったのですが、あまりに深く広いものばかりで、すべて見るのは途中で諦めました(笑)。 あとでじっくり勉強したいと思います。 「Perlベストプラクティス」や「Perl Hacks」は、実はずっと気になっていた本です。 やはり読むべきですね。(ベストプラクティスは私も価格にひるんでました) 私が自分のソースを「美しくない」と感じるのは、やはり無駄なロジックが多いという一言に尽きると思います。 きっかけは、先日公開されたCGIソースの中にに、自分のと同じ目的をもつサブルーチンを発見したことです。 私は30行ほどで書いたサブルーチンを、その方はたった3行の正規表現で済ませていました。衝撃で、無知の知という言葉が浮かびました。 もちろん私の場合は「無知であることを知らずにいた」という逆の意味で、ですが。 今回いろいろ教えていただいて、自分がさらに何も知らなさすぎだったことを恥じていますが、少しでも上向きでいきたいとも思います。 これからもいろいろお教えください。

その他の回答 (9)

  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.10

まだ締め切られていないのですね。 他の人がどんなものを読んでいるかという参考になるのではないかと思います。 Unknown::Programming http://d.hatena.ne.jp/fbis/ Perl関連のものが主ですが、プログラミング全般に 関係するような本もあります。 簡単な感想もついていますので参考にしやすいのでは ないでしょうか。 もちろん全部読めということではなくて、興味をひきそうな ところをつまんでいけばいいと思います。

momonga_z
質問者

お礼

こんにちは! お教えいただいたリンク先は私にとって、とてもおいしい(!)リンク先でした(笑)ありがとうございます。 中にある「まるごとPerl!」は「私ってぜんぜん勉強不足やん!」と大きなインパクトを与えてくれた一冊で、手元に持っています。 「初心者放置のやりたい放題な一冊w」という書評に思わずクスリときてしまいました。 またその他に紹介されている書籍の数々も魅力的なものばかりです。 即効ブックマークさせていただきました。ありがとうございました。 >まだ締め切られていないのですね。 実は突然実家に戻っていましたので、締め切りし損ねていたのです。 お返事が遅くて、回答してくださった方には申し訳ないことをしました。 今回いろいろ情報をいただいて、当面の目標も定まりました。 #回答いただいたすべての皆様に感謝します。 #いつか私が逆にお役に立てる日がきますように・・。

  • us123
  • ベストアンサー率26% (10/38)
回答No.9

Squeakを勉強したらどうですか ここではSqueakというSmalltalkベースのプログラミング環境の主にプログラム開発者向けの情報を掲載しています http://squeak.qp.land.to/wiki/index.php?FrontPage 以上

momonga_z
質問者

お礼

回答いただきありがとうございます。 リンク先サイトを見たり、またキーワードでググってヒットしてきたサイトも見てみましたが、ざっと見るだけでもとても興味が引かれました。 子ども一緒になって学ぶのもいいかも、とも。(でも子どもが先に習熟してあっさり追い抜かれてしまうとヤだな、とも思ったり。。笑) すてきな情報ありがとうございます。 早速ブックマークさせていただきました。

  • kabaokaba
  • ベストアンサー率51% (724/1416)
回答No.8

>自宅には Vine Linux3.2 + Perl4 によるローカルテスト環境があります これが理解できないんですよ.Vineは2.6でもPerl5.6でした. 今,Vine2.6の環境下のPerl5.6で日本語を扱うスクリプトを いじらないといけなくて,えらく難儀してるので間違いないです. で,Vine3.2を今立ち上げてみましたが, Perl5.8(Perl5.8.2だった)です. わざわざPerl4の環境を作ったのなら, Perl5.8で勉強する方がメリットは大きいです. #しょぼいISPではいまだPerl4のところがあるようですが。。。 #最近のPerl本は5系統が前提のようですし, #Perl6も準備されてる状況です. >「Perlベストプラクティス」や「Perl Hacks」は、実はずっと気になっていた本です。 >やはり読むべきですね。(ベストプラクティスは私も価格にひるんでました) 「ベストプラクティス」はともかく, Perl Hacksは,Perl5のリファレンスとかモジュール, オブジェクト指向を知らないと呪文だけが並んでいる本にしか みえませんよ.ぶっちゃけた話,主観でしかないですが, ・hashをblessしてobjectを作る といわれて「あいよ~,あとでやっとくわ」くらいに 軽くOKできないと厳しいかもしれません. Perlの小技集には違いないのですが,かなりハイブロウな小技集です. 個人的なお勧めは「続・初めてのPerl改訂版」. Perlの基本的な事項,sub,for/foreach/while,if/unless, ハッシュ(key/value は大事),配列程度を前提として(型globも ときおり顔を出しますが), Perl流OOP,Perl流module,リファレンスの話が展開されます. ただし,どうもforとforeachがごっちゃになっていると思われる 箇所が散見されるので要注意です. ちょっと難解な部分もありますし,Tips集ではないので 実際に応用して自分で何かを作らないと理解できないですが, 概念の把握には有用です. 実際,練習問題と解答までついてます. あと,Code Readingも名著だと思いますが, Cがメインなのでそこらへんは適宜解釈する必要はあると 思います.プログラム作成の共通概念のようなものの把握には 面白いと思います.高いですけどね・・・ #表紙にちょっとした細工がしてあるんですよね,この本. #気がついてない人も多いかも・・・ 「詳説正規表現」は正規表現の本格的な理解には欠かせない 名著ですが・・・オライリの動物本の常として お値段が。。。けどその価値はあります. とにかく,なんでもいいから作ってみるしかないです. 例えば,「詳説正規表現」にはCSVの解析のネタがあります. これを使って,CSVからオブジェクトを生成して, YAMLに変換してみるとか (オブジェクトの生成とYAMLの生成は 「続・初めてのPerl改訂版」に出てます).

momonga_z
質問者

お礼

こんにちは。ご回答ありがとうございました。 >>自宅には Vine Linux3.2 + Perl4 によるローカルテスト環境があります >これが理解できないんですよ.Vineは2.6でもPerl5.6でした. ご推察のとおり、ショボいISPがperl4で、ローカルでも4にしていたのです(笑。 とはいえ、積極的にローカルテストをしておらず「作っただけ」に近い状態でもありました。。。 今回のご指摘を受けて5にしようか、とサーバーを立ち上げてみたのですが、HDDがお亡くなりになっていたというオチさえついていました。(中古部品の寄せ集めですから) めげずに環境を戻し、perlは5にしておくつもりです。 さて「続・初めてのPerl改訂版」は、今までぜんぜん注目していませんでした。 具体的な内容までお教えくださりありがとうございます。きっと私にとって効果的で有用に違いないと感じました。 またじつは先日書店で「詳説正規表現」を購入したばかりです。 付箋をつけながら読んでいますが、まだ2章の途中なのにジュリアナ東京でお姉さんが持っていた扇のような状態になってしまい、思わずため息がもれますがご教示いただいた練習ネタも挑戦したいと思っています。 具体的で親身なアドバイスをいただき、とてもうれしいです。ありがとうございます。

回答No.7

なにか目的を持って、取り組んだほうがよいと思います 本ばっか読んでいても、はっきりいって意味が無いと思います 本は目的を遂げるための補助的なもの(まさしく参考書)と考えるべきです 自分は個人的にブログシステムを作成していますが、とても勉強になります 四方八方手を尽くして問題を解決することが、多くのことを吸収できます 購読すべき本・参加すべきグループ・訪れるべきサイトなどはその過程で自ずと分かってくると思います

momonga_z
質問者

お礼

こんにちは。ご回答いただきありがとうございます。 >なにか目的を持って、取り組んだほうがよいと 実は自分なりに持っているテーマはあるのですが、ちょっと恥ずかしくって申し上げる勇気がありません(汗)・・。 私はどうしても近視眼的になりやすいタイプのようで、一般常識と認知されていることさえ、初めて知るという状態ですので、今は本を読むだけでもある程度効果があるかもしれません。 ブログを手がけるのも、面白そうですね。 まだ私の実力はうんと手前ですが、いつかはやってみたいテーマです。 私も負けないようがんばります。

  • 10940
  • ベストアンサー率21% (41/187)
回答No.6

書き漏らしたことと、他の方のコメントを読んで改めて書きたくなったことなど。 まず、正規表現はどの言語を使うにしても重要な武器なので敬遠しないで身に着けましょう。最終的には適材適所ですが、まずは何でもかんでも正規表現でやってみるくらいでよいと思います。特にPerlは正規表現が簡単に使えるから人気があるのだと私は思っています。 コードが汚いということですが、やはりPerlは汚くなりがちな言語だと思います。それに嫌気が差して別の言語に移った方、別の言語を作った方(!)がいるくらいですから。これも結局は好みの問題なので、余裕があるならばPython、Ruby、Java、C#あたりを勉強してみてはいかがでしょうか。Python、Rubyはオブジェクト指向を強いないので手軽に始められ、それぞれ特徴をもった言語なのでおすすめです。(OSやドライバなどを作るのでもなければ今さら勉強とはいえ趣味でC、C++に手を出す必要はないと思います。生産性が低すぎます。) オブジェクト指向を気にされているようですが、必要に迫られていないのにどうしても覚えなければならないものだとは思いません。 それ以前に構造化ができていないのではないしょうか。 テストモジュールを使って(Test::Tutorialなど参照)テストプログラムをちゃんと書くことからはじめてみてはいかがでしょうか。テストプログラムはその関数、モジュールを使うユーザであるわけなので、テストしにくい関数、モジュールというのは設計が悪いといえます。 このあたりの問題を扱ったJavaの本なら良書を紹介できるのですが、Perlであるのかはちょっと知りません。

momonga_z
質問者

お礼

何度も気にとめていただき、ありがとうございます。 正規表現は、じっくり腰をすえて取り組みたいと思っています。 今はまだアスキーアートにしか見えない、と泣きたい気分になることもしばしばなのですが、いずれは勝手に手が動く(?)ようになりたいと。いや、言い過ぎでしょうか(笑) Python、Rubyなど他の言語の学習は、総合的なプログラミング能力を高めるためにもいずれ避けられないと思っています。やるならRubyがいいな、とも。 けれどperlの習熟度が幼いうち両方に手を染めるのも自分のためにならないような気がしています。 自分の稚拙さを今回思い知りましたので、せめて半年は知らずにいた常識を取り戻すことに集中し、それからとりかかりたいと考えています。 それから構造化については、今まで全く頭の中にありませんでした(苦笑 ご指摘いただけたことは幸運でした。また具体的にお教えくださって感謝します。 こういう客観的な視点が私にはまったく欠けており、指摘していただけることに感謝しないではいられません。 これからもどうかご指導ください。

回答No.5

No.3回答者です。 PHP5を勧めるのはあくまでオブジェクト指向がどのようなものかを知る上で、もっとも手軽で取っつきやすいのではないかと思うからです。 PHPの変数は基本的に局所変数となるため、スコープの縛りはきちんとしています。PHPでは、どのブロックでも変数宣言ができる上に、その点のチェックが弱い(変数名のタイプミスを指摘してくれない)点で、非常にやっかいな面を持っています。 use strictプラグマと use varプラグマ、変数宣言でのmyを使いこなすことで perlの方がずっと変数スコープについては使いやすい言語になります。 正規表現、perlとしてのプログラムについては他の方がおっしゃっているとおり、他の優れた方のコードを読み、自らたくさんコードを書かれることではないかと思います。perlはCGI以外の、いろいろなテキスト処理やデータ処理用のプログラムを書くのにも適しているので、そうした方面のコードも書いてみられてはどうでしょうか。CGIだとどうしても表示用のHTMLコードがロジックのコードと混在するので、その分、コードが見にくくなるという難点がありますので。

momonga_z
質問者

お礼

なるほど、私は混乱していたようですね。でも今度は理解できたと思います。 ありがとうございます。 use strictプラグマと use varプラグマについては、最近読んだ本でもその重要性を強調されていました。今後コーディングの際は習慣化するつもりです。 今回いろいろお教えいただきながら、一般に流通しているオープンソースCGI(優れたソースもありますが、そうでないものも・・)を参考に自己学習することは、一定のリスクもあるのだな、と思いました。 気づくのが遅すぎた感はありますが、こうして無知な質問に対しても丁寧に教えていただけるというのは本当にありがたいことです。 いただいたお時間を無駄にしないように、と気持ちを引き締めています。

回答No.4

perlを否定されている方がちょこちょこいるようなのですが、 まず、変数すべてがglobalになるわけではありません。 局所化するには、my,local を使えば可能ですし、 perlは、blogを世に知らしめたmovableで採用されていますし、mixiもperlです。 # このような著名なシステムで採用されているperlが仕事でつかえないと思い込むのはどうかと・・・ perlでのオブジェクト志向を学ぶのであれば、賢人達が集う、cpan(http://www.cpan.org)のモジュール群をダウンロードして中身を解析してみるのが、一番てっとり早いのではないでしょうか? ただし、元々perl自体はオブジェクト指向言語ではないため、(perl6は違いますが)ちゃんとオブジェクト指向の勉強をしたいなら、rubyなり、javaの方がいいかも知れませんが。 言語に関係なくデザインパターンも勉強されたほうがよろしいかと思います。 他の方の返答やら、質問から察するに、モジュール(cpan)をあまり活用されていないように思います(違ってたらごめんなさい) perl利用の最大の強みはcpanにあると言っても過言ではありません。 ぜひともcpanを活用し(自分もcpanへモジュールがupできるようになり)みんなで幸せになりましょう!

momonga_z
質問者

お礼

ご指摘のとおりでお恥ずかしいです。 CPANの存在は知っていたものの、単なるPerl本体の配布サイトだと思い込んでいました。 今回のおっしゃるような側面を持つサイトであることを知り今後は積極的に見たいと思っています。 それにしても、ちらと見ただけでもすごいボリウム。。。 「初心者向けCPANの歩き方」みたいなサイトがないかと探してみましたが、同じことを考えた旅人の足跡しか見つけられませんでした(笑 これも王道なし、ということでしょうか。 また、Rubyは「いつか触たい言語」でした。ですが今回の一連のやり取りを反すうしていくうち、もう少しperlで基礎体力をつけてから行くべきかも、と思い始めています。 いろんなバックグラウンドを持つ方のアドバイスに触れることは、私にとって本当に有意義で、ひとつひとつがうれしく、ひたすら感謝です。

回答No.3

perlのコードは確かに綺麗じゃないと感じます。CGIで公開されているコードも、中身が詳しくわかってくると「これはどうも…」と思うものが多々あります。 個人的な感想として… (1) 構造化がなされていない。特にperlは全変数がglobal変数となってしまう上に、どこででも変数宣言が可能であるため、とにかく手当たり次第に変数を宣言し、プログラム・コード全域でglobal変数を参照・変更しまくるというコードになりがちです。この意味で、他のプログラム言語、特に変数のスコープの縛りが厳しいプログラム言語を他に1つは学ばれることを勧めます。CやC++、あるいはPaslcal(Delphi?)あたりがいいかもしれません。また、perlのコードを書く時に、use strict プラグマとuse vars プラグマを使う習慣をつけるのも良いです。 (2) perlはオブジェクト指向を学ぶ入門の言語としては不適切。りゃま本でperlのオブジェクト指向をかじりましたが、残念ながら歯が立たず。C++かPHP(ver5)が適切かと思います。個人的感想としてはPHP5がオブジェクト指向を学んでいく際の最初の言語としてはわかりやすいように感じました。

momonga_z
質問者

お礼

ありがとうございます! 乱雑な変数宣言&参照とは、まさしく私のソースを象徴する言葉です。身につまされて読みました・・。 >変数のスコープの縛りが厳しいプログラム言語 にPHPはあてはまりますか? またCやC++のどちらかを選択して勉強する場合、利用者が多い(勉強会やユーザグループが活発)なのはどちらでしょうか?

  • precog
  • ベストアンサー率22% (966/4314)
回答No.1

「Perlなんか仕事で使うなよ!!」って言っちゃう古いオジサンなんで、わかるところだけ、、、 >・正規表現にとても弱い!ので冗長なソースを書きがち 正規表現って決して軽くないんで、究極のパーラー目指すならいろんな表現で書いて性能を比較してみましょう。 Perlにメンテナンス性を求めるのは間違えてる気もしますが、野武士やるなら他の人がいじれた方がいいですよね。自分なりの「わかりやすい書き方」を目指してみては? >・家庭環境的に(たぶん年齢的にも)職場復帰しづらく、自分のソースを客観的に評価・研鑽する機会がない これはプログラマーのコミュニティ見つけるしかないですね。後は作品発表してコメント求めるとか、Perlで目指すエレガントなコーディングを題材にしたサイト立ち上げるとか (もうありそうな気もしますが) 後は、良いコーディングの基本は大量にコードを読むことです。既にその時期は過ぎていると感じているならもういいですけど。 >・コーディングにリソースを意識しておらず、一般ISPのサーバにUPしたときに不安 これは環境が有るなら実験すれば済む話ですよね。自分で自分にフィードバックが出来ないで、本だよりだと限界がありますよ。 ・「オブジェクト指向」という言葉を知っているが具体的にどういうことかさっぱりわからない 簡単に言うと、データ(型)にコード(振る舞い)が付いてきます。 データの定義が厳密に出来るのと、設計の流用/管理が容易になりますので、スパゲッティコードにさよなら出来ます。もちろん書きようによってはOOPでもCOBOLチックに書いたり、スパゲッティーコードも書けます。 なので、きれいなコード(信頼性/メンテナンス性が高い)を書くことが出来る言語という理解で良いと思います。 まぁ、最初は量なんで、なんでもいいからガシガシ書いてみれば?

momonga_z
質問者

お礼

ありがとうございます。 在宅のみという環境なので、おのずと「本だより」になり、知識の蓄積も場当たり的で穴だらけなのです。 具体的に「こんなの役に立つよ」というものがあれば引き続きお願いします。

関連するQ&A

  • Mod_Perlについて

    こんばんは。Perlのほうとどちらに書き込むべきか迷ったのですが、こちらに・・・。 PerlでのCGIでシステム屋さんにあるシステムを作ってもらい運営を開始しました。 サーバー会社は海外のものを使っているのですが、メールやチャットでカスタマー・サービスとやり取りしているとMod_PerlとFast_CGIを使えば負荷が軽くなるから、必要なら無料でインストールしてあげるよ、と言ってくれています。 私はプログラマーでなく、あくまでビジネス側の人間なので、Mod_Perl、Fast_CGIと言われてもピンと来ないので調べて見ると Mod_Perlは CGIの負荷を減らし、スピードを速めるとありました。 また、その他の色々な説明を以下のページで 読みました。 http://d.hatena.ne.jp/keyword/mod_perl が、私にはあまりピンと来ません。 色々書かれていますが、サーバー会社が言うように、 Mod_Perlをサーバーにインストールして今用いているPerlで書かれたCGIプログラムをそのままMod_Perlに乗せたらいいだけなのでしょうか? それともシステム屋さんにもう一度連絡を取り、プログラム自体をいじらないといけない事もあるのでしょうか? またFast_CGIって何でしょうか? (こちらは検索してもいまひとつ分かりやすい説明が見つかりませんでした) 答えられる範囲だけでよいので回答頂けますと助かります。 宜しくお願い致します。

    • ベストアンサー
    • CGI
  • MFCで正規表現

    Visal Studio 2005のC++で、MFCアプリとして、正規表現を行う簡単なプログラムを書きたいのですが、方法がわかりません。 できれば、perl互換が良いですが、MFCで一般的なものでかつ、 高速で正規表現の処理をさせたいので64bitでコンパイルしても問題ない ものが知りたいです。 ちなみにVBのRegExpとPerlで正規表現は使ったことがありますので、正規表現自体は多少知っております。 MFCでどのように記述するかが知りたいです。 よろしくお願いいたします。

  • php vs perl

    お世話になっております。 perlでCGIを作りましたところ、今はphpが主流との意見をもらいました。 phpの勉強をして作り直そうと思っていますが、phpの利点はなんでしょうか? ちなみに、正規表現を使ってテキスト検索することが多いため、Perlを重宝しているものです。

    • ベストアンサー
    • CGI
  • POSIX系(ereg)とPerl互換系(preg_match)、PHPの実務で多用されるのはどっち?

    PHPの実務の現場で、好んで使用される正規表現関数は、 POSIX互換かPerl互換かどちらでしょうか? 場合によりけりでしょうか? それとも、Perlを知らないプログラマーは、ereg や ereg_replace しか使っていなかったり、 逆に、機能が豊富な preg_match や preg_replace の方が好まれるのでしょうか? 今後、PHPプログラマーと共同で開発することを考えれば、どちらを使用すればいいでしょうか? ※POSIX互換では、数字の \d って使えないんですか?

    • ベストアンサー
    • PHP
  • perl 5.6 とperl 5.8 の内部形式の違い

    perl 5.8 からはUnicode対応され、内部形式がUnicodeで管理されると聞きました。Unicodeで管理されるということが結局どういうことなのか?従来のperl 5.6 と比べて何が変わったのかが理解できません。 perl 5.6 はUnicode対応されていないので内部形式はバイナリ。たとえばリテラル文字をソースに書いた場合、内部での文字はバイナリ列として管理されるのでバイナリの元の文字がどのようなエンコード(EUC、SJIS等)であったかはプログラマが意識するところ。それに対し、perl 5.8 はUnicode対応されているのでperl 5.6 のようにプログラマが文字コードを意識する必要はない(常にUnicode)と理解しています。 私の理解は上記のようなものですが、これが正しいのか正直まったく自身がありません。むしろ、違っているならばよりわかりやすい説明をお願いしたいところです。 長文となりましたが、よければ教えてください。お願いします。

  • 文字の置換に関しての質問です

    いつもお世話になります 正規表現もしくはPerlスクリプトを用いて文字を置換するコードの書き方を教えて 頂けないでしょうか 具体例 $filename = hoge.gifを $filename = hoge.cgiという具合に変更したいのですが 宜しく御教授お願いします。

    • ベストアンサー
    • Perl
  • 拡張子を除いたスクリプト名の取得方法を教えて下さい

    はじめまして。Perlは初心者ですが、既存のPerl掲示板のカスタマイズに奮闘しています。 今、実行しているスクリプト名の取得方法でつまっています。 D:\cgitest\bbs\osiete.cgi というファイルを実行している時に、「osiete」を取り出したいと思っています。 $0で取得すると上記「D:\cgitest\bbs\osiete.cgi」がそのまま取得されました。正規表現で/\\(.*)\./、又は/\\(.*?)\./として$1を参照すると、「cgitest\bbs\osiete」が取得されます。 ?を使った最短一致を指定しても、開始位置が変わらないらしいので上記の結果には納得しているのですが、ではどうすれば「osiete」を取得できるか分からずに悩んでいます。「最後に出現する\」という指定が出来れば解決しそうなのですが、そのような表現方法があるのかどうかも分かりません。 出来れば正規表現で取り出したい(外部モジュール等を使用したくない)と思っているので、もし解決方法があればご教授をお願いしたいです。どうかよろしくお願い致します。

    • ベストアンサー
    • Perl
  • JavaScript(JScriptともいうのかな?)の正規表現につい

    JavaScript(JScriptともいうのかな?)の正規表現について質問です。 今、WindowsScriptHost(WSH)を利用するソースを読んでいるのですが、 app.charAt(app.length-1).match(/\S/) とか、 Urls(i).replace(/^feed:\/*(?:http(s)?:\/\/)?/, 'http$1://') のように、スラッシュで囲まれた表現が使われているのですが、これはどういう意味になるのでしょうか? Perlみたいに、ただ「/」で囲まれた文字列を正規表現の何かと判断しているのでしょうか? もしそうなら、解説されてる良いページを見つけられなかったので、詳しく説明されてるページなど教えていただけるとありがたいです。 宜しくお願いします。

  • VisualBasic6でPerlの正規表現と互換性のあるコンポーネント

    VisualBasic6でPerlの正規表現と互換性のあるコンポーネントを探していますが、そういうものはあるのでしょうか? また、VB6から .NET VB? C#ソースをへコンバートする ツールはありますか? 心配なのは、サードパーティのコンポーネントをどう C$ .NET VBにコンバートするか不安なもので・・・

  • 正規表現

    正規表現の使い方を教えて下さい。 下記のソースでは、oPerl5Util.matchメソッドから戻って来ません。 正規表現文字列が悪いのか それともメソッドの呼び方の手順などが悪いのか 指摘して下さい。 import org.apache.oro.text.perl.Perl5Util; public class clsTestMain {  public clsTestMain() {}  public static void main(String[] args) {   clsTestMain clsTestMain1 = new clsTestMain();   Perl5Util oPerl5Util = new Perl5Util();   String sPattern = "/[0-9a-zA-Z_!#$%&'*+-/=?^`{|}~]+(.[0-9a-zA-Z_!#$%&'*+-/=?^`{|}~]+)*@[0-9a-zA-Z-]+(.[0-9a-zA-Z-]+)*/";   String sTaget = "1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890@.jp";     try {    boolean bResult = oPerl5Util.match(sPattern,sTaget); // ここで処理が止まる    System.out.println(bResult); // ここにも来ない   } catch (Exception oException) {    oException.printStackTrace(); // ここにも来ない   }  } }

    • ベストアンサー
    • Java

専門家に質問してみよう