When comparing Scratch vs Melharfi, the Slant community recommends Scratch for most people. In the question“What are the best 2D game engines?” Scratch is ranked 79th while Melharfi is ranked 104th. The most important reason people chose Scratch is:
Code is represented as [visual building blocks](http://www.instructables.com/id/How-to-use-Scratch/) that makes it easy to understand how a program is put together.
Ranked in these QuestionsQuestion Ranking
Code is represented as visual building blocks that makes it easy to understand how a program is put together.
Pro Great starting point for kids
Scratch was developed specifically for kids ages 8 and up as an exciting way to introduce them to technology. It's designed to be easy to learn, but still provides good depth in computational thinking.
Pro Easy to learn
Scratch is designed to teach computational thinking rather than focus on specific syntax. It was designed specifically to be easy to learn for anyone over the age of 8.
Pro No need to be able to type
Pro Can be used to create games
Pro Highly structured
The language is highly structured. Therefore, it gives you the essentials of how to think like a programmer and teaches you good programming practices from early on, so you could write clean, working and readable code in the future.
Pro Mouse events built-in
All objects/graphics have a mouse events like MouseClic MouseDoubleClic MouseDown MouseUp MouseOver MouseMove MouseOut
Pro Network support
Lidgren Network Library
Pro Path finder built-in
Uses the A* algorithm or pathfinding
It use a GDI to draw on windows forms. You can use all windows self GUI (controls) for your game like TextBox, Button Label ..., you don't need to install a third party or use an ugly controls.
Con Does not teach you programming
Learning Scratch might help you if you have high difficulty with logical thinking. However, starting with a proper programming language, especially an easy one, will give you the benefits of starting with something like Scratch and everything else.
Con Won't get you a job
Scratch is not a language used in the workplace. Instead it teaches computational thinking, helping to create a foundation to aid in learning other languages.