自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

在咖啡里溺水的鱼

追求内心的宁静

  • 博客(11)
  • 收藏
  • 关注

原创 开发日志 2017年8月31日

今日任务解决Java客户端连接Hbase的问题日志2017年8月31日10:27:09使用Ambari下载的hbase-site.xml作为配置文件运行测试类 @Test public void test2() { try { Configuration conf = HBaseConfiguration.create();

2017-08-31 23:12:31 2063

转载 HBase的实现基础 Google Bigtable论文中文翻译

转载自:http://blog.sina.com.cn/s/blog_6a0e086b0100mpig.html Bigtable:A Distributed System Storage System for Structured Data Bigtable:一个分布式的结构化数据存储系统 译者:alex 摘要 Bigtable是一个分布式的结构化数据存储系统,它被

2017-08-27 16:06:05 1451

原创 Clean Code 代码整洁之道 - 编码坏味道

注释 不恰当的注释 废弃的注释 冗余的注释 糟糕的注释 注释掉的代码 环境 需要多步才能实现的构建 需要多步才能做到的测试 函数 过多的参数 输出参数 标识参数 死函数 一般性问题 一个源文件中存在多种语言 明显的行为未被实现(违反 最小惊异原则 The Principle of Least Surprise) 不正确的边界行为 忽视安全 重复 在错误的抽象层级上的代码 基类依赖于派生类 信息过多

2017-08-22 22:05:43 823

原创 Java进阶之路【代码篇】——《CleanCode》编程规则精编(10) 并发

并发并发的意义分离 做什么 与 何时做并发防御原则 单一权责 限制数据作用域 使用数据副本 线程应尽可能独立 了解类库的线程安全性了解执行模型 生产者-消费者 读者-作者 宴席哲学家 警惕同步方法之间的依赖保持同步区域微小尽早考虑关闭问题编写线程测试代码 将伪失败看做可能的线程问题 先使非线程代码可工作 编写可插拔的线程代码 编写可调整的线程代码 运行多于处理器数量的线程 在不同平台上运行 装置试错

2017-08-22 22:04:55 357

原创 Java进阶之路【代码篇】——《CleanCode》编程规则精编(9) 系统、迭进

系统将系统的构造与使用分开分解main使用工厂模式实现延迟加载依赖注入合理使用代理借助于AOP实现面向切面编程书中翻译为 面向方面,我认为还是 面向切面 更形象一些AspectJ是实现面向切面编程的有力工具测试驱动系统架构不认同迭进简单设计的几条规则运行所有测试重构不合适的设计不可重复提高代码表达力尽可能少的类和方法

2017-08-22 22:03:46 332

原创 Java进阶之路【代码篇】——《CleanCode》编程规则精编(8) 类

类应该短小 单一职责 SRP 类或模块应该有且只有一条加以修改的理由 即类应当只做一类事情内聚 类应该只有少量实体变量。类中的每个方法都应该操作一个或多个这种变量。保持内聚就会得到许多短小的类 使用接口与抽象类来隔离修改

2017-08-22 22:03:01 436

原创 Java进阶之路【代码篇】——《CleanCode》编程规则精编(7) 边界、单元测试

边界作者的核心思想就是,使用 学习型测试代码,测试第三方类库的正确性的同时学习该类库的使用方法更多的操作技巧,则是使用适配器、代理等模式。单元测试作者推崇的TDD(测试驱动开发)我个人认为在WEB开发中使用较少,因此有关TDD的内容仅作记录,并不支持。TDD三定律 在编写不能通过的单元测试前,不可编写生产代码 只可编写刚好无法通过的单元测试,不能编译也算不通过 只可编写刚好足以通过当前失败测试的生产

2017-08-22 22:01:36 440

原创 Java进阶之路【代码篇】——《CleanCode》编程规则精编(6)错误处理

使用异常而非返回某种标识码 先写try-catch-finally语句 使用不可控异常 可控异常的代价是违反开放/闭合原则。如果在方法中抛出可控异常,而catch语句在多个层级之上,就得在catch语句和抛出异常处之前的每个方法签名中声明该异常。这意味着对软件中较底层的修改,都将波及较高层的签名给出异常发生的环境说明 记录日志 自定义合适的异常 定义常规流程 将业务逻辑与异常处理代码做出良好

2017-08-22 22:00:05 504

原创 Java进阶之路【代码篇】——《CleanCode》编程规则精编(5)对象和数据结构

对象和数据结构数据抽象使用合适的模型去抽象数据eg// bad public class Point { public double x; public double y; }// good public interface Point { private double x; private double y; private Point() {

2017-08-22 21:58:19 351

原创 Java进阶之路【代码篇】——《CleanCode》编程规则精编(4)格式

团队规则大于一切无论你认为自己的规则有多么的优秀,团队的规则有多么的不符合你的口味。无论你是喜欢Google的编程规范还是阿里的编程规范,只要你的团队有着自己的规则,且大部分人都在按照团队的规则去执行,那么你也同样应该遵守。规则的作用在于统一,只要达到了这一目的规则的细节其实并没有那么的重要。所以记住,团队的规则大于一切。因此以下的规则,仅供参考垂直格式类 最佳的垂直尺寸是200行以内。最大不应超过

2017-08-22 21:49:05 389

原创 Java进阶之路【代码篇】——《CleanCode》编程规则精编(3)注释

来自CleanCode原书中的一句话,告诉了我们注释的核心原则。 别给糟糕的代码加注释——重新写吧 注释不能美化糟糕的代码,能用代码说明的问题,就不要用注释来说明。 《CleanCode》这本书作为Java的必读书目之一,关于注释的这个观点却还是有许多人都不明白。甚至某些公司对于注释有着某些变态的格式要求,我真的是只能抱之以呵呵。如果看函数名就能明白函数的功能的话,那你再把函数名解释成中文写出

2017-08-07 21:55:28 455

空空如也

空空如也

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

TA关注的人

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