摘要:
1 JVM简介JVM是我们Javaer的最基本功底了,刚开始学Java的时候,一般都是从“Hello World”开始的,然后会写个复杂点class,然后再找一些开源框架,比如Spring,Hibernate等等,再然后就开发企业级的应用,比如网站、企业内部应用、实时交易系统等等,直到某一天突然发现做的系统咋就这么慢呢,而且时不时还来个内存溢出什么的,今天是交易系统报了StackOverflowError,明天是网站系统报了个OutOfMemoryError,这种错误又很难重现,只有分析Javacore和dump文件,运气好点还能分析出个结果,运行遭的点,就直接去庙里烧香吧!每天接客户的电话都 阅读全文
摘要:
Apache Abdera是Atom联合协议(Atom Syndication)和Atom发布(Atom Publication)协议的开源实现,目前尚处于“孵化”阶段。最近,Abdera到达了0.40里程碑版,朝着成功孵化迈出了重要一步。InfoQ借此机会就Abdera,Atom和AtomPub采访了该项目的两位核心开发者,IBM的James Snell和MuleSource的Dan Diephouse。InfoQ:每个人都知道Atom和AtomPub是用于网络日志的,对吧?在这个领域之外还有什么人会在乎它呢?James Snell:虽然Atom和AtomPub一开始只是为聚合和发布日志内容 阅读全文
摘要:
许可协议BSD GPL MPL LGPL APLGPL1 GPL许可证研究和扩展1.1 下面是我看过GPL许可证后的几点看法1.2 关于软件的修改权我认为下面的说法是比较全面的1.3 和GPL许可条款相比1.4 这个GPL条款是关于原始作者权利部分1.5 我的关于作者权利的想法1.6 关于GPL兼容许可的问题1.7 引伸 1.7.1 关于各种开放源代码许可讨论 1.7.2 关于开放源代码的商业模式2 SD和GPL的比较2.1 商业化开发和社区开发的比较3 开放源代码软件授权盘点4 建议尽量使用APL授权,不使用GPL授权5 GPL问答6 各种开源软件授权方式的选择6.1 各种开源软件授权方式的 阅读全文
摘要:
一直都想在Eclipse下搭建一个C/C++的开发平台,却一直未能如愿。最近,终于成功了,其实很简单。我们需要一个cdt,这个可以在Eclipse官网下载。我们需要MinGW——C/C++编译平台,下载后需要安装,同时选中g++、MinGW Make,同时设置环境变量,将%MinGW_HOME%\bin设置到PATH中,然后我们可以通过命令行敲击gcc,看是否有效果。我们需要gdb——C/C++调试平台,下载后安装,默认到MinGW_HOME就行。我们开启eclipse编译一个C/C++工程,右键可以运行,调试。安装设置环境变量新建C项目新建C++项目来段HelloWorldC的C代码#inc 阅读全文
摘要:
JNI,全称Java Native Interface,是用于让运行在JVM中的Java代码和运行在JVM外的Native代码(主要是C或者C++)沟通的桥梁。代码编写者即可以使用 JNI从Java的程序中调用Native代码,又可以从Native程序中调用Java代码。这样,编程人员可以将低阶的代码逻辑包装到高阶的程序框架 中,获得高性能高效率的同时保证了代码框架的高抽象性。在Android中,仅有以下类库是允许在JNI中使用的:libc (C library) headerslibm (math library) headersJNI interface headerslibz (Zlib 阅读全文
摘要:
Galileo 是 33 个主要 Eclipse 项目的同步发行版。Eclipse Foundation 表示,Galileo 发行版系列由 33 个项目组成。但是,有些项目是其他项目的子项目,Eclipse Foundation 的市场推广当中并没有突出所有的项目。无论如何,Galileo 代表时下最庞大的新技术单一发行版。对于 Eclipse 发行版系列,尤其是 Galileo,需要记住的重要一点是,虽然它是一个同步发行版,但并不意味着这些项目是统一的。每个项目都是一个单独的开源项目,有它自己的项目领导人、提交者和开发计划。发行版系列概念是为提供透明的、可预测的开发周期而设计的。获得 Ga 阅读全文