Ready to make your own app? Good news: programming in general, and app-making in particular, is much easier than it used to be. Many tools have been developed to help you turn your ideas into reality.
- Integrated Developer Environments. This might go without saying, but you need to compile code to make apps. You can both write and compile code in free Integrated Developer Environments. Among them are Xcode, for iOS, Eclipse, for Android, and Visual Studio Express, for Windows Phones. More advanced developer apps can be had for a modest price, but are not necessary. All these apps contain virtual phone programs to test your apps. That way, you do not need a device of each OS in order to accurately test your apps.
- Specialized Developer Environments. These are particularly common for games. Game designers can benefit from vastly simplified, and very user-friendly, developer environments tailored to producing games for apps. For 2D, a popular choice is Construct 2, while the rising star of 3D game app development is Unity.
- Source Code. A huge amount of back-end coding in apps is identical. All social media apps need a way to send and receive information from a server. Most games need systems for recording points, achievements, and progress. Most business apps need to sync with a central server as well as with the location data of a device. All of these tasks have already been accomplished, incredibly efficiently, thousands of times. Why do it again? You can buy perfectly functional source code to do any or all of these tasks. A good list of online source code vendors can be found here.
- Graphics Software. You will need to make some graphics for your apps, either in 2D or 3D. For 2D, the best programs are professional drawing and editing software, like AutoCAD or Adobe Photoshop. However, you can get the core features of each for free in programs such as InkScape and Gnu Image Manipulation Program. For 3D graphics, the industry standard is the expensive Autodesk Maya 3D, but a less-user-friendly, more-wallet-friendly program called Blender.
- Sound Editors. Although many public domain sound effects are available, they may have to be filtered and edited to give your app a more unified and pleasant sound profile.