【发布时间】:2016-06-23 12:44:51
【问题描述】:
一些一般信息
我是一家初创公司的项目经理。这家公司开发了一些使用手机停车的解决方案。为此,我们与一家从事编程工作的 IT 公司合作。他们开发 php 应用程序和应用程序。
我是一名博学的软件工程师,这是我的第一份工作。现在开发开始了,我有责任让 IT 公司按照我们的意愿开发软件。我还负责管理软件质量。
我有 Android、HTML、CSS、C# 的编程经验,并且可以阅读 50 到 75% 的 php。我了解网络“工作流程”(请求答案的想法和响应代码理论),我也了解其他 API。
申请信息
- 我们预计在未来 2/3 年内我们将拥有超过 1.000.000 名活跃用户
- 应用程序需要具有高度可扩展性
我的“问题”
现在,概念的技术证明几乎已准备就绪。我在代码中查看并询问了一些关于使用的技术的问题,但有些事情不符合我的表现。 - 他们使用 OneUI 作为前端框架 - 编写自己的“自定义”后端框架/应用程序 - 将 PHP 与 HTML 混合,而不是使用 MVC - 不要使用 ORM 的
我们在一次会议上讨论了这些要点,以及一件无法找到每个人都喜欢的方式的事情。 IT公司和我有不同的意见。
在我看来,我们需要使用现有的框架,例如 Laravel、Symphony 或 Phalcon。我个人更喜欢 Laravel 或交响乐。这是因为它迫使您使用一种干净的方式来开发您的应用程序。当以正确的方式使用框架时,代码更加干净,性能可以得到积极的提升。框架也总是由框架开发人员或社区更新,因此安全漏洞将得到修复。它还使其他程序员在一年内更容易编辑应用程序,因为代码结构良好。最后一点是,当应用程序首次发布时,我们有可能停止与 IT 公司的合作并聘请自己的程序员。
IT 公司没有使用此类框架的经验。他们的意见是,出于安全原因,创建自己的框架要好得多。他们说在框架中发现泄漏/错误的情况很多。所有基于这些框架构建的网站都可以通过一些错误或泄漏进行跟踪和黑客攻击。这是他们说“不要使用现有框架”的唯一“难点” 他们还说,当您构建自己的框架时,有人试图发现漏洞或试图进入您的系统的机会非常小,因为没有人理解你的框架。
我对此有不同的看法,因为许多 BIG 应用程序也使用现有框架。当这些有更大的安全风险时,他们为什么要使用它们呢?
现在我收到了一封邮件,他们在邮件中写道:“当我们使用框架时,我们更喜欢 AnguarJS,因为它与 OneUI 配合得很好”。我认为 angularJS 是一个 UI 框架?它也不是用于开发大型和高可扩展性应用程序的前 10 个“最佳框架”。
我了解所有技术细节,但我没有开发 PHP 应用程序的经验,所以.....
我的问题:
- 是否建议使用现有框架?
- 如果是 - 建议将哪个框架用于逻辑/后端?
当我们使用现有框架时是否存在一些额外的安全风险?
angularJS 不是前端框架吗?因为他们说他们可以将它用于后端/逻辑?
我更喜欢使用 Laravel 作为框架,并在其上使用 AngularJS 作为接口,但正如我所说,我不是 php 开发人员,所以这只是我从 php 开发人员那里阅读和听到的内容的结论。
我已经做了一些研究并每天阅读 PHP 框架,但做出决定的时间很短,所以我在这里寻求建议。
【问题讨论】:
-
这将被关闭。但我要补充一点:如果您想强制您的团队或您自己遵循编程标准,那么框架是不错的选择。他们还加快了您的开发过程。如果您有时间,开发适合您需求的自己的框架是一个好主意。如果你不这样做,那就去免费的,比如 CI、Laravel 等。
-
同意@PhiterFernandes。补充一点:您不仅需要时间,还需要“适当的”知识。框架通常是由一群编码人员使用单元测试和所有其他类型的测试等开发的。那么为什么要重新发明轮子并浪费时间呢? 他们的意见是,出于安全原因,创建自己的框架要好得多。 但恰恰相反。这只是一个不基于研究等的意见
-
寻找另一家开发公司,这听起来很糟糕,尤其是如果您打算将来在内部进行开发
-
回答具体问题:1> 是的 2> 任何大型已建立的 - 如果项目基于流行的框架,则很容易雇用自己的内部开发人员 3> 少做你自己,保持更新 4> Angular 是前端。如果后端是节点,可能会有一些代码重用,例如验证。这里不是这样
-
PHP 本身是一种 Web 开发框架,因此所有反对现有框架的论点也应该适用于 PHP。它不是那样工作的。我会说不要重新发明轮子。你会花一大笔钱,最终得到一个比现有的更糟糕的轮子。
标签: php angularjs laravel web-applications frameworks