浅谈前端工程中提到的库,库的优缺点

本文探讨了前端开发中库的优缺点,强调了理解库的工作机制的重要性。优点包括经验证的代码、易于集成和解决跨浏览器问题;缺点则涉及库的潜在问题,如增加页面负担、可能引发冲突及限制创新。选择库时需考虑其功能是否匹配需求、是否模块化、社区支持情况、文档质量以及许可协议。选择合适的库并积极回馈社区对于前端开发至关重要。

库:就是可重用的代码包。

  • 优点:

1、库代码经过了大量用户的测试和验证。
2、库能够很容易地与现有的开发框架集成。
3、库为大多数日常琐碎的DOM编程工作提供了方便,简洁的方案,每个函数都能节省很多行代码。
4、库很好的解决了跨浏览器的问题,让你更省心。

  • 缺点:

1、库是别人而不是你自己编写的,你可能不了解它的内部工作机制,因此很难调试bug或解决由它所导致的问题
2、要使用库,就要把它集成到脚本中。这样就会加重页面加载的负担,挤占用户有限的带宽。
3、混合使用多个库可能会造成冲突,同时也会造成功能浪费。

如果你对库只能亦步亦趋而不能超越,那它也会成为你不思进取的慢性毒药。在决定使用库之前,建议大家先花点时间了解工作机制的重要性,而不要停留在问题的表面上。唾手可得的库比比皆是,但是如果你不能理解它们背后的工作机制,对你和你的程序都不能算是什么好事。如果你对某个库理解不透,而这个库又假设你知道相关细节,那你很可能被一些琐碎的问题绊住脚。

如何选择合适的库

在选择库的时候,你会发现自己将面临上百种选择。要作出正确的选择,建议你考虑如下问题。

1、它具备你需要的所有功能吗?

混合使用多个库可能导致问题。一些常见的方法,如$()和get(),虽然表面上相同,但功能却完全不一样。此外,如果同时使用多个库,重复功能和冗余代码也是不可避免的。

2、它的功能是否比你想要的还多?

功能太少是一个问题,但功能过多同样不好。如果库中包含很多你用不着或者不能完全利用的功能,最好还是选择一个功能少一些的版本,至少能加快下载的速度。开发移动应用时这一点尤其要考虑。

3、它是模块化的吗?

在解决文件大小问题时,功能丰富的库通常使用模块化的方法,把不同功能分割保存到不同的文件中。这样,你就可以只加载包含相应功能的个别文件,从而降低下载量。多数情况下,恐怕都得事先加载所有必须的文件,只有少数库提供了动态加载机制,让你能够按需动态加载文件。动态加载文件时,还要事先考虑到请求的次数。经验表明,一次请求一个大文件,要比多次请求多个小文件更好。

4、它的支持情况怎么样?

如果库的背后没有活跃的开发人员社区维护,就意味着bug没人修改,功能无法改进。从另一方面说,使用和维护的人多本身也就说明它的问题更少,也更可靠。库背后的社区不仅仅意味着修复和功能,也意味着在你需要帮助时能够及时得到很多人的支持。

5、它有文档吗?

没有文档,会让人无所适从。是这样的,也许你会碰到别人不知道什么时候写的几个使用示例,但如果没有官方的文档,至少说明它的开发人员不够投入,而库本身也不会有什么大的发展前途。

6、它的许可合适吗?

别以为可以在线查看源代码,自己就可以想怎么用就怎么用了。在决定使用一个库之前,必须查证自己的用途包含在它的许可范围内,如果有特殊需求,就更要事先确定了。

在选定了一个合适的库并在此基础上有了新的发明创造之后,别忘记回馈社区!这些库都是开发人员无私奉献的结晶,他们牺牲自己有限的休息时间,就是为了改进你每天都在用的工具。如果你不能帮助改进库的功能或者修改bug,可以提供一些使用示例和教程啊,就算帮着写写文档也是功德无量的。总之,只要有心,不管做什么都会促进库的良好发展。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值