■開発研究記
TOP >  開発研究記一覧 > じゅんび
2016/10/09 じゅんび

 そんなわけで再開しようと思ったわけだが、昔とは色々環境が変わってしまったようだ。月日の移り変わりを感じるのである。このサイトの更新が途絶える間際にブログなんていうのが流行り始めたが、それも今では下火になり、ツイッターの時代になり、フェイスブックの時代になり、LINEの時代になり、インスタグラムの時代なのである。
 うーむ。どうもわたしにはSNSが性に合わないようだ。何と言うか短文では消化不良になるのである。そんなわけで、長文を書き連ねるサイトで行こうと思っているのだ。もっともソフトウェア開発がどうしたこうしたという話を書くのであれば、短文では収まるはずがないので、当然の話ではある。

 それはともかく、問題は環境である。ブログ以前はHTMLを手打ちしていた人が大半だったはずだが、今ではもうほとんど手作業でHTMLを書く人がいなくなってしまったようだ。サイトを手っ取り早く始めるのであれば、HTMLを手打ちした方が良いだろう。と思うところではあるが、折角なので専用のCGIを書いてみることにした。最近はJavaをメインに仕事をしているのだが、「Perlだってできるんだぜ」というところを見せたかったのである。
 そんなこんなで、久々にCGIを書いてみた。書き始めたら凝り過ぎて時間がかかってしまった。凝りすぎても仕方がない。このままでは年内にスタートするのも難しいということで、途中で機能の盛り込みを止めたりしたのだが、それでも2週間ほどかかってしまった。といっても仕事終わりの1時間前後で作業しているので、正味15時間程度、2人日といったところである。CGIにしてもPerlにしても結構忘れていたりするものである。本当は「2時間で出来上がったぜ」と威張りたかったところだが、まあこんなものか。

 作ったのは、これである。そのうち色々溜まったらTOPページからリンクを貼ろうと思っているが、まだ数が無いので、とりあえずこのページからのみリンクを貼ることにする。Perlが本職の人からするとソースの書き方はまだまだかもしれない。ちょっと恥ずかしいが興味がある人はダウンロードしてみると良いだろう。

 物としては2本ある。一覧表示用のblog-list.cgiと本文表示用のblog.cgiがCGIスクリプトの本体である。blog-list.confとblog.confは、それぞれのプロパティファイルである。ここに書かれているパスをファイルの配置に合わせることになる。あとコンテンツによってタイトルを変えたり等をする。
 blog-list.htmlとblog.htmlは、テンプレートとしてのHTMLファイルである。ページの外観はこのファイルを編集することで行う。思想としては、デザイナとプログラマが分業できるようにということである。もっともこのサイトでは、わたし自身がデザイナであるので分業する必要などないのだが、いちいちスクリプト内にHTMLを埋め込みたくはないので、こういうスタイルを取ることにした。
 スタイルというのは、テンプレートであるHTMLファイルに独自のタグを埋め込み、それをCGIスクリプトで通常のHTMLに加工することによってコンテンツを表示しようという事である。先程、「凝り過ぎて時間がかかってしまった」と書いたのは、これの所為である。こうしておけば、CGIスクリプト作成の依頼が来た場合に即座に対応できるのである。そこで多種多様な記述方法にも対応できるようにと色々と処理を書いていたら、非常に面倒になってしまったというわけである。それらは今後の課題ということにしておきたい。上手くできたらライブラリとして外出しにすることも検討中である。

 もう一つblog-list.csvというファイルがあるが、これはコンテンツの一覧になる。拡張子でわかると思うがCSVファイルだ。タイトルであるとか、日付であるとか、中身のファイルのパスであるとかが書かれている。コンテンツが万単位であるならば、DBを使った方が良いのかもしれないが、そんなには書かないだろう。そもそも共有タイプなんかの場合、DBを使えないレンタルサーバも多い。CSVファイルの方が使い勝手が良いだろうということだ。ちなみにここのレンタルサーバは共有タイプであるが、DBを使えるらしい。しかし、使うためには色々とやらなくてはならないことがあった記憶がある。それを調べるのが面倒だったという話は内緒である。
 一覧ファイルの編集は手作業である。一覧ファイルもCGIスクリプトで編集できるようにしようと思っているのだが、管理者しか使わないページだし、CSVファイルの編集はそれほど大変ではないので後回しにすることにした。いずれ対応したい。というか、管理者しか使わないページは、セキュリティ対策が必要になってくるので、色々練ってからにしたいところなのである。

 それとコメントが書けるようにしたい。今後ここはわたしの独善的な主張が展開される予定である。意見が分かれることも書くだろう。それどころか世間で言われていることに反することも書くだろう。となれば、一言言いたい人も出てくるに違いない。そういう人のためにコメントを書けるようにしたいのだが、悪戯対策等もしないとならない。BOTで自動的に広告を書き込んだりするものもある。色々と対策を練ってからという事で後回しにした。

 スクリプト名にblogなどと使っているわりにブログの主要機能であるトラックバックの機能が無いではないかという人がいるかもしれないが、それについても考え中である。トラックバックが実装されていないので、ここも「XXXブログ」なんて名乗らずに「開発研究記」としているのである。何しろ今まで日記は書いていたが、ブログとしてやっていなかった。トラックバックのプロトコルについて調査から始めないとならないのである。トラックバックにはスパム問題もあるようだ。主要なブログサービスと連携するのもありだとは思っているのだが、色々考えて方針をまとめてから実装したいのである。

 コメント機能に関してツイッターやフェイスブックとの連携も最近は多いようだが、これらも調査が必要だ。実装するに当たって、やはりアカウントを取ってみないとならないのだろうか。うーむ。なんだか気が乗らないところである。先程書いたようにSNSはどうもね。そんなわけで、色々足りないようだが、今後の課題は山積みということで、とりあえず公開するだけしてみようというところである。

Pervious < あいさつ   Next >  自称上級プログラマの見分け方

お問い合わせは右のボタンをクリック→

Copyright(C) 2016 miyacho.com