Home  >  Article  >  Backend Development  >  How to choose between python and scratch?

How to choose between python and scratch?

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼Original
2019-06-15 13:31:476395browse

What is Scratch? What is python? How should we choose when studying?

Related recommendations: "python video"

How to choose between python and scratch?

##Scratch

Scratch programming language It is a visual programming language developed by MIT and Google for children aged 5-12. Just using the mouse, students can write their own storybooks, cartoons or mini-games.

The advantage of Scratch software is that it is easy to learn and has powerful functions, which helps children to give full play to their imagination. In the process of hands-on creation, their learning enthusiasm, imagination and creativity will be greatly improved. Exercise, you can easily create interactive storylines, animations, and games with it. In the Scratch class, children will not only learn how to write programs, but also learn about Science, Technology, and Engineering. ), Arts (art), Maths (mathematics) and other fields of knowledge. This language has gradually been incorporated into school-based textbooks, and is of course also a necessary part of the construction of some innovation laboratories.

Scratch is not only supported by MIT, but Harvard University has also joined the Scratch educator training, committed to cultivating more young teachers and innovative courses who use Scratch to teach.

For the children we are targeting, Scratch skips the complicated concepts and syntax in high-level languages, and uses graphical representation and drag-and-drop interaction to complete the core logic of programming and deliver results. It can solve the problem of too steep learning curve, make the learning process less boring, and get more timely feedback on results, which is very suitable for their mental level and cognitive ability at this age.

As for why we should start with Scratch as a ladder and then slowly transition to high-level languages, let us take a look at the characteristics of children.

Jean Piaget (1896-1980), the most influential Swiss child psychologist in modern times, divided the cognitive development of children into four stages according to age. At the same time, this also constituted The theoretical basis for our L0-L5 course design:

The sign of the pre-operational stage is the emergence of symbolic functions. Children's language ability at this stage, as well as their ability to "pretend" to imagine a stick as a gun during play, are all manifestations of symbolic function.

But children in the "pre-operational stage" have limited understanding of logical operations such as conservation and reversibility.

In the "concrete operations stage", children have rapidly acquired cognitive operation abilities and can use these important new skills to think about things. Concrete operational thinking is manifested in the understanding of conservation, the understanding of relational reasoning, and the understanding of the order of operations. However, children's thinking in the concrete operational stage is limited because they can only apply operational schemas to real or imaginable things, situations or events.

Therefore, in programming education, children are often not directly exposed to the concepts of logic and relational reasoning as early as the late "pre-operational stage". Rather, it allows children to understand basic cause-and-effect relationships through sequences.

At the same time, since the thinking of children in the "concrete operation stage" can only be mapped to specific things, the abstract logic, language and teaching methods in high-level programming languages ​​are difficult to be accepted by children at this stage. Scratch solves this problem very well. In Scratch, through the visual "building blocks" form, children can easily associate concrete results with programs, which can effectively avoid the low-feedback learning process of high-level programming languages ​​such as C and C.

After you develop your interest, try to learn a real programming language, such as Python, C, etc., try to write some software, and initially learn algorithms, data structures, and object-oriented programming.

So for children, Scratch's visual language can very well help students learn basic logic, relational reasoning, and mathematical concepts, while avoiding premature exposure to abstract concepts that can only be understood after the "formal operation stage" Deductive reasoning.

python

Python is a high-level scripting language that combines interpretation, compilation, interactivity and object-oriented.

Python is designed to be highly readable. Compared with other languages, it often uses English keywords and some punctuation marks in other languages. It has a more distinctive grammatical structure than other languages.

Python is an interpreted language: This means that there is no compilation link in the development process. Similar to PHP and Perl languages.

Python is an interactive language: This means that you can execute code directly from a Python prompt >>> .

Python is an object-oriented language: This means that Python supports object-oriented style or programming techniques in which code is encapsulated in objects.

Python is a Beginner's Language: Python is a great language for beginning programmers, supporting a wide range of application development, from simple word processing to WWW browsers to games.

Features

1. Easy to learn: Python has relatively few keywords, a simple structure, and a well-defined syntax that is easy to learn It's simpler.

2. Easy to read: Python code is more clearly defined.

3. Easy to maintain: The success of Python is that its source code is quite easy to maintain.

4. An extensive standard library: One of Python’s biggest advantages is its rich library, which is cross-platform and compatible with UNIX, Windows and Macintosh.

5. Interactive mode: Interactive mode support, you can enter the language to execute the code from the terminal and get the results, interactive testing and debugging code snippets.

6. Portable: Based on its open source nature, Python has been ported (that is, made to work) to many platforms.

7. Extensible: If you need a critical piece of code that runs very fast, or want to write some algorithms that you don’t want to open up, you can use C or C to complete that part of the program, and then start it from your Python called in the program.

8. Database: Python provides interfaces to all major commercial databases.

9.GUI programming: Python supports GUIs that can be created and ported to many system calls.

10. Embeddable: You can embed Python into a C/C program, allowing users of your program to gain "scripting" capabilities.

Summary

Divided according to age structure, whether to learn Scratch language or python. If you are a child between 5 and 12 years old, it is recommended to learn Scratch first, and then contact Python after you have the ideas and foundation of programming. Of course, those with outstanding learning abilities can also contact Python in advance. If you are older than 12 years old, it is recommended to learn python.

The above is the detailed content of How to choose between python and scratch?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn