关于JavaScript的框架和库

0----无所不能的JavaScript:

  说到javascript,最先想到的是用于网页交互的脚本语言,这是最早netscope公司开发的基于浏览器内核的语言;但是最近几年一位大牛一chorme内核为基础,创建除了一种神奇的javascrip语言,nodejs的横空出世,让javascript从前端走到了后台,服务端,桌面应用,爬虫,等等......最近又由于react 框架的快速发展,react native的出现让javascript可以出现在andorid端ios端所有所有端。。。所以javascript是无所不能的,本随笔用把框架和库分到前端和后端进行介绍,并附带上我推荐的学习方法;

1----前端框架:

  1.Jquery:封装完备的前端框架,将很多不太好用的js原生组件,封装的简单易用,国内也提供了大量cdn地址供开发者方便使用,jquery提供的ajax方法,让原本繁杂难用的ajax变成一行代码都可以实现,变得简单易用。关于学习方法,由于jquery广为前端所用,所以关于jquery的教程,api文档也到处都是,我常去的有菜鸟教程,w3school,豆瓣给的也有api文档,其中菜鸟教程最为推荐,适合新手上手。

  2.bootstrap:棒到没朋友的前端响应式框架,解决了各种响应式问题,有了它即使不会媒体查询也能轻松搞定响应式,英文bootstrap中提供了大量的用于响应式的组件,可以响应不同大小的页面大小。关于学习有两个特别方便的网站一个是bootstrap的中文官网,里面有各种版本的bootstrap教程,还有一些网站实例,简单demo,学起来非常方便。还有一个就是菜鸟教程,菜鸟教程提供了丰富的案例让学习变得非常方便,而且为bootstrap提供了一个所见即所得的工具,可以非常容易的编辑一些简单的页面框架。顺便说一句

  3.uikit这是我最近接触的框架。和bootstrap除了风格基本差不多,uikit中的组件简约大方,而且风格主题还可以自己定义,不同的是uikit不基于jquery,它有自己的一套ajax体系,还提供了文件上传进度的组件,对于html5极为友好,学习方面,网站不多,但是uikit的官网,还有中文管网都提供了很全面的api以及案例还有演示等很方便的。https://getuikit.com/ 这是uikit的官网首页;

  4.vue&react这两个框架放一起讲,因为这两个框架都是做数据绑定的,而且都做的非常棒。这两个框架在前端简直没人不知道,他把前端的东西做成了一个一个的逐渐,自己封装,这两个框架在菜鸟教程都有教学,而且非常详细,而且他们各自的官网都有非常详尽的文档。学习起来也很简单

  4.5.angularjs 之所以吧angular放到4,5是因为angular是一种模板语言,模板语言,也就是我们所说的模板引擎,模板引擎还有很多种像jade,ejs等等,都是可用的前端模板引擎,模板引擎封装有难度,但是用起来却很方便,就是一些简单的语法,单用的话angular最为流行,学习起来也很简单,随便找个博客看一下基本语法,就可以拿来用了,之前angular和vue还有react,在模板接都是最流行的,但是现在react和vue用的最多;

  5.chartjs&D3js,这两个框架都是做数据可视化的框架其中chartjs是百度的一个开源项目是基于html5中的canves新特性做出的一种数据可视化框架,非常方便,而D3js是基于svg的也非常快速,D3js在官网门户上提供了很多就与d3js的网页的链接,可以看看大佬们都用d3在干甚么,同时,d3js的github仓库中还提供了各种版本的api文档,还有中文文档,很方便大家学习;

  more.前端的模板远远不止这些;

2----后端框架:

  0.笔者讲的后端库和框架都是基于nodejs的,先说一下nodejs吧,就是Node.js® 是一个基于 Chrome V8 引擎 的 JavaScript 运行时。这个他让JavaScript从前端的浏览器中脚本语言,来到了可以开发桌面程序的所有地方能用的编程语言,node中融入了commonjs的语法,所以让javascript语法更加灵活多变。同时node有一大批活跃的社区贡献者,nodejs的包管理社区npm可以说是开源生态 系统 中最 强大的一个了,据npm官网自己所说,他们是最厉害的开源生态系统没有之一,想想也是,这么多的javascript库都入住了npm,包括上面写的所有的库,都在npm可以很方便的下载,npm中提供的各种库,可以做各种事情,包括前端的各种事情,后台服务,文件服务,数据库服务,甚至html,css,javascript,等静态资源的打包发布,还可以组建各种前端小工具,爬虫。。。。。哇太多了,下面介绍一下在nodejs及npm达成的相关库和框架,当然只能是冰山一角,想了解更多还要关心相关的技术博客,或者github上关于node的动态;

  1,connect ,connect是最早的一个基于路由分配的的框架,里面做好的路由管理方法,让网站的开发方法变得很方便。但connect,是一个小库,提供了简单的中间件的使用方法,却没有提供大量的中间件。还是有些简陋的,但是简陋的东西往往变数大,更灵活,所以如果能够熟练运用connect会创造出一个很强大的服务应用。

  2,express&koa 这两个框架看起来差不多,用法也差不多。express是基于connect框架的,但是koa我并不了解,但基本原理应该差不多,express提供了大量插件,session,静态服务,装个插件就好了,而且提供了express-cli可以轻松的构建一个初始项目

3----其他:

  webpack:最流行的项目的打包发布工具,随着webpack一起线的还有各种打包,发布,调试等的插件,像bable,bundle,gulp等等让大家可以用es6,commonjs

等比较新的js语法来编写前端的javascript,还有各种热加载插件,让你在写页面的时候可以随时进行方便的调试;

  node还提供了可以发送请求的模块,所以node还可以做爬虫和测试的工具使用

OK、that‘s all byebye

  **********