作为一名机械工程师,我从未想过自己会进入编程世界。然而,在我上一篇文章讨论各种编程语言的潜力之后,我意识到 JavaScript (JS) 正在呼唤我的名字。今天,我想分享我的旅程、我选择背后的原因、我面临的挑战以及我一路走来学到的东西。
那么,为什么是 JavaScript?以下是一些令我印象深刻的原因:
在深入研究 JavaScript 之前,我从 C 基础知识开始,这帮助我理解基本的编程概念。我学习了打印模式、解决数组问题以及 Java 中面向对象编程 (OOP) 的基础知识。然而,我仍然发现一些 OOP 概念有点难以捉摸。这些基础知识为我过渡到 JavaScript 奠定了坚实的基础。
了解 JavaScript 的历史确实帮助我了解了它今天的功能:
创建:JavaScript 是由 Brendan Eich 于 1995 年在 Netscape 工作时仅用 10 天就创建的。最初称为 Mocha,后来成为 LiveScript,最后成为 JavaScript,以利用当时 Java 的流行。
标准化:1997 年,JavaScript 在 ECMAScript 规范 (ES) 下实现了标准化。这为跨不同浏览器的一致实现铺平了道路。
进化:多年来,JavaScript 发生了显着的发展,出现了 ES6 (2015) 等重大里程碑,它引入了 let/const、箭头函数、类和 Promise 等功能。
JavaScript 的用途非常广泛,具有广泛的应用范围,包括:
前端网页开发
后端开发
移动应用程序开发
React Native 和 Ionic 等框架允许开发人员使用 JavaScript 构建跨平台移动应用程序。
游戏开发
Three.js 和 Babylon.js 等引擎有助于创建 2D 和 3D 游戏,而 PixiJS 则广泛用于渲染交互式图形。
桌面应用程序
Electron 等工具使开发人员能够使用 JavaScript、HTML 和 CSS 构建桌面应用程序。 Slack、Discord 和 Visual Studio Code 等流行应用程序都是使用 Electron 构建的。
基于网络的机器学习
TensorFlow.js 等库使开发人员能够在浏览器或 Node.js 上构建和部署机器学习模型。
物联网和硬件控制
像 Johnny-Five 这样的框架将 JavaScript 带入物联网 (IoT) 世界,让开发人员能够与硬件设备交互。
无服务器架构
JavaScript 在 AWS Lambda、Google Cloud Functions 和 Azure Functions 等无服务器计算平台中发挥着至关重要的作用。
当然,旅程并非一帆风顺:
动态类型:来自机械工程背景,动态类型的概念最初令人困惑。与在编译时定义变量类型的静态类型语言不同,JS 提供了更大的灵活性,但也导致了难以追踪的意外错误。
异步编程:JavaScript 的事件驱动特性让我接触到了异步编程,这是一个陡峭的学习曲线。理解回调、promise 和 async/await 需要时间,但一旦掌握了这些概念,我就感到很有意义。
框架过载:有这么多可用的库和框架,我经常感到不知所措。我应该学习 React 还是 Vue.js?我应该使用 Express 作为后端吗?我花了一些时间来了解生态系统并为我的项目找到合适的工具。
调试:最初,调试感觉就像大海捞针。 JavaScript 的错误消息有时很神秘,但我学会了将调试过程作为开发的重要组成部分。
JavaScript 的未来充满希望,驱动力是:
现在,我想听听你的消息!您对 JavaScript 有何看法?你喜欢或不喜欢它什么?如果您要为非 IT 背景的初学者推荐一种编程语言,您会选择哪一种?为什么?我很想在下面的评论中听到您的观点!此外,您认为学习 JavaScript 时哪些资源最有帮助?
JavaScript 改变了我对技术的理解,打开了一个充满可能性的世界。当我继续我的旅程时,我很高兴看到我的新技能将带我去往何处。我真的很喜欢学习和使用每一种编程语言,因为我相信每一种语言本身都有同样的需求和重要性。让我们继续对话吧!
这篇文章中的内容完全是从我作为一名机械工程师进入编程世界的角度出发的。重要的是要注意,我的经验和观点不会削弱他人观点的价值。我鼓励读者分享他们自己的见解和经验,因为技术社区在多元化的观点和协作学习中蓬勃发展。在 Dev 这样的平台上撰写这些技术帖子使我们能够相互联系和学习,从而促进对主题更丰富的理解。
以上是畅游 JavaScript 世界:机械工程师对学习和挑战的看法的详细内容。更多信息请关注PHP中文网其他相关文章!