Since mobile devices have limited resources, like power and processor availability, heavy processing should be left to the server.
There are certain features like backups and cron jobs which are simply not reliable on a mobile device because your app can be compromised and deleted at any time by the OS.
Any secure data needs to be handled with on the server. This is important because any data being handled in the front-end applications is open for manipulation. This includes not leaving important keys, certificates etc on your app.
Push Notification is one such example. Although it is possible to send push notifications from an iOS app to another iPhone, you will need to include the push certificate and private key in the app bundle. This is not a secure place to keep such a private key and you definitely don’t want your app’s push certificate to leak.
As all the code is on single machine it is easier to update or make any changes to the application whereas in Client Side Applications we have to update all the applications on each client machine. This saves a lot of cost and effort. For iOS/Android this would mean releasing an update on the app/play store and how do we account for users who do not update their apps ?
Ok, now that we have established the importance of server side applications. Let’s move on to getting a good overview on how server side development actually works.
In this blog post we have enlisted a few reasons why understanding server side development is important for mobile app developers. If you disagree with the points mentioned or if you have something more that can be added to this list, do leave a comment below.
Add backend APIs to your apps in minutes with the Hasura platform. Check it out here: https://hasura.io