You want to program an app and then publish it in an AppStore of your choice. You want to do that as soon as possible of course, right? Who has time to watch long tutorials and then deal with problems that were not described in the tutorial?. In this article you will learn everything you need to know to take the next step towards your first own app. What you need to learn? Which platforms to consider? Can you simplify your work and if so, how?? No matter if you already have programming experience or not. You are in a hurry? Then take a look directly at this article about Apache Cordova.
What are Apps?
Apps are actually ordinary computer programs, but run on a mobile device. These have the special feature of being able to access the sensor technology and hardware of the device. For this purpose, the manufacturers provide so-called programming libraries. This makes it relatively easy (relatively, because you have to build up technical understanding) to use the hardware in your own app. One feature that stands out in apps is the touchscreen. Programmers need to design their apps to be used across a small screen or even a large screen. Websites and app must adapt to the size of the bidlschirm. If this is fulfilled an app or a website is responsive. Nowadays this requirement is actually quasi-standard. App creation can be done by anyone who has learned programming and is learning app development technologies. However, there are also a few differences here, because depending on the manufacturer and operating system, you actually have to write your own app.
For which platforms can you develop apps? What to consider?
Writing an app and then making it available for all devices is unfortunately not as easy as you might think. Because manufacturers program different operating systems that are not compatible with each other, you have to learn a different programming language and a different programming environment for each manufacturer. For a beginner this is a bitter pill to swallow, as you want to cover as many areas as possible with your first app. There is one more way, which you will learn later in this article. Let’s move on to the individual manufacturers:
Google’s Android is one of the most used operating systems for mobile devices. Many manufacturers like Samsung, HTC, etc. produce their devices with Android. There is the so-called Play-Store directly from Google where you can find the apps and install them on your own device. There are even more stores where you can get apps. Most manufacturers have their own store and even big companies like Amazon have their own stores for apps. To publish an app in such a store you have to register as a developer. At Google it costs a one-time fee and then you can offer your apps there for download or for sale. If you sell your app, the store operator usually keeps a small commission. To develop for the Android platform you need Java knowledge and the Android SDK. Once you have that installed, you can basically get started.
Apple’s iOS is the operating system for the iPhones, iPads and iPods (and whatever else is mobile with i. from Apple there). There is no manufacturer that uses this operating system, except Apple itself. The apps are available via the so-called AppStore or the. iTunes. To add apps to this store you also need to register as a developer (Apple Developer Program) and pay an annual fee for it. Also there are commissions to Apple when selling apps. To develop the apps you need an Apple computer with Mac OSX, because only on this computer the programming environment XCode runs. You can program the whole thing now either with Objective-C or the new Apple-own programming language Swift. Unfortunately, you can’t get around your own Mac if you want to develop with these languages. There are possibilities to run the operating system without a Mac, but this requires a lot of technical know-how. Thus, the entry at this point is quite expensive, if you have never dipped into the Apple environment.
But there are other players on this market as well. There are different operating systems from Blackberry to Windows Phone. All have their own programming environment, use a different programming language and also have their own stores in which the apps are offered.
What do I have to learn?
So many different manufacturers, programming languages, operating systems, there is even the professional quickly dizzy. Every language and library is built differently and in principle you have to consider special features everywhere. Apart from that, you should have the devices on site for testing purposes. If you want to get into development, but you are a complete beginner in programming, you will have to learn a programming language. We will come to that in a moment. First of all, you should get to know the differences in the apps themselves.
Native apps are written with the programming language of the manufacturer, see the section about platforms. First of all you have to learn how to program and this is best done in the language you want to program an app for. For each platform the respective language and environment. Whether this work is worth it is another question. That must be quite worthwhile.
Building block apps
In the meantime there is a huge offer of so called app construction kits. You click together the app instead of programming it. There is something similar for websites. Most construction kits cost a monthly fee. However, the range of functions of such apps is limited. As soon as you want to do more special things, you either have to order the special development from the provider (which can be very expensive) or you start again from 0 and have to program the whole thing yourself again. For very small standard things it works, but can quickly end in double effort.
Web Apps (or HTML5 Apps)
Can I offer my app on the computer/notebook as well??
In the native area there is actually a clear no. Maybe it’s possible to run an iOS app on a Mac, but I don’t know of anyone who has tried that. That means, if you want to code an app, which can be used on the "big" computer, too, in case of doubt Computer should use, you should additionally look for a programming environment, beside which you can also write your apps. Right, one more programming language/programming environment and everything that goes with it.
Wouldn’t it be ideal if you could create all programs with only one language? For the beginning this is a great thing, but it has to be said, as soon as it gets special or the performance requirements increase, you should find enough manpower and develop natively.
That means I have to write everything twice? I have to choose a platform?
Soundboard as Android App
Soundboard in the browser as a webapp
With a strong developer team it is surely no problem to write certain things for the respective platforms twice. Now a beginner doesn’t have a 5-person crew. So you are faced with the choice. Your apps should run on all platforms, so to speak
3 times learn and write. Or you make the app only for one platform. Or you can learn Apache Cordova and get a whole lot for starters
given. The finest: You develop your webapp normally on the computer and can test all the features without the need for a mobile device. Only when you start customizing for the mobile version, you use the emulator or download your app to the smartphone. And when you are done, you have an app for mobile devices and an app for the computer. I have prepared an example, here you can see a soundboard which I have developed for my club and the android version.
Can I make money and get rich with my first programmed app??
Even though I know and love the motivation you have at the beginning. But unfortunately, it must be said at the beginning that the first programs will not convince you. My advice: don’t start directly with your fat idea, because it will quickly slay and paralyze you. Start with small mini-projects, like e.g.B. in our tutorials. Only then take a tiny little functionality from your idea that you actually want to program and implement this mini-function in a separate program. This is the only way to increase the chance to get some money for your app. The whole thing with marketing etc. not included.
That’s what you need to get started and that’s how you get started: