我们应该使用php框架还是构建自己的框架?

我们应该使用php框架还是构建自己的框架?,php,angularjs,laravel,web-applications,frameworks,Php,Angularjs,Laravel,Web Applications,Frameworks,一些一般信息 我是一家初创公司的项目经理。这家公司开发了一些使用手机停车的解决方案。为此,我们与一家从事编程工作的IT公司合作。他们开发php应用程序和应用程序 我是一名软件工程师,这是我的第一份工作。现在开发已经开始,我有责任让IT公司按照我们的意愿开发软件。我还负责管理软件质量 我有安卓、HTML、CSS、C#的编程经验,可以阅读php 50%到75%。我了解web“工作流”(请求-应答思想和响应代码理论),我也知道RESTAPI 应用程序信息 我们预计在未来2/3年内,我们将拥有超过1

一些一般信息

我是一家初创公司的项目经理。这家公司开发了一些使用手机停车的解决方案。为此,我们与一家从事编程工作的IT公司合作。他们开发php应用程序和应用程序

我是一名软件工程师,这是我的第一份工作。现在开发已经开始,我有责任让IT公司按照我们的意愿开发软件。我还负责管理软件质量

我有安卓、HTML、CSS、C#的编程经验,可以阅读php 50%到75%。我了解web“工作流”(请求-应答思想和响应代码理论),我也知道RESTAPI


应用程序信息

  • 我们预计在未来2/3年内,我们将拥有超过1000.000的活跃用户
  • 应用程序需要具有高度的可伸缩性

我的“问题”

现在,概念的技术证明几乎准备就绪。我查看了代码并询问了一些关于所用技术的问题,但有些问题不符合我的性能。 -他们使用OneUI作为前端框架 -编写自己的“自定义”后端框架/应用程序 -将PHP与HTML混合使用,而不是使用MVC -不要使用ORM的

我们在一次会议上讨论了这些问题,有一件事我们找不到一条大家都喜欢的路。IT公司和我有不同的意见

  • 在我看来,我们需要使用现有的框架,如Laravel、Symphony或Phalcon。我个人更喜欢拉威尔或交响乐。这是因为它迫使您使用干净的方法来开发应用程序。当以正确的方式使用框架时,代码更加干净,性能可以得到积极的提高。框架也总是由框架开发人员或社区进行更新,因此安全漏洞将得到修复。它还使另一个程序员在一年内编辑应用程序变得更加容易,因为代码结构良好。最后一点是,当应用程序发布第一个版本时,我们有可能停止与IT公司的合作,而选择自己的程序员

  • 这家IT公司没有这样的框架经验。他们的观点是,出于安全考虑,创建自己的框架要好得多。他们说在一个框架中经常会发现漏洞/bug。所有建立在这些框架上的网站都可以通过一些bug或漏洞进行追踪和黑客攻击。这是他们说“不要使用现有框架”的唯一“难点”,他们还说,当你构建自己的框架时,有人试图发现漏洞或试图进入你的系统的机会很小,因为没有人理解你的框架

我对此有不同的看法,因为许多大型应用程序也使用现有的框架。当这些有更大的安全风险时,他们为什么要使用它们呢

现在我收到一封邮件,他们在信中写道:“当我们使用框架时,我们更喜欢AnguarJS,因为它与OneUI配合使用非常好。”我想angularJS是一个UI框架?它也不在开发大型和高可扩展应用程序的前10名“最佳框架”中

我了解所有的技术细节,但我没有开发PHP应用程序的经验,所以


我的问题:

  • 是否建议使用现有的框架
  • 是时-建议将哪个框架用于逻辑/后端
  • 当我们使用现有的框架时,是否存在一些额外的安全风险

  • angularJS不是前端框架吗?因为他们说他们可以将其用于后端/逻辑

我更喜欢使用Laravel作为框架,在接口上使用AngularJS,但正如我所说,我不是php开发人员,所以这只是我从php开发人员那里读到和听到的东西的结论


我已经做了一些研究并每天阅读PHP框架,但是做决定的时间很短,所以我在这里征求意见。

不要为将来开发应用程序。有可能在3-4年内你会完全放弃这个项目。如果你真的拥有超过100万的活跃用户,那么届时你将有大量的现金流(希望如此)需要重构

你是一家初创企业,你最好的选择是尽快推出一些产品,看看人们是否认为你的想法值得一试

太多的公司为了解决小细节而倒闭。获得正现金流,然后开始担心优化和重构应用程序时,你可以雇用自己的内部开发人员

很明显,你不想拥有很棒的用户体验,所以这应该是早期唯一真正的目标

要回答你的问题。。。我发现这样做非常简单:

如果您要走PHP路线,请使用现有的PHP框架。比如YII或Laravel,因为这些都有很好的文档记录,并且很容易尽快开始

如果你正在构建一个API,那么就使用一些简单的东西,让你可以很快地扩展某种形式的整体

至于前端。。。这并不重要。可以很容易地使用angularJS或任何其他JS框架完成。我更喜欢AngularJS,只是因为它是我曾经使用过的东西,但也有很多其他的好选择


当你重做应用程序时(对于一家新公司来说,这将不可避免地在几年内发生),我只会使用开发团队现在最熟悉的东西。

不要为未来开发应用程序。有可能在3-4年内你会完全放弃这个项目。如果你真的拥有超过100万的活跃用户,那么届时你将有大量的现金流(希望如此)需要重构

你是一家初创企业,最好的办法是尽快推出一些产品,看看人们是否