精华内容
下载资源
问答
  • 前端架构师-大前端

    2018-08-31 16:51:54
    整体角度来思考前端,让前端开发人员从宏观上人事大前端,了解前端未来走向
  • 大前端是什么?

    万次阅读 2019-08-31 08:42:37
    大前端是什么? 简单来说,大前端就是所有前端的统称,比如Android、iOS、web、Watch等,最接近用户的那一层也就是UI层,然后将其统一起来,就是大前端大前端最大的特点在于一次开发,同时适用于所有平台,开发者...

    大前端是什么?

    简单来说,大前端就是所有前端的统称,比如Android、iOS、web、Watch等,最接近用户的那一层也就是UI层,然后将其统一起来,就是大前端。大前端最大的特点在于一次开发,同时适用于所有平台,开发者不用为一个APP需要做Android和iOS两种模式而担心。大前端是web统一的时代,利用web不仅能开发出网站,更可以开发手机端web应用和移动端应用程序。

    大前端为什么出现?

    由于node的出现,前端工程师不需要依赖于后端程序而直接运行,从而前后端分离起来。所以当开发一个新产品的时候服务只需要写一次,但是面向用户的产品可能有很多,例如网站、Android客户端、iOS客户端和微信小程序等。由于各个平台使用的技术栈都不一样,代码无法复用,非常浪费人力、物力。那么有没有什么技术能够解决这一痛点呢?大前端应运而生,其实大前端的主要核心就是跨平台技术,有了跨平台技术,各个平台的差异性就抹平了,开发者只需要一套技术栈就可以开发出适用于多个平台的客户端。

    跨平台方案简介

    目前的主流跨平台方案:Cordova/phoneGap、React Native、Weex、微信小程序、PWA和Flutter等,根据其原理性,可以分为三大类。

    H5+原生(Cordova、Ionic、微信小程序)
    JavaScript开发+原生渲染 (React Native、Weex、快应用)
    自绘UI+原生(Flutter)
    增强版Web App(PWA)
    接下来简单介绍这三种跨平台方案。

    H5+原生混合开发

    这种模式又称为Hybrid开发,现在很多App都用这种模式去开发,常见的有微信、淘宝、美团、爱奇艺等知名移动应用等。国内也有很多公司使用Hybrid模式去开发平台,供开发者使用,像Dcloud、AppCan、Inoic等,基本上都是参考Cordova衍生出的混合开发框架。

    这类框架主要原理就是将APP的一部分需要动态变动的内容通过H5来实现,通过原生的网页加载控件WebView (Android)或WKWebView(ios)来加载,H5部分是可以随时改变而不用发版,这样就解决了动态化的需求,同时,由于h5代码只需要一次开发,就能同时在Android和iOS两个平台运行,这也可以减小开发成本,我们称这种h5+原生的开发模式为混合开发。采用混合模式开发的APP我们称之为混合应用或Hybrid APP。

    由于原生开发可以访问平台所有功能,而混合开发中,h5代码是运行在WebView中,而WebView实质上就是一个浏览器内核,其JavaScript依然运行在一个权限受限的沙箱中,所以对于大多数系统能力都没有访问权限,如无法访问文件系统、不能使用蓝牙等。所以,对于H5不能实现的功能,都需要原生去做。而混合框架一般都会在原生代码中预先实现一些访问系统能力的API, 然后暴露给WebView以供JavaScript调用,这样一来,WebView就成为了JavaScript与原生API之间通信的桥梁,主要负责JavaScript与原生之间传递调用消息,而消息的传递必须遵守一个标准的协议,它规定了消息的格式与含义,我们把依赖于WebView的用于在JavaScript与原生之间通信并实现了某种消息传输协议的工具称之为WebView JavaScript Bridge, 简称 JsBridge,它也是混合开发框架的核心。

    混合应用的优点是动态内容是H5,使用web技术栈就可以开发,社区及资源丰富,缺点是性能不好,对于复杂用户界面或动画,webview不堪重任。

    JavaScript开发+原生渲染

    这类开源框架的代表主要是Facebook的React Native、阿里的Weex,当然也有未开源的美团的Picasso,以及最新推出的快应用。
    JavaScript开发+原生渲染的方式主要优点如下:

    采用Web开发技术栈,社区庞大、上手快、开发成本相对较低。
    原生渲染,性能相比H5提高很多。
    动态化较好,支持热更新。
    当然也有缺点如下:

    渲染时需要JavaScript和原生之间通信,在有些场景如拖动可能会因为通信频繁导致卡顿。
    JavaScript为脚本语言,执行时需要JIT,执行效率和AOT代码仍有差距。
    +由于渲染依赖原生控件,不同平台的控件需要单独维护,并且当系统更新时,社区控件可能会滞后;除此之外,其控件系统也会受到原生UI系统限制,例如,在Android中,手势冲突消歧规则是固定的,这在使用不同人写的控件嵌套时,手势冲突问题将会变得非常棘手。

    React Native

    React Native (简称RN)是Facebook于2015年4月开源的跨平台移动应用开发框架,是Facebook早先开源的JS框架 React 在原生移动应用平台的衍生产物,目前支持iOS和Android两个平台。RN使用Javascript语言,类似于HTML的JSX,以及CSS来开发移动应用,因此熟悉Web前端开发的技术人员只需很少的学习就可以进入移动应用开发领域。

    React Native的原理和React设计一致,React中虚拟DOM最终会映射为浏览器DOM树,而RN中虚拟DOM会通过 JavaScriptCore 映射为原生控件树。

    JavaScriptCore 是一个JavaScript解释器,它在React Native中主要有两个作用:

    为JavaScript提供运行环境。
    是JavaScript与原生应用之间通信的桥梁,作用和JsBridge一样,事实上,在iOS中,很多JsBridge的实现都是基于 JavaScriptCore 。
    而RN中将虚拟DOM映射为原生控件的过程中分两步:

    布局消息传递; 将虚拟DOM布局信息传递给原生
    原生根据布局信息通过对应的原生控件渲染控件树
    由于React Native是原生控件渲染,所以性能会比混合应用中H5好很多,同时React Native是Web开发技术栈,只需维护一份代码,即可在多个平台上使用。

    Weex

    Weex是阿里巴巴于2016年发布的跨平台移动端开发框架,思想及原理和React Native类似,最大的不同是语法层面,React Native使用React.js作为开发框架,而Weex则使用Vue.js作为开发框架。Vue和React堪称前端领域最火的JavaScript框架,它们的易用性和功能性都非常强大,Weex在淘宝上也有广泛的应用。

    快应用

    快应用是华为、小米、OPPO、魅族等国内9大主流手机厂商共同制定的轻量级应用标准,目标直指微信小程序。它也是采用JavaScript语言开发,原生控件渲染,与React Native和Weex相比主要有两点不同:

    快应用自身不支持Vue或React语法,其采用原生JavaScript开发,其开发框架和微信小程序很像,值得一提的是小程序目前已经可以使用Vue语法开发(mpvue),从原理上来讲,Vue的语法也可以移植到快应用上。
    React Native和Weex的渲染/排版引擎是集成到框架中的,每一个APP都需要打包一份,安装包体积较大;而快应用渲染/排版引擎是集成到ROM中的,应用中无需打包,安装包体积小,正因如此,快应用才能在保证性能的同时做到快速分发。

    自绘UI+原生

    通过在不同平台实现一个统一接口的渲染引擎来绘制UI,而不依赖系统原生控件,所以可以做到不同平台UI的一致性。注意,自绘引擎解决的是UI的跨平台问题,如果涉及其它系统能力调用,依然要涉及原生开发。这种平台技术的优点如下:

    性能高;由于自绘引擎是直接调用系统API来绘制UI,所以性能和原生控件接近。
    灵活、组件库易维护、UI外观保真度和一致性高;由于UI渲染不依赖原生控件,也就不需要根据不同平台的控件单独维护一套组件库,所以代码容易维护。由于组件库是同一套代码、同一个渲染引擎,所以在不同平台,组件显示外观可以做到高保真和高一致性;另外,由于不依赖原生控件,也就不会受原生布局系统的限制,这样布局系统会非常灵活。
    不足之处:

    动态性不足;为了保证UI绘制性能,自绘UI系统一般都会采用AOT模式编译其发布包,所以应用发布后,不能像Hybrid和RN那些使用JavaScript(JIT)作为开发语言的框架那样动态下发代码。

    Flutter

    Flutter 是 Google推出并开源的移动应用开发框架,主打跨平台、高保真、高性能。开发者可以通过 Dart语言开发 App,一套代码同时运行在 iOS 和 Android平台。 Flutter提供了丰富的组件、接口,开发者可以很快地为 Flutter添加原生扩展。

    Flutter既不使用WebView,也不使用操作系统的原生控件。 相反,Flutter使用自己的高性能渲染引擎来绘制widget。这样不仅可以保证在Android和iOS上UI的一致性,而且也可以避免对原生控件依赖而带来的限制及高昂的维护成本。

    Flutter使用Skia作为其2D渲染引擎,Skia是Google的一个2D图形处理函数库,包含字型、坐标转换,以及点阵图都有高效能且简洁的表现,Skia是跨平台的,并提供了非常友好的API,目前Google Chrome浏览器和Android均采用Skia作为其绘图引擎,值得一提的是,由于Android系统已经内置了Skia,所以Flutter在打包APK(Android应用安装包)时,不需要再将Skia打入APK中,但iOS系统并未内置Skia,所以构建iPA时,也必须将Skia一起打包,这也是为什么Flutter APP的Android安装包比iOS安装包小的主要原因。

    但是Flutter也有不足之处,不支持动态下发代码和热更新。

    PWA(Progress Web App)

    PWA不属于上述跨平台开发的某一种,它是一种理念,PWA 本质上是 Web App,借助一些新技术也具备了 Native App 的一些特性,比如离线能力、本地缓存、和通知推送,兼具 Web App 和 Native App 的优点,看起来更像一个原生App。PWA完全使用前端技术栈,不过它需要手机和浏览器的支持,目前支持ServiceWorker和Google Play Service的Android手机,以及搭载11.3以上的iOS手机可以使用PWA。由于国内手机厂商和浏览器厂商的统一性问题,PWA在国内发展不是很好,但是在国外并没有这些问题。

    大前端趋势

    大前端不仅会成为移动开发与Web前端的发展趋势,也将会是未来的显示设备终端的开发技术趋势。大前端将做更多的终端开发、工程化等工作,而不仅仅只是开发Web页面。大前端工程师将能搞定所有端上的开发。与充满争议的全栈工程师相比,它更具可操作性。但同时对开发者而言,要会更多的技术栈,比如原生开发者要学习html、css、js等前端知识,前端开发人员也要学习Android或iOS的原生开发技术,然后了解一下常见的跨平台技术,只有这样才能更好的融入到大前端的这个大家庭中。


    作者:前端启航
    链接:http://www.imooc.com/article/283259?block_id=tuijian_wz
    来源:慕课网

    展开全文
  • 大前端

    千次阅读 2020-08-20 15:37:26
    大前端 告别迷茫,全局认识大前端。带着大前端的全局思维,开始从项目需求分析到搭建环境,并学习MVVM框架和前端工程化,为后续开发做充实准备。 自学整理 获取团队高效协作密码 良好的团队协作能力,是前端从单一...

    大前端

    告别迷茫,全局认识大前端。带着大前端的全局思维,开始从项目需求分析到搭建环境,并学习MVVM框架和前端工程化,为后续开发做充实准备。

    自学整理

    获取团队高效协作密码

    良好的团队协作能力,是前端从单一技能通往大前端的必经之路。学习DevOps全流程,配合文档管理、版本管理、项目进度质量管理、自动化以及效率工具,领略开发之美,效率之道。

    打通全栈开发技能

    手把手带你开发社区全栈项目(PC端),重点掌握接口和数据库设计能力,综合中间件、
    数据库、服务器渲染知识,融合文档管理、版本控制,铺开前端全栈之路。

    前后端分离的后台管理系统

    采用前后端分离架构完成台管理系统开发,提高整体开发效率;打通社区全栈与后台管理系统,掌握从后台管理到前端展现的整体解决方案,完成从前端到大前端思维的演变。

    流行的WebApp与小程序开发

    本阶段将项目平移到WebApp和小程序,掌握一套业务系统,多应用场景的解决方案;结合从项目发布到维护迭代,打通开发全流程。最终进入大前端领域,扩展无限的可能。

    展开全文
  • 2020年大前端技术趋势解读

    千次阅读 2020-12-30 08:30:00
    导Lead语如今的前端早已不再拘泥于满足页面展示,而是开始延展到通过全栈来闭环产品。这表明前端已经有能力透过业务深入产业,继而影响商业结果。这种表象的改变背后是本质的转变,从更为宏观的角...

    Lead

    如今的前端早已不再拘泥于满足页面展示,而是开始延展到通过全栈来闭环产品。这表明前端已经有能力透过业务深入产业,继而影响商业结果。这种表象的改变背后是本质的转变,从更为宏观的角度来说,前端正在通过持续的技术革新和技术融合不断突破自身边界,进而重新定义自身价值。

    时光荏苒,非比寻常的一年即将过去。在这过去的一年中,与其说前端的平稳期即将到来,不如说前端反而进入了技术深水区。换言之,在全栈和多端的影响下,前端领域里“术业有专攻”的时代已经到来如今的前端早已不再拘泥于满足页面展示,而是开始延展到通过全栈来闭环产品。这表明前端已经有能力透过业务深入产业,继而影响商业结果。这种表象的改变背后是本质的转变,从更为宏观的角度来说,前端正在通过持续的技术革新和技术融合不断突破自身边界,进而重新定义自身价值在这种大变革的时代背景下,腾讯IMWeb前端团队也正在与时俱进得进行着技术更新、优化与升级,结合自身这一年的快速发展,IMWeb团队为大家带来2020年大前端技术趋势解读。

    回顾今年的技术趋势

    本文拟通过回顾2020年七大主要的前端技术趋势来展现前端早已由单纯工具解决问题的属性逐步转变为深入产品机制解决商业问题的角色。前端开发者的关注点也早已不是如何使资源利用效率更高,页面体验更优以及保证业务的稳定输出,而是更为关注产品能力、产业模式、数据建设以及商业转化。

    开源站点bestofjs.org收录了Github上1500个开源项目,并且还基于 GithubTrending API 的公开数据,更新统计这些项目的Stars新增趋势。基于Bestofjs去年的2019年JavaScript明星项目(https://risingstars.js.org/2019/zh)报告和近一年Trending排行数据,下面展示了Top30的前端重点项目,并对此进行简单的介绍。

    相比于去年,学习资源越来越丰富了,Top100 内有14个项目是与前端基础学习相关的,侧面可以看出前端行业的繁荣;同时也反映出知识和人才的迭代速度是非常快的。Deno超过Vue.js一跃成为过去一年Star增长最快的开源项目,打破了Vue.js连续4年登顶的垄断虽然在工业届使用Deno落地在业务场景的情况还比较少,但是目前的发展势头还是不错的。还记得因为Deno的出现,出现的那句经典的“求不要更新了,老子学不动了”。事实证明“学不动的时代” 并没有到来。除了跟学习相关的项目,倘若只关注垂直领域的技术项目,我们会惊喜地发现:

    • TypeScript持续升温,依旧保持着高速成长的状态,未来的潜力不可限量;

    • 通过项目分布的情况,明显能看到React生态圈>> Vue 生态圈>> Angular 生态圈;

    • 伴随着WebAssembly核心规范成为浏览器的标准,HTMLCSSJS之后,像C/C++RustGo等语言编写的高性能模块也在浏览器上运行相信在不久的将来,Web应用的桌面客户端化,也将成为一种趋势;

    • Strapi位列Nodejs相关领域的第三名侧面反应了低代码的趋势还在持续升温,各家都在研制自己的低代码平台来提升开发效率;

    • JS Framework 相关的领域,Next.js超越Nest成为了今年的冠军。在强大的React体系的影响下,业务越来越多的人选择使用同构和直出的方案来构建Web应用;

    • Serverless Framework 也进入了前Top100虽然排名不高,但是已经开始慢慢展示出了可持续发展的势头。对于一个被厂商裹挟的技术而言,这一切来之不易;

    • 大前端生态系统已经逐步完善,前端工程化逐步完善,DevOps已经走向了系统化的发展方向,前端技术已经进入深水区;

    • 由于直播行业的火热,以及疫情的影响,音视频领域在过去的一年也有着蓬勃的发展。在前端领域WebRTC的技术在持续升温。

    接下来,主要盘点下在即将过去的2020年前端行业发生了哪些重要的事情,同时分享下腾讯IMWeb团队在过去一年中都做了哪些工作。

    总结2020年度趋势

    1、TypeScript爆发增长

    从2019年开始,社区内掀起了学习使用TypeScript的浪潮,从npm的下载量来看,近几年TypeScript呈现爆发式增长,甚至在2020年在Github语言的排行榜上跃居到了第四位

    数据来源:https://octoverse.github.com

    相比于同类型工具,如Elm、ClosureScript、CoffeeScript等,TypeScript可谓是一马当先:

    数据来源:stateofjs2019

    在最新的2020Stack Overflow Survey 中,TS受大家喜爱程度排名第二,仅次于Rust:

    数据来源:StackOverflow Survey Result 2020

    在如此爆炸式的增长浪潮中,TypeScript必将给前端生态带来新的气象,同时也会促使前端开发者更多地关注代码设计、易用可维护、编码原则及设计理念等方面的知识。

    IMWeb团队自2018年起开启第一个TypeScript项目至今已完成绝大部分业务向TS的转型迁移。在多端复用模块代码中,以TS+ Jest 为基本要求,保证公共代码的可维护性和可测试性:在TS编写中,我们更多地遵循面向对象设计原则(SOLID原则、KISS原则等),适当的运用设计模式,帮助更好地进行代码开发和维护。同时,在TS践行中,辅以单元测试覆盖,可以指导我们更好地拆分组织代码,编写可测试的模块,在公共核心业务模块中覆盖单测用例。

    2、三大框架React当先

    前端界的三大主流框架:React、Angular和Vue.js,今年仍是炙手可热。此外,在过去一年,这三大主流框架还迭代了许多版本。在三大框架之中,根据过去一年的NPM下载量,React仍然稳居首位。

    2020年的StackOverflow Trends显示React> Vue.js > Angular

    Github2020年的新增Stars数量上,Vue.js依旧超过了React

    下面分别总结各个框架 2020年的动态:

    1

    React

    React自发布v16版本后,迭代的版本都是以修复、优化为主,当前最新版本v17.0.1,今年8月正式推出的v17版本,并无显著的新特性,而是一个”垫脚石“版本。为了后续能兼容 v18版本,或者说是为了能达到”逐步“升级的目的,这也能规避当项目的依赖存在多个版本React时出现问题。这种逐步升级的理念与VUE的渐进式兼容升级颇为相似。

    2

    Vue.js

    2020年Vue.js的重大变化无疑是Vue.js3.0 的发布,有了非常多新特性,总结如下:

    对Vue.js进行了完全Typescript重构,让Vue.js源码易于阅读、开发和维护;

    重写了虚拟Dom的实现,对编译模板进行优化、组件初始化更高效, 性能上有较大的提升;Vue.js2对象式组件存在一些问题:难以复用逻辑代码、难以拆分超大型组件、代码无法被压缩和优化、数据类型难以推倒等问题;而CompositionAPI 则是基于函数理念,去解决上述问题,使用函数可以将统一逻辑的组件代码收拢一起达到复用,也更有利于构建时的tree-shaking检测,这个使用起来有些类似于React的hook;

    以上变化都秉持着VUE的“渐进式框架“ 理念, Vue.js3.0 持续开发兼容旧的版本,即使升级了Vue.js3.0 也可以按照之前的组件开发模式进行开发。

    3

    Angular

    Angular在今年11月推出了v11.0.0版本,主要变化为:

    将其依赖的Typescript版本升级至4.0,不再支持Typescript3.9 版本;

    Angularv11 在继v10弃用IE9、10和IEmobile 支持后,将其完全删除;

    加入了Webpack5,升级至 Angularv11 版本,即可使用Webpack5 的新特性,如更快的构建速度、模块联邦等。

    IMWeb团队的前端技术栈主要围绕着React体系进行构建的,包含了基于Webpack的最佳实践IMFLOW,以及围绕着React体系完成的组件生态在三大框架逐渐同质化的今天,未来的你使用何种框架就得由工作岗位的需求来决定了。

    3、WASM展露头角

    WebAssembly源于Mozilla发起的Asm.js项目,也被称为“设计补充 JavaScript”,其本解码速度比JS解析快得多,让高性能的Web应用在浏览器上运行成为可能。该模块可在浏览器中的专有虚拟机上执行,与JavaScript虚拟机共享内存和线程等资源。目前主流浏览器基本都支持了WebAssembly。

    20191215WebAssembly正式成为WorldWide Web Consortium (W3C) 的标准,加入到了HTMLCSSJavaScript的行列,继而成为浏览器官方的标准的第四门语言WebAssembly也正式抵达了1.0版本,获得了主流浏览器Firefox、Chrome、Safari和Edge的支持。

    首届WebAssemblySubmmit 2020年在硅谷举行(https://Webassembly-summit.org/),会议上讨论了诸如:关于构建 WebAssembly新型生态系统;WebAssembly的未来以及WebAssembly与诸如Javascript等其他支持技术的关系;WebKit的WebAssembly实现的编译、启动和运行时等benchmarking领域进行的研究和开发;其中Ben演讲的“Expandingthe PIE” ;

    短短几年的时间里,WebAssembly取得了长足的进展。

    Ability

    目前有100多个不同的项目使用WebAssembly。这些应用包括:自由手绘应用程序、媒体播放器、Gameboy仿真器、浏览器内压缩/解压应用程序,甚至还有一个AR数独解谜应用程序。

    Producer

    目前大约有15种编程语言可以以稳定的、面向生产的方式编译到WebAssembly。其中包括:.Net,AssemblyScript,C,Haskell,Rust和Zig等,还有更多的正在开发中。

    Interoperability

    WebAssembly现在有了一个基于能力的API设计,它允许WebAssembly代码与外部世界交互,同时仍然保留了WebAssembly的沙盒特性。此外,曾经强大而有用的 WebAPI 集合现在正在不断得到实现。

    Embedder

    现在可以在许多不同的平台上运行WebAssembly。目前正在积极开发的运行时大约有20个。WebAssembly不再局限于浏览器。这里有区块链实现、无服务器应用程序、操作系统可执行程序和物联网实现的例子,它们被部署在独立和受限制的嵌入式运行时环境中。

    看到这么多不同的项目和运行时,真是令人惊讶!而2021年的WebAssemblySubmmit 会在4月举行。随着WebAssembly的不断发展,Web中文兴趣组·WebAssembly 研讨会也在今年的829日在线上举行,重点探讨了WebAssembly技术应用与实现,尤其是在多媒体、编译器以及新型语言、仿真器、Web前端框架、虚拟机、云、游戏引擎、工具等多方面的应用场景。在未来的一年里,WebAssembly会有更多的机会出现在大家的面前,我们也会在业务中落地基于WebAssembly的应用。

    WebAssembly的出现为Web开发者打开了一扇新的大门。在去年,wasm对你来说也许还仅是技术文章中的一个常见名词,你压根想不到他会在浏览器中得到怎样的应用,什么时候会被大公司真正用起来。在今年,你很有可能已在不知不觉中成为wasm的使用者了。目前国内外越来越多的团队基于wasm进行了业务实践。

    IMWeb团队擅长的音视频领域,我们通过将ffmpeg编译为wasm版本且在浏览器中运行,将过去处于黑盒中,只有浏览器底层才能使用的音视频编解码能力彻底解放目前我们可以在前端页面中对音视频流直接进行处理,在完全不依赖后台的情况下,便捷、高效的实现了视频播放帧预览与视频帧截图等功能。目前团队正在进一步探索wasm在音视频以及其他过去前端无法触及的领域的可行性实践。

    4、Low-Code恰逢其时

    2014Forrester的研究报告提出“low-code”一词到今天,低代码领域持续升温从低代码领域的行业角度看,2017年后,微软、甲骨文等各大厂家纷纷加入了低代码赛道的竞争。近年来,获得3.6亿美元融资的Outsystems更是成为低代码领域海外市场的一只独角兽。国内方面,也不乏云凤蝶、点石、iVX、轻流、积木等平台的诞生,低代码产品领域的蓬勃发展,正成为特定场景软件开发的重要趋势。

    区分一下no-codelow-codepro-code

    no-code:自己编程给自己用,给用户的感觉就是一个软件。因此,平台不会给自己定位成一个“编程工具”。主要是通过图形化的操作来降低学习曲线,类似PPT、Excel等。在垂直领域的特定场景中,才能做到好用。

    low-code:编程给其他人用,通过降低专业难度,让运营人员(CitizenDeveloper)也参与进来。平台评估好预制的场景和需求,减少从头写代码的成本,一定程度上可以通过图形化的方式满足业务诉求。

    pro-code:日常软件开发过程中的手写代码,可以通过逻辑和模块复用来进行提效。

    区分了概念之后,还需要考虑面向的用户。不同的用户对应着不同的解决方案。用户大致分为三类:前端开发人员、后台开发人员、产品运营人员。

    为什么要做低代码?

    基于目前可视化和模型驱动理念,结合当下大前端跨端体验的融合技术以及云原生的支持,通过低代码的方案可以大幅度降低业务交付的成本,为业务提供一种全新的开发范式。而且,可视化搭建去完成业务可以让产品和运营人员(CitizenDeveloper)参与进来,可以极大得释放软件开发者的人力瓶颈,也进一步促进了技术和业务的深度合作。

    低代码应该具备哪些核心能力?

    基础物料的搭建和接入是保证业务可视化的基础无论是行业的开源组件,还是团队自定义的基础组件,搭建平台都应该无缝地进行预期内的接入和控制。这是因为,从业务长期迭代的角度来看,最耗费人力的一定是最频繁的业务组件。解决定制化的组件和接入组件由此成为低代码平台长期需要解决的最核心问题。

    编排能力就是页面排版和对逻辑编排无论是特定场景的页面的组件逻辑,还是用户自定义的交互(包括用户行为的服务端能力支持)都应该通过逻辑编排能力进行支持。大部分的页面搭建工作都是在桌面端完成的,但是页面渲染的产物可能是多种形式的,比如:PCWeb、H5Web、小程序,那么在搭建运行时的实时可视化和搭建完成的多端适配和多场景适配,这样就解决了跨技术栈和跨端问题

    虽然是low-code的设计方案,但还是希望输出的代码是可以进行二次开发的,因此最好能pro-codelow-code互相转换。编程产物分为初级产物、中间产物和最终产物。产物的丰富程度,直接决定了平台的可复用性和灵活性。无论是基于低代码开发和源码的混合开发,还是基于低代码平台的二次开发,都是low-code平台需要考虑的事情。

    运行时能力也非常重要,对开发者来说是一个强大的编辑器引擎,可以方便快速接入各类组件和中间件。而对于运营人员(CitizenDeveloper)来说同样也很重要,针对不同的产品和业务场景,需要定制基础业务模版和和业务配置,方便他们快速地进行差异化的功能设计。

    协作能力和数据分析能力就不言自明了。低代码平台的核心就是降低对专业性的要求因此,使用者无论是谁,都应该有更高的效率提升。而数据统计和分析是所有平台都应该具备的基础能力,这里就不详细描述了。

    那么,整理了核心能力如下:基础资料的搭建、基础资料的接入、业务编排能力、界面渲染能力、代码转换能力以及运行时能力、协作能力和数据分析能力。以上就是我认为的低代码方案应该具备的能力模型。

    为什么说low-code是恰逢其时呢?因为无论是跨端和跨平台领域的强大适配能力,还是大前端工程体系的有力支撑,都已经将低代码领域的价值逐步推到人们面前,低代码是业务发展和技术探索的必然选择

    2020IMWeb团队在低代码领域不断优化升级面向运营场景的页面搭建平台Vision,在真正意义上实现了对运营系统和素材开发的解耦,并兼容React,Vue.js, JQuery 等不同技术栈,实现了PC、H5、微信小程序的可视化运营的页面搭建。

    与此同时,在Vision系统的基础上,我们沉淀出一套可视化搭建引擎Gems,针对日渐增加的B侧需求,Gems为核心开发了专注于搭建管理系统的平台Hulk,实现了相对运营页面更为复杂的管理页面甚至数据接口的可视化搭建与生成

    我们的目标是通过Hulk实现对80%日常业务页面的“0代码”搭建通过Node.js统一管理数据接口,可以通过图形化配置,快速创建接口,组合不同数据源的数据;支持多组件灵活配置生成页面的能力,扩展组件库,开发常用组件;复杂页面和接口逻辑支持低代码扩展。

    Low-Code领域的发展在2020年极其迅猛。从最早的通过模块化搭建解决营销活动领域的问题发展到现在可以通过 low-code来解决内部复杂的中后台业务需求,既适用于面向C侧用户的产品运营,也贴合B侧用户的数据管理需求。

    5、全栈开发持续深耕

    DevOpsNoOps的路径之一,便是目前大家都在尝试的Serverless自从2012年有了Serverless的概念开始,至今已经8个年头了。近年来随着国内的云厂商,如腾讯云、阿里云、华为云对Serverless的支持,并且伴随着小程序云开发的普及,国内的开发者对Serverless的使用已经非常熟悉了。

    今年9月CodingSans 联合其9个合作伙伴,发布了Serverless2020 年度状态报告。调查结果显示:有75%的开发者会在公司使用这项技术。如此高的Yes也基本反映出了这样的技术已经被大众普遍接受并使用。

    我们可以看到开发者选择应用Serverless的场景有很多,比如:为小程序、Web、Mobile提供基础性的API服务,大规模批处理任务处理,Web站点、DevOps的工具以及GraphQLAPI能力。

    目前最大的难题是调试,这主要是由Serverless的架构复杂性所引起的而供应商之间的巨大差异也使得更换或者说迁移供应商变得非常得不偿失。

    与其说Serverless是一项技术,不如说Serverless是一种理想的工作模式,是一种专注于业务价值的思考单纯的通过函数进行业务交付,而不再需要关心解决业务问题之外的事情,比如:那些非常繁琐的基础设施。托管服务可以让开发者更专注于编写业务函数,从而减少对机器资源、降低运维成本的考虑,可以让开发者更专注的为产品和用户创造价值。随着云厂商对于Serverless的支持,后续会有越来越多的开发者,可以体会到云时代给大家带来的便利。

    IMWeb团队开始Serverless的实践也非常早。随着腾讯云的发展,在2019年就已经将SCF落地在业务中了。而2020年为了提升 SCF的开发体验,又完成了开发体验的全面升级,可以10分钟内完成一个云函数的上线

    IMWeb团队更宏大的全栈开发计划也在2020年稳步进行中。跟随着公司上云的战略,2020年团队依托于云提供的基础能力进行了一系列的全栈架构演进。与时俱进的制定了新的研发基础规范、持续性的丰富业务基础组件、打造更佳完善监控和告警体系,并结合公司内优秀的开源项目协同共建,持续深耕全栈开发。目前已经在业务中落地了多个由前端主导的业务解决方案。这不仅减少了后台人力的投入,也极大得拓展了前端的边界,提升了前端在业务中的价值。

    6、DevOps渐进增强

    研发效能是2020年提到的比较多的一个热词,特别是在腾讯内部,提到效能不得不提到近几年非常火热的DevOps,开发运维一体化流程,CI/CD流程的串联,帮助业务提升研发效能。

    在2020的DevOpsSurvey 中,DevOps带来的正面影响获得了99%的认可度:

    不过,想要完全达到DevOps的效果,难度是很大的,DevOps链路涉及到非常多的工具链,使用学习成本较高,在当前服务稳定的情况下,迁移DevOps技术栈将遇到不小的挑战。

    IMWeb在DevOps实践是基于业务上云,在云原生的基础上完成的。其中包括:

    • Node服务上容器平台STKE(基于K8s定制)

    • CDN对接腾讯云COS平台

    • BFF层、小程序等使用Serverless服务

    • CI规范化构建、检查、测试流程

    • IMWeb自研Thanos平台串联DevOps一体化流程

    对于DevOps各流程的把控和规范,IMWeb团队自研Thanos研发效能平台,帮助在线教育部所有前后端团队业务完成DevOps转型:

    7、WebRTC持续升温

    随着互联网的不断加速和音视频技术的不断发展,许多以音视频技术为依托的产品相继面世,比如:直播、短视频等等。从3G到4G,再到即将到来的5G时代,移动网络的带宽和质量越来越高,海量低延迟直播、互动直播也成为了可能。音频技术发展到今天,实际已经非常成熟了。H264/H265VP8/VP9以及后面的AV1编解码器,解决了视频压缩率的问题;而5G的商用,解决了带宽的问题这两个问题解决后,各行各业都开始使用音视频技术来实现更佳的用户体验,比如:音视频会议、直播带货、在线教育、远程医疗、娱乐游戏等等。

    2020年由于疫情的影响,大家更多地认识和了解到音视频相关的行业。音视频技术底层离不开编解码标准的发展。而就在今年,新一代国际视频编解码标准(H.266/VVC)正式出炉,其后续的落地实践非常值得关注从行业应用的发展来看,围绕音视频直播一定会有三个发展方向:更快、更便宜、更智能。之前音视频领域有两大技术路线:一类是RTC,它主要用于满足多人会议中的低延时互动;另一类是流媒体直播/点播,主要满足于对延时要求不大的高并发低成本场景而端上的音视频处理技术主要围绕更智能,诸如人脸识别、美颜、降噪、超分等处理优化来展开, 行业中也有更多的实践落地,从后端到前端都在探索更为极致的体验。

    WebRTC有个特别宏伟的愿景:可以在浏览器上快速开发出各种音视频应用。但这早已不再仅仅是愿景,而是已经在逐步成为现实。

       

    从Chrome、Firefox到近几年苹果Safari的加入与支持,各个云服务厂商、腾讯云、阿里云、网易云、七牛云以及诸如专门音视频服务商(声网和即构科技等等),都将WebRTC纳入浏览器实时音视频首选方案。

    从StackOverflow Trends 和GoogleTrends来看:WebRTC的热度不断上升,而且由于2020年初疫情的影响,直播带货、在线会议和在线教育等远程实时音视频技术的也迎来了风口,关注度急剧上升。下面是我们总结的WebRTC应用层面的知识图谱:

    早在2016年IMWeb团队就率先对WebRTC进行探索和实践。我们是腾讯公司内最早将WebRTC落地于业务的团队之一,也是腾讯云WebRTC直播能力最主要的使用者。2020年初,由于疫情,在线教育迎来爆发式的增长。为了保障受疫情影响而无法返校的学生能够继续通过线上课程完成学业,我们开展了“停课不停学”活动。在此期间对原有的WebRTC互动直播+CDN 云直播能力进行了全面升级,集成了快直播能力与语音举手功能,使更多的用户可以享受WebRTC带来的低延迟、高性能的互动直播体验。

    疫情渐渐平缓,IMWeb音视频小分队的脚步没有因此而停缓。2020下半年,我们又做为公司内勇于第一个吃螃蟹的人,相继上线了腾讯课堂的Web视频连麦能力,推出了团队自研的WebRTCSDK 与之相配套使用的LokiPlayer播放器。LokiPlayerWebRTC互动直播、快直播、云直播、降级流控、点播等能力于一身,本身就已是集大成者,又通过提供基于插槽与注入实现的插件化能力保证播放器与SDK本身都可以被业务灵活的扩展

    在2021年,我们将继续深入研究音视频的底层原理,探索更多在Web浏览器能得到应用的技术,持续性地优化诸如音视频体验、音视频质量以及测试与定位等能力。结合wasm,将之前无法想象的功能逐个实践、逐个实现落地。明年将与终端播放器一起对外进行开源。如果你恰好是Web音视频技术的使用者,千万不要错过!

    展望2021技术趋势

    技术的核心价值是为业务创造价值。那么,如何能快速满足业务发展诉求呢?首先,我们始终离不开解决成本、效率、质量三者之间的平衡。因此,提升基础物料的可用性、提升开发工具的便捷性、完善动态运营的灵活性以及解决产品质量的稳定性,这些永远都会在我们的日常工作中持续进行,并且在追求极致的道路上永无止境

    正所谓分久必合,合久必分。无论是选择极权式的中台化解决方案,亦或是选择去中心化的业务自制模式,都可以提升技术在业务的影响力。当然选择什么样的方式,这与企业自身的基因和团队发展的阶段有很大的关系。

    在垂直领域的技术发展方面,我们对2021年可以做一些展望:

    • 三大框架的同质化会越来越明显,而周边配套还在可持续的发展中。从开发者的基数上可以看到未来一年React还是会持续性地领先,但这并不妨碍Vue的优秀;

    • 由于可维护性和系统的复杂度上升,TS未来一年依旧会保持强劲的势头吞噬JS的版图未来会有更多的开源框架和基础组件拥抱TS社区。

    • 大前端领域的前端工程化如今已经慢慢成熟和稳定了,而在未来一段时间,更多是基于全栈开发的工程化体系的建设。前端开发者会更多的借鉴后台开发的经验去加速这一历史进程的速度,尽快完成全栈研发体系的升级和探索。

    • 随着WebAssembly持续性的发展,会有越来越多的产品在业务上落地WASM这项技术。而随着WASM的发展浏览器桌面应用化的趋势也会越来越明显WebOS未来是否能够落地,相信WASM在其中一定扮演了重要的角色。

    • 小程序的标准化虽然提上了日程,但是由于有微信这样超级APP的存在,标准化的道路注定不会平坦跨端开发上最耀眼的明星还是Flutter,而苹果公司发布的SwiftUI也在路上了。从开发者的角度来看,多端同构是一种美好的愿望,但是任重道远,仍然需要长期且持续性的攻坚克难;

    • 与其说是Serverless不断地持续升温,不如说是泛前端的时代已经到来。前端团队寻求价值的渴望驱使着开发者们不断突破着自己的工作范围;前端服务化的工作模式已经从萌芽阶段发展到路人皆知的阶段了大前端服务化的趋势已经是这个时代不可逆转的趋势了。

    • 随着5G网络的普及和手机硬件的不断提升,流量瓶颈和渲染性能在未来一年会有质的提升,这其中最大的受益者就是从事音视频领域的开发者。相信在未来的一年里,音视频领域一定是百花齐放的状态。

    • 低代码的场景天然的靶场就是在B端业务中进行抽象和实现。而随着产业互联网的提出,整个行业进入了ToB的转型期,未来的低代码会越来越受到大厂的重视。当然,低代码还是要持续解决三大问题:基础平台的能力完善、开发质量更加可控,以及低代码产物的可维护性提升可以遇见的未来低代码会火爆的表现,并且会在生产中绽放光彩。

    最后,为IMWebConf2020 大会打个小广告。

    本届大会在2021116日下午在线直播我们邀请了IMWeb团队内优秀的开发者,他们会结合自身实践经验,分享自己在前沿领域中的思考与解决方案。如果你对以下任何一项内容感兴趣,欢迎参与,一起学习和交流。

    • 前端工程化:详解团队的前端工程化、效率工具建设探索实践;

    • 音视频领域:前端直播点播技术的探索,尤其是直播WebRTC技术的相关实践。

    • 低代码进阶:深度解读低代码概念,以及在团队低代码系统的实践方案;

    • 全栈开发:落地过程中的经验分享,关于效率、质量、性能的思考。

    爱心三连击

    1.看到这里了就点个在看支持下吧,你的在看是我创作的动力。

    2.关注公众号脑洞前端,获取更多前端硬核文章!加个星标,不错过每一条成长的机会。

    3.如果你觉得本文的内容对你有帮助,就帮我转发一下吧。

    展开全文
  • 2020年大前端发展趋势

    万次阅读 多人点赞 2019-11-25 11:14:03
    参考2019年大前端的发展,不出意外,前端依旧会围绕⼩程序、超级APP、跨端开发、前端⼯程化以及新技术运用等几个方面进行展开(可以参考2019年大前端技术趋势深度解读)。 小程序 在⼩程序⽅⾯,今年仍然是⼩程序突...

    迅速发展的前端开发,在每⼀年,都为开发者带来了新的关键词。2019 年已步⼊尾声,2020 年前端发展的关键词⼜将有哪些呢?发展的方向又会是什么呢?参考2019年大前端的发展,不出意外,前端依旧会围绕⼩程序、超级APP、跨端开发、前端⼯程化以及新技术运用等几个方面进行展开(可以参考2019年大前端技术趋势深度解读)。

    小程序

    在⼩程序⽅⾯,今年仍然是⼩程序突⻜猛进的⼀年,各⼤主流的 App 都上线了⼩程序能⼒的⽀持,各前端团队也都有了专⻔的⼩程序开发团队,以适应更快的⼩程序开发需求。同时App 中很多关键的功能都被⼩程序所替代,甚⾄有些 App 已经变成 Native ⼩程序壳,上层的应⽤实现全部是⼩程序。

    在微信小程序出现以前,大家在谈 Hybird、ReactNative,但终归只是技术层面的狂欢,始终没有业务属性的注入。小程序的出现,一方面告诉业界在当前设备上 Webview 也没差到哪去,另外一方面告诉业界如何让有能力的商家在超级 APP上进行私域运营。

    另一方面,从技术角度说,在上层 DSL 的严格限制下,超级 APP 就可定义符合自己诉求的 Web 标准,弥补当前 Web 标准的不足,最后和客户端配合,结合离线、预加载、定制Webview 能产出类似于 NSR 等各种酷炫的技术模型,让 Web 在端内低成本达到 Native 版的体验,端外也不会像 Weex 一样有点小别扭。

    不过由于需要依赖超级APP(微信、支付宝、百度、美团、头条等),由于各家平台采用的具体方案的差异,造成目前小程序的落地方案也不一样,有时候需要开发多套代码。

    跨端开发

    跨端开发⽅⾯,RN ⽣态已经⾮常成熟,或者说看不到太多发展前景,因为目前还停留在0.61版本,似乎1.0版本仍然遥遥无期。因此,今年很多团队转战⾕歌⽣态的 Flutter,特别是 Flutter for Web 的第⼀个 Release,⼜让 Web 前端重燃希望、跃跃欲试。

    同时,苹果公司也发布了全新的 UI 系统——SwiftUI,同时,开源社区中 SwiftUI for Web已经在路上了,SwiftUI for Android 还会远吗?

    跨端开发⽅⾯,Flutter 仍会快速发展,并且会有更多的开发者,Flutter on JS、SwiftUIfor Web&Android 也将是开源⽣态值得期待的事情,毕竟跨端仍没有⼀个完美的解决⽅案。

    前端工程化

    在前端⼯程化⽅⾯,开发者最重要的基本素养就是通过⼯具提升效率,⽽前端开发者在这⽅⾯会持续迭代和优化。

    曾经我们谈 Yoman,谈 CLI 等系列构建工具,但在团队大了之后始终觉得差点什么。反观 Java 同学,从没听说过 Spring Boot 配置工程师。今年很多团队都在建设完整的前端 DevOps 流程⼯具集,⼀些团队之间也开始协作共建,不管是 Web 还是⼩程序项⽬,从新建项⽬、开发、联调(tiao)、部署、测试、发布、运维到监控统计,都有完善的⼯具做保障和提效,今后前端⼯程也会越⾛越标准化。

    展望2020年前端的发展,前端工程体系一定会更加闭环,不再是一个脚手架这么简单,而是会结合 IDE,打通业务属性,从项目初始化、到编写代码、到 CI、到灰度、到发布 形成一个完成的闭环。

    Serverless

    Serverless 的⽕爆⼏乎可以归因于前端。因为 Serverless 能够较完美的⽀持Node.js,使⽤ Serverless 帮助前端开发者解决了使⽤Node.js 过程中的诸多问题。

    当前的前端工程师大多都是科班出身,虽不能和正宗的服务端开发同学比,但也可写很多服务端层的业务逻辑。当前已经有很多公司在做 BFF 层,来满足这部分诉求,但依旧摆脱不掉运维、机器分配 这条拦路虎。随着 Serverless 的逐步落地,BFF 这层的代码会摆脱运维、机器分配等复杂的问题,同时大概率会由前端同学写这部分代码,服务端同学专注中台系统的实现。从业务上说,业务的试错成本也会大幅度降低。

    随着 Node.js 成为前端开发者必备技能之后,云计算的不断普及会让Serverless 触⼿可及。当越来越多的开发者尝到研发⾼效的甜头之后,Serverless 必将对前端的研发模式产⽣变⾰。

    同时,使用Serverless的同学一定会使用 TS。这也意味着,2020 不写 TS 可能真的就 Out 了。

    WebAssembly

    WebAssembly 是一种新的字节码格式,目前主流浏览器都已经支WebAssembly。 和 JS 需要解释执行不同的是,WebAssembly 字节码和底层机器码很相似,可以快速装载运行,因此性能相对于 JS 解释执行而言有了极大的提升。 也就是说WebAssembly 并不是一门编程语言,而是一份字节码标准,需要用高级编程语言编译出字节码放到 WebAssembly 虚拟机中才能运行, 浏览器厂商需要做的就是根据 WebAssembly 规范实现虚拟机。

    有了 WebAssembly,在浏览器上可以跑任何语言。从 Coffee 到 TypeScript,到 Babel,这些都是需要转译为 js 才能被执行的,而 WebAssembly 是在浏览器里嵌入 vm,直接执行,不需要转译,执行效率自然高得多。

    举个例子,AutoCAD 软件是由美国欧特克有限公司(Autodesk)出品的一款自动计算机辅助设计软件,可以用于绘制二维制图和基本三维设计。使用它时,无需懂得编程,即可自动制图,因此它在全球被广泛应用于土木建筑、装饰装潢、工业制图、工程制图、电子工业、服装加工等诸多领域。

    AutoCAD 是由大量 C++ 代码编写的软件,经历了非常多的技术变革,从桌面到移动端再到 web。之前,InfoQ 上有一个演讲,题目是《AutoCAD & WebAssembly: Moving a 30 Year Code Base to the Web》,即通过 WebAssembly,让很多年代久远的 C++ 代码在 Web 上可以运行,并且保证了执行效率。

    WebAssembly 的核心 JavaScript 引擎 V8 目前已包含了 Liftoff 这一新款 WebAssembly baseline 编译器。Liftoff 简单快速的代码生成器极大地提升了 WebAssembly 应用的启动速度。2019年,很多的公司都开始投入人力进行WebAssembly的学习个改造,相信2020年WebAssembly会经历爆发式期。

    5G

    2019年一个绕不开的话题就是5G。⾸先,5G 带宽的⼤幅提升带来传统 Web ⻚⾯复杂度的进⼀步提升,如同 2G 到 4G 变⾰过程中⻚⾯从 WAP 的纯⽂本超链接时代变⾰到 4G 全图⽚视频时代。5G 对于⻚⾯的变⾰必将是巨⼤的,但肯定不会⼀蹴⽽就。因为相应的配套设施也需要逐步完善,如硬件性能和浏览器的处理速度。⽽服务端渲染(SSR)肯定是其中⼀个捷径,轻前端重后台,5G 是桥梁,把渲染放后台,不像同构那么简单,需要关注和优化渲染性能。WebAssembly 或许会在这个机遇下得到快速发展,因为它可以⽆缝对接后台多种语⾔,⽽后台渲染的优化也会带来前端⻚⾯研发模式和技术架构的变⾰。

    其次,5G 带来的万物互联,⼜将带来有别于智能⼿机和普通 PC 的多样化的应⽤场景,VR、可穿戴设备、⻋载系统、智能投影、智能交互等⼜会把 Web 带⼊各种各样的垂直领域,这也意味着前端将有更多⼴阔的空间。相信随着5G的大规模商业,会诞生一批新的互联网巨头。

    展开全文
  • 2021大前端技术储备

    千次阅读 2020-12-30 10:38:46
    GMTC全球大前端技术大会是由极客邦科技旗下InfoQ中国主办的技术盛会,关注前端、移动、AI应用等多个技术领域,促进全球技术交流,推动国内技术升级。GMTC为期4天,包括两天的会议和两天的培训课,主要面向各行业前端...
  • 大前端开发:前端如何开发 APP

    万次阅读 多人点赞 2018-07-03 02:45:52
    做为一个前端开发人员,有时候除去传统的前端开发还需要进行其他开发,比如公众号开发,小程序开发,APP 开发。 本场 Chat 将带你从0开始,基于 APICloud 进行 APP 开发,你只需要会前端就可以。 本场 Chat 主要内容...
  • 所谓的全栈和大前端有什么区别? 大前端大前端都快被说烂了,然而还是有很多人不理解它具体是什么 那么,大前端的边界到底在哪里? 端上的开发,Web、移动端、PC 端,这些平台上的开发现在大家基本都认同是...
  • 到底大前端是什么?一般大前端技术有哪些?Web前端是随着移动互联网的发展以及用户体验度的提升而诞生的新职业,入门简单、市场广阔,吸引了很多人入行。然而,近几年,大前端出现在人们面前,有人好奇什么是大前端...
  • 大前端技术现在太火了!

    万次阅读 2019-11-05 09:00:00
    也许很多人觉得大前端这个概念很新,但实际上这个概念已经出现好几年了。在2017年,当时以饿了么为代表的一些企业开始提出大前端的概念。在2018年年中,InfoQ举办了首届全球大前端技术大会(GMTC),在大会中将前后...
  • 大小前端区别

    千次阅读 2018-05-31 09:13:47
    大前端包括一切负责展示的端,包括 Web 前端、PC、移动和 VR大前端负责从浏览器端到web服务器端的所有开发,从后台工程师那边调用数据api。包含客户端业务逻辑(浏览器上的html,css,javascript),服务器端业务...
  • 大前端学习--两个多月来的收获与进步 学习总结

    千次阅读 多人点赞 2020-07-28 11:17:29
    作为大前端课程的第一期学员,我已经学了2个多月了,课程质量和教学水平如何不用再重复了,之前在大前端高薪训练营 心得体会+学习笔记这篇文章里已经说过了。这两个月来有很多人向我打听这个课程如何,我都给予推荐...
  • 然而,近几年,大前端出现在人们面前,有人好奇什么是大前端,为什么越来越多的企业想要大前端人才?学大前端靠谱不靠谱吗?且看我的分析。 什么是大前端? 简单来说,大前端就是移动端和前端的统称,比如Android、...
  • 不想成为全栈的前端不是好程序员。 数年以前,全栈工程师的理念忽然风靡墙内外,成为开发者们津津乐道的话题。数年过去,关于全栈工程师... 诚然,有了Node,再加上JavaScript杀四方,前端转型全栈的确是非常...
  • 2019 大前端是什么,我们该学什么?

    千次阅读 2019-07-13 14:58:27
    什么是大前端大前端是当下技术市场进化出的的一种新的自然选择物种。“单腿”的初、中级客户端工程师,已越来越不适应移动互联网对当下技术的高标准诉求了(特别牛逼的客户端技术专家除外)。 包含了android iOS ...
  • WEB(大前端)开发学习路线

    千次阅读 2018-10-19 11:42:59
    大前端时代盛行,当下应该如何学习web前端融入当中,真正的大前端是指什么?与其对应的是小前端吗?如何才能成为大前端,需要从何学起?下面小编整理了一部分当下大前端所必须掌握的技术,详情如下: web前端学习群...
  • 5月实惠大前端

    2020-12-22 17:46:13
    非常适合大前端开发,技术点多多,案例多多,一起学习加油吧!!!
  • 直接放下载地址:https://www.cmboke.cn/190.html 更多好玩请关注微信公众号:Apper菌
  • 大前端完整学习路线(详解)

    万次阅读 多人点赞 2018-07-12 07:49:02
    大前端完整学习路线(详解)第一阶段:HTML+CSS:HTML进阶、CSS进阶、div+css布局、HTML+css整站开发、JavaScript基础:Js基础教程、js内置对象常用方法、常见DOM树操作大全、ECMAscript、DOM、BOM、定时器和焦点图。...
  • 认识大前端,开启无限可能

    万次阅读 多人点赞 2020-11-05 10:41:41
    一、了解大前端知识体系,有全局的认知 1.1 工程师的技能树 在大前端知识体系中,每个阶段的工程师,需要有不同的知识技能储备。江湖封号程序猿(媛),业内一般称呼软件开发工程师。 1.1.1 初级工程师 初级前端...
  • 大前端介绍与直播原理

    千次阅读 2018-11-08 01:32:21
    大前端 1.大前端需要掌握的技能 前端基本技能 Vue React Angular Webpack ES6 服务类 Node.js express.js koa.js egg.js 3D数据图像(用于游戏) three.js 二维图像 d3.js raphael.js echart.js ...
  • 综合技术大全,涵盖H5、CSS3、JS、ES6
  • 20套酷炫可视化数据大屏前端源码 (JS + HTML + IMG)

    万次阅读 多人点赞 2020-06-24 12:04:39
    数据分析系统案例】 【人口分析案例】 【车联网平台数据概览】 【物流大数据服务平台】 【电子商务公共服务平台大数据中心】 【大数据展示】 【智慧社区内网比对平台】 【物联网平台数据统计】 ...
  • 大前端框架技术选型对比

    千次阅读 2019-05-26 15:40:12
    1、ReactJS简介 React 起源于 Facebook 的内部项目就在2013年5月开源了。...2、 前端主流框架 Angular.js:出来最早的前端框架,学习曲线比较陡,NG1学起来比较麻烦,NG2开始,进行了一系列的改...
  • 大前端知识体系整理(二)——各阶段知识点列举 前言 本文为笔者回顾前端开发历程的一份总结和梳理,是对自己走过的路进行的复盘。想要总结出一些普适的规律,一是用来自己反思和规划未来,二是为后来人做一些...
  • 安全测试===8大前端安全问题(下)

    千次阅读 2018-11-28 11:37:03
    在《8大前端安全问题(上)》这篇文章里我们谈到了什么是前端安全问题,并且介绍了其中的4大典型安全问题,本篇文章将介绍剩下的4大前端安全问题,它们分别是: 防火防盗防猪队友:不安全的第三方依赖包 用了...
  • Flutter 最新进展与未来展望 主题演讲嘉宾:董韬 Google Flutter 团队 高级研究员 GMTC2019演讲实录|闲鱼基于Flutter的架构演进与...美团 大前端技术专家 前端开发编程语言的过去、现在和未来 Hax(贺师俊) 360...
  • 大前端必备网站-超全

    千次阅读 2016-10-26 12:19:11
    01.前端这个圈子 ...国内综合前端观察 阮一峰 W3CPLUS W3CFUNS 大前端 W3HELP W3SCHOOL HTML5中国 前端乱炖F2E社区 MDNNEW 国内个人CSS森林 twinsen 艾文王 余果 张鑫旭 大猫 飘飘 米
  • 大前端快速入门

    千次阅读 多人点赞 2021-02-27 20:53:13
    博主要去安心考研了 奥里给 这里整理了下自己的学习笔记和练习

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 863,151
精华内容 345,260
关键字:

大前端