Mac OS下开发,Objective-C是当仁不让的No.1,当然今年的兵器普上出现了新面孔Swift。考虑到我在C/C++圈子摸爬滚打了这么多年,估计用Objective C会更称手一些吧。而且Objective C发展了二十多年,一直由苹果独立支撑,竟然在编程语言兵器普上排在前几位,自然有其过人之处。好吧,就选它了。学习一门新的语言,一本经典的入门书籍那是必须的,经过大牛的推荐,我选择了<<Objective-C Programming – The Big Nerd Ranch Guide>>。
受《像极客一样写博客》这篇文章的影响,我也打算以后在github上写日志了。在wordpress上写日志差不多两年了,一直没有找到linux下好用的客户端。现在写文章一直都是用的Windows Live Writer,用起来不错,可惜只能在Windows下使用,而我因为工作原因,大部分时间都是在Linux上写代码。自从接触了markdown后,觉得是一个不错的选择,至少写博客足够了。使用github pages,写文章就像写代码,也不用担心文章丢失,提交记录随时可查。图片我托管到七牛云存储。
对于一款浏览器而言,速度无疑是非常重要的,其中加载速度更是重中之重。UC浏览器很早就采用了云端加速技术,所以在网页加载速度方面一直很有优势。现在越来越多的浏览器,如Opera、QQ浏览器都采用了服务器端加速技术。Chrome移动版从V33开始正式支持数据压缩代理。下面就分析一下Chrome for Android所采用的数据压缩技术。
数据压缩代理
最新的Chrome for Android支持数据压缩代理,通过Google部署的代理服务器优化网站内容,可以极大的减少数据流量。有数据表明,采用这一特性可以减少web页面大小的50%。要启用这一功能,进入Chrome浏览器的菜单"设置->带宽管理->减少数据流量消耗",然后打开即可。
随着Android4.4的发布,Android WebView改成由Chromium驱动了。浏览Android4.4源代码,可以看到之前版本中的external/WebKit目录被移除掉了,取而代之的是chromium_org。也就是说chromium已经完全取代了之前的WebKit for Android。虽然chromium完全取代了以前的WebKit for Android,但Android WebView的API接口并没有变,与老的版本完全兼容。这样带来的好处是基于WebView构建的APP,无需做任何修改,就能享受chromium内核的高效与强大。下面就Android 4.4中WebView的实现进行分析。
Chrome浏览器的extensions技术非常强大,让广大的开发人员使用html/css/js就能扩充Chrome浏览器的功能。Google甚至还打造了chrome web store,上面已经有成千上万个插件,有很多新奇和实用的插件,不得不佩服程序员的创造力。不过Chrome for android尚不支持extensions,在开发Browser,曾考虑过enable chromium的extensions开关,后来有些问题实在无法解决,只能放弃。