[翻译]首先我应该学习哪一种编程语言?

原文地址:Which Programming Language Should I Learn First? 你想要学习编程.也许你已经问过你开发的朋友关于推荐哪种语言,而且也获得了不同的回答.但他们说出一些你不懂的术语(什么是面向对象?!).为了帮助你选择一个编程语言来学习,这里给你提供一个易于理解的信息图,凭借你的目的和兴趣,有助于你做出最好的选择.一些详细资料,包括学习的难度,语言受欢迎程度和平均收入,每一种编程语言都会涉及.我也为每一种编程语言编译了一个列表,最佳编程工具和资源,为了帮助你赶快行动.特别感谢Prithviraj Udaya授权我是用他在Quora上的的指环王类比注意:一个优秀的程序员应该至少了解一些编程语言来学习用不同方式来解决问题.为了技术不落后,他们持续学习和成长.这仅仅是你的编程之旅的开始,简单的选择一个然后马上开始编码.> 大多数优秀的程序员编程不是因为他们想要获得丰厚的薪酬或者更多的荣誉,他们仅仅觉得编程有趣.> - Linus Torvalds (Linux之父)

来源于:CarlCheo.Com

点击上面的信息图查看完整大小.获取PDF版本信息图详解和问题与解答:点击这里跳转或者滚动到文章底部查看.

最佳编程工具和资源初学者:IDE代表集成开发工具.它是帮助开发人员写代码的工具,一般由代码编辑器,编译器和调试器组成.下面是最佳课程,教学,数据等等.涉及每一种编程语言.可以随意建议任何的新资源来保持以下列表更新.(译者注:(1)原文使用标签页,markdown格式暂不支持,所以在此用目录代替索引如果想要看原文格式,请查看原文 (2)各语言推荐书籍中,尚无中文版本,皆保持原文显示.)

目录:PythonJavaC/C++JavaScriptC#RubyPHPObjective-CFor Kids有用的资源问题与解答

Python 官方网站:https://www.python.org/- 官方Python入门指南- 开启一个文本编辑器,类似Sublime Text,之后可以移步到IDE上做一些更为复杂的项目,比如PyCharmpydev课程- Treehourse - Python基础课程- Udemy - Python编程终极教程- 免费 - Udacity - 计算机科学简介 - Codeacademy - Python - Google’s Python Class 免费交互式指南- Learn Python书籍- Python Programming: An Introduction to Computer Science- Python Programming for the Absolute Beginner- 像计算机科学家一样思考Python (免费在线阅读)- Learn Python The Hard Way (免费)Web开发如果你打算使用Python创建网站,尝试Flask,一个对初学者十分友好的PythonWeb框架- 官方Flask文档:书写非常清晰和完善的文档接下来,你或许继续前进到Django,没流行和广泛使用的Python Web框架- 官方Django入门指南- 教程:如何用Django跳探戈: 一个 Python Django 教程(免费)- 书籍: Test-Drive Development with Python(免费在线阅读)

Java 官方网站: http://www.oracle.com/technetwork/java/javase/overview/index.html- 首先,你应该理解面向对象编程的概念(OOP):- 一个车的类比:如何想非技术人解释OOP概念?- 更多细节版本:Java教程:不要害怕OOP!- 下载和安装Java SE 开发组件(JDK)- IDE: Eclipse- Oracle官方Java教程课程- Treehouse – Java基础课程- Udemy – 面向零基础的Java教程- Udemy – 初学者Java编程-Java终极教程教程(免费)- Eclipse And Java 视频教程- 学习Java- 免费交互式Java教程- YouTube 视频 – Java (初学者) 编程教程书籍- 新手学Java7编程- Java编程思想 (免费获取旧版本:这里)- Effective Java- 学习完基础和原理之后:深入浅出Java- 如果你想深入掌握Java: Java完全参考手册- Think Java (免费)如果你想要创建Android应用:- 下载 Android Studio and SDK 工具- 官方入门教程- Courses- Treehouse – 构建一个简单的Android应用- Udemy – 从Scartch入手,学习Android编程

C/C++ 关于C/C++- 一个非常好的读物关于为什么C和C++是不同的语言? - 我应该在学习C++之前学习C?- 为什么C不是C++的子集- IDE: Visual Studio 或者 Eclipse- Tutorials & References: Cprogramming.com关于 C- 书籍- C Programming Absolute Beginner’s Guide- 如果你想掌握C编程,必须读– C程序设计语言- C语言程序设计:现代方法- Learn C The Hard Way(免费)- 教程(免费)- Learn-C.org- 教程要点 - C 教程- C 常见问题关于C++- 每个水平不错的书籍列表- C++权威书籍教程和列表- cplusplus.com – C++ 资源网站- 教程- 一个关于游戏开发不错的教程:Udemy - 学习C++游戏开发- 教程(免费)- LearnCpp.com- C++控制台视频教程- 教程要点 – C++ 教程- 书籍- C++程序设计原理与实践- C++ 程序设计语言- 游戏编程 – Beginning C++ Through Game Programming

JavaScript - 代码编辑器: Sublime TextCourses (Free)- Codeacademy – JavaScript- Crockford on JavaScript: 在雅虎的一个公开演讲系列!教程 (免费)- Mozilla 开发社区 – JavaScript 基础 – 学习Web- Superhero.js书籍- A Smarter Way to Learn JavaScript- JavaScript语言精粹- JavaScript模式- JavaScript权威指南- JavaScript 编程精解 (免费)对于前端开发人员, 必须学习HTML & CSS. jQuery也是重要的.- 关于HTML, CSS, 和JavaScript不错的类比: 以一个房子来解释网站中的一部分- 书籍- Web Design with HTML, CSS, JavaScript and jQuery Set- JavaScript and JQuery: Interactive Front-End Web Development- 课程- Treehouse –学习前端Web开发JavaScript + jQuery- Codeacademy – HTML & CSS (免费)- 教程: W3Schools (免费)对于服务器端开发人员, 学习 Node.js:- 课程- Treehouse – Node.js 基础- nodeschool.io (免费)

C# 官方网站:http://msdn.microsoft.com/en-US/vstudio/hh341490- 首先,简单阅读C#,.NET和ASP.NET之间的练习- 官方C#入门指南- IDE: Visual Studio- web 开发: 官方ASP.NET入门指南课程- 零基础学习C#编程- 零基础学习C#原理 (免费)教程- LearnVisualStudio.NET- 免费- 零基础学习Visual C# .NET- 教程要点 – C# Tutorial书籍- 深入浅出C#- C# 5.0 核心技术- CLR via C#- ASP.NET高級編程 (For web development)- Programming C# for Beginners (Free)

Ruby 注意: 以下资源主要针对Ruby on Rails框架.官方网站:http://rubyonrails.org/- 官方Ruby on Rails入门指南- IDE: RubyMine- 使用Ruby on Rails开发网站,必须有HTML,CSS和JavaScript的基础.点击"JavaScript"标签页获取更多信息Courses- Treehouse – Ruby基础课程- Udemy – Ruby初学者编程训练- Rails for Zombies (免费)教程- RailsCasts (免费章节)书籍- Ruby on Rails 教程 (免费在线阅读)- 适合初学者的书籍 – 应用Rails进行敏捷Web开发- 如果你想掌握Ruby on Rails 开发 – Ruby编程语言

PHP 官方网站: http://php.net/- IDE: PhpStorm- 不错的最新PHP参考和资源: 正确的方法学习PHP课程- Treehouse – PHP基础课程- Udemy – PHP 和MySQL开始指南- Codeacademy – PHP (免费)书籍- PHP and MySQL for Beginners- Head First PHP & MySQL学习完基础知识之后,你或许会考虑使用框架:- CodeIgniter – 非常适合初学者,容易,适用于小型项目- Laravel – 最好的和最流行的PHP开发框架

Objective-C 官方网站: https://developer.apple.com/- 如果我想成为一名iOS开发人员,我应该马上学习Swift而不是Objectvie-C吗?- Objective-C和Cocoa之间的区别是什么?- 官方入门指南:- iOS- Mac- 你或许打算学习 Swift 作为你的第一个/下一个语言.课程- Treehouse – Objective-C基础- Code School – 尝试Objective-C (免费)- iOS 应用开发:- Treehouse – 使用Objective-C构建一个简易的iPhone应用- Udemy – 如何构建iPhone应用– iOS 开发课程教程(免费)- Cocoa开发中心- 编程要点 – Objective-C Tutorial书籍- Big Nerd Ranch培训系列:Objective-C编程- Big Nerd Ranch培训系列:iOS编程- Programming in Objective-C- 苹果开发之Cocoa编程

面向儿童 - 8 – 16年龄: Scratch – 创建自己的游戏,轻松的故事和动画.- 让孩子更多的有趣的方法来学习编程:- 10+ 年龄 : Lego Mindstorms– 编写程序赋予机器人生命.- 3 – 8 年龄: Robot Turtles – 棋盘游戏教编程.- 不错的列表 儿童编码应用和网站- 儿童互动课程 – Tynker- 一旦你的孩子学习完编程原理,你可以继续教他们Python (参考 “Python” 标签页).- 适合孩子学习Python书: 趣学Python编程

更多有用的资源 - 最佳在线编程课程:- Treehouse (第一个月免费):为零基础者提供,选择这个作为你的第一步.- Codeacademy: 适合初学者精彩和免费的课程.- Code School (优惠$20头一个月): 推荐作为你第二/第三的课程.适合"中级学者".- Udemy (使用 “CARLCHEO” 优惠劵获得75%的优惠): 许多在线课程列表.其中有一些是非常棒的.推荐你在注册之前先阅读课程简介!- Code.org- Khan Academy: 计算机编程课程- MIT OpenCourseWare: 最多访问课程列表- edX: 来自世界最好的大学中的免费在线课程- 如果你使用一款IDE,也想要获取它源代码来快速查看和编辑代码:Sublime TextNotepad++- Amazon: 入门级畅销编程书籍- 最好的实用编程指南之一: Code Complete- YouTube优秀教程视频频道: thenewboston- CS50.tv : 哈佛大学的计算机科学入门课程- Google Blockly:可视化编程语言(和 Scratch相似)

信息图详解和问题与解答

1. 为什么到处都是Python ?你是一个Python的粉丝吗?

当有多个方案在一个场景中的时候,我决定使用Python作为首选语言,因为它被广泛认为是最好的编程语言初学者。下面是一些证据:

有成千上万的辩论,认为其他编程语言是更好的,但我认为我们应该坚持大多数人的意见.

2. Favourite Toys Analogy

  • 乐高 (Python) 和 玩泥巴 (Ruby): 下面是原始的玩具引用类比–

我对大多数初学者推荐Python,但没关系。无论你是偏好Ruby或Python程序员,取决于你的个性。如果你年轻的时候最喜欢乐高玩具,选择Python。如果是粘土,使用Ruby.

3. 自动和手动汽车的类比

C比Java给你更多的控制。使用Java,你不必担心换挡(比如Java的内存管理),但使用C,你可以开车(执行代码)更快更有效。

4.我认为Facebook使用PHP吗?谷歌是使用Python ?

两家公司都使用多个编码语言,像Java和c++。在这种情况下,我们应该遵循规则# 1中的规定。底线是,你绝对需要学习不止一个编程语言在大多数公司找到一份工作。

5. 程序员通常面临的挑战是什么?

  1. 数小时盯着你所谓的工作代码.

  2. 有时你觉得自己愚蠢.

  3. 你认为花费了许多的开发时间.

  4. 被委派来修复一切事情,而且不得不和电脑一起工作.

你同意上面的流程图吗?在下面评论中让我们知道.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 162,408评论 4 371
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 68,690评论 2 307
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 112,036评论 0 255
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,726评论 0 221
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 53,123评论 3 296
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 41,037评论 1 225
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 32,178评论 2 318
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,964评论 0 213
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,703评论 1 250
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,863评论 2 254
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,333评论 1 265
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,658评论 3 263
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,374评论 3 244
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,195评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,988评论 0 201
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 36,167评论 2 285
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,970评论 2 279

推荐阅读更多精彩内容