PHP:作为API +视图或只是API

PHP:作为API +视图或只是API

问题描述:

注意:这是一个有见解的问题。我问这是因为我无法找到涵盖我所关心的适当文章。 PHP(单独或者像laravel这样的框架)可以用于后端和前端(包括像Blade,Smarty等模板引擎)的开发。PHP:作为API +视图或只是API

我担心的是:

  1. 是不是很好用模板引擎和PHP创建视图?
  2. 将PHP用作后端技术并创建API,让前端可以使用前端开发人员选择的任何其他语言(如Angular,React等)构建。
  3. 如果我使用模板引擎,我的应用程序是否在前端技术选择和后端技术选择之间变得过于紧密?

PS:我希望我的关注很清楚,如果不是,我会详细解释它。

我的看法:如果您正在构建中小型Web项目,请不要打扰使用前端框架,因为您在这样的小环境中只是没有太多的马匹。但是当涉及更大规模的项目时,建议使用某种前端框架,因为最终这种项目将会(或应该)由团队维护,因此后援者可以专注于后端 - 前端前端。

很多人都说web开发人员是一个web开发人员,没有后端或前端。但在我看来,他们只是没有面对那种你需要分离事物的项目。

你可以擅长一切,或者你可以成为主人和具体的利基,明智地选择你的道路。

+0

因此,对于一个随时间推移而扩展的项目,它更好地分离出API层和视图层? –

+0

@SandipanMitra @SandipanMitra如果项目变得越来越大,在某些时候你会觉得你的前端和后端一样乱七八糟,所以通过从一开始就将事情分开以避免混乱,从而更好地开始项目。但是你必须三思而后行,因为有些项目不需要太多的前端功能,所以使用前端框架是没有意义的。所以简而言之:它取决于什么时候分开或什么时候保持在一起。 –

+0

Kirsys非常感谢。现在给我一个更清晰的看法。 –

  1. 恕我直言,这是浪费资源。 CakePHP默认不使用模板引擎。添加模板语言的唯一有效原因是,当您需要来自外部人员的模板时,您不能信任并首先解析它们,而无需在php中直接运行它们。设计师不应该学习php或Ruby的观点很愚蠢。声称这一点的人显然从未看过Smarty或任何其他模板语言。如果他们在模板引擎中重新实现“if/else”这样的运算符,那么他们是否必须学习底层语言或模板“语言”并不重要。说实话,现在是2016年,我只会选择一位对我的编程语言有基本了解的设计师。有技能的人,如果你搜索一下,付给他们好钱。

  2. 这是适当的架构和设计决定,如果这是有道理的问题。技术上可行 - 是的。

  3. 相同的答案加上开发人员的技能。