自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 资源索引

AndroidAndroidDevToolsGoogle中国开发者网大公司的开源地址FaceBook腾讯ArchitectureThe Architecture of Open Source Applications人工智能麻省理工公开课:线性代数斯坦福大学公开课 :机器学习课程快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl + Q

2017-02-05 22:02:01 478

原创 常用网址

大公司的开源地址 FaceBook react-native : A framework for building native apps with React. 腾讯 Android AndroidDevTools Google中国开发者网人工智能 基础 麻省理工公开课:线性代数 斯坦福大学公开课 :机器学习课程 吴恩

2017-02-05 21:50:51 557

翻译 可子类化设计

1. 可子类化设计为了创建可子类化的类需要注意以下几点:1.1 所有的构造函数,readObject,以及clone不能调用可重载的方法(非private, 非static,非final)1.2 如果有一个方法依赖于一个可重载方法的实现,这个依赖需要在javadoc里显式声明1.3 如非必要,不实现Serializable接口1.4 如非必要,不实现Cloneable接口

2015-11-05 20:52:15 364

翻译 由外之内的创建类(Construct classes from the outside in)

当设计一个新类时,从调用者(caller)的角度来看类的设计是很有帮助的:由于会有更多的用例(use case)反馈, 最终的设计质量会更好通常会使错误的设计发现的更早,这就意味着能更快的设计好大多数设计可以简单概括为下面几步:做做好的假设(Make your best guess)发现并修正错误重复1.2.第2步看起来是个关键步骤。错误发现得越早越

2015-10-26 20:59:29 397

翻译 按协约设计Design by Contract

一个类或接口的Specification(规范)是它提供的所有非私有的项的集合,作为服务提供给调用方,以及在javadoc中提供的使用指南。创建一个Specification(规范)是一件很有挑战的事,需要做到以下几点:* 越简单越好* 越清晰越好* 不含糊,不具二义性* 准确* 让读者完全忘掉实现细节(除非为了找bug)* 让读者很容易掌握按协约设

2015-10-16 19:54:08 606

原创 Tcpdump 命令解释

tcpdump -n 不转换主机名、端口号        -v -vv -vvv  verbose输出-i eth0 指定网络接口,默认eth0-w xxx.pcap 输出到文件-r xxx.pcap 读入文件-s 100 指定抓包大小,默认65535字节-c 10 指定抓包数量,否则会一直运行-A 以ASCII格式打印数据包内容-XX 以16进制和ASCII格

2015-10-08 19:38:37 665

原创 Android中的Selector

Color State List Resource1. ColorSelector, 放在color资源目录            android:color="#RGB或#ARGB, #RRGGBB #AARRGGBB"        android:state_pressed=["true" | "false"]                    

2015-08-15 18:31:52 360

原创 Android开发资源列表

Android官网http://developer.android.com/index.htmlAndroid Developers Blog:http://android-developers.blogspot.com/开源项目分类:https://fossdroid.com/c/development/Trinea开源项目汇总:https

2015-06-28 21:06:02 420

翻译 linux模拟网络状况

网络模拟模拟网络延迟1. 对出包增加100ms延迟tc qdisc add dev eth0 root netem delay 100ms2. 修改为100ms+-10ms延迟tc qdisc change dev eth0 root netem delay 100ms 10ms3. 修改为更随机跟前一个有25%相关tc qdisc change

2015-06-05 17:07:28 723

翻译 assert使用场景

Assert use cases常用的用assert场景:先决条件(private方法中) - 方法调用者必须满足这些需求后置条件 - 检查结果类不变式class invariant - 检查对象状态运行时不可达代码 - 某些分支预期不可达,但无法在编译器做检查(常见在else分支或switch的default分支)下面是例子import java.ut

2015-06-02 14:30:52 4720

翻译 不要在构造函数里往外传this参数

Don't pass 'this' out of a constructor在一个类例,this关键字指向一个native对象,当前类的实例。在一个构造函数里,this一般有以下几种使用方式.1. 在第一行,用this(...)调用其他构造函数2. 用this.filedName的形式访问设置属性3. 给其他对象的方法当参数,比如blah.operation(this);

2015-06-01 20:39:32 752

翻译 Java参数检查

Validate method arguments方法的第一行往往都是检查参数的合法性,其理念就是越早失败越好,这对于构造函数尤其重要。对于private的方法, 跳过参数合法行检查策略是一个合理的策略, 因为private的方法只有被类自身调用,类作者应该能够保证调用private方法时参数的有效性。如果有必要,可在private方法中可以用assert这个关键字来检

2015-06-01 20:16:28 1144

翻译 怎样写产品级别质量的代码

常常会问起怎么写production quality code, 产品级别的代码意味着对质量有严格的考量,不同于demo级别或普通开发级别的代码。那么产品级别的代码和普通开发级别的代码究竟有何不区别?这主要是他们面临的环境不一样。1) 产品总归是质量问题,它会暴露各种并发问题,负载问题,内存和CPU等各方面的压力.2) 产品输入数据的来源千差万别,或输入的数据压根就不正

2015-05-22 14:14:58 1745

翻译 Java Tips and Best practices to avoid NullPointerException in Java Applications

1) call equals() and equalsIngoreCase method on known String literal rather unknow object.eg. "knowObject".equals(unknowObjet)就很好2)Prefer valueOf() Over toString() where both return same resul

2015-05-20 20:30:20 350

翻译 Java javapractices (2) - Consider composition instead of subclassing

把组合当成继承的代替方案组合:采用转发调用到某个成员变量不会对该成员变量的具体实现有依赖由于可以运行时而不是编译时决定,相对更灵活继承:由于和父类或超类的实现紧密耦合,它破坏了封装性。给父类或超类添加方法会破坏子类父类或超类会同时添加进来不同的包可能有不同的人来维护,从不同的包来继承会引入风险例外的情况是基于模板的设计模式,这

2015-05-10 15:46:09 279

转载 Unicode来龙去脉

来源:http://mp.weixin.qq.com/s?__biz=MjM5OTMxMzA4NQ==&mid=211991021&idx=2&sn=5f51d940aa647d97abfeae298d1f0138很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物。他们看到8个开关状态是好的,于是他们把这称为“字节”。

2015-05-10 10:59:49 322

翻译 Java javapractices (1) - Avoid basic style errors

Common Practices很多新手都会犯同样的风格错误,这样的风格错误不会使程序运行有问题,但是会使你的代码不好维护。从本质上来说,新手代码都不太具有可读性。下面是一些常见的基本风格错误:类名太长类方法名太长很少或没有文档(javadoc)名称上无法区分局部变量(local variables),参数(arguments), 成员变量(fields)许多空的catch块,

2015-05-09 23:03:21 430

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除