为什么说Python是伟大的入门语言

正文共2038个字,2图,预计阅读时间8分钟。

本文作者列举了一些Python特性,并认为Python是最适合入门的编程语言,一起来看一下。

最近发表了三篇关于我的艺术史背景是如何影响我教学的文章。现在要分享一篇,为什么Python对于青少年和成年人是入门语言的最佳选择。

伟大的入门编程语言有什么特征呢?或者换一种方式问,“当我们教他们编程时,应该给予他们什么?”对于成年人和青少年学生,我认为以下五点非常重要。

学生从入门语言获得的五样东西

非常棒的首次体验,就像一本书的第一页,首先需要“入迷”,学习新知识不可避免的会遇到挫折,但要有持续的热情和好奇心,这对于那些从未接触过编码的年轻人来说是至关重要的;

Web编程的能力,对于职业发展和程序工艺来说,Web编程越来越重要,学生有机会就应当掌握一定的Web架构基础;

桌面编程能力,尽管将来趋势将更多的转移到Web应用上,但没什么能比开发和运行一个本地程序来的直接;

有市场的职业技能,尽管在学术和业余编程中已经非常出色,但教授学生的技能在职业环境中也应该能派上用场;

社区支持和轻松的语言环境,这里再一次强调,对于那些从未接触过编码的年轻人来说是至关重要的。

一些老师或者学生可能不同意这些作为入门语言的必要条件。但我的观点和经验是,没有任何一门语言能像Python一样做到以下五点。

非常棒的入门体验

按照惯例,用户写的第一个程序是打印“Hello World”。在所有实现“helHello World”程序的语言中,Python可以说是最简单的。只需要在Python编译器中简单的输入以下这些,然后按下回车。

Python代码

1Interactive Python Console
2>>>print("Hello World")
3Hello World
4>>>

这个互动示例值得尝试!

Python代码的可读性使它成为入门语言的最佳选择,尤其是当它与语法冗长明显的Java语言对比时:

Python代码

1publicclassHelloWorld {
2public static void main(String[] args) {
3System.out.println("Hello, World");
4}
5}

编写以上Java代码后,还需要进行编译,然后在命令行运行。这些不可避免的流程让学生觉得编程困难。而那些输入 print(“Hello World”) 然后按下回车就能实现的学生,会有机会和信心学习更多。

web编程

Web上Python广为熟悉,不同于C.Frameworks这样的低级语言,而像Django,Pyramid和Flask,可以让学生创造出真正的Web应用程序,这类应用程序与他们每天使用的网站一样强大。Flask是我个人非常喜欢传播的语言,因为它与免费的Heroku账号组合,能让学生在一个小时之内部署他们自己的简易博客。添加一条web应用的响应路径也是如此简单。

Python代码

1@app.route("/about")
2defabout():
3returnrender_template("about.html", now=datetime.datetime.now())

这几行代码并不简单,但几次课程之后学生便可以自己理解。在信心和好奇的驱使下,学会以最基本的方式响应Web应用请求,也是巨大的进步。

桌面应用

专为Web设计的PHP和JavaScript语言限制了学生对Web的开发,然而Python在本地计算机开发同样广为熟悉。Pygame,wxPython和其他为桌面程序使用的开发库,让学生勇于建立和运行他们自己的桌面应用。Katie Cunningham写了一本我认为是关于Pygame教学的权威指南的书。我使用Pygame教青少年和毕业生开发桌面应用,乐趣多多。下面是一款被称为Starpusher的游戏,强烈推荐教学开发。

这款游戏可以从 pygame.org下载,或者从我Github的仓库获取,它也可以在Raspberry Pis平台上预装。

专业技能

不同于Scratch或者Logo语言教学,Python在专业和学术界有更广泛的用途。它是一门可以伴随学生开始和成长的语言。如果学习低级语言会发现Python与C紧密融合,而探索如Ruby的更高级语言会发现也能平滑过渡。如果想对Web应用程序进行更紧凑的控制将发现Javascript技术能与Python Web框架很好地结合在一起。倘若要探索像函数式编程的范例,会发现可以在不学习一门新语言的情况下实现。

然而最重要的是,开始编程时有更好体验的学生,会有足够的意愿和好奇心去发展最符合自己目标的专业技能。

社区支持

我之前写过如何让代码有内涵。学生参加社区交流会就是再明显不过的方法,我也常去参加。Python社区交流会必然最受欢迎,因为那是开始探索事物真相和接触未来挑战的绝佳场所。

样例实际发挥作用的部分是内置于Python的Turtle组件,它提供了简单有效的方式去教授抽象的Python基础知识。Turtle组件第一次被MIT’s Seymour Papert采用,后来到了1960年在设计Logo语言中得到进一步推广。这里可以看到2009年关于组件的最新特征介绍。Trinket使得Turtle组件更易使用和学习。更多信息可以查看我们主页上的交互示例。

原文链接:https://www.jianshu.com/p/90374fffd6fa

原文发布于微信公众号 - 人工智能LeadAI(atleadai)

原文发表时间:2018-05-29

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏CDA数据分析师

业界 | 为什么Jupyter是数据科学家们实战工具的首选?

大型综合巡天望远镜(Large Synoptic Survey Telescope,LSST)坐落在智利安第斯山脉帕穹山脊,计划 2022 年启用。它将自动探测...

10720
来自专栏Albert陈凯

大数据人工智能词汇索引TUVWXYZ大数据人工智能词汇索引

大数据人工智能词汇索引 T ---- T字节(TB: Terabytes):约等于1000 GB(gigabytes)。1 TB容量可以存储约300小时的高清视...

29160
来自专栏VRPinea

两周构建一个VR游戏?3D建模师使用Block和Unreal接受挑战

34350
来自专栏Spark学习技巧

编程语言排行榜:你选对了吗?

有人说程序员知识更新速度要很快,这是因为编程语言很容易就过时。这句话虽然有点绝对,但是也说明了热门的编程语言排行版一直在变。那么我们就来看一看编程语言排行,了解...

51770
来自专栏java一日一条

高级Java程序员值得拥有的10本书

Java是时下最流行的编程语言之一。市面上也出现了适合初学者的大量书籍。但是对于那些在Java编程上淫浸多时的开发人员而言,这些书的内容未免显得过于简单和冗余了...

9920
来自专栏技术小黑屋

计算机领域的日系书籍

在计算机的设计里,很多经典的书籍多为欧美人所撰写,毕竟他们占据了英语这个优势。这里的主题不是推荐英文书籍,而是推荐几本日系的计算机图书。

29630
来自专栏程序你好

2018年我应该学习Java吗

我应该学习Java吗?这是一个不断出现的问题。如果你刚开始是一个开发人员,如果你已经是一个前端开发人员,或者即使你是一个。net背景的人,很多人都想知道学习Ja...

25330
来自专栏Java架构

想进阿里、京东、美团面试的Java程序员看过来第一个问题:阿里面试问些什么

28660
来自专栏编程

无编程基础如何自学Python?前辈深剖学习方法 附入门视频

其实python非常适合初学者入门。相比较其他不少主流编程语言,有更好的可读性,因此上手相对容易。自带的各种模块加上丰富的第三方模块,免去了很多“重复造轮子”的...

265100
来自专栏程序员互动联盟

【编程技巧】如何学习一门编程语言

如果你有兴趣创建电脑程序,手机app,网站,游戏或者其他的软件,那么你应该很想学习怎么去创建它。程序是通过编程语言创建的,编程语言可以让程序运行与某个机器上,可...

39360

扫码关注云+社区

领取腾讯云代金券