MEAN与LAMP:如何选择正确的技术堆栈

最近,当我与潜在客户讨论其新项目的技术堆栈时,引起了互联网上MEAN与LAMP的争论。

我认为,在MEAN和LAMP技术堆栈之间进行选择归结为一件事:您的业务需求。

如果您对MEAN和LAMP一无所知,那么本文将教您这两种技术堆栈的来龙去脉,以便您做出正确的决定。

在开始讨论之前,我想强调选择正确的技术堆栈的重要性,以及错误的堆栈如何导致您的项目失败。

选择错误的堆栈意味着它可能在不久的将来变得不可持续。 这也可能会使您难以找到才能。 此外,错误的技术堆栈可能导致额外的技术债务和维护成本,更不用说将来可能需要的新技术堆栈所引起的费用。

相反,选择正确的技术栈意味着您产品的性能将是稳定的。 修复错误并解决与性能相关的问题将变得更加容易,这意味着开发过程将变得越来越容易和快捷。 最终,代码维护将变得更加容易和便宜。

因此,既然您知道正确的技术堆栈的优点和错误的技术堆栈的缺点,让我们详细讨论如何在MEAN和LAMP之间做出正确的选择。

MEAN与LAMP:基础知识

MEAN代表MongoDB,ExpressJS,AngularJS和NodeJS。 当这些程序在堆栈中一起使用时,Web开发过程将得到增强。

例如,MongoDB为存储数据提供了更大的灵活性,NodeJS是更有效地运行服务器的更好的联系,AngularJS提供了一种添加交互式组件的简便方法,而ExpressJS帮助标准化了您开发网站的方式。

我们的另一个竞争者LAMP代表Linux,Apache,MySQL和PHP,Perl或Python。

LAMP具有出色的自定义性和灵活性,并且具有成本效益,这是多年来它一直是开发企业应用程序的首选的某些原因。

那么为什么它们之间会出现混乱呢?

事实证明,在MEAN堆栈之前,我们只有一个选择:LAMP堆栈。

但是,由于MEAN堆栈似乎正在主导企业Web开发,因此企业对于哪个项目最适合其下一个项目感到非常困惑。

现在,只有一种方法可以消除混乱:仔细研究两者。

让我们从MEAN堆栈开始。

MEAN Stack优点

MEAN堆栈的巨大优势在于它使用JavaScript编程语言。 例如,可以使用JavaScript设置所有内容,这使查找JavaScript开发人员变得更加容易。

其次,MongoDB也非常流行,并且比MySQL更快,这使得读取大量请求简直是小菜一碟。

另一方面,Angular由Google开发和维护,这是一个巨大的优势,因为Google会持续发布新功能和更新。

除此之外,MEAN堆栈的另一个优点是它能够使用跨平台框架(例如Ionic)与桌面应用程序一起构建移动应用程序。

像所有其他新技术一样,MEAN堆栈肯定会引起开发人员的炒作,导致开发人员开始使用MEAN堆栈构建项目。 它的简单性,性能和灵活性可以使更改值得。

平均堆栈缺点

MEAN Stack的确也有黑暗的一面,因此让我们对其有所了解。

MEAN堆栈中的大多数框架和库都是相对较新的,并且更新经常发布。 这意味着对于初学者而言,维护MEAN Stack应用程序变得非常麻烦。

随着应用程序的增长,遵循最佳编码实践并保持干净的代码库变得很困难。 另外,如果您的应用以Internet Explorer用户为目标,则他们很可能会遇到可用性问题。

LAMP Stack优点

LAMP就像Web开发世界中的恐龙一样,已被成千上万的人使用,并且维护得很好。

由于它已经投放市场多年,因此提供了无穷无尽的库,模块和附件,可以快速满足您业务的不同需求。

此外,由于LAMP基于Linux,因此有一个庞大的社区可以在开发Web应用程序时遇到的任何情况下为您提供帮助。 MySQL也已经上市很长时间了,因此它也相当可靠。

LAMP堆栈的PHP部分也是一种高度维护且成熟的编程语言,受到了庞大社区的支持。 实际上,如果您的应用程序涉及许多服务器端任务,则LAMP非常适合。

LAMP Stack缺点

就像MEAN一样,LAMP堆栈也有其缺点,现在该是我们解决它们的时候了。

由于LAMP是开源的且易于学习,因此许多开发人员并未完全遵循标准做法,因此,他们正在构建完整的垃圾应用程序。

您会发现,学习PHP非常容易,但是掌握它却很困难。 而且由于PHP既未预编译也不是强类型的,所以我建议在最终决定使用LAMP之前更深入地学习PHP。

原因? 安全!

由于开发人员在使用LAMP时未遵循最佳实践,因此最终产品可能在安全性方面容易受到攻击。

至于数据存储,MySQL可能是一个成熟的选择,但是由于其可伸缩性,强烈建议使用NoSQL数据库(如MongoDB)。 而且由于JavaScript 在过去五年中一直是第一大编程语言,因此 LAMP开发人员也正在转向学习MEAN Stack。

什么是最适合您的项目的?

就像我在开始时提到的那样,确定最合适的位置取决于您企业的特定要求。 由于这两种技术堆栈都有优点和缺点,因此选择MEAN还是LAMP最适合您在很大程度上取决于您要构建的应用程序的类型。

一方面, MEAN堆栈开发提供了增强的性能和部署灵活性的好处,并且在整个堆栈中使用了一种编程语言。

另一方面,如果优化得好,LAMP可以达到同样的速度。 例如,可以通过Lightspeed或Nginx来优化PHP的性能,但是需要一些工作来进行配置。

总体而言,这两种技术堆栈都是Web应用程序开发的可靠参与者。 正如我在开头提到的,选择取决于您的业务需求以及您所拥有的Web开发人员。

总体而言,这两种技术堆栈将继续在Web开发中发挥重要作用,但正确的选择始终取决于您的业务优先事项。

翻译自: https://www.javacodegeeks.com/2019/09/mean-lamp-choose-the-right-tech-stack.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值