のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,647,451人
昨日:no data人
今日:
最近の注目
人気の最安値情報

元スレ【PHP】下らねぇ質問はID出して書き込みやがれ 84

php覧 / PC版 /
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

601 = :

>>595
そこまで速度を求めるならmoduleにした方が良いと思う

603 = :

無料サーバーという時点で高速化なんて無理だよ。
ただでさえ他ユーザーとリソースの食い合いするんだから。

605 = :

>582
そういう時は、「完成品」を見るのは微妙。
自分のコードを、どうやれば「完成品」に近づけられるのかが分からないからな。
「完成品」のどこがどういいのかも、実際に書き換えたりメンテしたりしないと分からない事が多い。

指導するにしても、おまいの現時点でのレベルが分からんから他人にはどうしようもないしな。
上手い人に自分のコードを渡して、考えている事を聞かせてもらいながら目の前で「美しく」書き換えてもらうのが一番分かりやすい。
…んだが、まあ難しい事が多いしなぁ。

606 :

あの他人のコードを改良して自分の物にするのはアウトですか?

607 = :

うん

608 = :

>606
できりゃ構わないけどな
MVC構造のフレームワーク使ってるのに何故かテンプレートにロジックが書いてある、とか、そういう事になるのがオチだと思う
使いまわす価値のあるコード作法ってだいたいデザインパターンという形で既に体系化されてるから、ある程度のレベル以上の奴はそっちを座学した方が早いしな

609 = :

>>582
きれいなコードを書くために心がけること

・関数名は分かりやすい名前を付ける。イミフな省略はしない。多少長くなってもキニシナイ。

・同様に変数名も分かりやすい名前を付ける。

・空行を多く入れてみる。
藤原博文さんの本だったかな?
フォントを小さく(5ptとか)して見て、コードが黒々してたら、たいてい読みづらい、って書かれてた気がする。

・一つの関数内のコードをダラダラと書かない。意味の単位で小分けする。
理想は、コメントや空行を含めても、スクロールせずに一つの関数のコードがみえること。最悪100行以内に押さえる。

・同じ処理の塊をいろんな箇所に書かない。極力、関数としてまとめる。
まとめすぎて、かえって分かりづらくなるかもしれないが、最初は気にせずガンガンまとめてしまう。そのうち常識の範囲内がどの程度かわかるようになる...はず

・フラグの多様は控える。気がつきゃ万国博覧会になっちゃうよ。

・トリッキーなことはしない。
有名どころでは、ループ抜けるのに例外使うとか
いずれは、そんなトッリキーな手段に頼らざるを得ないといけないかもしれないが、始めは完全禁止の気持ちで。



関数分けしていくと、呼び出しが深くなって遅くなるとか言われるかもしれないけど、そんなところがボトルネックになるのはまずないから、キニシナイ。

611 = :

>>610
ルールというような縛りではなく、ただの心がけ。

612 = 606 :

>>608
丁寧な回答ありがとうございました

614 = :

>609
・変数への再代入の禁止
 原則、ある変数には一度しか値を代入しない。次に代入する時はケチケチ使い回さず新しい変数を用意する
 配列の合計を求める時など、何かをまとめる時だけは例外だけど
・多重ネストの回避
 ifのネストが深くなったら、if内の処理をごっそりそのまま関数に切り出す事をまず考える
 foreach、switchなども含め、どんな複雑な処理であっても、関数内のネストを一重だけにする事も可能
 特にswitchは、その部分を単独の関数として切り出すことを真っ先に考えるべき
・グローバル変数の禁止
 まずは、使う変数は全て関数の引数にする
 すると、同じ引数を取る関数群がいくつか見えてくる。これが、どこをクラス化するかを判断する一番安全な方法
・手続き的にではなく、宣言的に書く
 「Aに処理Xを加えて変数Bに、それに処理Yをして変数Cに」という思考を捨てる
 「CはBにYをしたもの」「BはAにXをしたもの」という順序で、つまり定義を記述する感じでプログラムを書く
 一時変数を同名の関数に置き換えていく感じで、一時変数を削っていくのが分かりやすい手順

>613
ローマ字より英単語のほうが読みやすいだろjk
まあ、そういうレベルじゃなく、$variableでも命名としては最低の部類に入るけどな

615 = :

マニュアル,入門書,良いオープンソースなどを見て学ぶ柔軟性が必要かと

617 = :

一か月ぐらい前に書いたコード読み直してみると良いよ。
絶対悪態付きたくなるから、何が問題か分かる。

618 = :

>>614
・手続き的にではなく、宣言的に書く
 「Aに処理Xを加えて変数Bに、それに処理Yをして変数Cに」という思考を捨てる
 「CはBにYをしたもの」「BはAにXをしたもの」という順序で、つまり定義を記述する感じでプログラムを書く
 一時変数を同名の関数に置き換えていく感じで、一時変数を削っていくのが分かりやすい手順


$B=X($A);
$C=Y($B);
は分かるが、「CはBにYをしたもの」「BはAにXをしたもの」ってどういう事?

619 = :

書きたいように書けよ
型にハマったんじゃ新しいもの生み出せない ゾと

621 = :

手が滑って途中で送信しちったが、まあ分かれ。

623 = :

phase1.A.csvを読み込んで行単位にIDに紐付けたチェックボックスをつけつつ表示
phase2.postされたチェックボックスのID値を見てA.csvを読み込み該当の行を特定、B.csvを追記モードでopenして追記。A.csvから該当行を削除。

こんなもんか

624 = :

>>621
thx
確かにeachが良さげ。お陰ですっきりした。

629 = :

心の底から脱力できる要因だなwww

631 = :

世の中解決できない問題は多々あるがお前のはうっかりさん過ぎる

633 = :

それらのどの辺がお勧めですか?

636 = :

絶対パスで指定すればいいのでは?

640 = :

フラグを立てる

641 = :

XXXで止めたいcaseのところでフラグでも立てて判定すれば良いんじゃねーの

643 :

買うほどのものでもなくね?
本とwebで十分。

647 = :

yes

648 = :

>639
>555

650 = :

その次からの処理に答えが書いてあるんじゃないかな


←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について