近年来,前端领域不断涌现新技术,老技术也在不断更新换代。随着技术的不断进步,前端开发涉及的领域也越来越广泛。下面就和web前端小编一起来了解一下几个重要的前端领域吧。PCPC(PersonalComputer)是个人电脑。目前,计算机终端仍然是一个主要的前端领域,主要分为面向大众的各种网站,如新闻媒体、社交网络、电子商务、论坛等,以及各种CMS(内容管理系统))供管理员等后台管理系统使用。在这里,小编建了一个前端学习交流按钮群:132667127,自己整理的最新前端资料和进阶开发教程。有需要的可以加群一起学习交流。事实上,早期并没有“前端工程师”。当时一般被称为“网页设计师”或“艺术家”。记得最早接触的网页设计软件是微软开发的“Frontpage”。后来在“网页三剑客”(Dreamweaver、Fireworks、Flash)中接触到Dreamweaver,到现在各种IDE(集成开发环境),如SublimeText、WebStorm、VisualStudioCode、Atom等.对于前端工程师来说,开发PC端项目最痛苦的就是解决浏览器兼容性问题,尤其是IE浏览器不同版本的问题。好消息是,为了兼容现代浏览器的不同特性,可以使用构建工具的插件,自动为不同的浏览器添加特性前缀,比如PostCSS的Autoprefixer插件。接下来我们来看看PC端的第一个网页是什么样子的:WebAppWebApp是指利用Web开发技术实现的具有更好用户体验的Web应用。它运行在手机和桌面浏览器上。随着移动网络速度的提高,WebApp为我们提供了极大的便利。另外,近两年,谷歌提出了一种新形式的WebApp,即PWA(ProgressiveEnhancementWebAPP)。PWA旨在让Web在保持其本质(开放平台、易访问、可索引)的同时,在离线、交互、通知等方面实现类似App的用户体验。PWA具体技术包括Serviceworker、WebAppManifest、CacheAPI、FetchAPI、PushAPI、WebPushProtocol、Notification等。WebApp的主要优势:开发成本低,内容更新快,无需通知用户,可跨多平台多终端自动升级。WebApp的主要劣势:用户体验短期内无法超越原生应用。无法及时获取系统级的通知、提醒、动画效果等。WeChatWeChat(微信)平台拥有大量的用户群体,所以也是我们前端开发的另一个重要领域。微信的公众号和订阅号,为营销和自媒体从业者开辟了一片新天地。下面以微信公众号为例,分析一下微信公众号的主要功能:信息推送用户服务用户交互微信小程序是一种全新的连接用户和服务的方式。可以在微信中轻松获取和传播,具有极佳的用户体验。微信小程序的主要优势:无需安装,即用即用与App开发相比,小程序的开发成本更低。UI和操作流程比较统一,降低了用户使用难度。基于微信平台,推广更简单。HybridAppHybridApp(混合应用)是指介于WebApp和原生App(主要是Android或iOS)之间的App,具有原生App良好的用户交互体验和WebApp跨平台开发的优点。混合应用功能通常根据网页语言和编程语言的混合情况分为三种类型:多View混合型、单View混合型和Web-based型。最早的混合应用开发技术是基于Phonegap/Cordova技术的。Cordova为开发人员提供了一组与设备相关的API。通过这组API,移动应用程序可以使用JavaScript访问本机设备功能,例如相机和麦克风。目前主流的混合应用开发框架包括:ReactNative、OnsenUI、Ionic、Framework7、NativeScript、Weex等,这里不做赘述,将对各个框架进行详细的对比分析。有兴趣的读者可以自行查阅相关资料。让我们来看看混合应用程序的优缺点。混合应用的主要优点:开发成本低,节省跨平台时间和成本可以访问硬件设备的功能可以打包成App,发布到AppStore或各大Android应用平台混合应用的主要缺点:用户体验不如原生App应用性能不如原生App技术成熟。GameHTML5游戏自2014年Egret引擎开发的NervousCat引爆朋友圈后就一发不可收拾。但是现在游戏开发越来越复杂,需要制作各种炫酷炫目的效果,还要制作让人眼花缭乱的场景在2D或3D中。为了降低游戏开发难度,加快游戏开发进度,国内外不同厂商推出了很多游戏开发引擎。HTML5的主要开源游戏引擎:phaserpixi.jsBabylon.jswhs.jsegretcocos2d-html5桌面桌面应用软件是我们日常生活中安装在电脑中的各种软件。前期如果要开发桌面应用,需要有特殊语言的UI(界面)库支持,比如C++中的Qt库、MFC库、Java的Swing、Python的PyQT等,否则语言无法使用用于快速接口开发。随着web技术的不断发展,借助NW.js、Electron等开发框架,前端也可以开发桌面应用。其中,著名的开源IDEVisualStudioCode就是使用Electron开发的。使用web技术,主要优势在于其跨平台能力和开发效率。但它也有其相应的缺点,即运行效率不如用特殊语言开发的桌面应用程序。ServerNode.js一经发布,立即在前端工程师中引起了轩然大波,几乎是第一时间就对这项技术表现出了相当的热情和期待。初学者看到Node.js这个名字,可能会误以为它是一个Javascript应用。实际上,Node.js是用C++语言编写的,是一个Javascript运行环境。Node.js使在服务器端运行JavaScript成为可能,这是一个很棒的想法。这使得前端开发者不再需要学习PHP、Java、Ruby、C#等服务端开发语言,也可以进入服务端开发领域。当然,对于大多数纯前端开发者来说,学习的过程可能是痛苦而漫长的。Node.js主要的web开发框架:ExpressKoaEggNodalSailsLoopback当然,前端涉及的领域不仅限于这些。还有比较新的领域,数据可视化,IOT(物联网),机器学习等等。
