你知道一本关于构建代码的好书/网站(PHP/Web编程)吗?

den*_*iss 5 php design-patterns

我主要使用PHP,我已经使用它编码了一段时间.PHP的主要问题是我认为随着程序变大,维护代码变得更加困难(可能适用于其他事情).我想减少维护/修改代码的复杂性.我想制作模块化的东西,并有规则何时开始一个新类或只是附加到现有的类(例如).我知道那里有框架(CakePHP,Symfony,Rails)但是如果我只是想使用我的PHP并使用我自己的风格和现有风格的混合来实现良好的代码管理呢?

Chr*_*ris 4

这不仅仅与 php 有关,也适用于一般编码。框架只会帮助你组织你的混乱,但如果你是编程新手,框架只会帮助你组织你混乱的代码。

除了攻读计算机科学本科学位(如果您认真对待编码,我建议您这样做)之外,需要记住的一些基本想法是使您的代码模块化。

例如,这是一个简单的例子来证明这一点。如果您有一个生成包含财务数据的 html 表的站点。

(这里有一些关于如何编码的场景......)

  1. 您打开一个新屏幕,financialdata.php,从第 1 行到第 N 行编写从数据源(可能是数据库)获取财务数据所需的代码,然后迭代财务数据以构建 html 表。

  2. 您打开一个新屏幕,financialData2.php,在顶部编写一个函数,该函数从您的数据源中提取数据并返回一个包含项目的对象(可能是数组)。您获取此返回值并在此 FinancialData2.php 页面上生成表格。

  3. 您打开另一个新屏幕,financialData3.php,您从financialData2.php 获取数据库函数,并使用它从yoru 源获取财务数据。您编写另一个函数来根据作为参数传入的一些参数生成 html 表。最后,在您显示的 FinancialData3.php 页面中执行以下操作,您的页面现在有一个包含来自数据源的财务数据的表。

这里的教训是:代码越模块化在很多方面就越好。现在,您有一个可以获取数据的数据库函数,并且有一个可以根据传入的项目列表呈现表格的函数。

您现在可以创建另一个页面并以不同的方式使用这些函数,也许您的数据源函数具有表格和选择标准等参数。这样您就可以使用相同的数据函数根据条件从不同的表中获取数据。现在你已经有了一个非常基本的数据抽象。(不要让抽象吓到你)。抽象只不过是事物的简化。在本例中,我们抽象出了如何获取数据的细节,并让函数 getData 处理这些细节。

请发表评论/提出问题,我们可以进一步讨论,但老实说,我不认为一本书或网站可以像 CSE BS 那样通过课堂讨论和实践练习来教授编程实践。