码迷,mamicode.com
首页 > 编程语言 > 详细

编程语言演化、对比

时间:2019-11-19 12:12:25      阅读:68      评论:0      收藏:0      [点我收藏+]

标签:XML   lambda   变量类型   码农   script   node   后端   服务端   地址   

  • 参考率《码农翻身》
  • 不同的语言一定要在擅长的领域做擅长的事,否则就是同一种语言了,各有优劣,适用场景不同。
  • C
    • 实现的是代码可移植
    • 在编译器,需要通过链接把主程序和被引用的程序联系起来(地址映射)
    • 不适合入门,成就感较低,但能帮助理解底层运行机制
  • VB和Visual FoxPro
    • 本地的数据库应用,被淘汰了,不实用
  • C++
    • 复杂,投入太多,容易出错
  • Java
    • 实现的是代码和部署都可移植
    • 其实也做了链接,只不过是动态链接
    • 简单,资源丰富,社区活跃
  • Ruby
    • 包含Web开发的一些最佳实践,有点像sql那样的DSL
    • 但有动态语言的缺点,过于灵活,容易出错(如变量类型,运行时才出现),需要完善的单元测试
  • JavaScript
    • 最开始叫LiveScript,为了和Java套近乎。。。
    • 解释性,避免每个页面都要像C、Java那样编译一下,太慢了
    • 一开始只是为了不要所有事都和服务端交互(太慢),在客户端可以做一些事情(操作DOM等),后来有了AJAX(基于XMLHttpRequest,可以异步局部更新了)、JSON(XML太臃肿)后才流行起来,引起了革命性的Web 2.0
  • Node.js
    • 为了让JavaScript不再依赖于浏览器,将JavaScript引擎搬到了服务器端,可以进行文件、数据库等操作,实现了前后端语言的一致。
    • 有了Chrome V8引擎后才真正提高了效率,因为Node.js并不为每个HTTP请求分配一个全程服务的线程(Java后来是不是也不这样了?),而是通过基于事件编程和异步来实现用一个线程服务所有请求,只是要区分出哪些是马上就是处理完的命令,哪些是需要等待的(做成异步回调的,基于事件触发)
  • 命令式编程与声明式编程
    • 最底层后都是一样的底层代码,是命令式编程还是声明式编程,是针对编程语言的使用者的感受来说的
    • 命令式编程
      • 需要编程语言使用者一步步指明所有的细节,比如不用sql查询数据库,那么就要拿出所有数据,然后一点点过滤、组合
    • 声明式编程
      • 8以后也部分支持了声明式编程(Lambda表达式)
      • sql就是典型的声明式编程

编程语言演化、对比

标签:XML   lambda   变量类型   码农   script   node   后端   服务端   地址   

原文地址:https://www.cnblogs.com/wyp1988/p/11888277.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!