题目 https://abc098.contest.atcoder.jp/tasks/arc098_b 分析 从二进制的角度来看,若两个数的异或值等于两个数的和,则要求这两个数的任何位数都不能同时为1,即这两个数取与运算…
分类:架构
SSO单点登录原理和流程分析
WEB的登录那些事#### 说道账户登录和注册,其实我们每天都在亲身感受着,像微博、知乎还有简书等等。我们总是需要定期的去重新登录一下,对于这种认证机制,我们都能说出来两个名词,Cookie、Session。的确没错,C…
交互设计的价值不只是 "线框图"而已
说到交互设计的价值,很多人可能一脸懵逼,交互不就是一个画线框图的嘛,然后再用各种乱七八糟的线连在一起。其实这一直以来是行业内对交互设计的一种“误解”,线框稿只是交互设计师最终产出的一套方案而已,然而其背后更多的是:反复与…
详解Lambda
详解Lambda Java8已经更新了好久了。变化很大,但感觉有用的不多。其中最广为人知的就是Lambda表达式。看起来比较蛋疼,感觉Java越来越C化了。 当初以为Lambda的作用就是为了简化匿名内部类的输写,最近看…
在正式提交测试前的代码检查
欢迎Follow我的GitHub, 关注我的简书. 本文是给初级程序员朋友的一些建议. 正式提交工作, 就意味着写的代码归档, 会影响其他共同开发者, 也会影响项目, 因此, 有些东西就必须要检查, 不要凭着直觉去做. …
如何做好项目结构规划
在另一篇文章中说明了“规划项目结构”的重要性,在这篇文章中则要来谈谈如何实践。 决定结构的依据 在决定项目结构的分类方式时,不外乎是依 Feature 或是依 Layer 来设置所谓的 Package 或是 Namesp…
是的,mbed OS 5 可以用了
前阵子,ARM mbed 释放出了 mbed OS 5.3,是在之前版本的基础上做了更近一步的性能升级,这是好事,说明基本框架和开发方式已经确定下来了,应该不会再有“2+3=5”的小尴尬了吧。 ARM mbed 官方是这…
外观模式——七种结构型模式之一
1.前言 代理和装饰模式都是对单个对象的封装,不熟悉的朋友可以到设计模式文集中查看一下。若将这个对象扩展一下,让它成为具有某种业务功能的模块,甚至系统,会如何?对,说到底,它仍是一个对象。不过这个对象在工作时,内部的子对…
旋转的立方体
0. 前言 最是一年春好处,恰是回家过年时,昨天,经过“热情”的春运,回到到了家,最近,感觉动画比较带感,今天就做个比较炫酷的东西,旋转的立方体。 1. 简介 CSS3动画,做出来的效果比较吊,可能在你写代码中很少应用,…
从设计者的角度理解Java IO流
摘要 Java I/O是Java技术体系中非常基础的部分,它是学习Java NIO的基础。而深入理解Java NIO则是学习现代高性能网络通信框架(比如Netty)的基础。本文试图从设计者的角度去理解Java I/O流,…
2.模式分类
模式分类 组件协作 现代软件专业分工之后的第一个结果是“框架与应用程序的划分”,“组件协作”模式通过晚绑定,来实现框架与应用程序之间的松耦合,是二者之间写作时常用的模式。 Template Method Strategy…
解耦解的早,改需求没烦恼
摘要 世上本没有解耦,需求改的多了也便有了解耦。 —— 产品经理 本例将通过一个计时控件,聊聊如何解耦~ 本TimerView仅作为demo,不保证其健壮性,请勿在实际项目中使用。 特点 UI容器与计时逻辑分离 UI容器…