人人都能学会的编程入门课
胡光
原百度高级算法研发工程师
立即订阅
769 人已学习
课程目录
已更新 4 讲 / 共 32 讲
0/2登录后,你可以任选2讲全文学习。
开篇词 (1讲)
开篇词 | 别闹了,学编程 ≠ 学语言
免费
语言基础篇 (3讲)
01 | 学习编程,我到底该选择哪门语言?
02 | 第一个程序:教你输出彩色的文字
03 | 判断与循环:给你的程序加上处理逻辑
人人都能学会的编程入门课
登录|注册

01 | 学习编程,我到底该选择哪门语言?

胡光 2020-01-04
你好,我是胡光。欢迎来到我的极客时间专栏。在接下来的两个多月里,我将陪伴在你的每一天的清晨或是夜晚,在人潮拥挤的上班地铁上,在你家里的书桌前,再或者是在你公司楼下的咖啡厅里,每天 10 分钟,让好学的你,有所收获,就是我的任务。

那些年,我学过的编程语言

面对编程这个话题,或许你已是一位编程老手,对编程熟悉无比,现在是想查缺补漏;亦或许你是一个纯新手,对编程一无所知,学习完全是从 0 开始。不管哪种情况,在我们讨论编程学习的时候,怎么都绕不开一个话题,那就是语言选择。
鉴于以往的工作经历,我了解或者熟悉的编程语言有十几种之多,包括:
最能反映系统本质的 C 语言
叫人难以捉摸的 C++
天生就格式优美的 Python
上古级的 Pascal
神奇的函数式编程语言 JavaScript
微软系的王牌语言 C#
被誉为世界上最好语言的 PHP
使用人数最多的 Java
能够方便操作系统的 Shell 脚本语言
还有我自己开发的一门娱乐级编程语言 Hython
此外,还有一些仅仅是使用过,能看懂的语言,就不列出来了。
你可能会有疑问了,为什么我会这么多编程语言呢?原因很简单,工作中是一个边学习边工作的过程,不同编程语言擅长做的事情不一样,让专业的语言干专业的事情,这是一个程序开发人员最基本的认知,所以我能学会多种编程语言也是情理之中。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《人人都能学会的编程入门课》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(24)

  • cww
    老师,你好能不能介绍一下,您从市面上买的15本C语言编程书籍都有哪些?

    作者回复: 1.《C 语言核心技术》-->简称牛书
    2.《C 语言入门经典-第5版》很经典,但不推荐新手看
    3.《C 语言从入门到项目实战》这本书的项目讲得很好
    4.《C Prime Plus 第6版》
    5.《零基础入门学习 C 语言》
    6.《『笨方法』学 C 语言》
    7.《第一行代码 C 语言》计蒜客联合出品的
    8.《啊哈 C 语言!》
    9.《C 陷阱与缺陷》
    10.《C 专家编程》
    11.《C 程序设计 第五版》
    12.《C 语言从入门到精通》
    13.《算法:C 语言实现》
    14.《零基础:学 C 语言》
    15.《C和指针》

    纯手打,亲给个好评哈。

    PS:建议留言回复加个图片功能 -_-|||。

    2020-01-04
    2
    26
  • 未来、尽在我手
    for (int i = 2; i * i <= x; i++) { // 定义循环变量 i
            if (x % i) continue;
            f = 1;
            break;
        }
       ———————————————————
    老师好,如果是纯正的C语言,for循环里面不能直接定义变量,但是老师是在C++环境(文件名是cpp)下,所以这个能运行。而老师的背景是在纯C的背景下,那么这个语法就是有问题的。C语言的变量都是先定义后使用。
    个人愚拙,如果说得不对,还请老师见谅!

    作者回复: 你这个问题非常好,也可能是大多数同学的问题。C语言for循环里面不能定义变量,这个已经是上个世纪的事情了,自从C99标准以后,C语言的循环中是可以定义变量的。

    2020-01-04
    1
    9
  • fengtalk
    《啊哈 C 语言》编辑器可以到 https://www.ahacpp.com/ 下载,书中的下载链接已失效,是个菠菜网站。

    作者回复: d(^_^o)

    2020-01-04
    1
    6
  • 軟件賺硬幣
    老师,看你文章举例,函数式编程语言最佳代表是JavaScript吗?

    作者回复: 如果说最具代表性的,个人认为还是:Lisp语言。可很多其他语言也支持函数式编程范式,例如:你所说的js,还有Python以及C++11以后的lambda表达式等等。都是为了支持函数式编程。

    2020-01-04
    4
  • 我思故我在
    我也认为c语言最适合入门的语言,不过现在市面都充斥着大量的python语言的教程。我是大一上学期学的c语言,当时啥也不懂,只知道老师说他是面向过程的,不过面向过程又是啥啊,还是不清楚,老师只好说,以后学了面向对象就知道了。大一下学期又学了java,才慢慢体会了语言之间的互通,语法其实都是相似的。那么学了c语言之后对于学java有什么真正有用的体会呢。我觉得吧,刚开始学面向对象的时候,会对对象这个东西感到有点陌生,甚至捉摸不透,怎么一下子new出来,就可以直接用了。直到我有一个老师说,只要对应c语言里面的内存分配malloc函数,就好理解了。后来我又回头学了一下关于内存分配的内容,就有那个味道了,也容易理解了。当然,后来又了解了些jvm的底层知识,就更理解透彻了,这是后话了。

    作者回复: d(^_^o)

    2020-01-04
    4
  • 潮汐
    老师,我觉得activefeng同学的对于代码的优化的观点是有道理的。
    从老师的代码逻辑看:
    if (f) prinf("F\n") -- 非素数,f=1, 打印F
    else printf("T") -- 素数, f=0, ,打印T
    需要读者在脑海中转化一遍并从上文的f的逻辑中判断才能理解其代表的含义,我也觉得不是很好,我的观点是代码最好是明了,从阅读上就能很快意识到一些变量代表的含义,而不是需要读者再去思考和跟代码逻辑。
    请老师指点。
     

    作者回复: 你们说的都没错。d(^_^o)这个问题不是二选一的问题,而是各种代码,你们都需要掌握的事情。毕竟以后,你们不是在看自己的代码,而是要大量阅读别人的代码。每个人的编码习惯反映的是思维习惯,所以,你们说的没错,还要兼容并包的去看待代码设计问题,注意,这不是一个拥有标准答案的问题。

    2020-01-06
    2
  • 阿阳
    C语言是大学期间学习的第一门语言,当时觉得其语法简单,较易上手,能理解计算机运行原理,同时陷阱又多,很容易遇坑。希望老师能在第一部分多讲解点语言的重要的知识,毕竟是基础不牢,地动山摇。

    作者回复: 我会讲一些容易被大家忽视和学错的东西。还有哪些点没有照顾到的,咱们可以在留言去讨论。我可以在留言区回复大家。Y(^_^)Y

    2020-01-06
    2
  • 木头马尾
    小白到第二节看到代码已经晕了

    作者回复: 没关系,先别怕,可以配合我推荐的第一本书籍,配合学习,对于初学者来讲,效果会更佳。^_^

    2020-01-04
    1
    2
  • 一步
    哈哈,我是来学习C语言的,就大学为了考计算机等级学了一段时间,后来就没有再用过了

    作者回复: (。ì _ í。)

    2020-01-04
    2
  • 小娇
    老师,你用什么软件画图的?

    作者回复: Mac下面的 keynote

    2020-01-07
    1
  • TT
    胡老师,为什么演示安装环境是未激活版的windows?

    作者回复: ⁄(⁄ ⁄ ⁄ω⁄ ⁄ ⁄)⁄新安装的,激活码还没有使用,囧。

    2020-01-07
    1
  • 77 ^ ^
    老师,c prime plus为何不推荐呢

    作者回复: 是这样的,不是不推荐,而是不满足我的推荐标准。你们可以自己买,当成工具书看。我推荐的标准是:薄,内容有效,达到相同效果,花费的时间更少。(。ì _ í。)

    2020-01-07
    1
  • 谢谢老师一直耐心的解答:Windows,编译运行,黑框一闪就不见了的问题。
    最后发现是devcpp版本问题,重新下了一个就没问题了

    作者回复: d(^_^o)

    2020-01-06
    1
  • Heroyao
    朋友给我DEVCPP安装包,然后我解压安装就好了,按照作者大大视频里的操作木问题:D

    作者回复: d(^_^o)

    2020-01-04
    1
  • Tango
    打算今年考软考,有Python语言基础。学完老师的专栏,还需要看c的书籍吗?

    作者回复: 当然是需要的,专栏篇幅有限,我会尽可能的把你们自学过程中会忽略的,会误解的知识点讲给你们,而不是全部的C语言知识。

    2020-01-04
    1
  • 一步
    老师,您视频中vim是不是装了一些插件?感觉那个提示当前光标在哪一行的插件不错,能分享下吗?

    作者回复: ma6174

    2020-01-04
    1
  • activefeng
    老师我认为c语言素数算法应该简化为:
    int f = 0;
    for (int i = 2; i * i <= x; i++) {
            if (x % i == 0) break;
            f = 1;
    }
    if (f) printf("F\n");
    else printf("T");

    作者回复: 专栏里面的代码如果要是说到简化的话,有很大的简化空间,可我没办法马力全开,只能点到为止,所以在专栏里面,我尽量的不去提短码之美的内容。⁄(⁄ ⁄ ⁄ω⁄ ⁄ ⁄)⁄

    2020-01-04
    1
  • 挑战一切
    现在想来,当年就是被一些粗制滥造的书误导了,以前都说VB简单,就买了一本书,上面全是教你怎么复制API的,看的我云里雾里,现在跟着老师的课程,有了一个契机,放下过去,重学编程。

    作者回复: (。ì _ í。)如果是基础薄弱的话,注意配合推荐书籍进行学习,效果更佳哦。

    2020-01-04
    1
  • 梦醒十分
    大佬很有趣!文章写的很好!

    作者回复: (*^o^*)

    2020-01-04
    1
  • 奔跑的八戒
    老师,什么时候开个 vim 使用的专栏,一定捧场。

    作者回复: ⁄(⁄ ⁄ ⁄ω⁄ ⁄ ⁄)⁄

    2020-01-07
    1
收起评论
24
返回
顶部