热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

我们程序员为什么要关注 JavaScript ?_js

受这周我在企业中看到的JS现状的启发,我写了这篇文章。10年之前,我从来没有想过现在的JavaScript竟然会变得几乎无处不在。下面是几个你之所以要关注Java
文章目录[隐藏]
  •  客户端
  •  服务器端
  •  物联网
  •  生态系统

  受这周我在企业中看到的js现状的启发,我写了这篇文章。10年之前,我从来没有想过现在的Javascript竟然会变得几乎无处不在。下面是几个你之所以要关注Javascript的原因。

  首先,我认为Javascript能够得到普及的主要原因之一是,Javascript非常易于接近。学习Javascript,对于初学者而言,相对比较容易,对于高级用户而言,又非常强大,可以用它来构建复杂又可靠的系统。

  其次,之所以要关注Javascript是因为现今的Javascript已经无处不在。

  你可以使用Javascript在几乎所有平台上开发:客户端应用程序,服务器端业务逻辑,嵌入式芯片/物联网设备,管理构建脚本和依赖关系,等等。

  不过,这并不意味着你可以在任意情况下使用完全相同的代码,但你可以使用相同的技能——Javascript开发——提供跨越多个范式的解决方案。

 客户端

  Javascript可被用于支持客户端应用程序/用户界面,以及众多平台和设备的用户交互。

  web

  当然,Javascript支持web,这是肯定的。 Javascript是所有web浏览器基本的脚本语言。

  移动

  Javascript也可用于支持安装到本地设备上的移动应用程序。

  • Apache Cordovn/ PhoneGap——你可以使用PhoneGap或Cordovn建立本地安装的web技术app。 PhoneGap是Adobe的Cordovn品牌分支,但是从开发者的角度来看,它们基本上是相同的。运行在移动设备上的应用程序会带有一个web视图,用构建动态web应用程序相同的方式建立用户界面。用户界面虽然是用html以及css样式实现的,但是所有的交互都是用Javascript创建的。
  • React Native ——得到Javascript支持的web应用程序不仅可以内置web视图。React Native框架还允许开发人员使用Javascript和声明式的UI元素编写他们的应用程序,并生成一个可以在移动设备上运行的本地应用程序。在运行时,逻辑被解释为Javascript,但是所有(所有UI元素)与用户交互的东西,100%是本地的,这就提供了一个非常高品质的用户体验,而且现在还可用于ios和android应用程序。
  • Unity 3D——使用Unity 3D引擎,哪怕全部由Javascript支持,你也可以开发出丰富多彩又身临其境的移动3D模拟或游戏体验。
  • NativeScript——使用Javascript的框架,可用于构建跨平台的本地iOS,Android和Windows移动应用程序。

  桌面

  桌面应用程序也没有被Javascript排除在外。大多数桌面解决方案陷入了类似于Apache Cordovn的分类中,最终导致的结果是,web视图拥有的API层次较低,其内容开发基于web技术。

  • Electron——来自于GitHub的Node.js+Chromium桌面应用程序容器
  • app.js——Node+Chromium桌面应用程序容器
  • nw.js——另一个Node+Chromium桌面应用程序容器的框架
  • CEF——The Chromium Embedded Framework——嵌入Chrome浏览器内置于桌面应用程序的框架。

  …等等。对了,我记得,微软对于如何纯粹地用HTML / JS构建Windows应用程序,已经有了一个解决方案,而且还有更多的解决方案,但现在我一下子记不起来了。

  事实上,一些我最喜欢的桌面工具,如Slack、Atom和 VS Code实际上就是在web技术和HTML / JS的基础上实现的。

 服务器端

  最明显的是Node.js——封装了Chrome的V8 Javascript引擎的Javascript运行时——在服务器端开发和企业上已经取得了巨大的进步。 Node.js,受到express.js和loopback.io等框架的支持,使得用Javascript开发服务器端和复杂的企业应用程序中变得可能。

 物联网

  你可以完全使用Javascript来开发可运行在Arduino、树莓派或其它小平板上的无头app,你可以使用Javascript管理基础设施和物联网传感器信息流,你也可以使用Javascript为嵌入式系统编写芯片程序,可以用它控制机器人,你甚至还可以使用Javascript支持媒体中心连接电视体验。

  就像我说的……Javascript无处不在。

 生态系统

  你不仅可以到处构建和运行Javascript应用程序。 Javascript还有一个庞大而繁荣的开发者生态系统。

  Javascript是GitHub上最活跃的语言,它不仅是所有代码仓库中最活跃的,也是所有push/commit中最活跃的。

我们程序员为什么要关注 Javascript ?_js

来自于http://githut.info/ 的可视化数据

  这里有一些统计数据显示了Node.js / npm.js的增长幅度。

我们程序员为什么要关注 Javascript ?_js

NPM统计

  Node.js还在不断增长中。

图表说明了IBM重视Node.js和Strongloop。 [email protected]!http://t.co/snDt88HQC5     pic.twitter.com/nRMwYyKmdo
——Rod Boothby(@ rod11)2015年9月10日

  但是,种种这一切这并不意味着Javascript就是适用于一切的最好语言。也不意味着你取出一段源代码就能照你想的那样运行在每一种设备和上下文中。

  但是,你可以使用Javascript技术,去开发几乎任意类型的设备/下上文。当然,它不能一次编写,就到处运行,用React.js团队的话就是: learn once, write everywhere。

  英文原文:Why You Should Pay Attention To Javascript 翻译:codeceo

欢迎大家阅读《我们程序员为什么要关注 Javascript ?_js》,跪求各位点评,若觉得好的话请收藏本文,by



推荐阅读
  • 本文详细介绍了利用JavaScript实现的五种不同的网页弹出窗口技术,包括全屏窗口、全屏模式窗口、带收藏链接工具栏的窗口、网页对话框及HTA窗口。 ... [详细]
  • 本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 解决JavaScript中法语字符排序问题
    在开发一个使用JavaScript、HTML和CSS的Web应用时,遇到从SQLite数据库中提取的法语词汇排序不正确的问题,特别是带重音符号的字母未按预期排序。 ... [详细]
  • 本文介绍了如何利用JavaScript或jQuery来判断网页中的文本框是否处于焦点状态,以及如何检测鼠标是否悬停在指定的HTML元素上。 ... [详细]
  • 作为一名新手,您可能会在初次尝试使用Eclipse进行Struts开发时遇到一些挑战。本文将为您提供详细的指导和解决方案,帮助您克服常见的配置和操作难题。 ... [详细]
  • 在使用 MUI 框架进行应用开发时,开发者常常会遇到 mui.init() 和 mui.plusReady() 这两个方法。本文将详细解释它们的区别及其在不同开发环境下的应用。 ... [详细]
  • PHP 5.5.0rc1 发布:深入解析 Zend OPcache
    2013年5月9日,PHP官方发布了PHP 5.5.0rc1和PHP 5.4.15正式版,这两个版本均支持64位环境。本文将详细介绍Zend OPcache的功能及其在Windows环境下的配置与测试。 ... [详细]
  • 本文将深入探讨PHP编程语言的基本概念,并解释PHP概念股的含义。通过详细解析,帮助读者理解PHP在Web开发和股票市场中的重要性。 ... [详细]
  • 本文深入探讨了JavaScript中循环结构的使用方法,特别是While循环,用于重复执行一段代码直到特定条件不再满足。同时,文章还介绍了Switch语句在多条件分支选择中的应用。 ... [详细]
  • 本文详细探讨了JavaScript中的闭包与柯里化技术,这两者是函数式编程的重要组成部分,对提升代码的灵活性和可维护性具有重要作用。 ... [详细]
  • 探讨在特定情况下使用 Knockout.js 的 if 或 visible 绑定的最佳实践,特别是在处理未定义对象时的策略。 ... [详细]
  • 本文探讨如何在VueJS项目中通过配置vue.config.js文件实现多页面应用(MPA),特别是针对管理端和客户端的不同需求。 ... [详细]
  • 本文介绍如何使用 Bootstrap-table 插件实现表格中某一列数据的求和,并在表脚显示总计值。 ... [详细]
  • 国内BI工具迎战国际巨头Tableau,稳步崛起
    尽管商业智能(BI)工具在中国的普及程度尚不及国际市场,但近年来,随着本土企业的持续创新和市场推广,国内主流BI工具正逐渐崭露头角。面对国际品牌如Tableau的强大竞争,国内BI工具通过不断优化产品和技术,赢得了越来越多用户的认可。 ... [详细]
author-avatar
手机用户2502855257
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有