2021-12-25 分类: 网站建设
古语云工欲善其事,必先利其器,对于工程师而言,选择一款合适而强大的开发框架对开发工作是大有裨益的。那么我们该从什么角度来进行衡量和挑选呢
首先对于一家创业公司而言,这更像是一个商业抉择而不仅仅是技术选择,时间人力物力等开销都必须要考虑周全。一旦公司规模上来了资金不成问题了,可选择的空间就更大了甚至可以进行迁移或重新架构。原文作者Ramigbtech总结了以下10点以供参考。译文如下:
1. 语法
拥有优雅语法的语言无疑可以让编程工作变得惬意,但有时候我们容易被表象所蒙蔽,如果凭直觉你认定,"this is text".split(’‘).reverse.join(‘ ‘)比" ".join("This istext".split(’ ‘)[::-1])的写法要好或差,那么这仅仅是外貌协会,实际上我们更应该着眼于它本身是否具有局限性或语法是否累赘,用更少的代码完成等价的工作我们自己或团队都会对当初的选择心存感激。
2. 功能和体型
我们需要为路由编写复杂的正则查询吗路由中含有内建的DSL吗我们需要使用ORM吗或许我们还想拥有更多其它功能。建议选取一款较轻巧框架作为开始,日后我们可以为它添砖加瓦。
3. 文档资源
具备丰富文档资源的框架使用起来的确是得心应手事半功倍。例如我在学习CodeIgniter时,根本不必像无头苍蝇那样四处寻找答案,其自带的教程和配套范例都做得非常认真仔细。相对而言,我在学习ExpressJS的时候就比较费力了。
4. 代码自动生成
框架中的代码自动生成功能通常能为我们节省不少时间,我们仅需要做好控制器/类等的处理而把其它重复的编码工作交给框架,虽然有时候不能自由地进行自定义,但对于想快速开发出一个能运行的原型是有积极意义的。
5. 模块化
Django在模块/apps的处理上令人赞叹,不仅仅让代码复用变得简便,同时有助我们培养良好的模块化思维。当我们不再需要X模块时,我们只需把它移除然后做好代码重构工作就可以了。
6. 基础架构
不论是使用LaMP还是MEaN堆栈,或是Rails/Unicorn等,最关键的还是我们对这个架构有没有足够的了解,有没有相关组件的维护能力。假如应用的前端和后端都与Javascript相关,采用MEaN堆栈架构是个不错的选择。
7. 社区和更新速度
框架相关的社区是否活跃有没有技术大咖坐镇官方会否常常上StackOverflow帮忙解答技术疑难为这些问题找到好的答案是有一定难度,但绝大多数时候数字是最真实的。日期或参与度/帖子热度都是不错的衡量指标。此外,补丁的更新速度也十分关键,对安全性和漏洞的重视与否可谓是牵一发而动全身。
8. 重大变更
就在最近不少程序员听到angular2.0的重大变更后感到震惊和抓狂,尽管要到2017年晚些时候才会全部完成,但一想到辛辛苦苦做好的代码都会变成过去时,又怎能安之若素呢另一个例子是Yii框架,新版本2.0的推出意味着对前个版本的完全重写。
9. 部署和依赖
容易部署吗能方便进行扩展吗需要花费多少时间来学习掌握部署工具虽然有Docker这样的工具可以帮我们解答上述问题,但是抽取时间来思考这方面的问题还是有必要的。
10. 人力
我们能快捷地找到相应的开发人才吗将要使用的框架在我们所处的区域是否流行纵然培训工作是管理的一部分,但对于初创公司而言时间和资金时刻都得精打细算。
写在最后:
如果是中型的网站,我会选择Django。如果我暂时不能确定网站的规模和将投入多少开发精力,我会选择Rails。如果我不想前后端工作分得太开,我会选择MEaN堆栈。
本文标题:如何为你的网站挑选适宜的Web开发框架
标题网址:/news/141982.html
成都网站建设公司_创新互联,为您提供星空体育app最新版本(2024已更新)、网站设计、自适应网站、网站建设、响应式网站、外贸网站建设
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联
猜你还喜欢下面的内容