どうして得コーダーに、既存機能の前に書かれており、どのように思いますか。

StackOverflow https://stackoverflow.com/questions/643248

  •  22-07-2019
  •  | 
  •  

質問

なぜ多くの人が書く友達にバージョンも標準ライブラリ?は行っている面もあるかもしれないPHP開発者が、いくの PHP SPL

役に立ちましたか?

解決

より良い検索テクニック。およびドメイン固有の知識

開発者は、名前がわからない関数をどのようにチェックしますか?または、必要なことを行うためのEXACT組み込み関数はありませんが、多くのコードを保存するために使用できるものがあります。手元の問題に適切な用語を見つけることができる必要があり、そこから何を検索するかがわかります。これは、問題のドメインに固有のトピックを読むことで最もよく達成できます。特定のリソースのコーディングから離れて、小売業、医療、保険など、コーディング対象の分野で時間を過ごします。

他のヒント

ピアレビューは、そのようなことをキャッチするのに役立ちます。コードを見ている別の開発者がいて、標準ライブラリメソッドの実装を継続的に見つけている場合、車輪を再発明する正当な理由がない限り、レビューに失敗するはずです。

若野心的なプログラマのように解決問題です。する必要がないのなstinkin'ます。以上のぐさプログラマのような検索のための既存ソリューションの問題です。

その後、私のアドバイスオリジナルポストカードの採用プログラマーを選択し、のちが眠っている。

うそう、.ピアレビューや教育のたと言えるのでしょうか。

概要:仮定はすべてのFUBARの母です

これは、フレームワークの概念に不慣れな同僚(「2つの言語を1つに統合する方法」について不満を言う神)から、ウィットに:ハッシュテーブルを再作成するために頭の中でC#のダイビングに突然直面した古いC ++の人からよく見ます最初から...

明らかに、この角度から見たこの現象の大部分は、古い考え方や習慣から抜け出したものではありません。新しい環境にいる場合は、新しいルールを学ぶ必要があります。外部から見ている外部からそれを処理する唯一の方法は、トレーニングを提供することです。それがしばらくの間ペアプログラミングであるか、より形式的なものであるかに関係なく。

ツールに慣れていないと、他の人を軽contします。

簡単なコーディングスタイルドキュメントは、開発者に利用可能なライブラリがあり(おそらくいくつかをリストする)、彼らがそれらに精通していることを思い出させることで助けになるかもしれません。

場合によっては、人々に思い出させるだけです。

査読が役立ちます。

PHPは、あなたが探しているものを正確に知っている場合にのみ文書化されています。たとえば、 Arrays および配列関数セクションで、配列で何ができるかを確認します。そして、SPLについての言及すらありません。

また、実際にコードを書き始める前に、研究を奨励する必要があります。私は通常、それを行う方法を考えて問題に取り組みます。その後、標準ライブラリまたは私を助ける他のライブラリで何かを見つけようとします。場合によっては、1時間の調査で何日もコーディングする価値があると思います。

人々がこれをしていない場合、問題に対する一般的なアプローチや、使用を検討しているライブラリ関数/クラスについて質問することを誰かに依頼することをお勧めします。明らかなものが欠けている場合は、提案してください。

2つの理由がすぐに思い浮かびます。まず、標準PHPライブラリはあまり知られていないため、ドキュメントの質が悪いという問題があります。 php.net Webサイトは、言語の最高の資産と広く考えられていますが、新しい組み込みクラス(SPL、リフレクションAPI、DomDocumentなど)の多くは、多くのコンテキストのないメソッドのリストにすぎません。

しかし、もっと重要なことは、5.3の(未リリース)より前のバージョンのPHPには、デフォルトでは完全なSPLが出荷されていないようです。これは、導入に関する限り、致命的です。通常、PHPコードを記述する人は、PHPバイナリに準拠するものを制御できません。それはWebホストや運用チームによって処理され、Webホストや運用チームは開発者とは異なる目標を持ち、付属するすべてのオプションの拡張機能をインストールするわけではありません。これはまた、Drupal、Joomla、Wordpressなどのプロジェクトは、どこにでもインストールされているSPLに依存できないため、使用しないことを意味します。

PHPが「勝った」理由の

一部 perlを超えるインストールには、必要なものがすべて含まれていました。オプションの拡張機能は、基本インストールの一部になるまで広く採用されることはありません。

非常に難しい質問。明らかに査読は役立ちますが、適切なドキュメントも役立ちます。プロジェクトには、作成するクラスとインターフェイスをマッピングする技術仕様がありますか?

その場合、チームの他の誰かが仕様を確認し、既存のコードを使用できる場所を指摘する必要があります...

トレーニングとピアレビューに同意するだけでなく、ユニットテストとコードドキュメントの実施も、 NIH シンドローム:)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top