<?xml version="1.0" encoding="UTF-8"?><!-- generator="WordPress/2.9.2" -->
<rss version="0.92">
<channel>
	<title>Open your thoughts</title>
	<link>http://blog.baturu.com</link>
	<description>On the Java road following James Gosling</description>
	<lastBuildDate>Wed, 10 Mar 2010 09:31:39 +0000</lastBuildDate>
	<docs>http://backend.userland.com/rss092</docs>
	<language>zh-cn</language>
	

<!-- Start Of Script Generated By WP-PostViews Plus -->
<script type='text/javascript' src='http://blog.baturu.com/wp-includes/js/jquery/jquery.js?ver=1.3.2'></script>
<script type="text/javascript">
/* <![CDATA[ */
/* ]]> */
</script>
<!-- End Of Script Generated By WP-PostViews Plus -->
	<item>
		<title>Android 应用开发系列（二）基础知识-Activity和Task</title>
		<description><![CDATA[前面提及过，一个 activity 可启动另一个，包括定义在不同程序里的 activity。举例来说，假定你想让用户显示某地的一个街道地图。现在已经有一个  activity 能干这个事情，所以你的 activity 所要做的就是把必须的信息放到 Intent 对象并传递给该 activity 的  startActivity() 方法。地图 viewer 会显示这个地图。当用户按了 BACK 键，你的 activity 会再次出现在屏幕上。
对用户来说，就好像这个地图就是跟你的 activity 是同一个程序的一部分一样，尽管它其实是定义在另一个程序里并且运行在那个程序的进程里。Android 通过让这两个 acitivity 在同一个 task 里来保持这种用户体验。简单来说，一个 task 就是使得用户感觉如何一个程序（&#8221;application&#8221;）的东东。它是一组相关的 activity， 排列在一个 stack 里。stack 的根 activity 是开始这个 task 的 activity  — 典型地，是用户在程序启动器里所选择的那个 activity。在 stack 顶部的 activity 是当前正在运行的那个 —  拥有焦点、响应用户动作。当一个 activity 启动另一个 activity，新 [...]]]></description>
		<link>http://blog.baturu.com/index.php/2010/03/10/android_app_development_series_2_app_fundamentals_activity_and_task.html</link>
			</item>
	<item>
		<title>Android 应用开发系列（二）基础知识-程序组件</title>
		<description><![CDATA[Android 最终是需要打包成 .apk 文件，一个 .apk 文件就是一个 Android 程序，用户下载这种文件并安装到自己的设备上。

    * 默认地，每个程序都运行在自己的 Linux 进程内。当任何程序需要被执行时，Android 会启动一个进程，当程序不再需要时停止该进程。
    * 每个进程都有自己的 Java 虚拟机 (VM)，因而程序代码运行时隔离于其它程序代码。
    * 默认地，每个程序都被指定一个唯一的 Linux user ID。权限也做了设置，这样程序文件只对该用户可见，只对该程序自己可见 — 尽管也有其它方式可将它们暴露给其它程序。

两个应用之间也可以共享同一 user ID，在这种情况下，它们就可以看到彼此的文件。为了保存系统资源，使用相同 ID 的程序也可以协调起来运行于同一 Linux 进程，共享同一 VM。]]></description>
		<link>http://blog.baturu.com/index.php/2010/03/07/android_app_development_series_2_app_fundamentals_components.html</link>
			</item>
	<item>
		<title>Android 应用开发系列（一）简介</title>
		<description><![CDATA[Google 在 2007 年 11 月推出了手机操作系统 Android，显然 Google 预见到了手机及便携性终端设备在未来的互联网中将扮演极其重要的角色。借助开放源代码的优势，Android 已经逐渐形成了以 Google 为首，包括软、硬件、服务和运营商在内的强大手机联盟，这个联盟所形成的良好氛围，已经使得 Android 受到越来越多的关注，且市占率快速攀升。个人认为，Android为代表的开放联盟，必将战胜以 Apple iPhone 为代表的封闭联盟。]]></description>
		<link>http://blog.baturu.com/index.php/2010/03/06/android_app_development_series_1_introduction.html</link>
			</item>
	<item>
		<title>Install Java ME SDK 3.0</title>
		<description><![CDATA[在安装完 Java ME SDK 3.0，并试图启动，总是提示 connection refused，这就是 windows 防火墙在搞鬼，阻挡了对特定端口的访问。
把 Java ME SDK Device Manager 加到防火墙的允许名单内，就可以顺利启动 Java ME SDK。
Related Posts:2010/01/28 -- 应该使用 char[] 保存 Java 密码2009/12/01 -- Java Annotations2009/11/18 -- Java 中的 Properties2009/11/12 -- What&#8217;s the differences between ClassNotFoundException and NoClassDefFoundError2009/11/12 -- Class and ClassLoader in Java]]></description>
		<link>http://blog.baturu.com/index.php/2010/03/02/install_java_me_sdk_30.html</link>
			</item>
	<item>
		<title>Dock any applications into system tray area in ubuntu</title>
		<description><![CDATA[alltray 能够让任意程序最小化到system tray。
安装也很简单：sudo apt-get install alltray
使用就更简单了，启动alltray后，按照alltray的提示，点击要minimize的程序即可
Related Posts:2009/06/30 -- SVN 1.6 on ubuntu2009/06/19 -- How to reset your Linux root password (reship)2009/05/13 -- How to install libstdc++.so.5 for Ubuntu2009/11/03 -- 某些 Linux distribution 导致 Java swing 空白2009/07/02 -- Ubuntu 下 NetBeans 编辑器的字体锯齿问题]]></description>
		<link>http://blog.baturu.com/index.php/2010/02/22/dock_any_applications_into_system_tray_in_ubuntu.html</link>
			</item>
	<item>
		<title>Downgrade in Ubuntu</title>
		<description><![CDATA[有时安装了一些高版本的软件，却又后悔，想回到低版本。其实这个降级过程是比较麻烦的，不过还好，总还是有办法的。
首先，查出安装过的版本号，以firefox为例：apt-cache show firefox，记住你要安装的某个低版本(version)
接着，咱们正式降级：sudo apt-get install firefox=&#60;低版本号&#62;
还以firefox为例，它会引用其它好几个package，所以这些引用到的package也要一并降级。
如我今天将 firefox 从 3.62be 降级到 3.6 ：sudo apt-get install firefox=3.5.7+nobinonly-0ubuntu0.9.10.1 firefox-3.5-branding=3.5.7+nobinonly-0ubuntu0.9.10.1 firefox-3.5=3.5.7+nobinonly-0ubuntu0.9.10.1
Related Posts:2009/02/02 -- 使用 netbeans 6.5 创建 firefox 扩展2008/04/07 -- Others Online &#8211; browser-based IM2008/03/20 -- upgrade my Firebug]]></description>
		<link>http://blog.baturu.com/index.php/2010/02/06/downgrade_in_ubuntu.html</link>
			</item>
	<item>
		<title>Differences between WADL and WSDL 2.0 HTTP binding</title>
		<description><![CDATA[本文翻译自《Definition Languages for RESTful Web Services: WADL vs. WSDL 2.0》的一部分
先对如下两个名词做一些解释：
WADL：Web Application Description Language
WSDL 2.0：Web Services Description Language
以下翻译取自该文最关键的部分，即两者之间的不同点：
尽管 WADL 和 WSDL 2.0 HTTP binding 在某种程度上非常类似，但它们还是有一些不同点。
Resources vs. Interfaces
WADL 是以资源为中心的描述语言。WADL 文档是由一组资源描述组成。与之相反，WSDL 是以接口为中心的描述语言。.
WSDL 2.0 描述是由一组接口定义构成，这些接口定义则是由操作定义构成。
在 WADL 里，甚至即使是一个复杂的商业应用也被描述为对资源的基本操作。
仅支持 HTTP  vs. 独立于传输协议
WADL 只支持对使用 HTTP 协议的 web 应用进行描述。
因为限定于 HTTP，WADL 要比 WSDL 2.0 更简单，后者设计目标是具有能够使用任何协议来描述服务接口的能力。
消息交换模型(模式)
一些人认为 HTTP 所隐含的唯一消息交换模式只是 request-response (in-out)。尽管事实上 HTTP 天生是 request-response，但它也能用于 one-way 和 [...]]]></description>
		<link>http://blog.baturu.com/index.php/2010/02/01/differences_between_wadl_and_wsdl_20_http_binding.html</link>
			</item>
	<item>
		<title>Mockups For Desktop</title>
		<description><![CDATA[这个工具可以用来模拟创建界面，非开源，但也有免费版，只是功能要少一些。

Random Posts2009/03/11 -- Java 安全性 &#8211; 认证与授权2008/05/14 -- UDDI 规范 v3.0.2 &#8211; Utility tModels2006/08/10 -- 如何让你的iframe高度和宽度随内嵌网页高度和宽度的变化而变化2010/02/01 -- Differences between WADL and WSDL 2.0 HTTP binding2009/03/01 -- Java 程序中如何对 XML 文档进行验证？]]></description>
		<link>http://blog.baturu.com/index.php/2010/01/28/mockups_for_desktop.html</link>
			</item>
	<item>
		<title>应该使用 char[] 保存 Java 密码</title>
		<description><![CDATA[以下内容引用《Java安全性, 第一部分: 密码学基础》:
存储／删除密码。如果密码是存储在 Java String 对象中的，则直到对它进行垃圾收集或进程终止之前，密码会一直驻留在内存中。即使进行了垃圾收集，它仍会存在于空闲内存堆中，直到重用该内存空间为止。密码 String 在内存中驻留得越久，遭到窃听的危险性就越大。
更糟的是，如果实际内存减少，则操作系统会将这个密码 String 换页调度到磁盘的交换空间，因此容易遭受磁盘块窃听攻击。
为了将这种泄密的可能性降至最低（但不是消除），您应该将密码存储在 char 数组中，并在使用后对其置零。（String 是不可变的，所以无法对其置零。）
.
Related Posts:2010/03/02 -- Install Java ME SDK 3.02009/12/01 -- Java Annotations2009/11/18 -- Java 中的 Properties2009/11/12 -- What&#8217;s the differences between ClassNotFoundException and NoClassDefFoundError2009/11/12 -- Class and ClassLoader in Java]]></description>
		<link>http://blog.baturu.com/index.php/2010/01/28/char_array_to_store_password_in_java.html</link>
			</item>
	<item>
		<title>本博客终于又重新启用了</title>
		<description><![CDATA[网络审查越来越严格，本博客虽不涉及时事、政治等敏感话题，亦遭受停机之不幸。
为免再次遭受此等不幸，本博客特声明如下：

坚决拥护党的领导，紧密团结在以胡锦涛同志为总书记的党中央周围  
不谈政治，不谈时事，不谈社会话题

3. 本博只谈技术，只为混口饭吃
敬请广大网警和五毛们监督！
Related Posts:2009/06/13 -- 弃用 Yahoo! stat.2009/01/08 -- 内地&#8217;张羽&#8217;生2008/07/05 -- 开心一笑2008/06/14 -- 欧洲杯，荷兰4:1狂胜法国2008/05/26 -- 需要慢跑，不能操之过急]]></description>
		<link>http://blog.baturu.com/index.php/2010/01/24/my_blog_is_recovered_once_again.html</link>
			</item>
</channel>
</rss>
