14. Interface and Application Programming - David Vaughn and Angelina Yang¶
Assignment¶
-
Compare as many tool options as possible.
-
Document your work on the group work page and reflect on your individual page what you learned.
Processing¶
Processing is a simplistic and flexible Java-based programming application that primarily focuses on the creation of visual and/or interactive media. Originally inspired by earlier languages such as BASIC and Logo, it serves as an “alternative to proprietary software tools with restrictive and expensive licenses, making it accessible to schools and individual students.”
Primary use: Creating visual media and effects on-screen, using the Java language
Processing: Pros¶
-
Simple and intuitive user interface
-
Open-source, free to use
-
Easy-to-navigate shortcuts with a multitude of versatile tools (Reference)
-
Additional features such as code highlighting, autocompletion, and visual debugger included
Processing: Cons¶
-
Poorly integrates other programming languages/systems
-
Though it can be used to create various software, it lacks direct hardware support
-
May not be suitable for all types of projects (i.e. machine learning) beyond visual projects
MIT App Inventor¶
MIT App Inventor is “an intuitive, visual programming environment that allows everyone – even children – to build fully functional apps for Android phones, iPhones, and Android/iOS tablets.” Additionally, it uses block-based programming to expedite app-building.
Primary use: creating complex, high-impact apps using block-based coding
MIT App Inventor: Pros¶
-
Open-ended learning that supports creativity
-
Runs on various devices - phones, tablets, laptops, etc.
-
Relatively easy to use
MIT App Inventor: Cons¶
-
Variety of tools that could be overwhelming to younger students
-
Can have limitations compared to traditional app-design applications