第2步:介绍该项目

5.2版本
维护 不明意
5.0

介绍项目

我们需要找到一个项目来工作。正如我们需要找到一个足够大的项目才能彻底覆盖Symfony,但同时也是如此挑战,但它应该足够小;ob娱乐下载我不希望你厌倦实现类似的特征,不止一次。

揭示了项目

由于这本书必须在阿姆斯特丹SymfonyCon会议期间发行,如果这个项目与Sob娱乐下载ymfony和conferences有某种关联,那就太好了。一个是什么留言簿吗?用法语来说就是" livre d 'or "我喜欢2019年开发留言簿的老式和过时的感觉!

我们拥有它。这个项目是关于获取会议反馈的:在主页上有一个会议列表,每个会议都有一个页面,充满了漂亮的评论。评论由一些小文本和在会议期间拍摄的可选照片组成。我想我已经写下了我们开始工作所需的所有规格。

项目将包含几个应用程序。一个具有HTML前端、API和针对移动电话的SPA的传统web应用程序。你觉得怎么样?

学习是做

学习在做。时期。阅读关于symfony的书很好。ob娱乐下载在阅读关于Symfony的书时,在您的个人计算机上编写应用程序更好。ob娱乐下载这本书非常特别,因为一切都是为了让你追随,代码,并务必在我最初编写编码时我在我的机器上发布了相同的结果。

该书包含所需的所有代码以及所需的所有命令以获得最终结果。没有代码丢失。所有命令都已写下来。这是可能的,因为现代symfony应用程序具有很少的样板代码。ob娱乐下载我们将写在一起的大多数代码是关于该项目的商业逻辑。其他一切都是自动为我们自动或生成的。

看最终的基础设施图

即使项目理念看起来很简单,我们也不会建立一个“Hello World”的项目。我们不仅使用PHP和数据库。

我们的目标是创建一个具有一些现实生活中可能会遇到的复杂性的项目。想要证明吗?看看项目的最终基础结构:

../_images/infrastructure.svg.

使用框架的一大好处是,开发这样的项目所需的代码很少:

  • 下面有20个PHP类SRC /网站;
  • 550 PHP逻辑行代码(LLOC)报告PHPLOC;
  • 在3个文件中(通过注释和YAML)进行40行配置调整,主要用于配置后端设计;
  • 20行开发基础设施配置(Docker);
  • 100行生产基础设施配置(SymfonyCloud);ob娱乐下载ob直播app
  • 5显式环境变量。

为挑战做好准备?

获取项目源代码

继续这个老派的主题,我可以创建一张包含源代码的CD,对吗?但是如果换成Git存储库呢?

克隆的留言板库在当地机器的某个地方:

1
$ ob娱乐下载symfony new——version=5.2 1——书留言板

这个存储库包含了该书的所有代码。

注意,我们正在使用ob娱乐下载代替Git.克隆由于命令不仅仅是克隆存储库(托管在Github上快节奏的生活组织:https://github.com/the-fast-track/book-5.2-1)。它还会启动web服务器、容器、迁移数据库、加载fixture……运行该命令后,网站就应该启动并运行,准备好使用。

代码100%保证与书中的代码同步(使用上面列出的存储库URL)。试图手动地将书中的更改与存储库中的源代码同步几乎是不可能的。我过去试过。我失败了。这是不可能的。特别是像我写的那些书:告诉你一个关于开发一个网站的故事的书。由于每一章都依赖于前一章,一个变化可能会对以后的所有章节产生影响。

好消息是这本书的G欧宝平台是合法的吗it存储库是自动生成从书的内容。你没看错。我喜欢让一切都自动化,所以有一个脚本的工作就是阅读这本书并创建Git存储库。这有一个很好的副作用:当更新这本书时,如果更改不一致,或者我忘记更新一些说明,脚本就会失败。这就是BDD,书驱动开发!


这项工作包括代码样本,是在a下获得的许可Creative Commons By-NC-SA 4.0许可证。