2010-09-17 66 views
1

有關PHP類最佳實踐的簡短問題。我看到人們使用文件名如something.class.php在外部文件中組織他們的類。組織課程 - 最佳實踐?

因此,最好的做法是每個類有一個文件,或每個文件有多個類。

目前,我正在編寫RPG腳本並擁有一個class_lib.php文件。我目前在那裏只有與角色相關的類,並且在我繼續之前想知道是否更適合將類保存在文件中,將所有類放在單個文件中,還是將每個類保存到它自己的文件中。

每種方法的優缺點是什麼?

提出這一CW,因爲它可能沒有一個明確的答案

+0

可能性重複http:// stackoverflow。com/questions/220347 /最佳路徑組織-php-class-heirarchy – 2010-09-17 23:21:15

回答

1

他們是這兩種方法的優點和缺點。如果你需要更新一個類並且把所有與這個類相關的邏輯放在同一個地方,那麼把類分離成單獨的文件可以讓你立刻知道要修改哪個文件。從源代碼庫的角度來分離文件也是有益的。它增加了包含大量文件的負載量,但這很可能可以忽略不計。另一個缺點是必須在編碼過程中打開大量文件,如果您決定在結構中使用文件夾,導航也會很麻煩。

在相同的文件中有相關的類比任何東西都更方便,可以弄清楚哪個文件包含需要修改的類。

如果您的項目不會非常大,那麼最有可能由您決定如何組織它。但是請根據「如果我在6個月內沒有觸及代碼,我會記得去編輯這門課程的地方嗎?」每類

+0

如果您使用的是現代IDE,通常您可以通過項目代碼瀏覽器導航到任何功能或類。 Eclipse和PHPEdit讓人想起。這種存儲類的摘要。 – ladieu 2012-11-14 16:07:09

-2

一類,一個文件。國際海事組織從組織角度來看更容易。

其他提示:

  • 保留的繼承和參數列表水平降到最低。任何超過5或6變得有點太複雜
  • 使用最嚴格的範圍預選賽
1

一個文件,用自動加載只包括他們在需要

1

飼養班時,他們在不同的文件允許autoloading。可以想象,如果某些課程 - 如果某些課程 - 否則將放在一個大文件中)很少使用(注意,這只是盲目推測,自動加載本身可能會產生抵消性能成本),這可能有助於提升性能。

0

It取決於口味,以及你的課程的大小。分離純粹是爲了組織。因此,如果您認爲在一個文件中更容易,或者每個文件只有一個類,則取決於您。

優點:更容易找到你想要的。較少滾動!

缺點:不斷切換文件。在飛行中製作新課時可能會很煩人。