zunbe |
||
|
ブログを試す:Doblog | 衆議院選挙 |
2005/09/12
今日も、こんな事があった。 社員に、XMLを解析するプログラムを書かせた。 ----- データ中にはタイトル(title)と作成日付(crdate)があり、残り(item)は関連情報。関連情報の数は決まっておらず、いくつでも登録される。 このXMLを解析するのに、社員が書いたコードはこうだ(必要部分以外省略)。 ----- # 要素は item に達した? if ($item == 0) これではダメである。 データの記述順序に依存するイレギュラーなケースもないとは言えないが、常識的な考え方として、要素の順番がどのような順番であっても、処理できるようになっているべきである。 データの解析とは、ただ書式を分解すればよいというものではない。
投稿者 zunbe : 2005/09/12 00:39:25
XMLの構文解析ですか・・・ C# だと XPath が使えるので、とても楽ですが・・・。 決められた構造の XML を解析するなら、正規表現使えば抽出できますよね。(可変個のやつも) 投稿者 GOTTi : 2005/09/12 09:53:39 ちなみに、例として出ているプログラムは、意味をわかりやすくするために perl でエッセンスをだけ書いたのであって、実際のプログラムは XML::Parser モジュールを使用して書かれています。 問題としているのは、「XMLを解析する」という事ではなく、「XMLのデータ構造の考え方を知らない事」です。 テレビのスイッチを入れれば映像が見られます。 投稿者 ずんべ : 2005/09/12 10:59:52 XML に関してだけ言えば、僕は、モジュールを使ってでも「正しく」読み書きできる程度のスキル?があればよいと思っています。 ただ、XML に限らず、何らかのデータを扱う際の「データ構造」については、その構造を正しく「認識・理解」できるだけのスキルが必要で、この社員さんには、それが欠落しているんですよね・・・。(ってことをずんべ師匠は言いたいんですよね) でも、このスキルって、結構高度なものだと思います。 僕がH●Lの学生バイト君をやとっていたときは、一人、データベースの設計とかにすごく興味のあるヤツがいまして、その子とは、学校の課題のデータベースの設計などでいろいろ議論してました。そういうことしないと、データ構造に対する理解や考え方って身について行かないですよね。
投稿者 GOTTi : 2005/09/12 13:28:20 そういう事ですね。 XMLに限らず、最終的にモジュールを使う事は何ら問題はないと思います。 しかし、めくらで使うのと、理解して使うのは、ぜんぜん違います。 「考え方」を理解すること、更に言えば「考え方」を整理することは、プログラミングにおいて、非常に重要な事だと思うのです。 投稿者 ずんべ : 2005/09/12 14:11:14
|
|
|