花了三周时间,给公司写了一个基于Flex的web流程设计器原型系统。既然是原型系统,肯定有很多细微之处不完善的,但作为未来产品组件一部分,其预研和构架部分,还是拿得出手的。Flex本身在图形化方面提供了很良好的支持,但是要想实现Model与视图的分离、Command的处理等基础事情,这个就无法与EclipseGEF比了。于是首先不得不模拟GEF,在底层提供一套Model-EditPart的MVC构架,以及CommandFramework框架。这两个基本框架
系统 2019-08-29 23:10:42 2098
SinceNotificationModelisactuallyatypicalobservermodel,Iwillstartwiththeobservermodel,andevolveittotheNotificationModelinJMX.Simply,theobserverpatternallowsoneobject(theobserver)towatchanotherobject(thesubject),actuallytheobservera
系统 2019-08-29 23:06:57 2098
这是一堂关于UML基础知识的补习课;现在我们做项目时间都太紧了,基本上都没有做过真正的class级别的详细设计,更别提使用UML来实现规范建模了;本篇主要就以前自己一直感觉很迷糊的几种class之间的关系进行整理,让我们在真正用UML进行比如类图设计时能够更加清晰明了;以下就分别介绍这几种关系:继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Jav
系统 2019-08-29 22:44:12 2098
在多线程程序中,我们经常需要对要访问的资源进行加锁。加锁的目的是为了同步对资源的访问,但是,加锁不可避免的会降低应用的并发量。那么如何在需要加锁的时候,尽可能地提高并发量了?下面是我的一些经验,仅供参考。1.首先,我们要控制好锁的粒度。锁的粒度越大,能支持的并发就越小。我们只需要将真正需要同步的代码块lock住,而不需要同步的代码块不要放在lock块中。当然,锁的粒度也不是越小越好,粒度太细的锁会导致编程很繁琐,而且需要足够的细心和全面考虑方可保证锁不会出
系统 2019-08-29 22:43:04 2098
importjavax.microedition.lcdui.Canvas;importjavax.microedition.lcdui.Display;importjavax.microedition.lcdui.Displayable;importjavax.microedition.lcdui.Font;importjavax.microedition.lcdui.Graphics;importjavax.microedition.midlet.MI
系统 2019-08-29 22:32:15 2098
1、抛开windows开发使用的标准c/c++运行时库及windows商品化后包装的c/c++运行时库(邦到编译器里发布给用户使用)以及上层的mfc库等,我们且关注他提供的win32api.及严格分类与扩展后的.netframe类库。2、C#程序基于.net类库程序设计的时候同时也还是可以使用windows的api的。3、win32api以动态库dll的形式外加一些.h文件提供给用户使用。4、基于windows的运用程序要想尽情表现,必须熟练使用其提供的接
系统 2019-08-29 22:28:57 2098
原文地址:http://www.xueit.com/html/2009-01/34_364_00.html先说一下什么Nginx,内容来自Nginx中文站(http://www.nginx.cn/),Nginx("enginex")是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。Nginx是由IgorSysoev为俄罗斯访问量第二的Rambler.ru站点开发的,它已经在该站点运行超过两年半了。Igor将源代码以类B
系统 2019-08-29 22:19:33 2098
javascript创建一个构造函数来定义类然后通过prototype来扩展下面我们通过javascript构造一个人类//相当于java中的构造函数person=function(name,address){this.name=name;this.age=22;this.address=address;};//相当java中的方法person.prototype={sayHi:function(){alert("大家好我的名字是"+this.name+"
系统 2019-08-29 21:58:35 2098
./configure是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。make是用来编译的,它从Makefile中读取指令,然后编译。makeinstall是用来安装的,它也从Makefile中读取指令,安装到指定的位置。makeclean清除编译产生的可执行文件及目标文件(objectfile,*.o)。makedistclean:除了清除可执行文件和目标文件外,把configure所
系统 2019-08-12 09:27:20 2098
在编译libvpx的时候遇到挺多的问题,1.[STRIP]libvpx.a
系统 2019-08-12 09:27:00 2098