Apps are an integral part of our life. With the introduction
of smartphones, tablets, phablets, and many more(it would be a really long list
to type) every user, who may not know anything about “behind the scenes” of an app development, feels an incomplete day without using them. We all are
attached to them, aren’t we?
If you want to know how to make one of your own then it’s
the perfect article for you. Well it’s not too easy as it looks as it involves
a number of steps which we will be dealing subsequently.
source: google images |
First of all, you
should expertise in a Server –Side Scripting language. Now elaborating “what’s
a Server –Side Scripting language”: When
the client uses a webpage containing server-side scripting to make a request to
the server, the server first processes the request and then renders the page or
process required. The scripting just tells the server what to do with a
particular kind of request, thus makes the webpages interactive. Hence knowing
the Scripting language in depth is important. Since, the whole processing
occurs on the server itself, it adds a security layer to the data and the
source code as well. There are various scripting languages available, they are:
.ASP, ASP.NET, Perl , .CGI ,.IPL, .Perl, PHP, JSP, Ruby, Python , C#, Node.js
.ASP, ASP.NET, Perl , .CGI ,.IPL, .Perl, PHP, JSP, Ruby, Python , C#, Node.js
After scripting instructs the server there is a need of
fetching data from the Database.
Thus, you should know about the handling of a database as a data storage
solution. A Database should be chosen on the basis of its ease of usage (user
interface), its integration with other technologies, scalability, efficiency
etc. You need to learn Relational Data-Base
Management System or SQL, as
they are suited for web development Such as:
My SQL: It is available with tons of help sources over the internet and a free community-version. It has two separate downloads : one for design and the other one for DBMS. Can run on all types of OS.
MS Access: Has only one packaged download but has limitations for OS, data handling capacity.
Microsoft SQL Server , Oracle Express Edition, DB2 Express C: has more or less same tools just differ in the SQL syntax.
Here is a complete list of RDBMS along with their description: https://database.guide/list-of-relational-database-management-systems-rdbms/
My SQL: It is available with tons of help sources over the internet and a free community-version. It has two separate downloads : one for design and the other one for DBMS. Can run on all types of OS.
MS Access: Has only one packaged download but has limitations for OS, data handling capacity.
Microsoft SQL Server , Oracle Express Edition, DB2 Express C: has more or less same tools just differ in the SQL syntax.
Here is a complete list of RDBMS along with their description: https://database.guide/list-of-relational-database-management-systems-rdbms/
Now, how the data is exchanged between a database and any
software accessing it? The answer is the functioning of an API (Application Programming Interface). Basically an API is an “interface”
which abstracts the underlying implementations and only provides the tools,
technologies, the developer needs for programming, thus simplifies the work for
application developers. There are many types of APIs such as Library and
framework, Operating Systems, Remote APIs, Web APIs etc. Here we would discuss
about Web APIs(it’s a Microsoft framework), which helps to process the
request-response cycle (The HTTP requests and the JSON or XML format response).
The web API helps the integration of multiple APIs. For more details https://en.wikipedia.org/wiki/Web_API
The whole development of the application takes place on a Back-end framework, which consists of
tools and the environment for building an application. There are separate
frameworks for each web-scripting language, like Rails for Ruby, Django for Python, Symphony, Laravel for PHP etc. A detailed guidance is given here
or https://medium.com/@shahroznawaz/best-backend-frameworks-to-build-your-next-web-application-2f89f08f34e3
Now, for everyone’s accessibility, the application should be
deployed on a Web Server. It
processes the HTTP requests and fetches the required web-page for the client. A
web host is a company that leases space on servers to serve the webpages. Apache, Apache Tomcat, Windows IIS, NGINX,
Oracle Weblogic are some of the known servers, Or you can learn about Cloud Hosting Service/ cloud computing integration. Instead of
using individual systems/servers we use virtual servers in cloud computing. The
three main types of cloud computing: Saas
(Software as a Service), Paas (Platform as a Service) and Iaas (Infrastructure
as a Service). Saas is for end-users and Paas and Iaas are for IT
personnels. Further details can be found on https://www.pcworld.com/article/253486/how_to_choose_a_cloud_hosting_service.html
There are some other terms which you need to be aware of:
Content management
system: It enable the creation, editing, modification of the web-content.
WordPress, Blogspot are the examples of it.
Git :The version
control system: It is built for collaborative development, keeping a track of
changes in the files. Thus it also helps in app-development if you are working
in a team or you need someone’s support for modifying or developing the code.
Ajax(Asynchronous
Java-Script and XML) : It is a technique or a concept rather than a
language or framework that allows you to update a web-page without reloading
the whole page. It saves time as network utilisation is minimised, thus makes
the application more user-friendly . It’s a recommended source to learn AJAX: https://www.w3schools.com/xml/ajax_intro.asp
*
Once you are ready with the app, “deploying it on the web”
is not equivalent to “your job is done”. Things to consider:
·
It should pass several tests first like performance test, usability test,
functional test, regression test, fit and finish test, User acceptance test,
Device compatibility test etc.
·
After deploying it to the cloud, web, submit it
to the app –stores.
·
You can keep a check off the crashes using the
tools Sentry, HockeyApp etc.
·
You can always use the modern analytics System
for better analysis of your app for further development and improvement.
Tutorials for learning app-development:
For Android: https://developer.android.com/guide/
http://www.anddev.org/
For iOS : https://appleid.apple.com/#!&page=signin
http://www.iphonedevforums.com/forum/
For Microsoft : https://mva.microsoft.com/training-topics/app-development#!lang=1033
Happy Learning!For Android: https://developer.android.com/guide/
http://www.anddev.org/
For iOS : https://appleid.apple.com/#!&page=signin
http://www.iphonedevforums.com/forum/
For Microsoft : https://mva.microsoft.com/training-topics/app-development#!lang=1033
Hope you enjoyed reading the article, please give your feedback in the comment section.
Comments
Post a Comment