bundle name是否该永远包含 vendor name?
在 Symfony3
当执行 php bin/console generate:bundle
创建 bundle 时候,控制台会询问是否会在未来把将要创建的 bundle 共享。
如果选择 no
,则 bundle 创建后目录如 src/UserBundle
,如果选择 yes
,则需要增加 vendor name,创建后如 src/XX/UserBundle
然而在创建期间也许没有共享计划,那么以后如果有共享的打算,则需要重新组织文件 namespace
和相应的配置文件。
那么是否应该在 bundle 创建时始终包含 vendor name?
比如 src/XX/UserBundle
或者 src/XX/Bundle/UserBundle
这样带来的副作用是,当你不准备共享当前 bundle 时,你在应用程序源代码中多了一个 namespace
。或者定义 service
和 route
时多了一个前缀,如xx_user.user_manager
这样可以免去后顾之忧,不用担心以后共享当前 bundle 时,需要更改目录结构,namespace 以及 route 和 service 的命名空间问题。
有什么看法吗?
回复内容:
在 Symfony3
当执行 php bin/console generate:bundle
创建 bundle 时候,控制台会询问是否会在未来把将要创建的 bundle 共享。
如果选择 no
,则 bundle 创建后目录如 src/UserBundle
,如果选择 yes
,则需要增加 vendor name,创建后如 src/XX/UserBundle
然而在创建期间也许没有共享计划,那么以后如果有共享的打算,则需要重新组织文件 namespace
和相应的配置文件。
那么是否应该在 bundle 创建时始终包含 vendor name?
比如 src/XX/UserBundle
或者 src/XX/Bundle/UserBundle
这样带来的副作用是,当你不准备共享当前 bundle 时,你在应用程序源代码中多了一个 namespace
。或者定义 service
和 route
时多了一个前缀,如xx_user.user_manager
这样可以免去后顾之忧,不用担心以后共享当前 bundle 时,需要更改目录结构,namespace 以及 route 和 service 的命名空间问题。
有什么看法吗?
为什么要 vendorName ?
VendorName 是为了避免不同 Vendor 的相同 bundleName 的冲突,简单来说就是为了避免命名冲突,比如 Foo 和 Bar 两个 Vendor 都要创建一个 UserBundle,那么可果不加 vendorName 就会产生冲突,这相不难理解吧?
什么情况下应该包含 vendorName ?
如果你的 bundle 只在当前项目中使用,而不是作为共享的第三方 bundle(一般需要发布成 composer package),那么可以不需要 vendorName,反之则需要加上 venderName。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

PHP 8.4 带来了多项新功能、安全性改进和性能改进,同时弃用和删除了大量功能。 本指南介绍了如何在 Ubuntu、Debian 或其衍生版本上安装 PHP 8.4 或升级到 PHP 8.4

CakePHP 是 PHP 的开源框架。它的目的是使应用程序的开发、部署和维护变得更加容易。 CakePHP 基于类似 MVC 的架构,功能强大且易于掌握。模型、视图和控制器 gu

Visual Studio Code,也称为 VS Code,是一个免费的源代码编辑器 - 或集成开发环境 (IDE) - 可用于所有主要操作系统。 VS Code 拥有针对多种编程语言的大量扩展,可以轻松编写

CakePHP 是一个开源MVC 框架。它使开发、部署和维护应用程序变得更加容易。 CakePHP 有许多库可以减少大多数常见任务的过载。

本教程演示了如何使用PHP有效地处理XML文档。 XML(可扩展的标记语言)是一种用于人类可读性和机器解析的多功能文本标记语言。它通常用于数据存储
