更新日期:2014年1月30日
即使在人工智能崛起的今天,全球对编程员和程序员的需求依然很大。
此外,编程不仅仅是一种构建事物的方式–编程可以帮助你学会解决问题,帮助需要帮助的人,正如史蒂夫-乔布斯(Steve Jobs)所告诫的那样,还可以教你如何思考。
好消息是,你不必住在硅谷,也不必拥有昂贵的高科技小工具,就能学会如何编程。自学编程的热潮已经兴起,你也可以加入到网络学习下一门通用语言的行列。
只需轻点鼠标,你就能掌握全新的编程技巧,我们为你提供了学习编程和创建下一个网站或应用程序所需的所有资源。
以下是 58 种免费在线课程、开源资源和低成本工具的详细清单,供你入门使用。
- 学习 HTML
- 学习 CSS
- 学习 JavaScript
- 学习 React
- 学习 PHP
- 学习 SQL
- 学习 Python
- 编程挑战、游戏和评估
- 学习编程的书籍
- 编程导师和聚会
- 编程播客
- 儿童编程
学习 HTML
让我们从前端开始。
虽然 HTML 不一定是 “编程”,但它却是世界上大多数网页的基本构件。
如果你刚刚接触编程,HTML 是一个很好的开始。
让我们来看看学习 HTML 的最佳资源。
#1: Programming With Mosh (YouTube)
进入 Mosh 编程频道,你会发现几乎所有你能想象到的主题都能在这里找到。从 C++ 到 Java,Mosh 提供了几乎所有语言、语法和主题的大量视频。大多数视频只需 60 分钟,就能教会你相关主题的基础知识,以及如何创建整洁、整齐的代码。
不出所料,这段《HTML入门》视频能让你在一小时内编写出实用的 HTML。
#2: Learn HTML From Codecademy
Codecademy 的学习 HTML 课程涵盖了一系列主题,包括元素、结构、表格、表单和广受讨论的语义 HTML。
注册后,您将获得富有启发性的文字讲解,并有机会卷起袖子,动手进行真正的编程练习。
最重要的是:这是 100% 免费的。
#3: Learn-HTML.org
千万不要忽视 learn-html.org,它是 HTML 教程的宝库。
您可以从元素、选择器和类等基础知识开始学习,然后逐步掌握 HTML 中链接、列表和图片的格式。每节课都包括代码示例和练习,帮助你掌握编写合规标记的技巧。
学习 CS
掌握 HTML 之后,你会渴望让网页看起来整洁美观。这就是层叠样式表 (CSS) 的用武之地。
使用这些资源,学习如何编写在各种浏览器、屏幕尺寸和分辨率下都能正常工作的优化 CSS。
#4: Codevolution’s CSS Crash Course (YouTube)
需要 CSS 入门套件?看看 Codevolution 的 CSS 速成班吧。这是一个简短而全面的 CSS 基础教程。它将教你如何在 HTML 文档中添加和自定义样式,并涵盖颜色、文本、字体、列表、表格等内容。
不过,请记住这只是一门速成课程。它非常适合初学者,但并不涵盖所有内容。
#5: SuperSimpleDev’s HMTL & CSS Full Course (YouTube)
你看过长达 7 小时的 YouTube 视频吗?
如果你正在寻找更全面(更实用)的 CSS 学习指南,那么这段视频就是一个很好的攻略。它还涵盖了 HTML,因此如果你已经了解 HTML(或使用过上述资源之一),就可以跳过这些部分,直接学习样式设计部分。
#6: Learn CSS From Codecademy
Codecademy 的 “学习 CSS” 课程是另一个不错的选择。
该课程教你如何正确格式化文件、添加炫酷功能和设计令人印象深刻的布局。它涵盖了从语法到颜色和排版的所有内容。每节课都有详细的讲解和动手实践。你可以实时看到自己的代码是如何修饰网站外观的。
#7: CSS Diner
有没有想过掌握选择器也可以很有趣?CSS Diner 是一款将学习变成娱乐体验的在线游戏。它将让你在 CSS 之旅的起点就掌握精确定位特定元素的技能。
学习 JavaScript
HTML 和 CSS 固然很好,但如果你真的想 “写代码”,学习 JavaScript 可能是最简单的入门方法。
使用 JavaScript,你就能操作前端组件,并开始进行后端开发。这将使你成为一名全栈开发人员。(恭喜你)
#8: Learnjavascript.online
言出必行 Learnjavacript.online是通过浏览器学习JavaScript的超简单(但很棒!)方法。
它是一个互动中心,在这里,你可以阅读一点一滴的教程,卷起你的虚拟袖子,在代码操场上尝试实际编程,而这一切都无需离开你的浏览器。它的神奇之处在于 “边学边用 “的公式,让你可以随时随地练习新技能。您可以在家里享受前七章的内容,如果您真的很喜欢,只需支付一次费用,就可以解锁整个培训课程。
#9: Scrimba
想象一下,编程学校没有枯燥的说教,而是采用动手实践的学习方式。Scrimba 这里只讲实用的编程技能,不讲理论。请记住,完成免费的 HTML 和 CSS 速成课程会让你在学习 JavaScript 时更加顺利。
#10: Free Code Camp
FreeCodeCamp.com 网站提供了一个免费课程库,其中包括许多 JavaScript 学习工具和课程。学习完基础知识后,您可以参与 40 个项目。与其他一些指导性资源相比,这里的手把手教学较少,但内容很有价值。
#11: JSRobot
如果你认为编程就是死记硬背命令,那么 JSRobot 将改变你的想法。在开始编程之前,你无需花费大量时间学习。你会发现自己编写代码的速度比预期的还要快。所以,卷起你的袖子,让你的小机器人向你展示 JavaScript 逻辑的窍门,然后看着奇迹发生吧。
#12: CodeCombat
CodeCombat 打破了传统学习的壁垒,为学习代码提供了一个引人入胜的社交互动空间。全面的课程和迷人的幻想世界相结合,让学习感觉就像一场冒险。对于那些好胜心强的人来说,还可以在激动人心的 CodeCombat AI 联盟中与他人一决高下。
学习 React
ReactJS(通常称为 “React”)可以轻松构建可重用的组件、表单和界面。
从技术上讲,这是一个 JavaScript 库,但由于它如此流行和广泛使用,如果你想认真地构建应用程序和软件,就值得花时间学习 React。
#13: React Official Tutorials
React 官方网站是一个资源宝库,从基本的文档和教程到热闹的社区论坛,应有尽有。GitHub 上的 React 源代码链接一应俱全。对于初学者,”教程 “选项卡提供了一个有趣的入门课程,让你在学习 React 基础知识的同时制作一个小游戏。
它专为动手学习者量身定制,是对文档选项卡下丰富的高级资源的完美补充。
#14: Learn React From Codecademy
Codecademy 的自学 React 课程是通往令人兴奋的 React 编程世界的入场券。
从创建组件、道具和状态到与 JavaScript 一起使用 React,您将学到一切。完成课程后,您就可以构建简单的 React 应用程序。只需 20 个小时,您就能成为 React 的精通者!
#15: Free Code Camp
Free Code Camp 提供《学习 ReactJS – 完整路线图》课程。它为使用 React 构建前端应用程序铺设了一条清晰的道路。它不仅是初学者的理想选择,还能帮助你从中级到高级地提高 React 开发技能。
#16: React JS Frontend Web Development For Beginners From Udemy
这门 Udemy 免费课程将指导你掌握钩子和使用外部 API 的基础知识。此外,课程还将深入讲解 AJAX 请求和新闻应用程序的构建。
默认情况下,您可以访问近三个小时的视频内容,但您也可以选择付费会员资格,以获得结业证书,并有机会与讲师进行问答和直接交流。
#17: Egghead.io
想要深入了解 React?来见见 Egghead.io。
该网站提供大量适合您学习的视频课程。《React 入门指南》(The Beginner’s Guide to React)是一门由 30 个部分组成的课程,让您在无干扰的环境中学习,从零开始,最终完成一个已部署的应用程序。
从了解 React 解决问题的能力到 JSX 的作用,再到使用钩子管理状态,这是一门全面的实践课程。此外,一旦你完成了学习,还有更多课程可以深入学习。
学习 PHP
如果你在 WordPress 网站上工作,你一定想学习 PHP。
PHP 可以从数据库中提取信息,让你像专家一样在前端格式化并显示这些信息。熟悉代码编辑器并深入其中,这样你就能调试下一个出错的插件。
#18: PHP For Beginners By Traversy Media (YouTube)
Traversy Media 的 “PHP 入门” 对于任何热衷于学习 PHP 的人来说都是一本宝贵的教程。在三个小时的时间里,YouTube 视频将带你了解 PHP 的 A 到 Z,涉及函数、循环和数组。
方便的时间戳可帮助您专注于自己感兴趣的领域。
#19: PHP Tutorial For Beginners – Full Course By Envato Tuts+ (YouTube)
想花七个小时而不是三个小时学习 PHP?我们可以帮您实现。
说真的,Envato Tuts+ 提供了一个全面的 PHP 课程,名为 “PHP 初学者教程 – 完整课程“。讲师杰里米-麦克皮克(Jeremy McPeak)从基础开始,逐步深入学习这门语言。课程旨在让你熟练编写函数、操作变量、理解语法以及处理 GET 和 POST 请求。
虽然课程时间比上述选项长,但也更全面。
#20: Learn PHP From Codecademy
对于寻求结构化 PHP 学习资源的人来说,Codecademy 的 “Learn PHP” 课程是一个很好的选择。
这是一个 25 小时的课程,内容包括变量、函数、数组、循环和其他 PHP 基础知识。每个模块之后都有上机练习,以巩固所学知识。课程还提供了有用的辅助工具,如提示、小抄和特定模块的社区论坛。此外,您还可以使用内置的游戏场,边学习边编写和测试代码。
#21: PHP Apprentice
PHP Apprentice 提供了一种学习 PHP 的独特方法。这本可免费获取的在线书籍通过结构合理的章节和编程示例,揭开了 PHP 实践的神秘面纱。最重要的是,它正在得到积极的维护和更新。因此,新内容和新课程会不断添加。
学习 SQL
SQL(读作 “续集”,代表 “结构化查询语言”)是访问和处理数据库数据的最常用、最流行的语言之一。换句话说,学习 SQL 有点像学习杜威十进制系统……不过是针对计算机的。
#22: SQL For Beginners Tutorial (YouTube)
45 分钟的视频速成课程让学习 SQL 基础知识变得轻而易举。
本教程包括设置 Microsoft SQL Server 和 SQL Server Management Studio 这两个免费的强大工具的详细攻略。充分了解表格、主键和各种数据类型,打下坚实的 SQL 基础。
#23: Learn SQL From Codecademy
Codecademy 提供适合初学者的课程,如 Learn SQL,引导你了解 SQL 和关系数据库的核心概念。最棒的是什么?您可以按照自己的进度学习这些模块,因此是自主学习的理想选择。
#24: SQL Tutorial On W3Schools
W3Schools 为那些希望深入了解 SQL 的人提供了大量 SQL 教程。它涵盖了从编写结构合理的 SQL 语句到数据库创建和更改等高级操作的所有内容。消化完材料后,您可以通过实际操作练习来检验自己的理解能力。
#25: Complete SQL Bootcamp (Udemy)
如果你想认证自己的 SQL 技能,Udemy 的 Complete SQL Bootcamp 是一个可靠的选择。课程内容包括数据分析、创建表格、建立数据库等,使用的是 PostgreSQL,该知识库可用于其他 SQL 数据库。获得该认证可以大大提高您的简历质量。
学习 Python
编程并不只是变量和 “if-then “语句。
数据分析、数据结构、算法和机器学习是最近的热门话题。(要知道,讨厌的人工智能需要大量的数据)。
学习 Python 将帮助你进入这些主题和用例的大门。
#26: The Python Beginner’s Guide
对于 Python 初学者来说,Python 官方网站是不可或缺的资源。可免费访问的《初学者指南》是您 Python 之旅的路线图。它将您链接到各种学习工具,如测验、作业、小抄和样式检查器。
#27: Introduction To Python Programming (Udemy)
Udemy 上有一门针对 Python 新手的简明而全面的课程。
课程紧凑,只有不到两个小时的时间,但涵盖了 Python 的基本概念,如脚本和函数的创建。
#28: Learn Python 3 From Codecademy
准备正式学习 Python?
Codecademy 的专业计划提供沉浸式 Python 3 课程,非常适合脚本和基本编程概念的入门学习。课程涵盖各种主题,包括 Python 语法、控制流机制、函数构建以及使用列表和目录构建数据结构。该课程没有先决条件,学习大约 25 个小时后,学员可以获得证书。
#29: LearnPython.org
LearnPython.org 是一个互动学习平台,其中包含大量编程教程。从关于变量的初级课程到关于数据科学的高级模块,它可以满足各个阶段学习者的需求。它还在 Facebook 上扩展了一个协作空间,将世界各地的学习者联系在一起。
#30: Learning Python: From Zero To Hero (Free Code Camp)
我是说……谁不想从零变成英雄呢?对不对?
Free Code Camp 的 “学习 Python: 从零到英雄” 课程是一门基于文本的课程,以清晰易懂的方式介绍 Python 的基本知识。掌握变量的艺术,征服条件语句,在引人入胜的章节中释放循环的力量。探索列表的多功能性,深入了解通过不同数据结构进行迭代的复杂性,并发掘对象和类的潜力。完成本课程后,你将从一个 Python 初学者变成….well,一个英雄。
#31: One Month Python Bootcamp
通过一个月的 Python Bootcamp,实现从初学者到高级 Python 编程的飞跃。这个全面的自定进度课程采用基于项目的方法,加深你对 Python 的理解。虽然学费为 299 美元,但密集的材料和实践项目为您提供了作为 Python 开发人员所需的基础。
编程挑战、游戏和评估
我们知道,游戏并不是浪费时间–相反,在学习代码的过程中,它是一种引人入胜的学习和练习新概念的方式。
利用这些在线活动来提高你的技能吧:
#32: CodeAbbey
CodeAbbey 是一套从初级到高级的练习题集,可让您获得证书并磨练技能。您可以将其视为一种有趣的家庭作业。
#33: Coderbyte
选择一种编程语言并解决挑战;随附的解决方案和教程通过逐步指导帮助你巩固重要的编程技能。
#34: CodinGame
CodinGame-玩虚拟编程游戏(想想:用代码摧毁敌人的战舰),这些游戏可以教会你基本技能,让你受到公司的关注。
#35: HackerEarth
HackerEarth-有目的的编程活动。通过创新的编程解决方案帮助企业解决实际问题,同时加入致力于提高技能的编程员社区。
#36: HackerRank
HackerRank-在领先的企业招聘网站上进行互动的同时,发掘你内心的编程竞争者并解决挑战(也就是说,这是一个简历制作工具!)。
#37: Codewars
Codewars,这是一个培训自己、与他人合作以及使用各种编程语言进行创作的绝佳资源。
#38: Exercism
该网站承诺帮助你 “真正精通编程”。
这一点毋庸置疑。
无论您是想学习编程、提高所选语言的流利程度,还是想开发简洁的代码,网站都会根据您的兴趣为新手和专家量身定制练习题(迷你任务)。只需提交您的解决方案,就能获得有用的反馈。通过 GitHub 运行。
学习编程的书籍
这里没有枯燥乏味、尘封已久的教科书,这些编程读物可以为你提供有用的阅读材料。
#39: The Self-Taught Programmer
The Self-Taught Programmer,自学编程者的完美手册,由一位从业余到专业的编程毕业生撰写。(9.99 美元 Kindle 电子书)
#40: A Data-Centric Introduction To Computing
想从计算机科学 101 开始,在计算机基础知识的基础上提高自己的技能?这本书正适合你。
阅读这本免费在线书籍,了解所有计算机科学入门课程。
#41: Software Engineering For Internet Applications
编写代码是一回事。软件开发–实际构建功能软件–则更为复杂。这本书超越了计算机编程的范畴,分享了如何规划和开发实际的软件产品。
#42: Foundations Of Data Science
如果你被 Python 或 SQL 所吸引,那么你可能会对数据科学更感兴趣,而不是纯粹地编写代码。本书摒弃了编写代码,深入探讨了高级数据和数学世界。
#43: How To Learn To Code & Get A Developer Job
本书由 FreeCodeCamp 创始人昆西-拉尔森(Quincy Larson)撰写,将实用编程技能与现实世界中的应用相结合。如果你的目标是利用自己的技能在计算机编程领域开始新的工作或职业生涯,本书将帮助你实现这一目标!
编程导师和聚会
想结识志同道合的朋友?查找您所在地区的导师或编程活动。
#44: Reddit Programming Buddies
程序员虚拟分类广告;寻找与您的独特技能和兴趣相匹配的编程伙伴,并在个性化项目上开展合作。
#45: CodeNewbie
通过这个社交媒体网站和社区,您可以与其他学习代码的人建立联系。分享进度,提出问题,共同学习。
#46: CodeBuddies
这是一个由程序员组成的大型社区,他们通过 Slack 进行联系,并组织学习(屏幕共享)挂起。让你的挂机与你的项目一样独一无二。
编程播客
在设备上加载音频编程课程,在上下班途中或锻炼时收听。一旦你掌握了编程课程,也许你还会决定开始自己的播客。
#47: Coding Blocks
Shoptalk 介绍与多种不同编程语言相关的最佳开发实践。
#48: DevRadio
虽然最后一集是几年前播出的,但您仍可以收听微软的 DevRadio,这是一个由开发者制作、为开发者服务的播客,提供大量软件和编程信息。
#49: Software Engineering Daily
专家专访,涉及移动应用程序开发和开发人员测试等技术话题。
#50: Developer Tea
专为繁忙日程而设计的微型播客。快速收听各种开发人员设计的细节。
#51: Programming Throwdown
如果你想品尝各种编程玩意,这是一个完美的播客;每期节目都涵盖了不同的编程语言,因此你可以通过每期节目扩展自己的编程知识。
#52: CodeNewbie
这个周播客介绍其他自学编程者的故事和实用经验。
#53: Learn To Code With Me
Laurence Bradford的每周播客帮助自学成才的程序员过渡到技术领域,并提供有用的真实案例和开发市场化技能和增强简历的技巧。
儿童编程
事实证明,让您的孩子开始接触他们的第一个字节永远不会太早。
#54: C++ for Kids (Code Babies)
这本板书将向您的儿童介绍 C++ 编程基础知识。此外,您还可以查看《HTML for Babies》和《Javascript for Babies》,它们都与网站 Code Babies 配套使用。
(Amazon, $9.19)
#55: CSFirst
这个由谷歌支持的项目提供一系列免费资源,向孩子们介绍编程和计算机科学概念。
#56: Code.org Student
通过 Code.org 查找在线编程课程或本地课程的年轻资源。包括游戏和活动。
#57: MoonHack
这是代码俱乐部创纪录的一次活动,全球 7 至 18 岁的孩子们将在这里一起完成项目。参与者可以解决 MoonHack 推荐的问题,也可以提出自己的想法(当然是以月亮为主题)。据其网站介绍,在过去六年中,有超过 15 万名儿童参加了 Moonhack 的编程活动。
#58: Code Your Own Games!: 20 Games To Create With Scratch
通过这本简单易懂(而且超级有趣)的可视化指南,帮助青少年学习自己的游戏编程,让他们尽早参与到编程活动中来。游戏+学习=双赢。
(Amazon, $11.69)