Full Transcript

IT2115 Mobile App Development With.NET MAUI Fundamentals The process of software development is called the Software Development Lifecycle (SDLC). The lifecycle of mo...

IT2115 Mobile App Development With.NET MAUI Fundamentals The process of software development is called the Software Development Lifecycle (SDLC). The lifecycle of mobile development is not that different from the SLDC for web or desktop applications. The following are the five (5) phases of the mobile software development lifecycle: 1. Inception: All apps start with an idea. That idea is usually refined into a solid basis for an application. 2. Design: The design phase consists of defining the app's User Experience (UX), such as what the general layout is, how it works, etc., as well as turning the UX into a proper User Interface (UI) design. 3. Development: Usually the most resource-intensive phase, this is the actual building of the application. 4. Stabilization: When development is far enough, Quality Assurance (QA) usually begins testing the application and bugs are fixed. Often, an application will go into a limited beta phase in which a wider user audience is given a chance to use it, provide feedback, and inform changes. 5. Deployment: In this phase, applications and updates are delivered from developers to users..NET Multi-platform App UI (.NET MAUI) is a cross-platform framework for creating native mobile and desktop apps with C# and XAML..NET MAUI allows you to develop apps that can run on Android, iOS, macOS, and Windows from a single shared code-base. Figure 1..NET MAUI Supported platforms..NET MAUI provides a single framework for building the UIs for mobile and desktop apps. The following diagram shows a high-level view of the architecture of a.NET MAUI app. Figure 2. The.NET MAUI architecture 01 Handout 1 *Property of STI  [email protected] Page 1 of 3 IT2115.NET MAUI unifies Android, iOS, macOS, and Windows APIs into a single API that allows a write-once run-anywhere developer experience while providing deep access to every aspect of each native platform..NET provides a series of platform-specific frameworks for creating apps:.NET Android,.NET iOS,.NET macOS, and Windows UI 3 (WinUI 3) library. These frameworks all have access to the same.NET Base Class Library (BCL). BCL abstracts the details of the underlying platform away from your code. The BCL depends on the.NET runtime to provide the execution environment for your code. For Android, iOS, and macOS, the environment is implemented by Mono, an implementation of the.NET runtime. On Windows,.NET CoreCLR provides the execution environment. The various platforms have different ways of defining the user interface for an app, and they provide varying models for specifying how the elements of a user interface communicate and interoperate. You can craft the UI for each platform separately using the appropriate platform-specific framework (.NET Android,.NET iOS,.NET macOS, or WinUI 3), but this approach requires you to maintain a code-base for each individual family of devices. In a.NET MAUI app, you write code that primarily interacts with the.NET MAUI API (1)..NET MAUI, then directly consumes the native platform APIs (3). In addition, app code may directly exercise platform APIs (2), if required..NET MAUI Features.NET MAUI provides a collection of controls that can be used to display data, initiate actions, indicate activity, display collections, pick data, and more. In addition to a collection of controls,.NET MAUI also provides: An elaborate layout engine for designing pages. Multiple page types for creating rich navigation types, like drawers. Support for data-binding, for more elegant and maintainable development patterns. The ability to customize handlers to enhance how UI elements are presented. Cross-platform APIs for accessing native device features. These APIs enable apps to access device features such as the GPS, the accelerometer, and battery and network states. Cross-platform graphics functionality, that provides a drawing canvas that supports drawing and painting shapes and images, compositing operations, and graphical object transforms. A single project system that uses multi-targeting to target Android, iOS, macOS, and Windows..NET hot reload, so that you can modify both your XAML and your managed source code while the app is running, then observe the result of your modifications without rebuilding the app..NET MAUI provides cross-platform APIs for native device features. Examples of functionality provided by.NET MAUI for accessing device features include: Access to sensors, such as the accelerometer, compass, and gyroscope on devices. Ability to check the device's network connectivity state and detect changes. Provide information about the device the app is running on. Copy and paste text to the system clipboard between apps. Pick single or multiple files from the device. Store data securely as key/value pairs. Utilize built-in text-to-speech engines to read text from the device. Initiate browser-based authentication flows that listen for a callback to a specific app-registered URL..NET MAUI single project takes the platform-specific development experiences you typically encounter while developing apps and abstracts them into a single shared project that can target Android, iOS, macOS, and Windows..NET MAUI single project provides a simplified and consistent cross-platform development experience, regardless of the platforms being targeted..NET MAUI single project provides the following features: 01 Handout 1 *Property of STI  [email protected] Page 2 of 3 IT2115 A single shared project that can target Android, iOS, macOS, and Windows. A simplified debug target selection for running your.NET MAUI apps. Shared resource files within the single project. A single app manifest that specifies the app title, id, and version. Access to platform-specific APIs and tools when required. A single cross-platform app entry point. References: Bilgin, C. (2021). Mobile development with.NET (2nd ed.). Packt Publishing. Microsoft. (n.d.)..NET MAUI documentation. Retrieved on August 16, 2023 from https://learn.microsoft.com/en- us/dotnet/maui/ 01 Handout 1 *Property of STI  [email protected] Page 3 of 3

Use Quizgecko on...
Browser
Browser