【 Webアプリのプログラミングの心得 】
今回から実際にプログラミングを行う際のポイントや取組の心構えなどを述べてみたいと思います。
構造化プログラミング
多少でもプログラミング経験のある人は、基本的な事項として知っていると思いますが、ついついやってしまう。
特に、プログラミングに自信のある人ほど陥りやすい。
プログラムをコーディングするとき、思いつくロジックをダラダラと書いてはいけない。
きちっと構造化する必要がある。
システム設計書でも基本設計、詳細設計、プログラム設計と色々な段階があり、大規模システム構築の場合は、そのような設計書の手順を追って制作していく。
しかし、
小規模でやる場合に、一々そのような工程を生真面目に辿っていたら費用も期間も膨大に掛かり過ぎる。
よって、
省くところは極力省くが、やはり、システムは構造化して構築しないと、後の保守が大変である。
制作中のデバックでも誤りが発見されにくい、混乱するなど大変なことになる。
やるべ最低限のことは頭の中だけでも整理して、それをプログラムに反映させればよいのです。
PHPのプログラム構造では、
PHPだから、どうだ・・・と特別なものはないが、
構造化ということではサブルーチーン化、Function(関数)化、変数化などで共通ロジックは纏め上げてシェアする。
一本のプログラムの構造を、ハウスキーピング(初期処理)、本処理、後処理と上から下に流れるような体系化した造りにする。
スパゲティーのようにロジックが絡み合ったプログラミングをすると、あなたのセンスが疑われます。
また、コメント行をできるだけ挿入して後々見直し、保守の時に分かりやすくする。
など、PHPに限らずごくあたりまえの造りにする。
実をいうと、そのあたりまえが意識せずにスラスラと出てくれば、あなたはかなりの達人ですね。
そのくらい、あたりまえの常識をプログラムに反映させた時は、誰が見ても美しいアート的なコード群になっている。
美しいと思えるプログラムコードはバグも少なく、保守メンテも実に楽である。
プログラマーのプログラミング美学という専門職のプロ魂であり、センスの問題ですね。
PHPプログラミング・テストの過程で頻繁に発生して苦労する箇所をあげますと、
EUCとSJISの問題は、文字化けで始終、悩まされます。
Apacheサーバーのシステム設定とMySQL、PHPのロジックの組み立てでコード変換を随所に挿入(サブルーチン化しますけど)する必要がある。
また、開発のローカルサーバーからレンタルサーバーにアップロードしたら、これまた、同じ現象とか、別の現象がでる。
レンタルサーバー側の提供する「AMP」のシステム設定・環境との相性を合せておくことは必須です。
文字化けぐらいなら、まだ、可愛いですが、動かない、バグるなども突然起こることもある。
とにかく「システム環境の設定時には、慎重にチューニングしておくべきだった」と実感することになります。
プログラミング作業以前に解決すべき問題にもぶつかることがあります。
次回のお話をお楽しみに!
--------------------------------------------------------------------
