本文来自网易云社区 作者:吴思博 对于RecyclerView, 我们重复编写着那一个又一个的列表界面,有的要分组,有的要添加广告头部.有的要不同类型item排列.等等需求,主要代码有大部分是重复的,如果有一个框架能够帮快速的解决各种需求,那该多好. BRVAH是GitHub上一个强大的RecyclerAdapter框架,它能节约开发者大量的开发时间,它集成了大部分列表常用需求解决方案. 该框架于2016年4月10号发布,至今,经历了700多次迭代. presentation by 吴思博 gi…
本文来自网易云社区 作者:吴思博 3 实现列表加载动画效果    3.1默认动画 我们只需将自建的 adapter 继承它对应满足需求的 Adapter,然后在 Activity 中实例化,通过openLoadAnimation() 方法完成特定的动画效果. BRVAH 支持 5 种动画: 渐显.缩放.从下到上,从左到右.从右到左 3.2自定义动画 我们也可以自定义动画,通过实现 BaseAnimation 这个类,重写 getAnimators(View view) 方法来完成自定义动画. 3…
本文来自网易云社区 作者:吴思博 1.2 宫格和列表的混排样式 关于 Grid 和List 的混排样式,Grid 样式是一行有多个,而 List样式是一行只有一个. 我们可以把 List 样式看成是Grid 样式,它就相当于把一个 Grid 的 item 拉长了的样子. 列表与网格混排的布局效果,我们可以创建 adapter 继承 BaseMultiItemQuickAdapter添加对应 item 类型的布局文件,也可以在 Activity中创建GridLayoutManager对象,设置sp…
强化企业合规与风险管理已成为全球企业发展的共识,尤其是对于药企.银行.地产这类对于合规性要求高的企业而言,识别预测潜在的管理风险和遵循不断升级的合规义务,是保证企业平稳运行的关键. 如何从流程层面降低合规风险? 部门内需要对关键业务流程进行定期评估,找出任何可能使企业.员工.客户和资产面临风险的缺口.IT团队针对这些问题将流程重新设计,使规则清晰化,并定义角色和职责.这样每个利益相关者就能知道公司对他们的期望,确保能准确.一致地执行每个流程,符合公司的政策和监管义务. 梳理出的流程地图通过BPM…
bootstrap已经作为前端开发必不可少的框架之一,应用bootstrap使得我们对布局.样式的设定变得非常简单.但bootstrap提供的默认样式往往不能满足我们的需求,从而定制化bootstrap成为我们经常需要做的工作,本文就如何更高效更可维护地定制bootstrap做一下探讨. 如下图,在你的button 中加入bootstrap的class: btn btn-primary,就可以将默认的button(左边)变成右边的样式. 可如果我们想应用自己的样式呢?比如我们想要拥有圆角的but…
SQL Server 2005 正则表达式使模式匹配和数据提取变得更容易 David Banister 本文讨论: 使用正则表达式进行高效的 SQL 查询 SQL Server 2005 对正则表达式的支持 从 SQL Server 使用 .NET Regex 类 在数据库中有效地使用正则表达式 本文使用了以下技术: SQL Server 2005,.NET Framework 下载本文中所用的代码: Regex2007_02.exe (154 KB) 浏览在线代码   目录 CLR 用户定义函…
  代码审查者在审查代码时有非常多的东西需要关注.一个团队需要明确对于自己的项目哪些点是重要的,并不断在审查中就这些点进行检查. 人工审查代码是十分昂贵的,因此尽可能地使用自动化方式进行审查,如:代码格式.代码样式.检查常见bug.确定常见安全问题以及运行自动化测试. 当针对性能进行审查时,了解系统的性能需求是明确潜在问题的关键. 一些简单的人工检查可以显著提升应用的安全性. 代码审查是应该在互相沟通中进行讨论的,而不是相互对抗.预先确定哪些是要点哪些不是,可以减少冲突并拟定预期. 众所周知,在…
Eclipse提供了一个可扩展插件的开发系统.这就使得Eclipse在运行系统之上可以实现各种功能.这些插件也不同于其他的应用(插件的功能是最难用代码实现的).拥有合适的Eclipse插件是非常重要的,因为它们能让Java开发者们无缝的开发基于J2EE和服务的应用程序.Eclipse的插件也能帮助他们开发不同应用架构上的程序. 下面列出来的是25个最好的免费Eclipse插件,可以让开发者更高效的工作 . 提高代码质量的插件 1. FindBugs FindBugs可以帮你找到Java代码中的b…
TED:如何掌控你的自由时间以及让自己变得更好,这样就能看到爱情应有的样子 一.<如何掌控你的自由时间> (1)时间管理的传统思维:守时和节省零散的时间.演讲者认为这个观点已经彻底落后. (2)核心思想:We don't build the lives we want by saving time.we build the lives we want and then time save itself.(我们并不是节约时间创造想要的生活,而是先创造想要的生活,然后时间自然就节省下来了.) (3…
点击下载<不一样的 双11 技术:阿里巴巴经济体云原生实践> 本文节选自<不一样的 双11 技术:阿里巴巴经济体云原生实践>一书,点击上方图片即可下载! 作者 | 陈星宇(宇慕)阿里云基础技术中台技术专家 导读:etcd 是阿里巴巴内部容器云平台用于存储关键元信息的组件.阿里巴巴使用 etcd 已经有 3 年的历史, 在今年 双11 过程中它又一次承担了关键角色,接受了 双11 大压力的检验.为了让更多同学了解到 etcd 的最佳实践和阿里巴巴内部的使用经验,本文作者将和大家分享阿…
有情怀,有干货,微信搜索[三太子敖丙]关注这个不一样的程序员. 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试完整考点.资料以及我的系列文章. 前言 数据库系列更新到现在我想大家对所有的概念都已有个大概认识了,这周我在看评论的时候我发现有个网友的提问我觉得很有意思:帅丙如何设计一个索引?你们都是怎么设计索引的?怎么设计更高效? 我一想索引我写过很多了呀,没道理读者还不会啊,但是我一回头看完,那确实,我就写了索引的概念,优劣势,没提到怎么设计…
想要更高效地找到信息,你需要掌握这些搜索技巧 (google or baidu) 转载:https://tingtalk.me/search-tips/ 在大型局域网(互联网)的今天,你以为搜索是一门技术,其实搜索是一门忍术.你必须忍受不同平台各自为阵,内容信息就像孤岛,也必须忍受搜索结果被活埋在广告堆中--以至于,目前来说,好的搜索方式,不止是掌握了搜索方法,还要,找对平台.by Topbook 有人说,搜索引擎是 PC 互联网的完美商业模式,这个论断被 Google 和百度证明.可是移动互联…
切面(aspects)应用 DI能够让你的软件组件间保持松耦合,而面向切面编程(AOP)能够让你捕获到在整个应用中可重用的组件功能.在软件系统中,AOP通常被定义为提升关注点分离的一个技术.系统由很多的组件组成,每个组件负责一部分的功能.但是这些组件往往除了核心功能外,还有些额外的责任.比如像日志,事务管理和安全这些系统服务会被引进到组件中.这些服务通常被称为横切关注点(cross-cutting-concerns),因为它们常常贯穿于多个组件中. 在多个组件中传播这些概念,会有两个复杂层面内容…
spring 第一篇(1-1):让java开发变得更简单(下) 这个波主虽然只发了几篇,但是写的很好 上面一篇文章写的很好,其中提及到了Spring的jdbcTemplate,templet方式我之前已经有点了解了,但是Spring的还不知道,这次真的又学到了Spring的 使用Spring的jdbcTemplate进一步简化JDBC操作 配置文件 Spring mvc中jdbcDaoSupport和jdbcTemplate的使用 package xm.zjl.dao; import java.…
第一种更高效,直接调用javascript引擎.…
讨论 jQuery 和 javascript 性能的文章并不罕见.然而,本文我计划总结一些速度方面的技巧和我本人的一些建议,来提升你的 jQuery 和 javascript 代码.好的代码会带来速度的提升.快速渲染和响应意味着更好的用户体验. 首先,在脑子里牢牢记住 jQuery 就是 javascript.这意味着我们应该采取相同的编码惯例,风格指南和最佳实践. 首先,如果你是一个 javascript 新手,我建议您阅读 <24 JavaScript Best Practices for…
本文转载自:http://blog.csdn.net/androidzhaoxiaogang/article/details/8172539 什么是序列化,实现序列化的目的是什么? 讨论这个问题之前,我们要明白什么是序列化?序列化就是为了 实现将对象状态转换为可保持或传输的格式的过程. 目的主要有以下三点: 1)永久性保存对象,保存对象的字节序列到本地文件中: 2)通过序列化对象在网络中传递对象: 3)通过序列化在进程间传递对象. 为什么说Parcelable 比Serializable更高效…
Introducing Kafka Streams: Stream Processing Made Simple 这是Jay Kreps在三月写的一篇文章,用来介绍Kafka Streams.当时Kafka Streams还没有正式发布,所以具体的API和功能和0.10.0.0版(2016年6月发布)有所区别.但是Jay Krpes在这简文章里介绍了很多Kafka Streams在设计方面的考虑,还是很值得一看的. 以下的并不会完全按照原文翻译,因为那么搞太累了……这篇文件的确很长,而且Jay…
在Windows下设置环境变量,点开始菜单,右键单击我的电脑--属性--高级--环境变量 可以看到PATH的变量是这样的: C:\WINDOWS;C:\WINDOWS\COMMAND   为了让运行mysql程序变得更容易,改变它的值指向程序安装目录,添加一个目录D:\Program Files\wamp\bin\mysql\mysql5.0.51b\bin,结果是 D:\Program Files\wamp\bin\mysql\mysql5.0.51b\bin;C:\WINDOWS;C:\WI…
在工作中整理的一些分类与工具类,分享给大家.这些工具类可以减少项目中的代码量,让代码变得更简洁,可以大大的提升项目的效率,直接拖到项目中使用即可.下载地址:https://github.com/leeSmile/tools/tree/master/textTools 欢迎start 分类 NSString+LXExtension 1.根据文件名计算文件大小 2.快速生成缓存/文档/临时目录路径 3.根据文字返回文本占用的高度/宽度 4.MD5加密 /** *  md5加密 */ + (NSStr…
[ASP.Net MVC3 ]使用Moq让单元测试变得更简单 前几天调查完了unity.现在给我的任务是让我调查Moq. 以下是自己找了资料,总结并实践的内容.如果有表述和理解错误的地方.恳请指正. 什么是Moq? Moq(英语发音是Mock-you 或者只是mock)是一个针对.Net开发的模拟库,它从开始就完全充分利用了.NET3.5(LINQ表达式树)和C#3.0的新特性(lambda表达式).它的目标是让模拟以一种自然的方式与现有单元测试进行集成,使它更加简单.直观,以避免开发人员被迫重…
Winform 让跨线程访问变得更简单 前言 由于多线程可能导致对控件访问的不一致,导致出现问题.C#中默认是要线程安全的,即在访问控件时需要首先判断是否跨线程,如果是跨线程的直接访问,在运行时会抛出异常.近期在项目中碰到这个问题,首先想到的是,关闭跨线程检查,因为做的Winform没有多么复杂,图省事就直接这样做了,之后又出了一点点问题,还是必需通过委托的方式来实现. 资源下载 测试示例 解决跨线程访问: 网上的资料很多,这里直接摘抄. 1.关闭跨线程检查. 2.通过委托的方式,在控件的线程上…
版权声明:欢迎转载,转载请注明出处;http://blog.csdn.net/angcyo 看本文之前,推荐先看我之前写的一篇文章: 传送门 日前Android Stuido 已经更新到 2.0.0 preview 5了; 虽然官网说, gradle 的速度, 大幅度提升,然而并没有什么卵用; 不知道是不是个人问题, 使用 install run 功能之后, 修改逻辑代码,偶尔会出现不生效的情况; 就是代码,明明改了,但是执行结果却和之前的一样; 但是,xml布局文件,修改之后,效果真的很明显,…
前言 在写Android应用时候,有时候或多或少的需要运用广播来解决某些需求,我们知道广播有一个特性,就是使用sendBroadcast(intent);发送广播时,手机内所有注册了BroadcastReceiver的应用都可以在接收到这个广播的,并在BroadcastReceiver的onReceive()方法进行匹配,而应用是否使用这个广播则是取决与我们定义的Action与广播接收者的是否匹配,也就是说平常我们使用的广播是全局的广播,谁都有权收到.所以这就有可能产生安全漏洞和隐私数据泄密:…
在上一篇博文  代码优化小技巧(持续更新......) 第三条关于数组和指针谁更高效, 意犹未尽, 决定单独拉出一篇来讲 1. 数组和指针操作对比 #include <stdio.h> int main() { ]={,,}; ]={,,}; ]={,,}; char_p=char_arr; short_p=short_arr; int_p=int_arr; printf("111\n"); (*(char_p+)) ++; printf("222\n"…
AIOps 人工智能和IT运营支撑 Ops 之间的故事,愈演愈烈,已经成为当今运维圈的热门话题,我打算从2篇文档分享我们在 AIOps 上一些探索和实践.(上篇)主要介绍了为什么事件(告警)处理需要 AIOps:(本篇)主要分享OneAlert 事件处理平台在 AIOps 方面的探索. 上篇提到规模化的 IT 事件管理中,需要人工智能识别重要信息,去除噪音,甄别关键信息,减少人力工作量. 举个栗子:假设某企业的 IT 环境中的某个底层基础设施,如网络或存储设备出现异常,相关联的主机.中间件数据库…
AIOps 人工智能和IT运营支撑 Ops 之间的故事,愈演愈烈,已经成为当今运维圈的热门话题,我打算从2篇文档分享我们在 AIOps 上一些探索和实践.(本篇)为什么事件(告警)处理需要 AIOps:(下篇)OneAlert事件处理平台在 AIOps 方面的探索. 一. 规模化 现在的企业 IT 规模,软硬件都与以往有数十倍/上百倍递增,如何管理 IT 可用性和高效性,成为 IT 运营 DevOps 团队重要职责.规模化带来两个显著特点:1.更多的变更:2.更大的规模 企业的 IT 想跑的更快…
web安全:通俗易懂,以实例讲述破解网站的原理及如何进行防护!如何让网站变得更安全. https://www.cnblogs.com/1996V/p/7458377.html 感谢原作者写的内容 安全很重要 自己 理解的不是很深入 需要加强学习 不管之前的等保 还是 最简单的SQL注入那一块 我感觉自己落下的还很多 需要加强学习提高. 本篇以我自己的网站为例来通俗易懂的讲述网站的常见漏洞,如何防止网站被入侵,如何让网站更安全. 要想足够安全,首先得知道其中的道理. 本文例子通俗易懂,主要讲述了 …
Introducing Kafka Streams: Stream Processing Made Simple 这是Jay Kreps在三月写的一篇文章,用来介绍Kafka Streams.当时Kafka Streams还没有正式发布,所以具体的API和功能和0.10.0.0版(2016年6月发布)有所区别.但是Jay Krpes在这简文章里介绍了很多Kafka Streams在设计方面的考虑,还是很值得一看的. 以下的并不会完全按照原文翻译,因为那么搞太累了……这篇文件的确很长,而且Jay…
你是否一直在寻找比MySQL的LIKE语句更高效的方法的,下面我就为你介绍几种. LIKE语句 SELECT `column` FROM `table` where `condition` like `%keyword%' 事实上,可以使用 locate(position) 和 instr 这两个函数来代替 LOCATE语句 SELECT `column` from `table` where locate(‘keyword’, `condition`)>0 或是 locate 的別名 posi…