社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

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

CSDN • 8 年前 • 898 次点击  

作者 | Elliott Hauser

翻译 | 黑色巧克力


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


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


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


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


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

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

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

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

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


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



1. 非常棒的入门体验


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



这个互动示例值得尝试!


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



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


2. Web编程


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



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


3. 桌面应用


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



这款游戏可以从pygame.org下载,或者从我Github的仓库获取(https://github.com/silshack/starpusher),它也可以在Raspberry Pis平台上预装。


4. 专业技能


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


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


5. 社区支持


我之前写过如何让代码有内涵。学生参加社区交流会就是再明显不过的方法,我也常去参加(更多信息详见http://blog.trinket.io/art-history-programming-meetups/)。Python社区交流会必然最受欢迎,因为那是开始探索事物真相和接触未来挑战的绝佳场所。


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


使用Python教学吧!


我的下一篇文章会写关于Python教学的最好互动资源。同时我在下面列了一份清单,包括为初学者提供帮助的社区资源,以及其他讨论为什么Python是一门伟大的入门语言的文章,希望对你有所帮助!


  • Python软件基金会维护的新手教程指南,它们都有对新语言支持的特征。

        https://wiki.python.org/moin/BeginnersGuide

        https://docs.python.org/2/tutorial/index.html#tutorial-index


  • Python教育的特殊兴趣组

         https://www.python.org/community/sigs/current/edu-sig/


  • 公开于Python.org的系列优秀视听资源链接。

        https://www.python.org/doc/av/


  • 从Java转向Python的大学研究论文。非常感谢北卡罗来纳州州立大学研究生Michael Head的贡献。

        http://dl.acm.org/citation.cfm?id=1409847


  • 生活骇客文章写到Python在关于最好的入门语言读者投票中获得了第一。

        http://lifehacker.com/five-best-programming-languages-for-first-time-learners-1494256243/1497409477


  • Jessica McKellar最近PyTennessee的发言陈述Python学校教育事件,以及一些我们可以支持的特定的操作步骤。


  • Jessica McKellar最近在PyTennessee报告中陈述了Python教育在学校的情况,并指出我们可以采取一些具体行动步骤表示支持。

        http://web.mit.edu/jesstess/www/pytennessee_keynote.pdf


  • 你好世界程序讲述为什么Python是伟大的入门语言。

        https://thehelloworldprogram.com/python/why-python-should-be-the-first-programming-language-you-learn/


文中相关链接,可点击「阅读原文」查看。



原文
今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/weixin/0owLco81Uc
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/2031
 
898 次点击