元スレ【PHP】フレームワーク CakePHP 16ホール目【v2.4】
php覧 / PC版 /みんなの評価 :
651 = :
>>650
いい事言ってだんろうけど、わかりにくい。わかりやすくお願いします!
652 = :
あーわかった。
ようは、テストもできねーようなコード書くなということか。
653 = :
テストできるぐらいの役割に分割しないとね
654 = :
テストがしにくいコードってのはあるし、
テストをする意味が無いコードもあるんだよ。
一連の処理の中から冗長なコードを取り除いていくと
最終的にはコードというより定義に近くなる。
PHPのスレだからまあ、WordPressのは例を出すと、
wp_config.php これは一応PHPのコードだろ?
だけどこれをテストする意味が俺にはわからない。
設定ファイルでもない限りここまで定義のみに
できることはないけどそれでもテストする意味あるのか?って
思えるほど減らすことは出来るよ。
テストは後付で加えるものじゃない。
テストが出来るようにコードを書いていくんだ。
テストがしにくいと感じたら、テストを書く技術を磨く前に
テストがしやすいコードを書く開発技術を身につけるんだ。
657 = :
>>656
やらないよりはやったほうがいいけど、意味が少ないというだけ。
そして、費用対効果まで考えるとそこまでやる意味ないんじゃないってこと。
なぜなら400を返すまでのコードが正しければ絶対400返るでしょ?一回確認すれば十分じゃない?
その400を返すコードは400を返すという仕様そのものが変わらない限りもう変えることはないでしょ?
それよりも複雑なのは400を返すまでの仮定であってその仮定が正しければ400返すでしょ?
そういう難しくもなく安定したコードのために、どうやってテストをすればー
なんて言うのなら、やっても時間がかかるだけで効果が無いと思うよ。
> 現状、クライアント側の実装でも、
> 「ステータスコードを見て処理を振り分ける」処理があるため、
もしかしてサーバーとクライアント一緒にしてテストしてない?
サーバー側の実装がどうであれ、400が返って来た場合のテストをすればいい。
だから400を返すだけのアプリ(モック)を使えばいい。
もっと言えば、クライアントだけで400が返って来たかのようにエミュレートさせれば
クライアントだけでテストできる。
どんなものでもテストしてやるぞ。ではなくアプリに手を加えてテストが簡単にできる
ようにするというのはこういう話。
658 = :
>>657
引き続き、お付き合いいただきありがとうございます。
全体的なテストの思想、手法のお話しについては概ね同意いたします。
(クライアント側はSinon等を使っており、おっしゃるようなテストを書いております)
ご教示いただいている、お話しについては
「○○のようなテストはやるべきか、やらないべきか?」という形に収束しつつありますので、
スレに添う、単純なCakePHPの
「○○の実装の方法は?」というような部分について引き続き、お知恵をお借りできれば幸いです。
659 = :
>>658
無駄な努力を頑張れやw
666 = :
PDOでCake風に使えるライブラリを書こうとしたけど、面倒で止めた
667 = :
>>666
cakeを使おうと思わないのは何故なんだろう?
668 = :
>>667
Cakeだと規模が大きくなりすぎるし、ファイル数も多い。
それに既に運用しているサイトだと、
Cake使わないほうが静的ファイルとの共存がしやすい。
669 = :
俺、人の作ったcakephpとか触ったことないんだけど、みんなは、DB設計とかめちゃくちゃでも我慢してその上からコードを編集するの?
670 = :
DB設計?モデルのことか?
プラグインなんか使う時は自分のやり方と違うから戸惑うけど、
気にせずに編集していくな。
671 = :
引き継ぎ案件の話なんか?
674 = :
>>673
なるほど。
関連するテーブル名を連結させる必要はないんですね。
ありがとうございました。
676 = :
>>671
引き継ぎ案件。
自分で昔作ったサイトとかもリニューアルする時、DBが複雑になってる時があって構造を直すんだけど相当手間だし、バグの原因になる。
こういう場合はみんなは
そのまま使うか、構造を変えるかどっち?
677 = :
引き継ぎで、その後のメンテナンスの必要性が明確じゃない時は
なるべくそのままにしておく。
長期間の保守契約も含めた場合は話は別。
自分のサイトなら極限まで自分の好きにする。
じゃなきゃ自分でやる意味なくない?
678 = :
>>677
ありがとう!
679 = :
どういたしまして
680 = :
>>679
誰だよお前w
681 = :
>>680
俺だよ! 誰なのかあててみ!
682 = :
>>681
俺かよ!マジかよ!ざけんなよ!
683 = :
いや、ここは俺が。
684 = :
ようじょ、ようじょ
686 = :
>>685
1レコードそのまま取れなかったっけ?
687 = :
cakephp1を、そのままcakephp2にしてくれと言ったら、いくら取る?
俺なら最低20万円。
689 = :
>>687
まぁ規模によるよね。
691 = :
規模もだけど現在のコードによる。
cakephp2を考慮して正しく書かれたコードと
全く考慮しない上に、間違った使い方ばかりした
汚いコードでは100倍ぐらい差がでても不思議ではない。
692 = :
>>690
移行ではなく、全部最初から作り直しの工数を見積もればいいよ。
仕様を0から考える時間 or 現在のシステムを理解するのにかかる時間
+
0から開発した時の時間。
決して、今あるコードを再利用できるから
開発時間が短縮できると思ってはいけない。
再利用できるように使えるように作られたコードであれば再利用できるが、
使えるかもしれないというコードは、基本的に使えない。
693 = :
問題は、自分が過去に作った場合だな。
蔵からしたら「お前が作ったものを新しくするだけだろ?」
ってなもんで、予算をとってもらえないことが多い。
だったら諦めろって話だが、そこで終わると仕事に繋がらないわけで、
結局は安く請け負ってしまうんだよな
694 = :
>>691-693
おぉ、色々ありがとう!
参考にさせてもらう。
これ、たぶん、断るわw
695 = :
>>693
そういう理解の客って、そもそもCakePHPを新しくするって発想すら出てこないんじゃないの?
目の前には動いてるプロダクトがあるわけで、やって欲しいのは機能の追加とかであって、
機能は増えないし変わらないけど、CakePHP2にするってことじゃないと思うんだが。
逆にCakePHP2にする事の意義を知ってる客なら、
それが簡単じゃない事も知ってるはずだと思った。
696 = :
>>695
「もっと動作を早くしてほしい」とか「サーバを変えたい」って場合がある。
または、自分がCake2用の開発に切り替えてて、
ライブラリもCake2用に作っている・使用している場合とか。
つまり、「現状より良くしたい」という要求に対して
「開発方法を変えないと出来ません」
ってなったら客も怒るだろ?こっちの事情はともかくとして。
ずっと1.3系&PHP4系を使い続けるならともかく、
技術の進化と客の要求に対応するなら、
どこかで折り合いをつけなければいけない。
697 = :
古いとセキュリティがどうのこうの…とか言ってみれば
699 = :
>>696
開発方法を変えるなんて言う必要ないよ。
勝手に変えればいい。
どうせ客に言っても理解できない。
700 = :
>>696
> 技術の進化と客の要求に対応するなら、
> どこかで折り合いをつけなければいけない。
なんか他人のせいにしているように聞こえるけど、
それ、技術力がないからだから。
君に足りない技術はね。今のコードを
新しいコードへ連続的に変化させていく技術だよ。
どうせ、今のを捨てて書きなおすことしか思いつかないんでしょ?
この変化させていく技術力があれば、1系でも2系でも動くコードがかける
PHP4系でもPHP5系でも動くコードがかける。
動かないコードを動くように変えることが出来る。
古いコードを新しいコードから利用できるように出来る。
新しいコードを古いコードから利用できるように出来る。
今の君は、このようなことをするのに何が必要かわからず
またわかったとしてもそれを実現するだけの力がない。
ゴールを見据えてそこまで至るルートを見つける力がない。
ルートがわからないからいつまでたってもゴールに辿りつけない。
みんなの評価 :
類似してるかもしれないスレッド
- 【PHP】フレームワーク CakePHP 17ホール目【v2.4】 (984) - [98%] - 2015/1/10 2:45
- 【PHP】フレームワーク CakePHP 15ホール目【v2.2】 (985) - [96%] - 2013/9/7 8:30
- 【PHP】フレームワーク CakePHP 14ホール目【v2.1】 (1001) - [96%] - 2012/12/3 19:16
- 【PHP】フレームワーク CakePHP 13ホール目【v2.0】 (995) - [96%] - 2012/4/23 21:16 ○
- 【PHP】フレームワーク CakePHP 19ホール目【v3.3】 (844) - [95%] - 2023/2/2 14:30
- 【PHP】フレームワーク CakePHP 11ホール目【v1.3】 (1001) - [95%] - 2011/6/30 22:32
- 【PHP】フレームワーク CakePHP 10ホール目【v1.3】 (1001) - [95%] - 2011/2/13 8:32
- 【PHP】フレームワーク CakePHP 17ホール目【v3α】 (955) - [93%] - 2016/11/15 20:45
- 【PHP】フレームワーク CakePHP 9ホール目【v1.3】 (1001) - [93%] - 2010/11/1 2:53
- 【PHP】フレームワーク CakePHP 6ホール目【v1.2】 (933) - [92%] - 2009/8/19 2:06 ○
- 【PHP】フレームワーク CakePHP 12ホール目【笑】 (1001) - [92%] - 2011/11/8 7:01
- 【PHP】フレームワーク CakePHP 8ホール目【1.3】 (1001) - [91%] - 2010/7/22 22:16
- 【PHP】フレームワーク CakePHP 5ホール目【v1.2】 (985) - [90%] - 2009/3/7 4:53 ☆
- 【PHP】フレームワーク CakePHP 7ホール目【v1.2】 (1001) - [90%] - 2010/3/18 1:18 ○
- 【PHP】フレームワーク CakePHP 4ホール目【v1.2】 (1001) - [90%] - 2008/12/19 21:06 ○
- 【PHP】フレームワーク CakePHP 3ホール目【本命】 (1001) - [84%] - 2008/6/19 7:19 ○
トップメニューへ / →のくす牧場書庫について