It is safe to say that software development in general is an area of information technology that has a wide range of fields that are rapidly growing. Today, I will introduce you to the field of Mobile Web Development.
_ Mobile vs. Web_
Mobile Web Development and Web Development are two completely different branches of software engineering both requiring a different skillset, but the overall goal of both is to develop useful and functional applications for the user. The platform that these applications are built on, and for, are how these two branches differ the most. Web development is platform independent while mobile developers have to utilize platform specific languages to create there applications.
Web developers usually focus on making website or web-apps that can be accessed on any device that has a web browser. People in this field most most commonly utilize languages like Javascript, CSS and HTML to make there web application look good and work efficiently.
Mobile developers utilize these languages as well but they also use platform specific languages, usually for developing apps for the Android and IOS operating systems.
Platform Specific?
What does platform specific mean? A platform specific language builds apps natively for an operating system like the IOS operating system for Apple or the Android operating system for Google. These native applications are developed using Software Developing Kits(SDK's). An SDK is basically a toolbox that is given by a platform that has everything a developer would need to build an application, on that specific platform, efficiently. The contents of an SDK usually include compilers, debuggers, sample code and anything else a developer may need to help interact with a certain devices hardware and software. For example, Apple has the IOS software developing kit (Xcode) which supports Swift and Objective - C. Google has the Android software developing kit (Android Studio) that supports Java and Kotlin. Both allow developers to use specific device features to help work with the operating systems components.
_Android_and IOS
The original language for Android was Java and it is still used today but Kotlin is the preferred language for Android application development now. The original language for IOS is Objective-C and is still considered a standard for Apple today but another language, Swift, was introduced by Apple in 2014 and is used widely today in Apple application development.
Both Kotlin and Swift were made to simplify mobile app development with easier to read code, better performance and a more modernized look compared to older languages.
Here are two simple examples of greet functions in both languages to show the difference between them then and now.
For Apple OS:
Objective - C
- (void)greetUser:(NSString *)name {
NSLog(@"Hello, %@!", name);
}
Swift
func getUser(name: String){
print("Hello, \(name)!")
}
For Android OS:
Java
public void greetUser(String name) {
System.out.println("Hello, " + name + "!");
}
Kotlin
fun greetUser(name: String) {
println("Hello, $name!")
}
Today, many developers choose to develop apps for Android over IOS mainly because a large majority of smart phones run Android OS; but also because the Google Play Store (The official app store for android devices), has less restrictions than the Apple App Store which would make for less draw backs for developers during the application submission process.
Mobile
While both web developers and mobile developers strive to make more efficient and and user friendly applications for the user, the way in which these applications are made is unique to one another. Mobile developers have to integrate both user experience and platform specific languages to develop optimal apps for device specific performance. This allows for a bit more range of creative freedom in the development process, and it allows for the ability to add built in functionality for things like the camera, which is on most mobile devices but you wont see on every web desktop. Mobile devices are also more widely used on a daily basis, so the function of these applications need to be seamless.
From idea to launch, the process to make a mobile app usually encompasses three main goals: User interface(UI) and user experience(UX), backend development and quality assurance. I wont break down the full deployment process of making a mobile app; but these three main goals significantly effect the success and cost of an app. The cost of fully developing even a simple mobile app from idea to actually seeing it in an app store is around $10,000 - $100,000+. Today, most people (users), spend a lot of time on mobile devices so there is a demand to make engaging apps as well as innovative ones; so mobile development is more than just a skill but a chance to creatively shape how we all communicate and interact with each other.
- https://www.linkedin.com/pulse/mobile-vs-web-development-2024-key-differences-weaoc
- https://www.ibm.com/think/topics/mobile-application-development
- https://www.geeksforgeeks.org/mobile-computing/what-is-mobile-app-development-process/
- https://reactnative.dev/docs/platform-specific-code
- https://www.synapseindia.com/article/native-vs-hybrid-vs-pwa
- https://www.w3schools.com/kotlin/trykotlin.php?filename=demo_output
- https://en.wikipedia.org/wiki/Android_software_development
- https://www.cometchat.com/blog/ios-swift-objective-c-comparison
- https://thisisglance.com/blog/apple-store-vs-google-play-store
- https://www.ibm.com/think/topics/api-vs-sdk
- https://developer.apple.com/xcode/
- https://developer.android.com/studio
Top comments (0)