繁花如伊

自己从零开始快速搭建Android app架构简单的看下这三个架构模式:MVC:Model-View-Controller,经典模式,很容易理解,主要缺点有两个:View对Model的依赖,会导致View也包含了业务逻辑;Controller会变得很厚很复杂。MVP:Model-View-Presenter,MVC的一个演变模式,将Controller换成了Presenter,主要为了解决上述第一个缺点,将View和Model解耦,不过第二个缺点依然没有解决。MVVM:Model-View-ViewModel,是对MVP的一个优化模式,采用了双向绑定:View的变动,自动反映在ViewModel,反之亦然。面对众多的架构模式你会选择哪个?MVC,MVP还是MVVM?越高级的模式复杂性越高,实现起来也越难。然后搭建项目时也是看项目的需求,别人说好你也有要实用才好,高效的实现项目的功能才是最好的架构模式。那么,哪一个才是最好的呢?个人觉得适合你的才是最好的,不要去盲目的跟风,大家说mvp好那你就使用咯,没有实践就没有话语权,所以说用哪种架构模式本人不发表任何意见:任何模式的动机都是一样的,那就是如何避免复杂混乱的代码,让执行单元测试变得容易,创造高质量应用程序,开发维护更高效。在实际项目中思考架构时,也不会想着要用哪种模式,我只思考现阶段,以现有的人力资源和时间资源,如何才能更快更好地完成需求,适当考虑下如何为后期扩展或重构做准备。我项目中的架构这是我上一个项目的包架构:当然咯,是按功能分的包,项目的功能不一样然后分包也不一样,但是基本大同小异。 所以确定架构分包的时候那就按你的需求来咯。  从上面可以看出:架构分包的时候我们包括逻辑功能和基础功能(通用功能)。  基础功能模块:日志管理系统(LogManager)不管哪个项目都需要自己的一套日志管理,一是为了生产调试时能更加高效的查看过滤日志,二是为了打包发布的时候用开关控制日志是否打印。  (我的日志用的是凯子哥的:Klog)异常处理(crashManager) 作用:当程序遇见异常情况时我们能够自定义异常处理,二是程序对不同的机型有不同的反应,那么测试时候可能没有发现但是我们可以把捕获的crash上传到服务器,便于异常收集和bug修复。utils(工具类)根据你的项目需求来合理定制你的工具类,将会对你的项目开发速度有很大的提升(反馈,版本校验更新你肯定能够用到)看下我上个项目的工具类:  permission(权限管理系统) 这功能是绝对项目中需要的,别告诉我你的项目还没有适配安卓6.0,适配了就肯定会有权限管理,我这里用的是 安卓6.0权限处理在项目中的实践,也还可以吧,反正github上的权限管理的开源东西比较多,觉得合适就ok。哈哈,这样基础功能都搭建好了,然后就是一些逻辑功能的封装了。

android快速搭建界面,怎么样能快速搭建一个Android APP的界面和框架?相关推荐

  1. Android Virtualview:淘宝、天猫 又一个动态化、高性能的UI框架力作

    Android Virtualview:淘宝.天猫 又一个动态化.高性能的UI框架力作 前言 淘宝.天猫一直致力于解决 页面动态化的问题 在2017年的4月发布了v1.0解决方案:Tangram模型 ...

  2. Android TV开发总结(三)构建一个TV app的焦点控制及遇到的坑

    原文:Android TV开发总结(三)构建一个TV app的焦点控制及遇到的坑 版权声明:我已委托"维权骑士"(rightknights.com)为我的文章进行维权行动.转载务必 ...

  3. android没有界面app,Android离线打包 app处于原生界面 切换到桌面再点击app 原生界面被关闭...

    Android离线打包环境, 当app打开原生界面时,点击Home键到桌面,然后点击桌面图标打开app,原生界面被关闭,无论原生界面层级多少,都是返回到io.dcloud.PandoraEntry这个 ...

  4. android中的插件开发框架,设计并开发一个 Android 的插件化框架

    结合动态加载系列文章的分析,现在开始设计并开发一个 Android 的插件化框架,命名为 Frontia.Frontia 有 "前端" 的意思,寓意着 Android 插件能像前端 ...

  5. android tv 云播放器,Android TV开发总结(六)构建一个TV app的直播节目实例

    近年来,Android TV的迅速发展,传统的有线电视受到较大的冲击,在TV上用户同样也可以看到各个有线电视的直播频道,相对于手机,这种直播节目,体验效果更佳,尤其是一样赛事节目,大屏幕看得才够痛快, ...

  6. android组件化开发视频教程,教你打造一个Android组件化开发框架

    作者简介 本篇来自 lucky_billy 的投稿,分享了他的开源组件化框架,详细地讲解框架形成的思路,希望对大家有所帮助. lucky_billy 的博客地址: 解读开源框架设计思想 B站学习视频 ...

  7. Android学习笔记---开发与运行(卸载)第一个ANDROID应用--Helloworld

    开发与运行(卸载)第一个ANDROID应用 1.第一个android程序:HelloWorld   新建:android Project   填写project name,选择安卓平台 2.a.app ...

  8. android mvvm官方文档,MVVM: 这是一个android MVVM 框架,基于谷歌dataBinding技术实现

    MVVM 这是一个android MVVM 框架,基于谷歌dataBinding技术实现.dataBinding 实现的 V 和 VM的关联:使用IOC架构实现了 M 和 V的关联. 框架具有以下功能 ...

  9. android tv record,Android TV开发总结(一)构建一个TV app前要知道的事儿

    前言:近年来,智能电视的发展如火如荼,Googel 也在大力推进TV及穿带设备的发展,在互联网的风口,是猪也会飞,这句话并不是没有道理的.传统电视机厂商,基本都转型致力于智能电视的相关业务.处理电视硬 ...

  10. Android Studio 开发系列之二:创建简单的APP启动界面

    1.准备措施:准备一张用来开机的P好的照片 2.在原有项目的基础上,新建一个Activity,命名为StartActivity(这个其实无所谓,都可以) 3.将准备好的照片放入mipmap中 (1)复 ...

最新文章

  1. php token的生成和使用
  2. 使用stm32的ADC得到准确的电压
  3. android动画回到原位,使用动画隐藏view后,原来的位置空白
  4. 基于Struts2的供求信息网设计(三)
  5. 推荐优秀的SQL脚本调试工具Embarcadero DBArtisan 可以调试SQL Server 2000/2005 SQL调试工具汇总...
  6. Python 简单入门学习笔记
  7. python台风动图绘制_使用Python绘制台风轨迹图的示例代码
  8. visual studio 设计器不显示_与城共生:南京朝天宫“参与性”城市设计
  9. Android4.0的Alertdialog对话框,设置点击其他位置不消失
  10. sqlplus语句示例
  11. python之修改pip为豆瓣源
  12. 精灵3P+Pix4D简单航测详细应用教程
  13. css栅格布局的四种大小xs,sm,md,lg
  14. 微信小程序圣诞帽_完成圣诞快乐Web应用程序界面
  15. 【数据仓库】企业Spark案例--酒店数据分析实战
  16. 蓝桥ROS机器人之现代C++学习笔记7.4 条件变量
  17. web页面设计中使用阿里字体(包含图标)
  18. error LNK2005: _bn_sub_part_words 已经在 bn_mul.obj 中定义
  19. JAVA安装、配置及卸载
  20. java 多线程垃圾回收_Java 垃圾回收

热门文章

  1. python代码覆盖率测试_Python代码覆盖率分析工具----Coverage
  2. php球鞋,适合宽脚选手的球鞋有哪些“宽型脚”必备的实战利器推荐
  3. markdown生成html不出效果,mdeditor: 简单markdown编辑器,同步预览html效果。不依赖任何插件,使用简单,原创,造轮子中。。。更新中。。。...
  4. vue视频保存不下来_视频素材制作小技巧
  5. 力扣 496 下一个更大的元素I
  6. 数据结构 2-0 线性表总结
  7. pytorch学习笔记(二十二):Pooling
  8. 4-1 可复用性概述
  9. Java System.in.skip()的作用
  10. Detectron2和MMDetection的学习笔记