《最新》みんなのトレンド・アイテム!
クラス継承 〜クラスを親子に分離する意義ある?〜 [プログラム研究室]
ナビゲータのEVEです。
12月も半ばになり、
クラス製造も
開発するにあたり、今までの開発方針と考えが変わったので、その点についてご報告します。
[機能によりクラスを分ける]
エラーメッセージクラスを製造し、そのエラーメッセージクラスを各クラスで
extends
するにあたり、すべてのクラスを基本機能と複雑な機能といった分類で、親と子に分けて、管理しようと考えてきましたが、やめることにしました。理由は、エラーメッセージクラスでログを出力するように仕様を変更することを検討を始めてからでした。
[ログへ出力する]
PSR-3
では、ログに関する規約が用意されているのですが、今現時点は、対応していません。理由は、ログの出力は、業務に関連することに限定しようと考えているからです。
現在製造しているのは、クラス、
メソッド
でそこで発生したエラーをいちいちログに出力するのは、エラーを残す目的とはなりえないと考えたからです。
そのため、現在各クラスでインポートしているエラーメッセージクラスでは、ログを出力していません。しかも、エラーメッセージだしね・・・。名前からもログを出力するというイメージないしね・・・。
ただ、そろそろ、画面設計をして、どの国からアクセスしてくるのかとか、ユーザーのことを考え始めてから、ログのことを考え始めました。
[ログへ出力するタイミング]
そんなログの出力するタイミングですが、やはり、エラーメッセージクラスあたりで出力したいですよね?ただ、現在のクラスの仕様を変更しようとすると、いろいろなクラスへ影響がでてきます。そこで、考えられるのが、エラーメッセージクラスの継承です。そうなんですよね???こういう時に、クラスを継承すべきなんじゃないかなって思ったわけです。その考えを思いついたとき、今まで文字クラスを基本的な文字操作のものとその基本的な操作を利用する複雑な文字列操作に分けて親と子にしようとか考えましたが、ちょっと違うかなって思うようになりました。意外と親の機能を子が使うケースってないしね・・・。
PHP組込関数
豊富だしね・・・。ただ、もし文字列クラスを親と子で分離しないと、文字列クラスの場合、5,000ステップ近くあるので、システムパフォーマンスへの影響を心配しています。
っという心配は現時点もあるのですが、PHPも
JIT
が機能として追加され、ハードもここ数年かなり良くなっているので、忘れることにしました。
[あとがき]
文字列クラスは基本機能と複雑な文字列操作のものとに既に分けたのですが、近日中に統合します。そして、これからは、文字列、数値、ファイルとか言った単位で何も考えずに作っていきます。迷っちゃうと手が止まってしまうんですよね?しばらくは悩まず製造できそうです。そして、子クラスを作るタイミングは、エラーメッセージクラスへログの機能を追加しなければならないといったタイミングで、作らなければならない時に作ることにしました。
PSR-3の規約の取り込みというかログの出力の部分については、1月から始めることにしました。PSR-3を読んでみると分かるのですが、統一的にログとして出力することができそうです。ただ、ファイルに出力するのか、データベースに出力するのかといった問題をまだ考えていません。PSR-3自体にはどこに出力するのか定義はなく、自由度が高いのはいいのですが、その辺をきちんと考えてから製造しないと運用してから困ったことになりそうです。また、その辺の考えをまとめ、ブログという形で残すことがありましたら、御意見等いただければうれしいです。
では、また!
タグ:
組込関数
php
PSR-3
クラス
JIT
メソッド
extends
posted by
ゼロから始めるシステム開発
at 16:58 |
Comment(0)
|
TrackBack(0)
|
システム開発研究室
検索
日
月
火
水
木
金
土
<<
2024年12月
>>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
最新記事
(12/16)
クラス継承 〜クラスを親子に分離する意義ある?〜 [プログラム研究室]
(12/15)
CSF 〜他のNIST文書との関係〜 [セキュリティ研究室]
(12/08)
サイバーセキュリティフレームワーク(CSF) [セキュリティ研究室]
(12/05)
システム評価 〜システム開発研究室〜
(12/04)
HTML&CSSの規約を考える −昨日の続き− ~デザイン研究室~
タグクラウド
ChatGPT
JavaScript
php
Ubuntu
情報処理安全確保支援士
カテゴリーアーカイブ
YouTubeでの稼ぎ方研究室
(23)
システム開発研究室
(118)
セキュリティ研究室
(42)
システム監査研究室
(13)
ハードウェア研究室
(17)
ネットワーク研究室
(6)
ソフトウェア研究室
(76)
プログラミング研究室
(97)
デザイン研究室
(3)
データベース研究室
(3)
先端技術研究室
(3)
株式投資研究室
(35)
人工知能研究室
(6)
Coffee Time
(67)
ゼロからはじめるシステム開発
(1)
月別アーカイブ
2024年12月
(8)
2024年11月
(18)
2024年10月
(16)
2024年09月
(14)
2024年08月
(20)
2024年04月
(6)
2024年03月
(12)
2024年02月
(9)
2024年01月
(10)
2023年12月
(15)
2023年11月
(12)
2023年10月
(16)
2023年09月
(12)
2023年08月
(10)
2023年07月
(14)
2023年06月
(30)
2023年05月
(18)
2023年04月
(27)
2023年03月
(28)
2023年02月
(21)
日別アーカイブ
2024年12月16日
(1)
2024年12月15日
(1)
2024年12月08日
(1)
2024年12月05日
(1)
2024年12月04日
(1)
2024年12月03日
(1)
2024年12月02日
(1)
2024年12月01日
(1)
2024年11月22日
(1)
2024年11月21日
(1)
2024年11月20日
(1)
2024年11月19日
(1)
2024年11月17日
(1)
2024年11月15日
(1)
2024年11月14日
(1)
2024年11月13日
(1)
2024年11月12日
(1)
2024年11月11日
(1)
2024年11月10日
(1)
2024年11月08日
(1)
2024年11月07日
(1)
2024年11月06日
(1)
2024年11月05日
(1)
2024年11月03日
(1)
2024年11月02日
(1)
2024年11月01日
(1)
2024年10月23日
(1)
2024年10月22日
(1)
2024年10月21日
(1)
2024年10月19日
(1)
ファン
このブログの読者になる
更新情報をチェックする
ブックマークする
友達に教える
最新コメント
Ubuntuをインストールする −インストール準備− 〜ソフトウェア研究室〜
by 中村 健 (03/11)
プロフィール
ゼロから始めるシステム開発
こんにちは!ナビゲータのEVEです。各種研究室を用意し、次期EVEシステムを製造しようと日々頑張っています。現在一番力を入れているのが、資金調達です。このブログもその一環ですので、ご協力いただければ嬉しいです。
プロフィール
2024年12月16日
共有
Facebook
Twitter
Google +
LinkedIn
Email
Mobilize
your Site
スマートフォン版を閲覧
|
PC版を閲覧
5
次の10件>>
ホーム
2
3
その他
Share by: