Pete the Piranha Scratch Project: https://scratch.mit.edu/projects/317422602/
Compelled to do so by an assignment for my INT100 coursework, I created a relatively simple game in MIT's block language Scratch. The link to the project is above but I enjoyed making the game and it appears that my wife, kids, friends, and coworkers are all fans. So it's inspired me to recreate the game as a mobile app! Will provide more info on this as work on that app progresses.
Having made simple programs before, Scratch proved to be a bit of a headache at for two reasons.
Having made simple programs before, Scratch proved to be a bit of a headache at for two reasons.
- There’s a learning curve associated with the graphic user interface and the specific limitations of the language.
- Having to hunt for the appropriate block(s) when I could have typed out the code was frustrating.
How did I get around these issues?
These
difficulties were primarily solved by a thorough use of Google and Youtube, as
well as looking at projects that other people have shared. What I gained from
this experience were some insights into how modern games are coded and how
variables in the program are manipulated to provide some of the mechanics for
the game.
Assessment of the languages
It’s plainly evident that Scratch makes programming many simple
programs significantly easier. The exercises involving Python, named for Monty
Python, were my first real experience programming in the
language and, to be frank, it also took some getting used to. Given my recent
self-education in C++ and C#, the differences in syntax required constant attention.
That said, I would prefer Python over Scratch for most software development
projects given what I can only assume are numerous limitations that Scratch has
as a very high-level language.
The differences in these languages stem from the era of
their development. Machine language is a means of communicating with a CPU in
binary. Humans have had thousands
of years to develop languages comprised of thousands of symbols and phonemes in
order to communicate complex messages – while communication of this nature is possible in binary it is
very difficult. As such, Assembly language was developed to make it easier for
programmers to instruct CPUs in a human-readable manner.
Python is a comparatively new high-level
language which utilizes indentation, common amongst programmers for increased
readability, instead of curly-brackets to structure its programs and scripts
into blocks and it significantly easier to work with than Assembly language.
Scratch is a block programming language created to help children learn to break
problems into chunks of logic and apply that logic toward the creation of
programs – that is, to help children learn to think like programmers.
Machine code is used anywhere a traditional computer is
in use – higher-level languages are translated into machine code. This includes
assembly language which is typically found in drivers and the like. While you
could accomplish in assembly anything you could with higher level languages, it
becomes impractically long and difficult to debug. Python, on the other hand,
can be used to create desktop programs, web applications and more. Recently, it
has gained popularity as a language for data analysis. Scratch is useful for
its intended purpose – helping newcomers to the art of programming learn to
think in a way that enables them to create programs from code.
Which language is most popular? – That depends on how
popularity is defined.
Of those discussed, Machine language is certainly the
most omnipresent (as nearly all programs are eventually converted into those
ones and zeros), however Python is most likely to be selected for nearly any
software development project not requiring direct processor interaction. It’s
comparative ease of use without the limitations of a language like Scratch make
it ideal for most development (in comparison to the languages discussed
herein).
0 Comments:
Post a Comment