程序设计语言
文章平均质量分 84
pengpeng0826
这个作者很懒,什么都没留下…
展开
-
我的JAVA学习路线
列出了我这两年学习JAVA平台看过的主要书籍:1.java基础知识学习:《core java 8th》 or 《just in java 》2.面向对象思想学习:《设计模式解析》 《重构》《UML精粹》3.数据结构,算法学习: 《数据结构与抽象(Java语言版)》(世界计算机教材精选)3.java高级特性:《深入java虚拟机 2th》 and《java concurrency...2008-09-18 15:13:10 · 127 阅读 · 0 评论 -
浮点精度
本文深入描述浮点float类型在内存的存储方式,和为什么浮点计算时精度会缺失。 1. 浮点类型如何存储和计算2. 一个小实验通过一下程序我们不断可以看到类型转换的的实质。 而且可以验证float在内存中的存储。#include <stdio.h> int main(void){ int i = 65...原创 2012-02-27 19:03:07 · 144 阅读 · 0 评论 -
java concurrent programming
随着多核cpu的发展,以及线程技术的普及使用。并行编程成了必须掌握的技能。这里列出了java常用的一些并行编程API;0. 起源 最早的计算机一个cpu,并且cpu单核。某个时间只有一个进程或线程在cpu上执行。不存在某一时间有多个线程访问同一个数据的问题,也就不存在并发编程了。随着cpu上多核以及cpu上L1/L2/L3 cache技术的发展,程序员编写出并行...原创 2012-02-27 19:01:48 · 173 阅读 · 0 评论 -
[转]常见加密算法简介以及如何在java上使用
本文介绍常见的算法(MD5/SHA,DSA,RSA,DES)的应用场景,以及在java上的使用方法.(1) MD5/SHAMessageDigest是一个数据的数字指纹.即对一个任意长度的数据进行计算,产生一个唯一指纹号.MessageDigest的特性:A)两个不同的数据,难以生成相同的指纹号B)对于指定的指纹号,难以逆向计算出原始数据代表:MD5/SHAJava实现:MD5:...原创 2012-02-20 09:50:40 · 139 阅读 · 0 评论 -
jvm常用诊断命令
jinfo:可以输出并修改运行时的java 进程的opts。jps:与unix上的ps类似,用来显示本地的java进程,可以查看本地运行着几个java程序,并显示他们的进程号。jstat:一个极强的监视VM内存工具。可以用来监视VM内存内的各种堆和非堆的大小及其内存使用量。jmap:打印出某个java进程(使用pid)内存内的,所有'对象'的情况(如:产生那些对象,及其数量)。jconsole:一...2010-11-09 10:23:27 · 154 阅读 · 0 评论 -
【原】程序设计语言的将来
现今主要的编程范式有:“命令式编程”,“函数式编程”,“逻辑编程”; 现今大行其道的“命令式编程语言”有c,c++ ,java,c#,ruby等等。 函数式编程语言有“lisp,haskell,scala”等;当然ruby,scala应该是混合面向对象和函数式风格的语言。命令式语言为什么称为命令式语言呢? 命令式语言其实是当今“冯·洛伊曼”计算机体系结构一个抽象;程序员按照计算机的运...2011-09-26 11:42:48 · 133 阅读 · 0 评论 -
memcache深度分析
memcached特点协议简单基于libevent的事件处理内置内存管理memcached不互相通信的分布式交互过程memcached 的客户端使用TCP链接 与 服务器通讯。(UDP接口也同样有效,参考后文的 ;UDP协议 )一个运行中的memcached服务器监视一些(可设置)端口。客户端连接这些端口,发送命令到服务器,读取回应,最后关闭连接。鼓励客户端缓存这些连接,而不是每次需要 存取数据时...原创 2010-11-03 16:16:57 · 135 阅读 · 0 评论 -
shell
----------------------------经常用到的shell基本知识;shell 常见命令解析: $0代表脚本名称; $# 参数个数; $* 所有参数数组;注:遍历参数时也可一通过util...原创 2010-11-03 14:40:42 · 86 阅读 · 0 评论 -
memcache客户端的分布式算法
今天闲暇看了下memcached的客户端danga的分布式算法,原来这个默认算法使用“余数分散”算法来取得某个cache服务器的socket的。而没有用consistent hashing算法; 此算法简单。但不利用memcached服务器的扩展。扩展时会影响命中率。...原创 2010-11-01 20:27:11 · 112 阅读 · 0 评论 -
【原】高级语言虚拟机技术,hotspot jvm初识
写在前边:为了获得新的能力,解决与计算机系统主要组件接口的多种问题,操作系统、编程语言和编译器、计算机体系结构这三个领域都发展了虚拟机技术。虚拟机技术从进程和系统角度分为:进程虚拟机和系统虚拟机; 进程虚拟机:为用户应用程序仿真虚拟的ABI(application binary interface)环境;典型代表为高级语言虚拟机(HLL VM):hostspot jvm,.net的...原创 2010-09-28 16:28:54 · 512 阅读 · 0 评论 -
【原】深入浅出异步I/O模型
从上篇文章的介绍我们知道linux内核根据TCP/IP网络模型,给我们隐藏了传输层以下的网络传输细节,我们的网络应用程序只需要针对socket编程即可。这篇我们立足网络数据包的I/O。谈谈linux的一些I/O知识。 1. 基础知识 我们知道Linux的内核将所有外部设备都可以看做一个文件来操作。那么我们对与外部设备的操作都可以看做对文件进行操作。我们对一个文件...2011-01-11 18:51:15 · 236 阅读 · 0 评论 -
[转载]Web网站的性能测试工具
随着Web 2.0技术的迅速发展,许多公司都开发了一些基于Web的网站服务,通常在设计开发Web应用系统的时候很难模拟出大量用户同时访问系统的实际情况,因此,当Web网站遇到访问高峰时,容易发生服务器响应速度变慢甚至服务中断。为了避免这种情况,需要一种能够真实模拟大量用户访问Web应用系统的性能测试工具进行压力测试,来测试静态HTML页面的响应时间,甚至测试动态网页(包括ASP、PHP、J...原创 2011-04-21 18:43:01 · 121 阅读 · 0 评论 -
《深入java虚拟机》读后总结
大学期间曾在图书馆借过此书,当时还是第一版,但因为java当时还是入门阶段,此书竟如圣经一般,第三天就还了。现在在重拾此书,已是第二版了,现在读此书实乃一种享受。 作者Bill Venners 在严谨欢快的字里行间:主要根据JVM设计规范:平台无关,安全,网络移动性三个方面详细介绍JVM的体系结构,设计理念,工作原理等。 作为程序员来说,我认为主要了解以下方面对我们编写高效,正确...2008-09-18 16:12:21 · 86 阅读 · 0 评论 -
【原】编程范式漫谈
本文最早写在豆瓣:http://www.douban.com/note/341910359/ 写在前边:我们知道现有语言的编程范式有:过程式,面向对象,函数式,逻辑式。随着软件工业化程度的普及,以及软件的复杂度越来越高,编程语言的发展历程也是从最初的过程式(命令式)语言c,发展到以java语言为代表的面向对象编程语言。而逻辑编程语言(以prolo...原创 2014-09-09 13:22:40 · 178 阅读 · 0 评论