最近看到了几篇与 Jetpack MVVM 有关到文章,使我不禁也想淌一下这场混水.我是在 2017 年下半年接触的 Jetpack 的那套开发工具,并且后来一直将其作为开发的主要框架.在这段时间的使用过程中,我踩过一些坑,也积累了一些经验,为了将其推广到其它到项目中又专门封装出了一个库.当然,Jetpack 所提供的组件已经比较完善,我的工作只能算是锦上添花.下面我就介绍下,现在我是如何在项目中使用 Jetpack MVVM 的. 1.后起之秀和黯然失色的 MVP MVP 非常强大,也是或者曾…
项目中 SimpleDateFormat 的正确使用 日常开发中,我们经常需要使用时间相关类,说到时间相关类,想必大家对 SimpleDateFormat 并不陌生.主要是用它进行时间的格式化输出和解析,挺方便快捷的,但是 SimpleDateFormat 并不是一个线程安全 的类.在多线程情况下,会出现异常,想必有经验的小伙伴也遇到过.下面我们就来分析分析SimpleDateFormat为什么不安全?是怎么引发的?以及多线程下有那些SimpleDateFormat的解决方案? 先看看<阿里巴巴…
本文翻译自:http://www.objc.io/issue-13/mvvm.html.为了方便读者并节约时间,有些不是和文章主题相关的就去掉了.如果读者要看原文的话可以通过前面的url直接访问.作者也是做了iOS多年,从大学一直到现在n多年了.对于开发一款有B格的APP很有追求.学习了很多的东西,比如,silver bullet什么的,设计模式什么的.但是,面对急速膨胀的代码量,即使才高八斗也显得无所适从.于是他开始思考人生... MVC?还有另外一个解释:Massive View Contr…
NuGet 默认只支持一个菜一个菜打包,不支持套餐打包.当对一个 csproj 项目进行 nuget 打包时(比如使用 dotnet pack 命令),只会将当前项目 build 出来的 dll 程序集文件打包进 nupkg 文件,而所引用项目的 dll 文件不会被打包进去.要解决这个问题需要在 csproj 文件中添加专门的 msbuild 配置,这篇随笔分享一下刚学到的新姿势. 之前我们是通过 _PackageFiles 配置实现的,但要一个一个手写要打包进去的程序集文件名称,既麻烦又容易出…
引言 大家在开发中,还有很多童鞋在写查询语句的时候,习惯写下面这种不规范sql select * from table 而不写成下面的这种规范方式 select col1,col2,...,coln from table 我也知道,这些童鞋是图方便,毕竟再敲一堆的列名,嫌麻烦! 你们上班可以问问自己的同事 你:"xx,知道select *和select所有字段的区别么? 同事:"额..额..额.." 留下的只有尴尬的笑容! 我也知道,很多人至今都没有搞懂select *和se…
引言 大家在开发中,还有很多童鞋在写查询语句的时候,习惯写下面这种不规范sql select * from table 而不写成下面的这种规范方式 select col1,col2,...,coln from table 我也知道,这些童鞋是图方便,毕竟再敲一堆的列名,嫌麻烦!你们上班可以问问自己的同事 你:“xx,知道select *和select所有字段的区别么?同事:"额..额..额.."留下的只有尴尬的笑容! 我也知道,很多人至今都没有搞懂select *和selct 所有字段…
为什么需要封装echarts 每个开发者在制作图表时都需要从头到尾书写一遍完整的option配置,十分冗余 在同一个项目中,各类图表设计十分相似,甚至是相同,没必要一直做重复工作 可能有一些开发者忘记考虑echarts更新数据的特性,以及窗口缩放时的适应问题.这样导致数据更新了echarts视图却没有更新,窗口缩放引起echarts图形变形问题 我希望这个echarts组件能设计成什么样 业务数据和样式配置数据分离,我只需要传入业务数据就行了 它的大小要完全由使用者决定 不会因为缩放出现变形问题…
近日,孙金城老师在 "Open Source Promotion Plan - Summer 2020" 开源软件供应链点亮计划做了<如何成为一名合格的Apache项目Committer,参与Apache开源贡献的正确姿势>的分享,开源软件供应链点亮计划旨在鼓励大家关注开源软件和开源社区,发掘和培养更多优秀的开发者. 听了孙老师的介绍,想必伙伴们已经对如何参与 Apache 项目有了一定的了解.咱们Apache DolphinScheduler 作为 Apache 基金会旗…
今天写这篇博客是想达到抛砖引玉的作用,想与大家交流一下思想,相互学习,博文中有不足之处还望大家批评指正.本篇博客的内容沿袭以往博客的风格,也是以干货为主,偶尔扯扯咸蛋(哈哈~不好好工作又开始发表博客啦~). 由于本人项目经验有限,关于架构设计方面的东西理解有限,我个人对MVVM的理解主要是借鉴于之前的用过的MVC的Web框架~在学校的时候用过ThinkPHP框架,和SSH框架,都是MVC的架构模式,今天MVVM与传统的MVC可谓是极为相似,也可以说是兄弟关系,也就是一家人了. 说到架构设计和团队…
当使用vs出现下列情况: D:\xxxx\Web\Web.csproj : error  : 无法读取项目文件“Web.csproj”. D:\xxxx\WebServiceManager\Web\Web.csproj(1269,3): 未找到导入的项目“C:\Program Files\MSBuild\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets”.请确认 <Import> 声明中的…