只显示主题贴

函数的副作用及其他 Pure Function、Impure Function、副作用、Referential Transparent 纯函数(Pure Function)是这样一种函数——输入输出数据流全是显式(Explicit)的。 显式(Explicit)的意思是,函数与外界交换数据只有一个唯一渠道——参数和返回值;函数从函数外部接受的所有输入信息都通过参数传递到该函数内部;函数输出到函数外部的所有信息都通过返回值传递到该函数外部。 如果一个函数通过隐式(Implicit)方式,从外界获取数据,或者向外部输出数据,那么,该函数就不是Pure Function,叫作Impure Func ...
线程同步 作者 : buaawhl 我们可以在计算机上运行各种计算机软件程序。每一个运行的程序可能包括多个独立运行的线程(Thread)。 线程(Thread)是一份独立运行的程序,有自己专用的运行栈。线程有可能和其他线程共享一些资源,比如,内存,文件,数据库等。 当多个线程同时读写同一份共享资源的时候,可能会引起冲突。这时候,我们需要引入线程“同步”机制,即各位线程之间要有个先来后到,不能一窝蜂挤上去抢作一团。 同步这个词是从英文synchronize(使同时发生)翻译过来的。我也不明白为什么要用这个很容易引起误解的词。既然大家都这么用,咱们也就只好这么将就。 线程同步的真实意思和字面意思 ...
ErLang语法提要 ErLang中的标点符号 ErLang语法中充满了一些约定。大写字母开头的名字(比如Address),表示一个变量,包括参数、局部变量等;小写字母开头的单词(比如ok),表示一个常量,叫做atom(原子的意思),包括常量名、函数名、模块名等。 ErLang的注释用%开头。ErLang用下划线“_”表示任意变量,类似于Java的switch语法里面的default选项。 ErLang脱胎于Prolog,不过,我觉得,ErLang语法和Haskell语法比较象,都是采用 -> 定义函数。 ErLang语句中的标点符号用法很象文章的标点符号。 整个函数定义结束用一个句号“.” ...
学如逆水行舟,不进则退。 半年多来,居无常所,没有稳定的上网环境,这次抽空上来一看,又有好多陌生的名词漫天飞舞了。 落伍退化得很厉害。不过,我还能温故而知新,炒炒冷饭,写写基本的内容AOP。怀旧一番。 AOP = Proxy Pattern + Method Reflection + Aspect DSL + 自动代码生成 Declarative Programming & DSL Aspect Oriented Programming(面向方面编程,简称AOP)是一种Declarative Programming(声明式编程)。 Declarative Programming(声明式编 ...
字符串编码(charset, encoding/decoding)问题原理 编码问题很重要,关于编码问题的文章也很多。我本来没有兴趣重复这个主题。 一个朋友问我有没有比较好的编码介绍文章。我记得以前看过几篇很不错的,但是当时搜索到的时候,就比较费劲,一时想不起来。于是,我就说,我攒一篇好了。 --------------------------------------- 编码无处不在。Database, file, editor, IDE, compiler, browser。 代码(比如java, jsp, asp, php, python, ruby etc)里面的字符串比较麻烦,涉 ...
2006-08-17

ajoo JRC

http://jrc.dev.java.net ajoo项目批准了。 想参与的去java.net上申请一个账号吧。告诉ajoo,可以把你加进去。 cvs: host: cvs.dev.java.net repository: /cvs module: /jrc 项目的缘起可以看这里。 http://forum.javaeye.com/viewtopic.php?p=132021#132021 项目总共分3部分。 1. jrc的组合子部分,可以生成AST。 checked out code。看到这部分ajoo已经做了。Relation, 这部分就是SQL的语法元素组合子。ajoo称之为 ...
  • 进入论坛 Java
程序员主编霍泰稳,找到庄表伟,要找个人写介绍Cache的文章。 庄表伟推荐了我。前几天讨论Cache,正好可以写个总结。 于是,我就写了一篇。由于错漏在所难免,先发出来,和大家一起讨论,求得指正。 ----------------- Cache Insight 前言 首先,介绍一下我(作者)自己使用Cache的背景,以便读者更清楚地了解我下面要讲述哪些内容。 我主要是一个Cache实现者,而不是使用者。为了给一些ORM(比如JPA实现)提供Cache支持,我需要包装其它的Open Source Cache,并考察它们的特性。 我对这些Open Source Cache的一些工作原理,了解 ...
  • 进入论坛 Java
关于Cache部分,写了一篇 http://forum.javaeye.com/viewtopic.php?t=21631 下面写开发JPA Cache 的感受。 firebody 是一个信仰坚定,水平很高的 TDDer。 很荣幸加入他的JPA团队。让我体验了TDD,集成测试。 对TDD, test,我的看法是这样,由于目前,测试远远没有达到应该重视的程度,现阶段无论怎么强调都是不过分的。 同样,对于已经TDD已经强调够了的人们来说,也应该考虑超越TDD,而不是满足于现状。 JPA是一个相当大的项目。firebody控制的相当好。TDD功不可没。 需求分析,问题分解,to do lis ...
1. Remote Cache Remote Cache 是对应于Local Cache来说的。 Key or Value 需要序列化,需要内部网络通信。 Remote Cache 可分为 中心Cache,和Cluster Cache。 Cluster Cache的一个要点是,只是remove的时候,传播 invalidate事件。 这样只需要在 update 的时候,进行传播。 好处是,读取的时候,比起中心cache,就少了一布内部网络通信。 坏处是,命中率比memcache低,因为memory是分开的。update多的时候,需要传播 remove/invalidate事件。 2. ...
  • 进入论坛 Java
Web显示层技术评估 名词界定 显示层的意思就是Presentation Layer,也翻译成表现层、展现层、展示层。 本文讨论的范围只包括采用HTML Template的显示层技术,不包括Echo,GWT(google web toolkit)等根据代码产生HTML的工具。 本文主要讨论Server Side (针对Java Language)的显示层技术,然后进一步讨论Browser Side(Ajax)的显示层技术(一个典型的Ajax应用也分为Model, View, Controller – Data, HTML/CSS, JavaScript)。注意,本文关于Ajax的讨论只有很少一 ...
  • 进入论坛 Java
buaawhl
搜索本博客
其他分类
存档
最新评论