当前位置:首页 > 编程实例 > 如何从Scratch升级到Python

如何从Scratch升级到Python

Scratch的限制性在哪里

Scratch青少年编程学习培训一年后,小孩我觉得就能够 转到代码编程的学了,但许多少儿编程培训组织期待增加小孩图象乐高积木块计算机语言的学习培训周期时间,将程序编写和课程密不可分捆缚,用父母的课程抑郁给编程学习续命,它是典型性的商品逻辑思维融合销售市场逻辑思维。  

但从文化教育自身看来,这种行为牵强附会了。  

人们觉得,小孩子学编程能够 提高他的学习兴趣和工作能力,确实会功效到小孩别的课程学习培训的全过程中,但根据程序编写写1个程序流程来记忆力唐诗宋词,却舍本逐末了。  

程序流程给小孩产生的感受和语文课是不一样的,小孩将会会心血来潮试着着将2个课程融为一体,它是他自身的造就,出示Scratch小工具反倒会毁坏这一造就的成效。  

举例说明,给100个小孩讲《白雪公主和七个小矮人》的经典故事,随后让小孩画白雪公主,会造就出100个白雪公主的模样;但给100个小孩看《白雪公主和七个小矮人》的动画电影,小朋友们画的白雪公主会各有千秋,因为设计精湛的小工具限定了小孩想像力和想像力的发展趋势。

img


python是什么

Python 是由 Guido van Rossum 在80年代末和90年代初,在西班牙國家数学课和电子信息科学研究室设计构思出去的。 Python 自身都是由众多别的語言发展趋势而成的,这包含 ABC、Modula-3、C、C++、Algol-68、SmallTalk、Unix shell 和别的的开发语言这些。 像 Perl 語言相同,Python 源码一样遵照 GPL(GNU General Public License)协议书。 如今 Python 是由1个关键开发设计精英团队在维护保养,Guido van Rossum 依然占有着尤为重要的功效,具体指导其进度。


python学习的重要性

  • 1.易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单。

  • 2.易于阅读:Python代码定义的更清晰。

  • 3.易于维护:Python的成功在于它的源代码是相当容易维护的。

  • 4.一个广泛的标准库:Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好。

  • 5.互动模式:互动模式的支持,您可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片断。

  • 6.可移植:基于其开放源代码的特性,Python已经被移植(也就是使其工作)到许多平台。

  • 7.可扩展:如果你需要一段运行很快的关键代码,或者是想要编写一些不愿开放的算法,你可以使用C或C++完成那部分程序,然后从你的Python程序中调用。

  • 8.数据库:Python提供所有主要的商业数据库的接口。

  • 9.GUI编程:Python支持GUI可以创建和移植到许多系统调用。

  • 10.可嵌入: 你可以将Python嵌入到C/C++程序,让你的程序的用户获得"脚本化"的能力。

    img

为什么要从Scratch升级到Python

使用有视觉反馈的项目来学习编程是比较受欢迎的做法。初学者一开始对程序的执行细节和计算机科学或编程语言理论通常兴趣不大,强迫他们从知识的细枝末节开始恐怕不是什么好主意。让他们real playing通常是好的起步(Alan Kay的建议)。

我赞同OnlinePythonTutor项目作者Philip Guo教授在为什么Python对于基础编程课程中的初学者来说是一门很棒的语言(目前已经由CodeLab Mindstorms翻译)开头提到的:

我坚信大多数入门学习者根本不关心计算机科学或编程语言理论,他们只是想让计算机简单运行一下他们的代码,而不必大费周章写一堆样板代码。需要编写的代码越少,可能遇到的bug和错误就越少; 而遇到的bug和错误越少,他们就越不容易在入门之初因为沮丧而放弃编程。

img

Play是什么?

在这个意义上,对于入门Python,Play是个不错的项目,它宣传自己是:

使用Python制作游戏和图形项目的最简单的方法 Python Play是新手新手入门图型程序编写的极佳挑选。它被设计为具有与MIT Scratch相似的命令和简易性,并且与Pygame,Arcade或Pygame Zero等项目不同,因为它不需要一堆样板代码,且具有易于理解的命令(像易于阅读的英文)和直观的API。

Play不仅适合于入门图形编程,对于入门Python这门语言也是很合适的。

从Scratch过渡到Python

图形化编程(Scratch)过渡Python,是国内少儿编程教育中,备受关注的一个问题。随便挑一家国内做少儿编程的公司,看看他们从图形化过渡到代码的编程体验就知道大家做得有多糟糕,而且糟糕得千篇一律。

尽管我不认为图形化编程(Scratch)过渡Python这种过渡是必要的,但我也不反对,我的看法在使用Python拓展Scratch的能力做过表述:

事实上,我不认为这种过渡是必须的。当然我也并不反对从图形界面过渡到代码。如果这种过渡是必要的,我希望它们是渐进的,而不是割裂的,否则就不叫过渡了。初学者熟悉scratch,也喜欢它,我知道大多数使用scratch的孩子,对它的好感大都胜过文本语言。你不必抛弃scratch,如果你需要一些更强大的功能,使用Python去扩展它,这个过程应该很愉快,你写了很少的Python代码,立马就能应用到你喜欢的Scratch项目上,你看到你逐渐能做更多有趣的事,你感到充满乐趣,所学的新知识,立马应用在你感兴趣的项目里。

以上观点我们通过CodeLab Adapter已经将其践行:我们打通了Scratch3.0和Python,使其两者能彼此增强,而不是割裂式的切换或者只是做个语法翻译。

我们将play也视为图形化编程(Scratch)过渡Python这个问题下一个有趣的套索。

官方示例

最后来看一下官方示例,结束本文:

# pip install replit-play
import play

cat = play.new_text('=^.^=', font_size=70)

@play.repeat_forever
async def move_cat():
   cat.x = play.random_number(-200, 200)
   cat.y = play.random_number(-200, 200)
   cat.color = play.random_color()

   cat.show()

   await play.timer(seconds=0.4)

   cat.hide()

   await play.timer(seconds=0.4)

@cat.when_clicked
def win_function():
   cat.show()
   cat.words = 'You won!'

play.start_program()



除特别注明外,本站所有文章均为趣味编程网-少儿编程_儿童编程学习班教育指定趣味学习网站!原创,转载请注明出处来自http://airboxs.com/post/10.html