Effectiveandroidui

Sample project created to show some of the best Android practices to work in the Android UI Layer. The UI layer of this project has been implemented using MVP or MVVM (without binding engine) to show how this patterns works. This project is used during the talk "EffectiveAndroidUI".
Alternatives To Effectiveandroidui
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Ribs7,31863 days ago12April 24, 2022101apache-2.0Kotlin
Uber's cross-platform mobile architecture framework.
Effectiveandroidui6,058
a year ago5apache-2.0Java
Sample project created to show some of the best Android practices to work in the Android UI Layer. The UI layer of this project has been implemented using MVP or MVVM (without binding engine) to show how this patterns works. This project is used during the talk "EffectiveAndroidUI".
Androidproject5,116
6 months ago1apache-2.0Java
Android 技术中台,但愿人长久,搬砖不再有
Awesome Ios Architecture4,865
5 months agomit
:japanese_castle: Better ways to structure iOS apps
Westore4,0821a month ago7September 27, 202161JavaScript
小程序项目分层架构
Archi3,363
3 years ago11apache-2.0Java
Repository that showcases 3 Android app architectures: "Standard Android", MVP and MVVM. The exact same app is built 3 times following the different patterns.
Android Mvp Mvvm Flytour2,885
2 years ago8apache-2.0Java
🔥🔥🔥 FlyTour是Android MVVM+MVP+Dagger2+Retrofit+RxJava+组件化+插件组成的双编码架构+双工程架构+双语言Android应用开发框架,通过不断的升级迭代该框架已经有了十个不同的版本,5.0之前工程架构采用gradle配置实现组件化,5.0之后的工程架构采用VirtualAPK实现了插件化,5.0之前采用Java编码实现,5.0之后采用Kotlin编码实现,编码架构由MVVM和MVP组成,工程架构和编码架构及编码语言开发者可根据自己具体的项目实际需求去决定选择使用,该框架是Android组件化、Android插件化、Android MVP架构、Android MVVM架构的集大成者,帮助你快速的搭建自己的App项目开发框架,以便把主要的精力放在自己的项目的业务功能实现上,另外在长期的工作实践中总结整理大量的实用工具类在项目lib_common组件的util包当中方便大家调用。
Android Learning Resources1,289
3 years ago2
Android学习资源网站索引大全
Mvvm Kotlin Android Architecture1,147
2 years ago6apache-2.0Kotlin
MVVM + Kotlin + Retrofit2 + Hilt + Coroutines + Kotlin Flow + mockK + Espresso + Junit5
Thirtyinch1,040
2 years ago34apache-2.0Java
a MVP library for Android favoring a stateful Presenter
Alternatives To Effectiveandroidui
Select To Compare


Alternative Project Comparisons
Readme

Effective Android UI Build Status Android Arsenal

Sample project created to reinforce some of the main concepts described in the tech talk "Effective Android UI".

In this repository you are going to find some interesting samples like:

  • MVP and MVVM (without data binding engine) samples.
  • How to use fragments.
  • How to use Dagger to implement dependency injection.
  • Use resource qualifiers to change the layout used in different screen sizes.
  • Use resource qualifiers to change the layout used in different screen densities.
  • Use resource qualifiers to change the layout in different Android version.
  • How to use styles and themes.
  • How to communicate fragments in the same activity.
  • Butterknife library usage to avoid UI duplicated code.
  • Uniform naming for Android resources.
  • How to use Navigator or ActionCommands to implement the navigation inside the application.
  • Use resource custom qualifiers to split resource files by domain.
  • Different layout usage: RelativeLayout, LinearLayout, FrameLayout.
  • Usage of merge, include and view stub.
  • Correct ListView implementation with view recycle using Renderers.
  • Interactor implementation described in the talk "Software Design Patterns on Android".
  • Usage of Dagger to implement two different scopes: Application scope and Activity scope.

Implementation description

EffectiveAndroid UI Video - Spanish

EffectiveAndroid UI Slides - English

Screenshots

Demo Screenshot 1 Demo Screenshot 2 Demo Screenshot 3

Libraries used on the sample project

Developed By

Follow me on Twitter Add me to Linkedin

License

Copyright 2014 Pedro Vicente Gómez Sánchez

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Popular Mvvm Projects
Popular Mvp Projects
Popular Software Architecture Categories

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Java
Layout
Mvvm
Mvp
Dagger