梦想破碎是没有声音的,它只是缓慢又沉默地离开了。 by 苏更生

 分类:编程语言

测试的道理

测试的道理
在长期的程序语言研究和实际工作中,我摸索出了一些关于测试的道理。然而在我工作过的每一个公司,我发现绝大多数人都不明白这些道理,很多团队集体性的采用错误的做法而不自知。很多人把测试当成一种主义和教条,进行过度的测试,不必要的测试,不可靠的测试,并且把这些错误的做法传授给新手,造成恶...

cricode 10个月前 (09-15) 2142℃ 0评论 48喜欢

Java最佳实践

Java最佳实践
Java 是在世界各地最流行的编程语言之一, 但是看起来没人喜欢使用它。而 Java 事实上还算是一门不错的语言,随着 Java 8 最近的问世,我决定编制一个库,实践和工具的清单,汇集 Java 的一些最佳实践。 本文被放到了 Github 上。你可以随意地提交贡献,并加入自己...

cricode 1年前 (2016-04-05) 2817℃ 0评论 84喜欢

Java Top 100热门问答(Stackoverflow)

Java Top 100热门问答(Stackoverflow)
目录 基础语法 Java += 操作符实质 将InputStream转换为String 将数组转换为List 如何遍历map对象 public,protected,private,不加修饰符。有什么区别呢? 如何测试一个数组是否包含指定的值? 重写(Override)equla...

cricode 1年前 (2016-04-03) 8011℃ 1评论 130喜欢

我的Java后端书架

–小学生作文的开头:光阴似箭,日月如梭…..半年过去了,床底下又多了不少书,更新一个2.0版。 自从技术书的书架设定为”床底下“之后,又多了很多买书的空间。中国什么都贵,就是书便宜。 没有全部看完,看一部分觉得值得推荐就放上来了,但在碎片化的阅读下难免错评...

cricode 1年前 (2016-03-20) 2375℃ 0评论 35喜欢

给Java说句公道话

有些人问我,在现有的语言里面,有什么好的推荐?我说:“Java。” 他们很惊讶:“什么?Java!” 所以我现在来解释一下。 Java超越了所有咒骂它的“动态语言” 也许是因为年轻人的逆反心理,人们都不把自己的入门语言当回事。很早的时候,计算机系的学生用Scheme或者Pasca...

cricode 1年前 (2016-03-20) 1458℃ 1评论 41喜欢

Java8 简明教程

Java并没有没落,人们开始认识到这一点 欢迎阅读我编写的Java 8介绍。本教程将带领你一步步认识这门语言的所有新特性。通过简单明了的代码示例,你将会学习到如何使用默认接口方法,Lambda表达式,方法引用和可重复注解。在这篇教程的最后,你还将对最新推出的API有一定的了解,例...

cricode 2年前 (2015-11-28) 2180℃ 0评论 22喜欢

编程的智慧

编程是一件创造性的工作,是一门艺术。精通任何一门艺术,都需要很多的练习和领悟,所以这里提出的“智慧”,并不是号称三天瘦二十斤的减肥药,它并不能代替你自己的勤奋。然而我希望它能给迷惑中的人们指出一些正确的方向,让他们少走一些弯路,基本做到一分耕耘一分收获。 反复推敲代码 既然“天...

cricode 2年前 (2015-11-23) 3045℃ 0评论 27喜欢

编程的宗派

总是有人喜欢争论这类问题,到底是“函数式编程”(FP)好,还是“面向对象编程”(OOP)好。既然出了两个帮派,就有人积极地做它们的帮众,互相唾骂和鄙视。然后呢又出了一个“好好先生帮”,这个帮的人喜欢说,管它什么范式呢,能解决问题的工具就是好工具!我个人其实不属于这三帮人中的任何一...

cricode 2年前 (2015-11-22) 2031℃ 1评论 20喜欢

爬虫入门讲解:基础理论篇

关于爬虫内容的分享,我会分成两篇,六个部分来分享,分别是: 我们的目的是什么 内容从何而来 了解网络请求 一些常见的限制方式 尝试解决问题的思路 效率问题的取舍 一、我们的目的是什么 一般来讲对我们而言,需要抓取的是某个网站或者某个应用的内容,提取有用的价值,内容一般分为两部...

cricode 2年前 (2015-11-14) 3225℃ 0评论 18喜欢

HTTP协议教程(上)

文章内容: 1.HTTP协议概述 2.URL知识概述 3.HTTP消息结构详解   1.HTTP协议概述 定义: 超文本传送协议 (HTTP-Hypertext transfer protocol) 是分布式的超媒体系统应用之间的通信协议;是万维网(WWW)交换信息...

cricode 2年前 (2015-10-07) 2743℃ 0评论 13喜欢

40个Java集合面试问题和答案

40个Java集合面试问题和答案
Java集合框架为Java编程语言的基础,也是Java面试中很重要的一个知识点。这里,我列出了一些关于Java集合的重要问题和答案。 1.Java集合框架是什么?说出一些集合框架的优点? 每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、Ha...

cricode 2年前 (2015-09-06) 3515℃ 0评论 12喜欢

Python logging使用指南

Python logging使用指南
Python logging使用指南 在开发程序过程中,打一手好的日志,对我们事后追根索源,排查问题至关重要. 在初学c或者python时,我们的代码中通常充斥着这样的代码片段: printf("a is %d",a); ...

cricode 2年前 (2015-06-27) 6288℃ 1评论 16喜欢

scala教程

scala教程
Scala简明教程 (Brief Scala Tutorial ) 注:本文翻译自官方的Brief Scala Tutorial (A Scala Tutorial for Java programmers ),作者为scala语言创造者:Michel Schinz。本文能让你快...

Jay13 2年前 (2015-04-17) 6701℃ 0评论 30喜欢

Scala快速教程

Scala快速教程
Scala特点 基于JVM的FP+OO 静态类型 和JAVA可以互操作 Scala基本数据类型 Scala运算符 Scala流程控制 scala变量申明 Scala集合 Scala泛型 Scala函数 Scala函数式编程 Scala–FP的方式...

Jay13 2年前 (2015-04-12) 3721℃ 0评论 15喜欢

Java学习笔记 2

Java学习笔记 2
在实际编程当中,字符串操作,文件读写、数据库操作等都是最常用的。本文将记录java IO相关知识。 Java 的IO操作中,大量的使用了装饰器,以至于在刚开始使用时,感觉特别别扭。 比如读取一个文件test.txt,并将其内容一行一行输出。则代码片段如下: ...

Jay13 3年前 (2014-12-15) 2837℃ 0评论 21喜欢

Java学习笔记

Java学习笔记
一、基础变量类型 Java内置变量类型:           存储大小     例值     注释 byte      1byte        3      字节 int       4bytes       3      整数 short     2bytes      ...

Jay13 3年前 (2014-12-14) 5396℃ 0评论 31喜欢

ubuntu搭建Java开发环境

ubuntu搭建Java开发环境
没有用Java写过程序,做为一个Java新手,在写第一个Hello,world程序之前,先在Ubuntu中搭建Java开发环境。 本文目录: 一、JDK安装 二、MyEclipse安装 三、Hello World测试 一、JDK安装 好吧,我选择JDK1.6,是不是有点out了?...

Jay13 3年前 (2014-12-10) 3797℃ 0评论 8喜欢

图解TCP-IP协议

图解TCP-IP协议
本文通过两个图来梳理TCP-IP协议相关知识。TCP通信过程包括三个步骤:建立TCP连接通道,传输数据,断开TCP连接通道。如图1所示,给出了TCP通信过程的示意图。 图1 TCP 三次握手四次挥手 图1主要包括三部分:建立连接、传输数据、断开连接。 1)建立TCP连接很简单,...

Jay13 3年前 (2014-10-28) 30309℃ 2评论 41喜欢

编译器如何将高级语言转化成汇编语言的?

编译器如何将高级语言转化成汇编语言的?
对于每天奋斗在一线,用Java,C++,C#,Python等高级编程语言写程序的程序员们来说,理解编译器是如何将高级语言编译成汇编语言,有助于我们更好的理解计算机编程。 编译器将高级语言转化成汇编语言主要经过三个步骤:词法分析、语法分析、语法树解析。 本文用简洁易懂的方式描述了这...

Jay13 3年前 (2014-10-25) 14335℃ 5评论 39喜欢

在浏览器中输入网址后都发生了什么

在浏览器中输入网址后都发生了什么
输入网址后…… 如上图所示,为在浏览器中输入网址后的示意图。 1.浏览器发起DNS查询请求 在广域网中,我们是基于IP地址进行通信的。但通常客户访问的是一个网址,为此,我们需要先得到网址对应的IP地址,这就需要域名服务系统将域名转换成IP地址。如下图所示...

Jay13 3年前 (2014-10-24) 12721℃ 0评论 55喜欢

构建高性能web站点之IO模型

构建高性能web站点之IO模型
之前在5种服务器网络编程模型讲解中说到了同步阻塞IO、IO多路复用等IO模型。 这两天一口气把《构建高性能web站点》看完了,书中关于同步阻塞IO、同步非阻塞IO、多路I/O复用、异步IO、同步、异步、阻塞、非阻塞等一些概念的例子有点意思,分享一下。 关于同步阻塞IO、同步非阻塞...

Jay13 3年前 (2014-10-21) 4609℃ 0评论 22喜欢

C语言字符串那些事

C语言字符串那些事
1、C语言中的字符串 C语言中,字符串的使用对于初学者来说是个很容易混淆、很容易出错。C语言字符串是以‘\0′结尾。因此,我们使用字符串时,始终要记得留一个字节用于存放结尾符。 请看下面一段代码,哪个地方会在运行时出错? char str...

Jay13 3年前 (2014-10-18) 7100℃ 5评论 35喜欢

网页爬虫及其用到的算法和数据结构

网页爬虫及其用到的算法和数据结构
网络爬虫,是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本。网络爬虫是搜索引擎系统中十分重要的组成部分,它负责从互 联网中搜集网页,采集信息,这些网页信息用于建立索引从而为搜索 引擎提供支持,它决定着整个引擎系统的内容是否丰富,信息是否即 时,因此其性能的优劣直接影响着搜...

Jay13 3年前 (2014-09-28) 16027℃ 5评论 74喜欢

5种服务器网络编程模型讲解

5种服务器网络编程模型讲解
本文介绍几种服务器网络编程模型。废话不多说,直接正题。 1.同步阻塞迭代模型 同步阻塞迭代模型是最简单的一种IO模型。 其核心代码如下: bind(srvfd); listen(srvfd); for(;;){ clifd = acce...

Jay13 3年前 (2014-09-10) 21386℃ 5评论 27喜欢

高并发网络编程之epoll详解

高并发网络编程之epoll详解
在linux 没有实现epoll事件驱动机制之前,我们一般选择用select或者poll等IO多路复用的方法来实现并发服务程序。在大数据、高并发、集群等一些名词唱得火热之年代,select和poll的用武之地越来越有限,风头已经被epoll占尽。 本文便来介绍epoll的实现机制...

Jay13 3年前 (2014-09-07) 17501℃ 1评论 22喜欢

谷歌C++单元测试框架gtest使用教程

谷歌C++单元测试框架gtest使用教程
gtest,英文全称是Google C++ Testing Framework,即谷歌C++测试框架。是从谷歌内部诞生并受到业界追捧的一个非常优秀的测试框架,支持如自动发现测试、自定义断言、死亡测试、自动报告等诸多功能。 本文就来详细介绍gtest的使用。 一、gtest源码下载...

Jay13 3年前 (2014-08-27) 9354℃ 0评论 5喜欢

打造程序员专属的网站导航 (2)

打造程序员专属的网站导航 (2)
打造程序员个性网址导航分两步走: 1)抓取网页并提取网页中感兴趣的部分 2)将从各个网站上抽取到的网页链接、标题、图片组织成一个html文件作为个人网站的主页。 每天打开电脑,第一件事就是浏览各个网站的头条新闻、头条博客。个人比较关注的业界网站主要有虎嗅网、Pingwest、CS...

Jay13 3年前 (2014-08-23) 3597℃ 0评论 3喜欢

打造程序员专属的网站导航 (1)

打造程序员专属的网站导航 (1)
打造程序员个性网址导航分两步走: 1)抓取网页并提取网页中感兴趣的部分 2)将从各个网站上抽取到的网页链接、标题、图片组织成一个html文件作为个人网站的主页。 PS:当然前提是你要有自己的个人网站。可以去SAE免费搭建自己的个人网站。基本完全免费哦! SAE地址:http://...

Jay13 3年前 (2014-08-22) 19133℃ 0评论 11喜欢

斯坦福大学学生整理的游戏开发资源大全

斯坦福大学学生整理的游戏开发资源大全
这篇游戏开发资源大全由斯坦福大学的Amit整理。 这里有什么? 我喜欢由简单的部分进行延伸。这个页面包含了我在从事游戏开发过程中收集的内容,这里的内容并不是全部,而是代表了我需要了解的一些内容:几个主题(并不是全部与游戏开发有关),一般概念而不是特定平台的信息(图形、音频、编译)...

Jay13 3年前 (2014-08-20) 8655℃ 0评论 7喜欢