skillup

技術ブログ

ドキュメント作成 プログラミング全般

ファジープロジェクト対策 その2

投稿日:

前回に引き続き、大事だと思ったこと。一部単なるフレームワークの作り方的な内容になっているかも。

テンプレート共通化

ラジオ、セレクト、チェックボックスなどはテンプレート化しておき、1行もしくは数行で処理がかけるようにしておくこと。

バリデーション

エラーのタイプを設定ファイルなどに定義しておき、できれば本来のロジックはほとんどいじらずにバリデーションチェックができるようにしておくこと

なおイレギュラーパターンに対応できるようにそうでないパターンにも対応できるようにしておくこと。

ログ出し

ログをまめに出す。もちろんレベル分けを行う。

具体的には下記のような段階

  • SQL(重要度で言うと最低、いわゆるdebugレベル)
  • 何らかの処理の開始と終了。処理のメモなど(infoレベル)
  • 望ましくないところ、あるいは異常系の処理(warn,またはerror)

異常系の処理

DBの前後は必ずtry〜catch・・で挟み異常処理が発生した場合に、rollbackできるようにしておくこと。

異常があった場合、

  • 全ての処理を終わらせるのか?
  • 特定の処理だけを終わらせるのか

をしっかりと分けること。

もちろんログの記録は単なるエラーではなくスタックトレース的なものがしっかりと吐かれていることが大切。

新規プラグイン+新規ライブラリ調査

もっとも時間がかかり、知識などで対応できないこともあるので厄介。

シンプルで最小構成のサンプルなどを用意しておき、試しておき、現在のアプリに対応できるようにすること。

CSSフレームワークの活用+頻出CSSについて

プログラム同様、フロントエンドでも頻出のCSS、関数などに関してあらかじめ定義しておき、一発で反映できるようにしておくこと。

個人的にCSSフレームワークはBulumaがおすすめ。

  • mobile時、pc時のみ表示できるCSS
  • テーブル
  • チェックボックス(ラジオ、セレクト)+ラベル
  • flexの組み合わせ(justify-content,align-itemsの組み合わせをあらかじめ作っておく)
  • 関数に関してはPC、SPをすぐに反映できるタイプのものにする。

-ドキュメント作成, プログラミング全般
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

開発時最低限必要かつ有用なドキュメントに関して

ウォーターフォール型の開発をかれこれ1年近くやっております。 自分がやってきた仕事とすると別職種に近いようなイメージでしたが、得ることも多かったため、ここに記しておこうと思います。 以前書いたことの記 …

no image

OSコマンドインジェクション

Contents1 OSコマンドインジェクションとは?2 被害3 対策4 参考リンク OSコマンドインジェクションとは? OSに対する命令文を不正に紛れ込ませて攻撃させる手法。 被害 サーバー内のファ …

no image

アプリケーション間のデータの連携方法に関して

以前やった「現場で役立つシステム設計の原則」を再読してます。 今、読んでいるのはアプリ間のデータ連携に関して。 複数のアプリ間でデータをやり取りする場合、以下のような方法が考えられます。 ファイルを直 …

no image

ファジープロジェクト対策 その1

5月ぐらいから着手していたプロジェクト(顧客管理ソフト)が終焉を迎え、検証段階に入ったので、記して置きたいことなど。 数ヶ月程度ですが、自分が携わったプロジェクトの中では過去最大クラスのものでした。 …

no image

命名規則について その2

リーダブルコードネタ第3段。 前回のエントリーに引き続き、名称の大切さについて Contents1 あいまいな名前はNG!1.1 限界値はmaxかminを使う1.2 範囲を指定するときはfirstとl …