当前位置: 首页 > 科技观察

想想Web前端框架和类库_0

时间:2023-03-19 18:55:17 科技观察

说起前端框架,我也是醉了。现在去面试或者和同行聊天的时候,这个框架永远是堡垒,那个框架就是这么犀利。  当然不是贬低框架,而是有一种杀鸡用牛刀的感觉。网站技术是为业务而存在的,除此之外没有任何意义,框架也是如此。在技??术选型和架构设计过程中,如果脱离网站业务发展的实际,一味追求时髦的新技术,可能适得其反,使网站发展走上坎坷之路。就好比一个日均pv只有几百的小型电商网站,却要大喊“某宝就是这么干的”,然后搭建应用服务器集群,使用分布式文件系统和分布式数据库system...等巴拉巴拉的一堆处理高并发和海量数据访问的手段。我想说,有道理吗?前端框架的误区  网站的价值在于它能为用户提供什么价值,网站能做什么,而不是怎么做的,所以在网站还很小的时候,就是追求网站的架构框架是浪费钱,得不偿失。前端框架也是如此。如果是简单的页面类产品,应用只依赖服务端生成网页和视图,只需要使用一些简单的Javascript或JQuery来让应用更具交互性,那么一个JQuery前端类库就是没关系,真的没必要用一些高大上的框架。  当然,框架确实很好用,关键是我们要知道什么时候用哪个框架。大公司、大项目的经验和成功模式很重要,值得借鉴,但不能因此而盲从。只有深入了解前端框架,知道什么时候用什么框架解决什么问题,才能有的放矢,切中要害。前端框架和前端类库的区别  在使用框架之前,我觉得了解类库(比如JQuery)和框架(比如angularJS)的区别是非常重要的.  简单来说,类库解决的是代码或者模块级的复用或者复杂封装的问题,比如把解??决复杂问题的功能模块封装成一个函数,提供一个简单的接口。库是提供许多封装方法的工具。这取决于我们是否使用它。即使我们使用它,也不会影响我们的代码结构。  框架更多的是模式层面的复用和程序组织的规范。这里的模式指的是,例如,MVC。为了实现M和V的解耦,将复杂的耦合关系从频繁变化的业务代码转移到不常变化的框架内部消化。就是为一个领域提供一套解决方案,提高开发效率。如果我们选择使用某个框架,我们应该遵循该框架规定的规则。  两者的主要区别是:JQuery是以DOM操作为中心,框架,准确的说是MVC框架,以模型为中心,DOM操作是附加的。所以,以模型为中心的最终目的是带来一整套工作流程的改变,让后台工程师可以写前端模型代码,打通后台和前端,交互设计师处理UI和模型之间的交互。您可以专注、无障碍地处理HTML源代码,以界面模板的形式提交给交互工程师。这一整套协作机制可以大大提高开发效率。使用MVC框架可以更好地解耦前端任务。前端MVC框架思路  我们知道,传统的MVC模式将一个应用分为模型层(model)、视图层(view)、控制层(controller)。它们在应用系统中扮演不同的角色,完成不同的任务。模型:数据模型,用于封装与应用程序业务逻辑相关的数据或处理数据。模型可以直接访问数据。视图:视图用于有目的地显示数据。通常,视图中没有程序逻辑。为了在视图上实现最新的功能,视图需要访问它所监控的数据模型。控制器:控制器调节模型和视图之间的关系。它控制应用程序的流程、处理事件和响应。事件不仅包括用户行为,还包括数据模型的变化。通过捕获用户事件,通知模型层做相应的更新处理,同时将模型层的更新变化通知给视图,使视图做出相应的变化。所以控制器保证了视图和模型之间的一致性。    然后是前端的表现。前端MVC中各部分的职责:  我对前端View的理解是页面上与元素直接相关的部分都属于View。包括html、CSS和一部分直接控制页面元素的JS。可以从模型中获取数据并显示在页面上。至于数据的变化和请求,都交给Controller处理。  控制器呢?作为模型和视图之间的粘合剂,控制器将视图请求转发给适当的模型,并在必要时更新视图。Controller本身也可以作为Model的观察者,获取Model的变化。作为Controller本身,不应该有页面元素相关的代码。  ***说说Model,跟后台的通信,AJAX请求,数据处理都属于Model的工作。Model本身不知道谁是View,谁是Controller。它只是提供了一些方法供View和Controller调用,将变化通知给它的观察者View或Controller。显然,模型和页面元素也解耦了。  虽然基于MVC模型的框架有很多区别,但一般来说,Model负责保存vier和数据处理逻辑所需的数据,如读、写、更新、删除、验证、转换等View负责接收和显示Model提供的数据和接收用户输入,并对事件做出响应。Model更新后,会及时将更新反馈给用户。控制器处理业务逻辑和事件逻辑。知己知彼,对症下药  在前端框架和类库越来越丰富的今天。选择合适的框架或类库非常重要。我认为没有必要盲目跟风。当你看到一个流行的框架,你会跑去吃一个星期,然后因为你不能用它来做项目工作,几个月后我又忘记了。  所以我觉得打好基础很重要。重点是了解各种类库和框架的功能。某类框架主要用来解决什么问题,然后在项目需要的时候研究API才是上策。.  ***,我们需要意识到MVC在前端开发中应用的局限性。如果一个简单的项目使用MVC框架,项目可能会变得更加复杂。当然,随着Web前端越来越复杂,前端MVC框架的不断发展,相信在未来应用软件的复杂产品中,MVC框架一定会带来效率上的飞跃前端工作。  以上只是我对前端框架和类库的基本了解。如果您不喜欢它,请不要抱怨。我希望你能想出更好的方法来学习框架和类库。共同进步,共同学习。