再次解释一下协议的意义:定义某个功能模块的最小粒度,因为Swift是单继承,而无论是值类型还是引用类型都可以遵守多个协议,因此协议是比父类的粒度还要小的功能模块。协议的功能定义一定要具体并且严格,someObject:Protocol where …中where子句的匹配条件只能针对someObject的类型或者遵守的其他协议,以及Protocol中的associatedType的约束,也就是说不能...
分类:
其他好文 时间:
2016-05-13 14:53:28
阅读次数:
130
最近学习数据缓存技术,在网上搜索了一下,发现JAVA缓存技术比较流行的有Redis和memcached等,出于学习的目的,这里不做他们的比较。
这篇博客主要介绍缓存技术中的一种Redis的安装和使用.
一、下载Redis for windows
在网络中搜索Redis fow windows,就可以下载Redis的压缩包。解压包。
会发现其中有32位和64位的不同版本的包,根据需要...
Block源码解析和深入理解
Block的本质
Block是”带有自动变量值的匿名函数”.
我们通过Clang(LLVM编译器)来将OC的代码转换成C++源码的形式,通过如下命令:
clang -rewrite-objc 源代码文件名
下面,我们要转换的Block语法
1
2
3
4
5
6
7
int main(int argc, const cha...
分类:
其他好文 时间:
2016-05-13 14:53:07
阅读次数:
232
文件IO与系统编程
本文是作者阅读TLPI(The Linux Programer Interface的总结),为了突出重点,避免一刀砍,我不会过多的去介绍基本的概念和用法,我重点会去介绍原理和细节。因此对于本文的读者,至少要求读过APUE,或者是实际有写过相关代码的程序员,因为知识有点零散,所以我会尽可能以FAQ的形式呈现给读者。
系统编程概览如何确定glibc的版本?可以分为下面两种方式:...
分类:
其他好文 时间:
2016-05-13 14:54:14
阅读次数:
173
android属性
Android功能强大,界面华丽,但是众多的布局属性就害苦了开发者,下面这篇文章结合了网上不少资料,
第一类:属性值为true或false
android:layout_centerHrizontal 水平居中
android:layout_centerVertical 垂直居中
android:layout_centerInparent...
分类:
移动开发 时间:
2016-05-13 14:51:43
阅读次数:
212
图像:
1.图片浏览控件MWPhotoBrowser
实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存。可对图片进行缩放等操作。
下载:https://github.com/mwaterfall/MWPhotoBrowser
目前比较活跃的社区仍旧是Github,除此以外...
分类:
移动开发 时间:
2016-05-13 14:53:11
阅读次数:
1326
WireShark是一个非常准确和稳定的tcp抓包工具,但看其40多m的安装包就可以想象其功能的强大,借助其功能强大的表达式筛选器,可以迅速的筛选出来我们所需要报文和记录,最近我就通过WireShark推断网络性能问题的故障点,收获颇丰。...
分类:
移动开发 时间:
2016-05-13 14:52:35
阅读次数:
305
前段时间研究了不少android二次开发,其中有一种方法就是通过aidl通信,留接口提供给外面二次开发。从这里也可以看出:aidl通信是两个应用程序之间的进程通信了。在这篇博客中,主要写了两个应用程序,一个是serverdemo,可以称为服务端,也是提供接口的应用程序,在这里面我写了一个加法计算。二是客户端:clientdemo,在这个程序中调用了加法计算接口,把值传到serverdemo进行加法...
分类:
移动开发 时间:
2016-05-13 14:53:03
阅读次数:
182
【华为OJ】【算法总篇章】【华为OJ】【046-成绩排序】【工程下载】题目描述查找和排序 题目:输入任意(用户,成绩)序列,可以获得成绩从高到低或从低到高的排列,相同成绩
都按先录入排列在前的规则处理。
例示:
jack 70
peter 96
Tom 70
smith 67
从高到低 成绩
peter 96
jack 70
Tom...
分类:
编程语言 时间:
2016-05-13 14:51:52
阅读次数:
189
如何使用CSS来制作图形,比如说圆形,半圆形,三角形等。今天我特意在网上查阅了一下,介绍这样的教程还是蛮多的,因此我也决定整理一份相关教程出来与大家一起分享。
如何工作?
很少会有人意识到,当浏览器绘制的border,会有一个角度的问题。我们就是得用这样的一个技巧来制作三角的效果。我们只需要保证一边的边框是有色,其他边框色为透明色,这样我们就很容易制作出三角形,然后改变其大小来实现不同...
分类:
Web程序 时间:
2016-05-13 14:51:53
阅读次数:
252
在第8节我们完成了查询和删除商品类别的功能,那么现在实现查询和删除商品的功能就很好做了,原理和第8节一模一样,只是修改一些参数,比如请求不同的action等。由于查询和删除商品不需要弹出新的UI窗口,所以我们只要完成完成query.jsp中相应的部分以及相应的后台即可。
1. 查询商品功能的实现
查询功能主要在查询框中实现,从上一节可知,查询框用的是一个text:...
分类:
其他好文 时间:
2016-05-13 14:51:52
阅读次数:
153
1.引入STL,即 standard tempalate library,标准模板库,是C++的重要组成部分。C++ STL(标准模板库)是一套功能强大的 C++ 模板类,提供了通用的模板类和函数,这些模板类和函数可以实现多种流行和常用的算法和数据结构,如向量、链表、队列、栈。STL的构成:
组成部分
描述 iterator(迭代器)
迭代器用于遍历对象集合的元素。
contain...
分类:
编程语言 时间:
2016-05-13 14:52:21
阅读次数:
281
实现功能:
歌词显示及滚动事件实现
ViewPager使用
后续将博文,将实现已下载音乐扫描功能和已存在歌曲歌词下载。
因为,没有自己的服务器,所以网络音乐所有相关功能(包含搜索音乐、下载音乐、下载歌词)均无法保证时效性,建议,尽快下载和练习;如果你下载时候,已经因为我采集的服务器更改规则,请给我留言,如果可以解决,我将在有空的时候献上新的源码。
截止到目前的源码下载:
...
分类:
移动开发 时间:
2016-05-13 14:50:38
阅读次数:
186
1. HashMap概述:
HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。
2. HashMap的数据结构:
在Java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本结构来构造的,H...
分类:
其他好文 时间:
2016-05-13 14:52:49
阅读次数:
186
1,对象(Object)或实例(instance):在JavaScript中,对象则是数据与程序代码的组合,它可以是整个应用程序或整个应用程序的一部分。
2,属性(property)或字段(filed):是用来描述对象的特质。
3,方法(method):是用来执行对象的动作。
4,事件(event):是在某些情况下发出特定信号警告。
5,类(class):是对象的分类,就像对...
分类:
编程语言 时间:
2016-05-13 14:52:10
阅读次数:
242
欢迎各位新手品尝,后果不负,坑不坑,谁用谁知道...
分类:
其他好文 时间:
2016-05-13 14:52:39
阅读次数:
242
MyBatis高级结果映射(一对一、一对多、多对多的映射),延迟加载,查询缓存(一级缓存),二级缓存的学习记录;
1、学习中所使用到的例子,数据库基础分析
2、高级结果映射
3、延迟加载
4、一级缓存
5、二级缓存...
分类:
其他好文 时间:
2016-05-13 14:49:49
阅读次数:
178