初学者编码路线图。

2025-06-07

初学者编码路线图。

编程常见问题。

• 我应该学习 Python 还是 JavaScript?
• 数据科学、Web 开发和应用程序开发,我应该选择哪一个?
• 既然有 Wix 和 WordPress 等流行的 Web 开发工具,为什么我还要学习 Web 开发?
• NodeJS 比 Django(Python) 更好吗?
• 所有这些让我感到困惑😕,不知道该怎么办?

因此,在开始提问之前,请先介绍一下我是谁,以及我为什么有资格回答这些问题?
我是一个 gradiot(一个大学毕业的傻瓜,浪费了金钱和时间,在大学里却什么技能都没有得到,而实际上有机会免费在网上学习所有东西),这个词是 Varun Maya(Avalon Labs 创始人兼首席执行官)创造的。是的,我是计算机科学毕业生。我非常渴望创造事物,如果你开发过任何东西,你可能会体会到 IT'S ALIVE 的感觉。在大学期间,我接触过多种技术,从 Arduino 到 Raspberry pi,从 PHP 到 JavaScript、Python、flutter 等等。我尝试学习和理解各种技术,不是因为大学课程,而是因为我想学习更多知识并使用谷歌😎。在我的整个旅程中,我遇到了很多问题,以下是我认为会对你们有所帮助的一些问题。希望你会喜欢它。

我应该学习 Python 还是 JavaScript?

在我开始解释为什么选择 Python🐍 或 JavaScript⚡ 之前,我们先来谈谈编程的一般概念。编程是一种思考方式,用机器能理解的语言来实现你创建的逻辑。现在,编程有多种风格,或者说编程结构,也就是编程范式,例如面向对象编程 (OOP)、函数式编程、过程式编程等等。作为一名开发者,你至少应该了解其中一种范式。你了解的范式越多,你在编写高效灵活的代码时就越有选择余地。

JS 与 Python 的对比图

回到主题,Python 和 JavaScript 都支持 OOP 和函数式编程以及其他范式。JavaScript
被认为是 Web 编程之王,用于创建功能强大且动态的网站。它拥有庞大的库和框架生态系统可供选择,例如用于前端的 ReactJS、Angular 和 Vue,以及用于后端的 NodeJS。您还可以使用 JavaScript 中的 React Native 为手机创建原生应用。因此,使用 JavaScript,您可以开发功能齐全的网站以及移动应用程序。而 Python 是最适合机器学习和数据科学的编程语言。它拥有多个库,例如 Keras、TensorFlow、Scikit-learn 等。此外,Python 易于使用并拥有庞大的社区支持。您还可以使用 Django 和 Flask 等框架在 Python 中创建网站。您还可以使用 Tkinter、kiwi 等在 Python 中创建应用程序。这两种语言都具有强大的全面开发能力。

简而言之,这是我对这个话题的看法。作为一名开发者,每个人都必须掌握基本的 Web 开发知识,因为机器学习和数据科学是基于服务的技能,而 Web 和应用程序开发是基于产品的技能。因此,从事数据科学和机器学习的人被称为工程师,而不是开发者。请注意工程师和开发者之间非常微妙的区别。另外,你也知道马克·扎克伯格和埃隆·马斯克,他们都是 Web 开发出身,并创建了各自的产品。问问自己想要什么,明确目标,然后明智地选择,并始终选择 JavaScript。

数据科学 vs Web 开发 vs 应用程序开发 我应该选择哪一个?

如果你正在读这篇文章,你可能很清楚数据科学和机器学习工程师与 Web 开发人员或应用程序开发人员相比的薪酬。人工智能的巨大发展预示着未来,这很可能会吸引你认为,即使是我也应该学习数据科学,以获得丰厚的薪酬和工作机会。然而,残酷的现实是,数据科学领域的工作很难找,因为公司更喜欢拥有领域知识的人,通常主修数学和统计学,要想在这个领域找到工作,你至少应该拥有硕士或博士学位。例如,一家金融科技公司会选择特许金融分析师 (CFA) 或金融专业的学生,​​而不是计算机科学工程师,并教授他们数据科学,因为 Python 很简单,而且效率很重要。因此,具备金融知识的人非常适合这份工作。然而,正如我所说,找工作很难,但并非不可能。一些计算机科学专业的毕业生已经进入数据科学领域,并且收入颇丰。你需要学习的只是 Python、一些库和数学知识。正如我之前所说,数据科学是一项基于服务的技能,严格来说,你并非一名开发人员,而是一名工程师,正在为特定问题寻找解决方案。另一方面,成为一名 Web 或 App 开发者意味着开发产品。你可以创建应用程序和网站并发布,通过广告收入、出售产品,甚至为公司创建和维护产品来赚取收入,这样你就不必依赖公司提供服务了。我建议你先学习 Web 开发,然后再学习数据科学,同时通过你的 Web 开发技能赚钱。这样,你将拥有一套扎实的技能、作品集和充足的预算,可以开始在机器学习的世界里进行实验,在这个领域,处理能力至关重要。

替代文本

既然有像 Wix 和 WordPress 这样流行的 Web 开发工具,我为什么还要学习 Web 开发?

WordPress 和 Wix 是流行的内容管理系统。它们最适合创建小型网站和博客。没错,它们让任何人都能轻松创建网站,但这并不意味着 Web 开发人员的工作就此消失。你无法使用它们创建像 Amazon、Netflix、Twitter 那样的大型功能齐全的网站。所以,如果你想成为一名低级 Web 开发人员,你几乎可以告别网站开发了。你可以在 Google 上搜索热门热门技术技能,你会发现 AngularJS、ReactJS 和 NodeJS 开发人员很抢手。你不仅可以创建网站,还可以使用 React-native 为 Android 和 iOS 创建原生应用程序,使用 JavaScript 库 ThreeJS 创建游戏。可能性无穷无尽,你所要做的就是开始。我建议你从 MERN 技术栈开始,这只是我个人的看法,但你可以研究并选择你喜欢的任何技术栈。

NodeJS 与 Django

NodeJS 比 Django 好吗?

在比较之前,让我们先讨论一下什么是 NodeJS 和 Django。Node
JS 是从客户端浏览器环境中提取的 JavaScript 运行时,它使用 OS 绑定进行 I/O,而 Django 是一个 Python 框架。因此,比较两者就像比较苹果和橘子。不过,让我们明确这些要点。
说到性能,是的。NodeJS
比 Django 或一般的 python 更快,因为它是用 C++ 编写的并且是一个 JS 运行时。你会问为什么?因为 JavaScript 比 python 更快,因为它在异步非阻塞对象模型上工作。
说到可扩展性,不是。Django
或 python 通常具有高度可扩展性,因为应用程序的缓存非常容易。Django 是一个高级 Python Web 框架,它鼓励快速开发和干净、实用的设计。
随着 npm(代表 Node 包管理系统)的推出,开源社区对 NodeJS 的需求激增,因为管理包和依赖项从未如此简单。此外,在包管理方面,npm 比 pip 好得多,你可以研究一下。
以下是一些巨头以及他们开发时首选的后端技术。Uber
、Twitter、eBay、Netflix、Duckduckgo、PayPal、LinkedIn、Trello、Mozilla、GoDaddy 等巨头都使用 Node JS 作为后端技术。Pinterest
、Instagram、Eventbrite、Sentry、Zapier、Dropbox、Spotify、YouTube 等巨头也使用 Django 作为后端技术。
请注意这里的趋势,Uber、Twitter 和 Netflix 是一些优先考虑性能的应用程序,而 Pinterest、Instagram、YouTube 需要大量空间,因此可扩展性是他们的首要任务。
所以,选择可扩展性还是性能取决于你。

所有这些观点让我感到困惑😕我该怎么办?

首先,问问自己,你喜欢做什么。你喜欢开发游戏、应用程序还是网站?什么能引起你的兴趣?什么能激发你的好奇心?我根据你的选择列出了一些问题。

• 游戏开发——如果你想进入游戏开发行业,你必须学习 C# 或 C++ 来进行核心游戏开发。你可以使用 ThreeJS 或其他库来创建网页游戏,但你还算不上一名真正的游戏开发者。

• 应用开发 – 您可以使用 JAVA 为 Android 开发应用程序,或使用 Swift 为 iOS 开发应用程序。此外,您还可以使用 React-native 或 Flutter 创建可在 Android 和 iOS 上运行的应用程序。如果您需要 Web 应用,也可以使用 Ionic。

• Web 开发——有很多技术栈(一组相互契合的技术)可供你选择学习,例如 MEAN 技术栈、MERN 技术栈、LAMP 技术栈等等。你也可以使用 WordPress 或 Wix 创建网站。你可以使用你感兴趣的技术栈,为自己打造一个交互式作品集。

• 数据科学、机器学习、人工智能——从 Python 开始,并从 Udemy 或 LinkedIn 等热门网站学习数据科学、数学和机器学习课程。开始参加 Kaggle 比赛并维护你的 Kaggle 个人资料。
其次,帮自己一个忙,开始学习与你上述问题答案相符的语言的算法和数据结构。
第三,开始申请一些项目实习,并尝试制作一份优秀的作品集。维护你的 GitHub、LeetCode、HackerRank 或任何其他可以添加到简历中的个人资料。

希望以上内容能对您有所帮助;我尽力解答了我在 Gradiot 生涯中遇到的一些问题。如果您觉得我遗漏了什么或有什么错误,请在评论区指正。
另外,请查看roadmap.sh和随附的 GitHub 代码库。
感谢您宝贵的时间。

文章来源:https://dev.to/harshboricha98/roadmap-of-coding-for-starters-44cp
PREV
我的 GitHub 校园专家之旅以及如何成为专家
NEXT
Front_END Web 开发人员路线图