Skip to content

Mobile Tech Research

Bilal Atım edited this page Oct 10, 2023 · 3 revisions

Mobile Technologies

Jetpack Compose

Overview

Jetpack Compose is a modern Android UI toolkit developed by Google. It enables developers to build native user interfaces using a declarative and composable approach.

Key Features

  • Declarative UI: Define the UI's desired state, and Jetpack Compose automatically handles rendering updates.
  • Component-Based: Encourages building UIs as composable components for reusability and maintainability.
  • Improved Developer Productivity: Minimizes boilerplate code, resulting in faster development cycles.

Documentation


Koin

Overview

Koin is a lightweight, pragmatic dependency injection framework for Kotlin-based Android apps. It simplifies the management of object dependencies, making it easier to maintain clean and modular code.

Key Features

  • Kotlin-Centric: Designed from the ground up with Kotlin in mind, offering concise and readable syntax.
  • Scopes and Lifecycle Management: Supports scoped dependencies and integrates well with Android's lifecycle.

Documentation


Retrofit

Overview

Retrofit is an HTTP client library for Android that simplifies network requests and RESTful API consumption.

Key Features

  • Serialization and Deserialization: Seamlessly converts JSON data to Kotlin objects and vice versa.
  • Extensible: Supports custom request interceptors, converters, and error handling mechanisms.

Documentation


Android Studio

Overview

Android Studio is the offical integrated development environment (IDE) for Android application development. It is based on IntelliJ IDEA, a Java IDE for software, and incorporates its code editing and developer tools.

Key Features

  • Build System: It has a flexible Gradle-based build system.
  • Emulator: It has a fast and feature-rich emulator.
  • Unified Environment: It has a unified environment where the coder can develop for all Android devices.
  • Live Edit: Composables can be updated in real time in emulators and physical devices.

Documentation


Kotlin

Overview

Kotlin is a cross-platform programming language that makes coding concise. It is Google's preferred language for Android app development.

Key Features

  • Safer Code: Kotlin helps the programmer to avoid NullPointerExceptions since nullability is included in its type system.
  • Expressive and Concise: Kotlin's language features allow the programmer to write less boilerplate code and project her designs to the program more efficiently.
  • Structured Concurrency: Kotlin coroutines facilitate asynchronous programming, making tasks like database updates and network calls simple and performant.

Documentation


Java

Overview

Java is an incredibly powerful and well-established programming language with an enormous community and a wealth of libraries and tools that can help anyone build a mobile app. It’s easy to learn, has cross-platform capabilities, and it’s secure, making it a language of choice for app development. Java is a versatile and widely-used programming language known for its platform independence. It has been a popular choice for Android app development before the widespread adoption of Kotlin.

Key Features

  • Platform Independence : Java programs can run on various platforms without modification, thanks to the Java Virtual Machine (JVM).
  • Strongly Typed : Java is a statically-typed language, which means variable types are explicitly declared, reducing runtime errors.
  • Rich Ecosystem : Java has a vast ecosystem of libraries and frameworks for various application domains.

Documentation

Java Official Documentation

Resources

  1. https://www.techtarget.com/searchmobilecomputing/definition/Android-Studio
  2. https://developer.android.com/kotlin
  3. https://www.webiotic.com/java-mobile-applications-development-what-you-need-to-know/#:~:text=Java%20is%20an%20incredibly%20powerful,of%20choice%20for%20app%20development.


💻 Meeting Notes

Cmpe 352
Cmpe 451

📝 Requirements


🪧 Diagrams


📬 Deliverables

Cmpe 352
Cmpe 451

🎇 General Contributions

Cmpe 352 Contributions

Milestone 1
Final Milestone

Cmpe 451 Contributions

Milestone 1
Milestone 2
Final Milestone

📕 Mock Up


🕵️ User Scenario



📝 RAM


📚 Research


📑 Templates


📱 Practice App

API Documentation for Practice App
Clone this wiki locally