热门标签 | 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



推荐阅读
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • 浏览器作为我们日常不可或缺的软件工具,其背后的运作机制却鲜为人知。本文将深入探讨浏览器内核及其版本的演变历程,帮助读者更好地理解这一关键技术组件,揭示其内部运作的奥秘。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 当前,众多初创企业对全栈工程师的需求日益增长,但市场中却存在大量所谓的“伪全栈工程师”,尤其是那些仅掌握了Node.js技能的前端开发人员。本文旨在深入探讨全栈工程师在现代技术生态中的真实角色与价值,澄清对这一角色的误解,并强调真正的全栈工程师应具备全面的技术栈和综合解决问题的能力。 ... [详细]
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • 第二十五天接口、多态
    1.java是面向对象的语言。设计模式:接口接口类是从java里衍生出来的,不是python原生支持的主要用于继承里多继承抽象类是python原生支持的主要用于继承里的单继承但是接 ... [详细]
  • 解决Parallels Desktop错误15265的方法
    本文详细介绍了在使用Parallels Desktop时遇到错误15265的多种解决方案,包括检查网络连接、关闭代理服务器和修改主机文件等步骤。 ... [详细]
  • 解决 Windows Server 2016 网络连接问题
    本文详细介绍了如何解决 Windows Server 2016 在使用无线网络 (WLAN) 和有线网络 (以太网) 时遇到的连接问题。包括添加必要的功能和安装正确的驱动程序。 ... [详细]
  • 使用Jsoup解析并遍历HTML文档时,该库能够高效地生成一个清晰、规范的解析树,即使源HTML文档存在格式问题。Jsoup具备强大的容错能力,能够处理多种异常情况,如未闭合的标签等,确保解析结果的准确性和完整性。 ... [详细]
  • CentOS 7 中 iptables 过滤表实例与 NAT 表应用详解
    在 CentOS 7 系统中,iptables 的过滤表和 NAT 表具有重要的应用价值。本文通过具体实例详细介绍了如何配置 iptables 的过滤表,包括编写脚本文件 `/usr/local/sbin/iptables.sh`,并使用 `iptables -F` 清空现有规则。此外,还深入探讨了 NAT 表的配置方法,帮助读者更好地理解和应用这些网络防火墙技术。 ... [详细]
  • 2017年12月7日:React中实现不同组件间的路由导航
    在React应用中,实现从首页到不同组件的路由导航是常见的需求。本文介绍了如何通过配置路由来实现这一功能。具体步骤包括:1. 在首页设置路由链接,使其能够跳转到不同的目标组件;2. 确保目标组件正确配置,特别是在导入时使用默认导出(`default`),以确保路由能够正常工作。此外,文章还提供了详细的代码示例,帮助开发者更好地理解和实现这一功能。 ... [详细]
  • 从无到有,构建个人专属的操作系统解决方案
    操作系统(OS)被誉为程序员的三大浪漫之一,常被比喻为计算机的灵魂、大脑、内核和基石,其重要性不言而喻。本文将详细介绍如何从零开始构建个人专属的操作系统解决方案,涵盖从需求分析到系统设计、开发与测试的全过程,帮助读者深入理解操作系统的本质与实现方法。 ... [详细]
  • 这篇文章将揭示 Vue 和 React 组件库中五个鲜为人知的强大工具。这些工具均以纯 JavaScript 实现,功能卓越。其中,async-validator 是一个数据验证插件,不仅预置了 URL 和电子邮件的验证规则,还支持异步验证功能。 ... [详细]
  • 深入解析 JavaScript 代码执行流程:理解执行上下文与变量提升机制
    本文深入探讨了JavaScript代码的执行流程,重点解析了执行上下文和变量提升机制。通过详细分析代码解析过程,帮助开发者更好地理解JavaScript中的作用域和执行环境,为编写高效、无误的代码提供理论支持。 ... [详细]
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社区 版权所有