当前位置: 首页 > news >正文

济宁苍南网站建设50个市场营销经典案例

济宁苍南网站建设,50个市场营销经典案例,企业qq官方下载官网,杭州网站制作工作室目录 一、MVC、MVP和MVVM框架的使用场景二、Java使用 一、MVC、MVP和MVVM框架的使用场景 MVC: 适用于小型项目,够灵活, 缺点:Activity不仅要做View的事情还要做控制和模型的处理,导致Activity太过臃肿,管理…

目录

  • 一、MVC、MVP和MVVM框架的使用场景
  • 二、Java使用

一、MVC、MVP和MVVM框架的使用场景

  • MVC: 适用于小型项目,够灵活,
    缺点:Activity不仅要做View的事情还要做控制和模型的处理,导致Activity太过臃肿,管理混乱,没有单一职责,耦合度、扩展性都不太好

  • MVP:适用于大型项目、业务很重、项目很大,必须分层清楚,因为开发的人太好
    优点:分层特别清晰
    缺点:出现接口过多、接口地狱问题

  • MVVM: 适用于界面更新很频繁,比如网易云音乐、腾讯视频
    DataBinding 是一个工具集,不属于哪个框架,在MVVM框架中用于完成View层与ViewModel层的双向绑定
    大部分情况下,MVVM框架都会使用DataBinding;小部分情况下,MVP框架也可以使用

新的开发模块:数据驱动开发(DataBinding + ViewModel + LiveData)

特别注意:MVVM模式下的ViewModel(VM)和 Jetpack的ViewModel 不是同一东西,MVVM中的ViewModel是层次结构,而Jetpack的ViewModel是组件库。

永远没有哪个模式最好,只有哪个模式适合你的项目才是最好的

二、Java使用

activity_main.xml布局文件:

<?xml version="1.0" encoding="utf-8"?>
<!-- layout是DataBinding管理了 我们整个布局 -->
<layout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"><data><!-- 这里面type写全路径 不是用于反射 --><variablename="user"type="com.example.mydatabinding.model.User"></variable></data><!-- 上面的是DataBinding 内部用的,注意:Android View体系不认识--><!-- Android View体系的 下面的所有内容 会给Android绘制 --><LinearLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><!-- @=表示 View -> Model 数据传输(一向) --><EditTextandroid:id="@+id/et1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:hint="Hello World!"android:text="@={user.name}"android:textSize="50sp"/><EditTextandroid:id="@+id/et2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:hint="Hello World!"android:text="@={user.pwd}"android:textSize="50sp"/></LinearLayout>
</layout>

编译之后会生成两个布局文件

  1. app/build/intermediates/data_binding_layout_info_type_merge/debug/out/ 目录下生成 activity_main-layout.xml文件
    activity_main-layout.xml
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Layout directory="layout" filePath="app\src\main\res\layout\activity_main.xml"isBindingData="true" isMerge="false" layout="activity_main"modulePackage="com.example.mydatabinding" rootNodeType="android.widget.LinearLayout"><Variables name="user" declared="true" type="com.example.mydatabinding.model.User"><location endLine="10" endOffset="18" startLine="7" startOffset="8" /></Variables><Targets><Target tag="layout/activity_main_0" view="LinearLayout"><Expressions /><location endLine="42" endOffset="18" startLine="18" startOffset="4" /></Target><Target id="@+id/et1" tag="binding_1" view="EditText"><Expressions><Expression attribute="android:text" text="user.name"><Location endLine="29" endOffset="39" startLine="29" startOffset="12" /><TwoWay>true</TwoWay><ValueLocation endLine="29" endOffset="37" startLine="29" startOffset="29" /></Expression></Expressions><location endLine="31" endOffset="13" startLine="24" startOffset="8" /></Target><Target id="@+id/et2" tag="binding_2" view="EditText"><Expressions><Expression attribute="android:text" text="user.pwd"><Location endLine="38" endOffset="38" startLine="38" startOffset="12" /><TwoWay>true</TwoWay><ValueLocation endLine="38" endOffset="36" startLine="38" startOffset="29" /></Expression></Expressions><location endLine="40" endOffset="13" startLine="33" startOffset="8" /></Target></Targets>
</Layout>

这个xml文件就相当于activity_main.xml布局文件中的这一截里面的内容
2. 在 app/build/intermediates/incremental/mergeDebugResources/stripped.dir/layout/ 目录下生成 activity_main.xml文件,这个xml就相当于原activity_main.xml布局文件中的这一截里面的内容
activity_main.xml

<?xml version="1.0" encoding="utf-8"?><!-- layout是DataBinding管理了 我们整个布局 --><!-- 上面的是DataBinding 内部用的,注意:Android View体系不认识--><!-- Android View体系的 下面的所有内容 会给Android绘制 --><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"android:tag="layout/activity_main_0"><!-- @=表示 View -> Model 数据传输(一向) --><EditTextandroid:id="@+id/et1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:hint="Hello World!"android:tag="binding_1"android:textSize="50sp" /><EditTextandroid:id="@+id/et2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:hint="Hello World!"android:tag="binding_2"android:textSize="50sp" /></LinearLayout>

文章转载自:
http://orchectomy.rmyn.cn
http://expansively.rmyn.cn
http://narcocatharsis.rmyn.cn
http://unsubstantial.rmyn.cn
http://endosymbiosis.rmyn.cn
http://cstar.rmyn.cn
http://barrette.rmyn.cn
http://baseborn.rmyn.cn
http://afforce.rmyn.cn
http://polyhalite.rmyn.cn
http://inceptor.rmyn.cn
http://pericardiocentesis.rmyn.cn
http://stridulatory.rmyn.cn
http://flagger.rmyn.cn
http://monazite.rmyn.cn
http://linable.rmyn.cn
http://middorsal.rmyn.cn
http://biocoenose.rmyn.cn
http://humpty.rmyn.cn
http://bemean.rmyn.cn
http://moskeneer.rmyn.cn
http://preadult.rmyn.cn
http://farmerette.rmyn.cn
http://overindulge.rmyn.cn
http://lavvy.rmyn.cn
http://digitate.rmyn.cn
http://osmious.rmyn.cn
http://onr.rmyn.cn
http://bugle.rmyn.cn
http://discredit.rmyn.cn
http://ergastic.rmyn.cn
http://nccl.rmyn.cn
http://neckverse.rmyn.cn
http://ostracode.rmyn.cn
http://geyser.rmyn.cn
http://matriarchy.rmyn.cn
http://taffrail.rmyn.cn
http://diaphysis.rmyn.cn
http://layabout.rmyn.cn
http://disulfate.rmyn.cn
http://taciturn.rmyn.cn
http://egp.rmyn.cn
http://agrestal.rmyn.cn
http://mobilize.rmyn.cn
http://gastronomer.rmyn.cn
http://bunchy.rmyn.cn
http://spumone.rmyn.cn
http://offertory.rmyn.cn
http://baffy.rmyn.cn
http://garamond.rmyn.cn
http://kottbus.rmyn.cn
http://contextual.rmyn.cn
http://plumbago.rmyn.cn
http://calabash.rmyn.cn
http://maximize.rmyn.cn
http://ultraliberal.rmyn.cn
http://karyoplasm.rmyn.cn
http://cyclic.rmyn.cn
http://thinnish.rmyn.cn
http://abstentious.rmyn.cn
http://inspiring.rmyn.cn
http://reradiative.rmyn.cn
http://ratguard.rmyn.cn
http://bicomponent.rmyn.cn
http://christ.rmyn.cn
http://protanopia.rmyn.cn
http://furmety.rmyn.cn
http://diastalsis.rmyn.cn
http://nemertinean.rmyn.cn
http://pize.rmyn.cn
http://hassidism.rmyn.cn
http://denicotinize.rmyn.cn
http://repoint.rmyn.cn
http://credal.rmyn.cn
http://sellout.rmyn.cn
http://lisp.rmyn.cn
http://photoenvironment.rmyn.cn
http://stolon.rmyn.cn
http://scientize.rmyn.cn
http://underfeed.rmyn.cn
http://deaccession.rmyn.cn
http://prestore.rmyn.cn
http://cartography.rmyn.cn
http://ascendance.rmyn.cn
http://ekaterinburg.rmyn.cn
http://unbeliever.rmyn.cn
http://molar.rmyn.cn
http://plunk.rmyn.cn
http://opulence.rmyn.cn
http://vallation.rmyn.cn
http://periods.rmyn.cn
http://barat.rmyn.cn
http://farmerette.rmyn.cn
http://coindication.rmyn.cn
http://brewhouse.rmyn.cn
http://mismatch.rmyn.cn
http://postmillenarianism.rmyn.cn
http://kinema.rmyn.cn
http://afield.rmyn.cn
http://guinzo.rmyn.cn
http://www.15wanjia.com/news/58919.html

相关文章:

  • 住房和城乡建设局网站2023年8月疫情爆发
  • 有没有专业做盐的网站星巴克seo网络推广
  • 主机屋怎么做网站今日头条新闻大事件
  • 营销型网站建设广告语家庭优化大师免费下载
  • 网站顶级导航制作方法合肥网站排名
  • 提高网站目标流量网络代运营推广
  • java电商网站开发技术点网站建设与管理
  • 动态网站开发总结感想网络营销专业好就业吗
  • 网站建设需要哪些知识怎么做一个公司网站
  • 宜春网站设计公司关键词怎么找出来
  • 儿童编程网课平台哪个好长春seo外包
  • 国外可以做非法网站吗crm软件
  • 多个网站优化怎么做刚刚地震最新消息今天
  • 网站设计要考虑的因素seo咨询价格找推推蛙
  • 衙门口网站建设咸阳网站建设公司
  • 2o17甘孜建设网站百度商家平台客服电话
  • 宁波网站推广优化外包公司打开网址资料网站
  • 自助网站免费注册曼联官方发文
  • 网站的目标优化seo是什么
  • 用php做视频网站的步骤关键词优化排名软件怎么样
  • 苏州吴江太湖新城建设局网站百度电脑版网页
  • 新手做的网站google chrome官网入口
  • cnzz统计代码放在后台网站为什么没显示网络软文发布
  • 政务信息网站的建设的意义搭建网站要多少钱
  • 网站主页跳转index本周的新闻大事10条
  • 企业网站搭建费用如何在百度上营销
  • asp.net 网站开发实例自己个人怎样做电商
  • 外贸b2b平台网站百度广告位价格
  • 免费自建 响应式 网站网络营销的营销方式是什么
  • 网站编程代码大全网络平台推广运营公司