基于Node.js的单页面WebApp的设计与实现
摘要
本设计采用前后端分离的开发架构,浏览器端采用单页面的展现方式,借助于网页路由机制,可以让用户一边听音乐,一边浏览本站其他内容。借助Sea.js实现js模块封装和调用。服务器端采用Node.js作为主要实现技术,服务器通过访问第三方Web 服务获取到音乐内容,为浏览器端提供相应的 Web API,供其调用获取数据,并不生成和返回动态页面,这就意味着所有的网页内容都需要由浏览器端直接控制。使用MySQL 5.7.1作为数据库,进行对数据存储和管理。
引言
随着HTML5标准的提出和Mozilla Firefox、Google Chrome等主流浏览器的不断发展,Web应用因其美观的界面、跨平台、用户体验良好等诸多优点,受到越来越多的重视,使用HTML和CSS可以很方便的设计出美观、炫酷的界面,使用java script语言不仅可以对网页进行DOM操作得到动态的视觉效果,java script更多在客户端业务逻辑处理上发挥重要作用。
在Node.js出现之前,java script 一直被当作Web浏览器端脚本使用,但在这个过程中,ECMA(European Computer Manufacturers Association 欧洲计算机制造协会,java script标准制定者)标准也在不断的演进,不断地加入新的功能特性,同时,谷歌、火狐等主流浏览器厂商对java script的实现,特别是谷歌Chrome浏览器的V8引擎,都在不停的提升稳定性及性能,这些都是后来Node.js大肆流行的坚实基础。2009年,Node.js出现在大家的视野,它在诞生之初就获得了广泛的关注。由于使用了性能优越的V8引擎和全新的事件驱动、异步编程模式,它从一开始变的"与众不同”。如今,诸多大型互联网公司在其产品中广泛回使用Node.js,如LinkedIn,淘宝,美团网等,同时大多数的云计算平台也纷纷支持部署Node.js应用。由此可以看出,Node.js是未来互联网的发展趋势之一。
人们对网络在线音乐的需求不断增加,各种音乐App如雨后春笋一般涌现,普通人除了在手机等设备上可以收听自己喜欢的乐曲之外,也有在Web中收听音乐的需求,本设计就以此为背景进行探究和实现。
意义
使用音乐平台搜索并收听自己喜欢的音乐成为大部分人共同需求之一,HTML5标准发布后,浏览器已经可以不借助任何插件(如Flash)就可以直接播放音乐。使用音乐平台搜索并收听自己喜欢的音乐成为大部分人共同需求之一,HTML5标准发布后,浏览器已经可以不借助任何插件(如Flash)就可以直接播放音乐。看似新兴的互联网术语:单页面WebApp,其实早在互联网伊始时便已经出现,但是受限于当时的技术条件和审美,单页面Web产品曾被认为过于单一和枯燥而不受网民关注。虽然互联网中近年来各种形形色色的网站大量流行,但人们逐渐对此感到审美疲劳,间接地导致一些热门网站的单页面案例获得成功。单页面开始受到互联网从业人员的青睐,尤其到了2013年后最为风行。
而作为近年来新兴的技术,Node.js则具备以下优点:
1. 异步事件驱动,单一的进程与线程,占用更少的服务器资源,却有非常优秀的高并发支持,虽然Node.js被设计成单进程,但可以通过官方cluser模块打开多个实例,以充分利用多核处理器的优势,不仅节省服务器资源,还可以达到实现理想状态。
2.Node.js非常适合做单页面应用 + RESTfull API,著名的团队协作工具Worktile即是采用Angular JS + Node.js实现的SPA功能,达到完美的配合。
3.使用Node.js开发动态网页Web程序也很适合,虽然Node.js没有官方提供类似Apache 和 Tomcat 这样的网页服务器,以及类似JSP和ASPX这样的创建动态网页的技术,但是有较多优秀的第三方模块可以拿来使用。
应用分析
如果一款应用开发的成本远远高于软件能够实现的具体价值,是没有人会愿意开发的,所以开发一款手机应用也是,在开发之前需要进行可行性分析,开发手机软件受到开发周期,人力成本,资源,技术等因素的影响制约,在开发之前首先要确定以上这些因素对开发的影响,以便能否开发经济适用的高质量的应用设计。
基于Node.js的单页面WebApp的设计与实现(一)由免费论文网(www.jaoyuw.com)会员上传。