前言 真是天一热什么事都不想干,这个月只产出了一篇文章,赶紧写一篇压压惊! 前文(https://github.com/hanzichi/underscore-analysis/issues/15)说到楼主开始解读 underscore.js 中的 Collection Functions 部分,看了一遍这部分的源码,很多方法都是一看便懂,不需要楼主过分解读.本文来聊聊内部方法 group 的设计,这会是 Collection Functions 部分的第二篇文章,也是最后一篇文章,关于这部分其…
http://fairwoodgame.com/blog/?p=38 Unity iOS打开AppStore评星页面,浅谈Application.OpenURL()方法. Posted in  Unity on August 6, 2013Comments: 暂无评论 太简单了.我们知道iOS里有个URL Scheme的东西(这个我还没深究,希望有大神帮我贴个教程,十分感谢~另外Android也有),可以通过打开一个URL来进入iOS的某些应用.比如下面这个链接在iOS里点击就可以直接进入爱掼蛋…
Java网络编程和NIO详解7:浅谈 Linux 中NIO Selector 的实现原理 转自:https://www.jianshu.com/p/2b71ea919d49 本系列文章首发于我的个人博客:https://h2pl.github.io/ 欢迎阅览我的CSDN专栏:Java网络编程和NIO https://blog.csdn.net/column/details/21963.html 部分代码会放在我的的Github:https://github.com/h2pl/ 浅谈 Linux…
说到架构设计和团队协作,这个对App的开发还是比较重要的.即使作为一个专业的搬砖者,前提是你这砖搬完放在哪?不只是Code有框架,其他的东西都是有框架的,比如桥梁等等神马的~在这儿就不往外扯了.一个好的工程框架不进可以提高团队的协作效率,同时还可以减少代码的冗余度和耦合性,合理的分工与系统的架构设计是少不了的. 至于团队协作不仅仅是有SVN或者Git这些版本控制工具就行的,至于如何在iOS开发中使用SVN,请参考之前的博客(iOS开发之版本控制(SVN)).一个团队可以高效的工作,本人觉得交流是…
今天写这篇文章是想达到抛砖引玉的作用,想与大家交流一下思想,相互学习,博文中有不足之处还望大家批评指正.本篇文章的内容沿袭以往博客的风格,也是以干货为主,偶尔扯扯咸蛋(哈哈~不好好工作又开始发表博客啦~). 每日更新关注:http://weibo.com/hanjunqiang  新浪微博 由于本人项目经验有限,关于架构设计方面的东西理解有限,我个人对MVVM的理解主要是借鉴于之前的用过的MVC的Web框架~在学校的时候用过ThinkPHP框架,和SSH框架,都是MVC的架构模式,今天MVVM与…
今天写这篇文章是想达到抛砖引玉的作用,想与大家交流一下思想,相互学习,博文中有不足之处还望大家批评指正.本篇文章的内容沿袭以往博客的风格,也是以干货为主,偶尔扯扯咸蛋(哈哈~不好好工作又开始发表博客啦~). 由于本人项目经验有限,关于架构设计方面的东西理解有限,我个人对MVVM的理解主要是借鉴于之前的用过的MVC的Web框架~在学校的时候用过ThinkPHP框架,和SSH框架,都是MVC的架构模式,今天MVVM与传统的MVC可谓是极为相似,也可以说是兄弟关系,也就是一家人了. 说到架构设计和团队…
在上一篇“浅析多租户在 Java 平台和某些 PaaS 上的实现”中我们谈到了应用层面的多租户架构,涉及到 PaaS.JVM.OS 等,与之相应的是数据层也有多租户的支持. 数据层的多租户综述 多租户(Multi Tenancy/Tenant)是一种软件架构,其定义是: 在一台服务器上运行单个应用实例,它为多个租户提供服务. 在SaaS实施过程中,有一个显著的考量点,就是如何对应用数据进行设计,以支持多租户,而这种设计的思路,是要在数据的共享.安全隔离和性能间取得平衡. 传 统的应用,仅仅服务于…
原文:http://www.ibm.com/developerworks/cn/java/j-lo-dataMultitenant/index.html 在上一篇“浅析多租户在 Java 平台和某些 PaaS 上的实现”中我们谈到了应用层面的多租户架构,涉及到 PaaS.JVM.OS 等,与之相应的是数据层也有多租户的支持. 数据层的多租户综述 多租户(Multi Tenancy/Tenant)是一种软件架构,其定义是: 在一台服务器上运行单个应用实例,它为多个租户提供服务. 在SaaS实施过程…
目录 MatrixOne数据库是什么? 哈希表数据结构基础 哈希表基本设计与对性能的影响 碰撞处理 链地址法 开放寻址法 Max load factor Growth factor 空闲桶探测方法 一些常见的哈希表实现 C++ std::unordered_map/boost::unordered_map go map swisstable ClickHouse的哈希表实现 高效哈希表的设计与实现 基本设计与参数选择 哈希函数 特殊优化 具体实现代码 性能测试 测试环境 测试内容 整数key结果…
从遇到问题开始 当人们要做一个软件系统时,一般总是因为遇到了什么问题,然后希望通过一个软件系统来解决. 比如,我是一家企业,然后我觉得我现在线下销售自己的产品还不够,我希望能够在线上也能销售自己的产品.所以,自然而然就想到要做一个普通电商系统,用于实现在线销售自己企业产品的目的. 再比如,我是一家互联网公司,公司有很多系统对外提供服务,面向很多客户端设备.但是最近由于各种原因,导致服务经常出故障.所以,我们希望通过各种措施提高服务的质量和稳定性.其中的一个措施就是希望能做一个灰度发布的平台,这个…
原文地址:http://www.cnblogs.com/netfocus/p/5548025.html 从遇到问题开始 当人们要做一个软件系统时,一般总是因为遇到了什么问题,然后希望通过一个软件系统来解决. 比如,我是一家企业,然后我觉得我现在线下销售自己的产品还不够,我希望能够在线上也能销售自己的产品.所以,自然而然就想到要做一个普通电商系统,用于实现在线销售自己企业产品的目的. 再比如,我是一家互联网公司,公司有很多系统对外提供服务,面向很多客户端设备.但是最近由于各种原因,导致服务经常出故…
转载自:http://baozitraining.org/blog/Object-oriented-design-question/ OO设计问题是电面或者onsite中常考的问题,尤其对以Java为主要开发语言的公司(比如Amazon),OO设计问题可以算必考.OO设计题目的特点是题目非常开放,比如用OO的思想设计一个停车场,或者电梯等,没有固定的答案和套路.对于面试者,尤其是编程经验有限的毕业生,如何回答好这类问题确实是非常大的挑战.那么本篇就以设计电梯为例讲解一下回答这类问题的思路.以及需…
丰富的数据结构使得redis的设计非常的有趣.不像关系型数据库那样,DEV和DBA需要深度沟通,review每行sql语句,也不像memcached那样,不需要DBA的参与.redis的DBA需要熟悉数据结构,并能了解使用场景. 下面举一些常见适合kv数据库的例子来谈谈键值的设计,并与关系型数据库做一个对比,发现关系型的不足之处. 用户登录系统 记录用户登录信息的一个系统, 我们简化业务后只留下一张表. 关系型数据库的设计 mysql> select * from login; +-------…
Underscore.js是一个很精干的库,压缩后只有5.2KB.它提供了几十种函数式编程的方法,弥补了标准库的不足,大大方便了JavaScript的编程. 本文仅探讨Underscore.js的两个函数方法 _.throttle 和 _.debounce 的原理.效果和用途. 通常的函数(或方法)调用过程分为三个部分:请求.执行和响应.(文中“请求”与“调用”同义,“响应”与“返回”同义,为了更好的表述,刻意采用请求和响应的说法.) 某些场景下,比如响应鼠标移动或者窗口大小调整的事件,触发频率…
add by zhj: 关系数据库表的一条记录可以映射成Redis中的一个hash类型,其实数据库记录本来就是键值对.这样,要比本文中的键设计用更少的键,更节省内存,因为每个键除了它的键值占用内存外,还额外占用一定的内存. 原文:http://www.hoterran.info/redis_kv_design 丰富的数据结构使得redis的设计非常的有趣.不像关系型数据库那样,DEV和DBA需要深度沟通,review每行sql语句,也不像memcached那样,不需要DBA的参与.redis的D…
http://dongxicheng.org/tag/thrift/ http://dongxicheng.org/search-engine/thrift-internals/ Thrift由两部分组成:编译器(在compiler目录下,采用C++编写)和服务器(在lib目录下),其中编译器的作用是将用户定义的thrift文件编译生成对应语言的代码,而服务器是事先已经实现好的.可供用户直接使用的RPC Server(当然,用户也很容易编写自己的server).同大部分编译器一样,Thrift编…
博主不才,人生有2大爱好,写程序和玩游戏,本人玩的又是一款2D的在旁人看来弱智的网络游戏. 这款游戏在中国的名称叫做冒险岛,不知道园子里有没有人玩过. 我打算有空的话,就把我玩游戏中的心得和程序结合起来,一方面自己也想做个总结,毕竟玩了那么久游戏,总该写个总结, 另一方面,也是想把自己的心得分享给大家. 这款游戏实在是很大,大道我都不知道从何写起比较好,我就分块介绍好吧,因为我没有游戏设计的经验, 我只能从一个老玩家的视角进行剖析. 首先我来说一下游戏的色调吧,一个游戏最重要的无非就是游戏的创意…
一.前言 最近项目中,遇到需要将对象转换成字符串进行传递,上次写过一篇文章关于json字符串转换成json对象,json对象转换成字符串,值转换成字符串,字符串转成值.当时主要是用在有时候处理字符串和json对象之间的转换,写的主要是怎么用,涉及到JSONstringify具体用法没有涉及到,有时候对于一个JSON.stringify自带的方法掌握一下,可能会对于一个问题有更快的解决方案. 二.用法实例 1.方法的定义 2.JSON.stringify提供了参数分离出自己需要的那部分数据 3.J…
Vuex 是什么? Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.Vuex 也集成到 Vue 的官方调试工具 devtools extension,提供了诸如零配置的 time-travel 调试.状态快照导入导出等高级调试功能. 以上是官方文档对xuex的定义,对于vuex的官方文档讲的很详细,但是对于一个前端菜鸟来说,表示看不懂,看完过后很懵逼(比如小胖纸).基础知识太薄弱,理解起来…
首先,该方法是将数组转化为list.有以下几点需要注意: (1)该方法不适用于基本数据类型(byte,short,int,long,float,double,boolean) (2)该方法将数组与列表链接起来,当更新其中之一时,另一个自动更新 (3)不支持add和remove方法 上代码: package com.hdu.test; import java.util.Arrays; import java.util.List; abstract public class AsllistTest…
背景 多数企业应用都需要对数据权限进行控制,如:某个用户只能看到某个范围的数据(数据行).某个用户只能看到某几列数据(数据列).本文以数据行级别的权限控制为范例,谈谈如何设计权限模型和查询 API. 权限模型 结合自己的项目需求,可以省略掉“数据角色”,直接让“用户”聚合“数据权限”,也可以只保留一个“角色”,让“角色”聚合“操作权限”和“数据权限”. 可扩展的数据权限模型 伪代码示例 class SessionInfo { public Guid UserId { get; set; } pu…
OC特有的分类Category,依赖于类.它可以在不改变原来的类内容的基础上,为类增加一些方法.分类的使用注意: (1)分类只能增加方法,不能增加成员变量: (2)在分类方法的实现中可以访问原来类中的成员变量: (3)分类中可以重新实现原来类中的方法,但是会覆盖掉原来的方法,导致原来的方法无法再使用: (4)方法调用的优先级:分类->原来的类->父类,若包含有多个分类,则最后参与编译的分类优先:…
目录 列表类型的内置方法 元组类型的内置方法 字典类型的内置方法 集合类型的内置方法 列表类型的内置方法 1.作用:描述名字,说的话等 2.定义方式 s=['tim','age'] s=str('tim') 3.内置方法 方法 用法/作用 索引取值 变量名[0] 切片 变量名[0::-1]#从右往左取 长度 len(变量名) in/not in '变量值' in 变量名 for循环 挨个取出列表中的内容 del删除 del 变量名(要删除的内容) 追加 变量名.append count 对列表中…
目录 有序or无序和可变or不可变 数字类型内置方法 整形 浮点型 字符串类型内置方法 有序or无序和可变or不可变 有序:有索引 无序:无索引 可变:变量值变,id不变 不可变:变量值变,id也变 数字类型内置方法 整形 1.作用 描述年龄,id,身高 2.定义方式 x=10 x=int('10') 3.内置方法 没有内置方法,只有算术运算和比较运算 4.存在一个值还是多个值 一个值 5.有序or无序 整形没有这一说法 6.可变or不可变 整形是不可变的 浮点型 1.作用 描述薪资等 2.定义…
MVVM就是在MVC的基础上分离出业务处理的逻辑到viewModel层. M:  Model层是API请求的原始数据,充当DTO(数据传输对象),当然,用字典也是可以的,编程么,要灵活一些.Model层是比较薄的一层. V:  View层,视图展示,由viewController来控制,他的任务就是从ViewModel层获取数据,然后显示. VM:  ViewModel层负责业务处理和数据转化,就是View和Model层的粘合剂,他是一个放置用户输入验证逻辑,视图显示逻辑,发起网络请求和其他各种…
看的文章来自: https://blog.coding.net/blog/the-difference-between-throttle-and-debounce-in-underscorejs 使用场景 只要牵涉到连续事件或频率控制相关的应用都可以考虑到这两个函数,比如: 游戏射击,keydown 事件 文本输入.自动完成,keyup 事件 鼠标移动,mousemove 事件 DOM 元素动态定位,window 对象的 resize 和 scroll 事件 文章里有个比喻很形象 throttl…
前言 最近在学习JavaScript语言精粹,感觉写得相当不错.所以这里也算是总结一下.一个方法使用new的方式创建到底是怎样的过程,一个function的声明内部又是怎样执行的呢 另外学的过程中,不断参照ECMAScript的API,也能理解不少东西.ECMAScript Api:下载地址 W3C参考地址:http://www.w3school.com.cn/js/pro_js_functions.asp 正文 1.首先,看个例子,看下面例子的输出. 结果通过new运算符执行结果与直接执行函数…
目录索引:<ASP.NET MVC 5 高级编程>学习笔记 本篇内容 1. Global.asax文件 2. RouteConfig.cs文件 3. 视图命名和寻址的规则 前面创建了一个简单的ASP.NET MVC程序,虽然整个项目直接可以部署运行,一切都是按照约定好的执行. 但是系统里面的一些细节还是需要我们了解的,这有助于我们对整个ASP.NET MVC程序如何工作进行系统性的理解. 当然,在这里我们只简单介绍一下其执行过程,详细的生命周期等后面再逐步学习. 除了上面介绍的Controll…
2017-11-27 17:25:11 晚橙 阅读数 600更多 分类专栏: Flask python 多线程   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/he93007/article/details/78646988 在多线程服务器中客户端每建立一个链接,服务器就创建一个线程,每个线程中就会有一个request来表示客户端的链接请求信息. 不同的用户访问flask服务器.都有自…
集合加载因子 https://blog.csdn.net/qq_34627002/article/details/79769261 底层原理: https://blog.csdn.net/qq_25868207/article/details/55259978…