首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

2018年Web前端开发趋势(一)

介绍

2017年对于Web开发来说是一个伟大的一年,Web Components或PWAs等许多新技术第一次在大多数浏览器中都可以使用。尽管这些技术还是非常新的,我们在网络开发领域也有很多其他的事情发生。

趋势1:掌握基础

需要等什么?我首先概述了我们拥有的令人敬畏的新技术,现在我们深入了解基础知识?

是的,因为这些将保持你在2018年作为网页开发人员必须知道的最重要的事情!这听起来微不足道,但是由于我们有越来越多的技术组成网络开发,所以理解什么是所有的东西构建基础都是至关重要的。

Web组件?这只是JavaScript!PWA应用程序?还有JavaScript。CSS框架?猜猜看 - 它们只是使用普通的CSS。

你不一定要掌握所有这些技术,每个开发人员都有优先选择的领域。但是你需要知道HTML,CSS和JavaScript是如何工作的以及它们是如何协同工作的。这个是没有捷径的。

趋势2:深入学习Node.js

Node.js已经在过去几年流行了。这不会在2018年改变,情况正好相反,会越来越流行。

当然,PHP,Ruby on Rails等技术还是有上升空间的,但特别是随着无服务器Web应用程序的兴起,Node.js是一种服务器端语言,你应该看看。而且你反正知道基础JavaScript。Node.js只是服务器上的JavaScript,所以为什么不深入其中,成为全栈开发人员呢?

它是一种高性能的语言。它具有一个充满活力和积极的生态系统与许多第三方软件包,你可以加载到你的应用程序。但是如此流行的头号原因是:JavaScript变得越来越重要。2018年情况也是如此。

趋势3:探索React、Angular和Vue.js前端框架

以下是Web开发的一部分:前端框架(如Angular,React或Vue.js)都完全是由(客户端)JavaScript提供支持。

这些框架让你在Web应用程序中创建高度吸引人的用户体验,因为一切都是通过JavaScript控制的。这允许您在加载后重新渲染页面的一部分(或整个页面)。这样可以节省不必要的页面重新加载,并向服务器请求响应周期。原生移动应用程序般的用户体验就是结果 - 我们都希望有很好的用户体验,不是吗?

准确地说,如果你重新渲染整个屏幕,从而产生加载不同页面的错觉,你创建一个所谓的单页面应用程序(SPA),因为只有一个页面(index.html)被加载,而且看起来仍然像Web应用程序托管多个页面。

越来越多的网络应用程序被构建为一个SPA(Single Page Application),因为它真的给用户的屏幕带来了类似手机应用程序的感觉。但是即使只使用这些框架来控制服务器端呈现页面的一部分,您可以增强用户体验,因为您可以实现动态元素,如图像轮播或手风琴菜单。

你可以做到这一点,例如使用jQuery。但使用React,Angular和Vue,它变得更简单,更强大。

2018年将会有一个相对较新的趋势,即前期渲染或服务器端渲染。这意味着您的应用程序仍由JavaScript控制,并在浏览器中运行,但您也可以在第一次加载时提供预渲染版本的应用程序。这增强了搜索引擎优化(由于爬虫看到用户看到的内容,而不必等待一些异步加载的内容),并可以加快你的应用程序。

你可能想看看React对应的Next.js,Angular对应的Angular Universal或者Vue.js对应的Nuxt.js项目。

所有这三个框架目前看起来都不错。建议把它们全部了解(至少一点),然后选择你最喜欢的一个掌握。

趋势4:Web组件和组件编译器

Web组件以及像Stencil一样编译Web组件的工具不太为人所知。

Web组件背后的想法很简单:为什么我们应该使用像React这样的库来构建只在该库中工作的组件,而不是使用原生的JavaScript来构建这些组件,并在框架之外使用它们呢?

直到2017年底,浏览器支持是一个更大的问题,但到2018年初,它看起来相当不错。构成Web组件的四个Web API:自定义元素(Custom Elements),虚拟DOM(Shadow DOM),HTML模板和HTML导入,全部被所有主流浏览器支持。

特别是前两个元素 - 自定义元素和虚拟DOM, 是非常有趣的Web API。

1.使用自定义元素,你可以做它听起来像:构建自己的HTML元素(例如)。这些元素包含了所有需要在屏幕上显示的代码 ,不需要框架!甚至比这更好:如果您需要该框架的其他功能(即超出其创建可重用组件的功能),则可以将这些元素与Angular等框架结合使用。

2.虚拟DOM(Shadow DOM)类型的构建,并允许您将某些CSS样式限制到您的自定义元素。这给你真正可重用的'HTML元素'。

3.HTML模板允许您在自定义元素中定义HTML代码(使用“普通”元素或其他自定义元素)。

4.HTML导入将允许您将HTML文件导入到HTML文件中,但是这个标准正在死亡,这并不是真的需要,因为我们通常使用构建工具和打包工具,比如Webpack。

如这些示例所示,手动构建Web组件/自定义元素可能会变得非常麻烦。

这就是为什么像StencilJS这样的组件编译器看起来非常有前途的原因。Angular Elements将是另一个项目,允许您使用更好的语法,然后自动将其编译为本地Web组件。

这些项目背后的核心思想是:给你一个很好的语法和很多辅助类 - Stencil使用TypeScript,JSX和Angular-inspired特性,Angular Elements使用Angular来构建自定义Web组件。您的代码将被编译为原生的JavaScript,以便您可以在任何网页中使用创建的组件。

你并不需要使用这样一个特定的框架或任何东西。

我们可以对Web组件感到兴奋,因为使用它们给我们减少了我们的包的大小(你也许能够在没有任何框架的情况下构建网页)。另外,这些自定义元素可以跨项目高度重用,听起来对我来说是一个梦。

Web组件参考链接

https://developer.mozilla.org/zh-CN/docs/Web/Web_Components

END

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180313G17Q9O00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券