当前位置: 首页 > Web前端 > HTML

后端程序员写前端用什么框架好

时间:2023-04-02 14:15:13 HTML

主要的前端框架可以按照“封装性”的标准来区分。设计了一套刚刚发布的网页皮肤,封装度为0,一层层封装,直到页面可以直接用后台语言编写,封装度为10。所以我是这样区分前端的构架。Level1—纯html+css是5年前放的,基本上是用Dreamweaver刚出的页面或者看网页源码刮的皮。不涉及js,是纯页面皮肤。Level2——bootstrap系列bootstrap的出现是一个里程碑式的事件。介绍了html5/css3的很多特性。由于其响应式支持和良好的体验,给人耳目一新的感觉。它的源码,无论是css还是js,都值得学习。看完之后,你往往会有一种看完之后“你还可以做这个”的感觉。但归根结底是一套ui皮肤+少量js组成的框架,属于封装性低的框架。经典页面大致是这样的:Level3~4——metronic/adminLTE系列基于bootstrap或其他level1框架,然后集成各种jQuery插件、富文本编辑器等js库,形成工具包大杂烩和案例库。皮肤基本上是一组基于bootstrap定制的主题。案例更详细。开发的时候,找到需要的组件,复制粘贴前端代码,然后稍微调试一下,就能达到很好的视觉效果。根据集成第三方库的数量,基本可以分为3~4级封装范围。这一层框架的代码更多的是胶水,将各种第三方库的前端代码粘合在一起。经典的页面大概是这样的:Level5——jQuery-ui在这里,jQuery-ui应该单独拿出来,不是因为它的封装程度高,而是我觉得它是一个分界点。jQuery以下的框架,代码以css为主,js代码较少。该框架更轻量、更灵活,更适用于互联网web产品。jQuery级别以上的框架属于前端的重度封装,通过框架暴露的接口进行开发。开发者甚至不需要太多的前端知识,只需要详细查看框架的开发文档即可。jQuery以上的框架更适合传统管理软件的开发。Level6~7——easy-ui/DWZeasy-ui基于jQuery-ui,但拥有更丰富的组件库。看起来商业版收费很高。听说有一家大型国企花大价钱买来用的。DWZ是我认为综合性能不错的国产框架。它是完全免费的。有什么问题可以在他们的QQ群里问。其余的以前都用过金蝶的operamasks-ui,不过现在好像不再更新了。这类框架还有一个名字——“富客户端框架”,意思是重js框架。使用和开发都非常高效。彼时,百花齐放,架构纷繁。经典页面大致是这样的:Level8——extjs系列extjs是前端框架领域的庞然大物,高度封装,自带元素选择引擎和浏览器兼容解决方案,有自己的方式写js。许多组件是完整的。只看extjs的官方文档和例子,几乎不需要学习任何其他的前端知识,就可以做出一个“漂亮”的前端页面。当然,页面很容易“撞衫”。如果长期使用它,您将非常依赖它。离开extjs,你几乎不会写前端页面。经典页面大致是这样的:Level9——vaadin/GWT的最后一层,也是封装程度最高的一层,也就是所谓用后台语言写前端。如果说前面八个层次至少前后端是相对分离的,后台程序用java写,前台程序用html或者js写;那么这个级别的框架简直就是颠覆你的认知!只需要用java在后台编写类和对象,并设置相关属性,网页的元素就通过后台对象自动生成。这当然是有好处的,妈妈再也不用担心我不会写js和css了。但是学html/css/js真的那么难吗?在我看来,虽然GWT有谷歌如此强大的背书,但这个9级包的本质是把前后端耦合得更紧密。可以考虑一个人做一个项目,但是当一个团队前后台分离,模块化开发的时候,用这个框架就是灾难!所以我强烈不推荐使用level9的打包框架。综上所述,针对不同的编程方式,给出以下参考:1.DOP(DeadlineOrientedProgram,截止日期导向程序)程序员有两种选择:努力学习html/css/js,使用level2~3Framework;b.如果你不喜欢前端代码,6~8级是个不错的选择。业务至上的项目,老板老是喊着时间多紧,客户多急,你可以直接选b。我觉得老板不会给你时间去学html/css/js。2EOP(ExperienceOrientedProgram,面向用户体验的编程)程序员,他们大多做的是追求极致用户体验的互联网产品。然后果断选择level1封装度的框架,可以适当借鉴level2~4的框架。3MOP(MoneyOrientedProgram,面向人民币的编程)对于一直在后台打工,想在春节假期赚外快的程序员,我知道你们不想在前台有太大的进步——endfield,把后台搞好就可以过一辈子,所以选择6~8级。另外需要考虑搜索引擎优化项目,富客户端或重ajax应用慎用。最后,让我告诉你,这是我几年前为治疗我的选择恐惧症所做的一些分析。现在,答案是我不再纠结于各种前端框架。有朋友提到了backbonejs/angularjs/reactjs/vuejs等新兴框架,感觉有必要对这个回答进行补充完善。前端工作是由网页前端的复杂性逐渐增加所驱动的。说实话,以前很多老程序员都看不起前端这个行业,认为无非就是一些小把戏。现在,基于javascript的前端技术逆袭成功,nodejs的发展让js有了兴高采烈的一天。现在回过头来看backbonejs/angularjs/reactjs/vuejs系列框架,其实都不是后台程序员的框架。不要相信他们官网上提到的“简单易用,上手快”之类的口号,那不是给后台程序员和js初学者的。如果你对js原型链、作用域、异步回调的概念还很模糊,使用这些框架只会让你陷入泥潭!虽然你也可以把这些框架分成7级左右的封装,但我觉得这些“深前端”的框架并不适合后台开发者。当然,没有绝对的。如果你像我一样兴趣广泛,喜欢折腾,前后端兼顾,那你自然知道选择哪个前端框架,就不会跑到知乎来问这个问题了。这就是我现在的样子。有了一定的前端功底,开源社区的森林里就有那么多丰富的资源。枝叶落花,皆是利刃,无须与骨架纠缠。Materialise前端只需要一个简单的设计就可以搞定。后端随手写,真是方便。AdminLTE:基于Bootstrap的后台系统https://www.zhihu.com/questio...