Lecture1.pdf
Document Details
Uploaded by Deleted User
Full Transcript
Mobile Application Lecture 1 College of Science Suhail M. Abdulrahman Computer Science(5th Semester) [email protected] What is an electronic device? ▪Electronic devices are physica...
Mobile Application Lecture 1 College of Science Suhail M. Abdulrahman Computer Science(5th Semester) [email protected] What is an electronic device? ▪Electronic devices are physical devices that use electronic circuits and systems to process information, perform tasks. ▪Here are examples: 1. Smartphones 2. Computer 3. Tablets 4. Televisions 5. Digital Cameras 6. Smartwatches 7. Audio Devices What is a smartphone? ▪A smartphone is a type of mobile phone that goes beyond basic calling and texting. It's like a mini-computer that fits in your pocket. Smartphones can connect to the internet, run apps, take photos, play music and videos, and do lots of other cool stuff. ▪Here are examples of smartphones from various manufacturers: 1. Apple iPhone (e.g., iPhone 13, iPhone 13 Pro) 2. Samsung Galaxy series (e.g., Galaxy S21, Galaxy Note series) 3. Google Pixel phones (e.g., Pixel 6, Pixel 6 Pro) 4. OnePlus phones (e.g., OnePlus 9, OnePlus 9 Pro) 5. Xiaomi phones (e.g., Xiaomi 11T, Xiaomi 11T Pro) 6. Huawei phones (e.g., Huawei P50, Huawei Mate series) What is Operating System? ▪A operating system (OS) is software that allows smartphones, tablets and other devices to run applications and programs. A mobile OS provides an interface between the device's hardware components and its software functions. ▪Here are examples of mobile operating systems along with the devices they work on: 1. Android: (Samsung, Google, OnePlus, and many others). 2. iOS: (iPhones and iPads). 3. HarmonyOS: (Huawei smartphones, tablets, smartwatches, and other Huawei devices). 4. KaiOS: (like Nokia, JioPhone, and other budget-friendly devices). 5. Windows Phone (Windows 10 Mobile): (Windows-based smartphones) What is a Mobile APP (Mobile Application)? ▪A mobile app (or mobile application) is a software program designed to run on smartphones, tablets, and other mobile devices. Mobile apps are typically downloaded from app stores (like Apple's App Store or Google Play) and installed on the device. ▪Mobile apps are sometimes categorized according to whether they are (web-based, native, hybrid and cross platform) apps. Mobile app Challenges ▪Diversity of System Availability and Users: Dealing with various operating systems and user preferences. ▪Diversity in Hardware Types: Addressing different hardware specifications for various Android devices. ▪Security Concerns: Protecting user data and ensuring app security against potential threats and cyberattacks is a critical challenge. ▪Battery Usage and Functionality: Creating an app that works smoothly without using too much battery. Comparison of Mobile App Development approaches Aspect Native Apps Web-Based Apps Hybrid Apps Cross-Platform Apps Developed for specific Combine web Built using frameworks platforms using Accessed via web browsers Development technologies within a for code deployment platform-specific using web technologies. native container. across platforms. languages. Performance might not Offers high The performance of the app Aims for near-native be as high as fully performance and might different and it could performance and Performance native apps but more access to all device have limited access to device access to device accessible features features. features. features. than web-based apps. Separate codebases Single codebase for Single codebase accessible Single codebase used Codebase required for different deployment across across platforms. for multiple platforms. platforms. various platforms. iOS apps (Swift, Websites accessed via mobile (frameworks: React Examples Objective-C), Android browsers(framework: (framework: Ionic) Native, Flutter) apps (Java, Kotlin) AngularJS (Angular)) Before we dive deeper What is a platform? A platform is the environment where software runs or is made. It includes the hardware and software that allow apps to work. Platform Language IDE Android Java, C, C++, Kotlin Android Studio Blackberry Java Blackberry JDE, Eclipce iOS Objective-C, Swift XCode, AppCode Windows Phone C#, VB, C, C++ Visual Studio Cross-App Platform Framework What is a cross-app platform? ▪Cross-platform app development frameworks allow developers to develop mobile applications that are compatible with more than one operating system; in this case, iOS and Android. ▪It provides them with the ability to write the code once and then run it anywhere for other platforms, thereby enabling them to release a product/software faster, safely, and with lower efforts. Top Cross-Platform App Frameworks ▪There are several cross-platform app frameworks out there, each with their own set of pros and cons. 1-React Native: ▪ Developed by Facebook. ▪ Uses JavaScript and React to build native-like user interfaces. ▪ Popular for its performance and ability to reuse components. Top Cross-Platform App Frameworks(cont.) 2-Flutter: ▪ Developed by Google. ▪ Uses Dart programming language and provides a rich set of pre-designed widgets. ▪ Known for its expressive UI and fast development cycle. 3-Xamarin: ▪ Developed by Microsoft. ▪ Uses C# and.NET framework. ▪ Offers native-like performance and access to native APIs. Top Cross-Platform App Frameworks (cont.) 4-Ionic: ▪ Built on top of Angular and Apache Cordova. ▪ Uses web technologies (HTML, CSS, JavaScript). ▪ Suitable for creating web-based mobile apps. 5-Unity: ▪ Primarily used for game development. ▪ Supports cross-platform development for mobile, desktop, and web. ▪ Uses C# for scripting. ANY QUESTIONS?