ZAČÁTKYNÁVODYOOPDOKUMENTACE
PHP中的面向对象编程/
PHP中的OOP系列

为什么以及如何使用框架和库

16. 02. 2020

Obsah článku

有一个著名的笑话说,程序员只有在自己写了框架之后才开始使用框架,并且发现它没有任何进展。这件事的有趣之处在于它是真的。我自己也有过这样的经历。两次,甚至两次。

然而,即使在Nette的主页上,也说。

真正的程序员不使用框架。他们通过命令行直接向服务器编写网络应用。这是对他们的赞美。对于我们其他人来说,Nette将使我们的工作变得更容易、更愉快。

框架在应用程序开发中的作用

我相信你自己也知道这一点。

你得到了一个伟大项目的想法,于是你开始直接用纯PHP编写绿地代码......几个小时后,你发现很多工作仍然是重复的,你在解决基本的系统问题。比如如何连接到数据库,如何呈现一个表单,如何验证数据,如何发送电子邮件,等等。

你可能会编写自己的函数来调用这些任务。如果你同时写几个项目,你就会开始在一个大的混乱的文件中在项目之间共享这些功能,并且你会在需要时不断地调整它们。

而当这些功能发展到一定阶段,你每次都开始在它们上面建立一个新的项目,并直接开发,那么你就可以说是写了自己的框架,或者至少是一个库。

框架是什么,有什么作用

正如我们已经用生活中的一个实际例子说明的那样,框架是许多函数(但最好是类和对象)的集合,可以节省程序员的工作。在开发时,他不必考虑如何连接到数据库,但他知道已经在某个地方编好了程序,"它就是能用"。

因此,完成的框架是收集了数百人的智慧,他们在很长一段时间内开发了成千上万的应用程序,以调试一个解决方案和一个生态系统来处理新项目。

有了框架,你还会得到一套**的最佳实践,这是解决问题的方法,无需思考。如果你遇到一个问题,很可能有人在你之前就已经解决了,在文档中找到解决方案总比你自己用复杂的方法解决要好。

抽象编程和封装原则

像Nette这样设计良好的框架允许你在一个**非常高的抽象层次上编程。

这样一来,程序员(框架用户)就不必了解内部的情况以及组件内部到底是如何工作的,这就节省了大量的时间和精力。他可以专注于解决他的应用中的实际问题,并非常迅速地获得结果。

David Grudl本人(Nette框架的作者)曾经说过,他设计Nette的目的是为了能够在一个晚上为客户编程,当他从酒馆很晚回家时,必须在早上启动网站。这主要是由于开发者完全脱离了技术层面的东西。

为了使这一工作顺利进行,并使开发人员能够直接使用完成的框架,正确使用封装原则是非常重要的。

Jan Barášek   Více o autorovi

Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.

Rád vám pomůžu:

Související články

1.
8.