Archive for 十一月, 2009
jianhualee发展规划
既然是做技术博客,所以自身的技术的高低直接影响网站的流量,所以我用一个间接的技术成长的经历来描述网站的成长的历程!
读国人写的技术文档—–读国人翻译的技术文档—–读老外的文档——国人参考jianhualee的技术文档——老外翻译jianhualee的技术文档——老外登录jianhualee!
注解(1并不是鄙视国人的技术不行,国内也有我很多敬仰的高人,2如果最后一个阶段没看明白的话,只能怪你智商不行了,哈哈)
Google Music
其实早在谷歌发布BETA版本的时候我就是最新的用户,另我没有想到的是,他们竟然用FLASH平台来体现RIA,没用SL也许因为他们和MS是死敌吧,或许是由于其他的技术原因,呵呵,当然,这个程序是不是GOOGLE做的还两说,毕竟他们是和巨鲸合作的吗?而且巨鲸也有自己的FLASH播放器,但是以前看见过一个GOOGLE团队还将一个AS包公不了,所以说这个程序是不是GOOGLE开发的对于我来说是个谜,是谁开发的不重要,主要看技术吗?播放器就不研究了, 歌词有现成的源码,那就说说他它的泡泡吧,左侧的搜索选项不错,搜索速度很快,也很准,难道是把歌的所有相关信息都统计好了,因该是的,MP3文件都自带这些信息,工作量很大啊,然后FLASH会发给后台一个数据吗,然后后台根据这些请求查询数据库,然后生成XML,FLASH再读取XML,呵呵,这是我YY的,肯定有他们自己独特的做法,我是这么认为的,因为整个数据序更新的太快了!我到现在还有一点不理解,既然都可以OUTLINE记录用户听过的歌,那为什么不让他们读取缓存里面的音频呢(当你听同一首歌的时候,就会重新加载),说实话,不做WEB开发的或者是对上网信息记录敏感的人很少清除缓存的,哎呀,或许他们有很独特的想法,那就只怪我知识浅薄了,说实话,这种可能性很大!
又一个加班之夜
新项目又是很急,可以理解,因为我们的项目都是走很急的路线!所以无论是设计师还是程序是就必须走高效和加班路线!程序开发只有两天,所以在公司扎营两天,不过还好,我们程序已经麻木了!BETA版本在凌晨2点诞生了,RELEASE版本会在上线的时候公布,敬请期待!
GOOGLE与jianhualee
刚刚在G里面试探性的搜索了一下jianhualee,结果很另我失望,没有这个网站的任何信息!从技术层面上来讲,因该是我的网站的点击率不够高!所以努力网站做好吧!但是又想了想,人们会在G上搜索jianhualee关键字吗?基本上不会的,如果人们知道jianhualee了,就没有必要在G上搜索了,除非人们想知道我网站的数据量,呵呵!所以通过这些信息我又得到了一个反馈,我的网站是专注于FLASH AS的,所以我的目标是在G上搜索 FLASH 或者AS,我的网站会出现在首页,哈哈!很伟大的想法啊!
Android初体验
很就之前就听说GOOGLE开发了一款开源的手机OS——Android,现在很多的手机都内置了这个系统,本人很喜欢智能机,我的手机就是WM6.1的,不过由于硬件支持不够,没有达到我对它的要求,呵呵,其实我对MS是很有信心的,例如最近的WIN7和WM6.5的发布!撤远了,呵呵!
上个礼拜做了一个项目,做一款手机(SAMSUNG I7500)的操作系统的演示程序,呵呵,当知道是Android的操作系统,我很兴奋,哈哈,因为我迷信GOOGLE,哈哈,唯一失望的一点就是,开发时间只有7天(我都把周末给奉献出来了),所以很多更深层级的演示我们都没有做!手机到手,先膜拜一下它吧,当然不是膜拜手机,而是膜拜Android,就像喜欢一个女孩一样,外在不重要,主要是看她的内在——灵魂!当然先看到的还是它的UI,很漂亮,呵呵!比WM要好看!然后就关注它的处理速度了,当然处理速度很大程度都和硬件有关(这款机器的硬件支持还不错),打开一个游戏,马上退出,天啊,竟然没有任何的延迟,而我的WM6.1竟然还有LOADING(声明一下,我的这中比较很不客观,首先这两个操作系统没有在同一个硬件平台上运行)!好了,开始关注它的用户体验了,毕竟我是做互动的,用户体验非常的重要!天啊,它帅的一塌糊涂!研究它其实就是学习它!不把它研究的差不多,周末做项目啊!当然研究它的动力,工作只占了很少的一部分!很大的一部分都是来自对GOOGLE的迷信!
FLASH CS5&IPHONE&Android
FLASH CS5可以可以开发IPHONE的可执行程序,也就是把一个项目打包成IPA,可以被IPHONE执行,每一次的升级都有令开发者兴奋的技术发布,呵呵,看来真是证明了那句话啊,竞争对手会让你变的更强大(MS的SL够强大吧,哈哈)!不过APPLE公司似乎对FLASH不感冒,IPHONE不让FLASH进入其中,呵呵,(由于苹果限制部分技术例如Flash Player的使用,Adobe无法向您提供iPhone和iPod Touch的Flash来自ADOBE官网),呵呵,似乎Android的机器可以吧!那么FLASH CS5为什么不能开发一些apk应用程序呢,毕竟ipa只能被IPHONE执行,而apk则可以被所有装Android的机器执行,现在很多的机器都预装了Android,比如MOTO,SAMSUNG,呵呵!如果ADOBE和GOOGLE合作,天啊,我都不敢多想~~~!
ActionScript3注入JavaScript脚本
JavaScript and VBScript Injection in ActionScript 3主要内容摘抄
脚本注入在这里是说在ActionScript3编程时更好的组织和使用JavaScript,不是黑客攻击做的那个。通过ActionScript3的ExternalInterface类完成,需要了解JavaScript和文档对象模型( DOM )。
简介
比如说现在用ActionScript3通过socket取数据,然后以JavaScript写到页面上去(我不想用FLEX组件了),这时会用很多现成js组件库,还有自己写的js组件扩展,如何更好的管理它们呢?
通过ActionScript3注入脚本提供以下好处:
服务器独立:JavaScript编译到SWF文件里了,相对于使用了一个swf,它要用的js文件在另一台服务器上,升级等一些事情会省心。
脚本代码保密 :JavaScript存储在SWF内,不像通常那样直接被看到源代。
透明 :通过适当的编写,只在用到时注入,不用时回收,节约资源。匿名运行,不会影响已有js, 除非你想。
运行脚本的修改 :脚本就像字符串参数一样,在运行时根据具体需求改变。
压缩 :JavaScripts可利用SWF压缩:例如一个32K的JavaScript文件时,存储在SWF里只有5K 。
对于需要Flash/的Flex与JavaScript交互的用户,这是一个不错的解决方案。
AS3脚本注入基础,这是一些常见用法:
ExternalInterface.call(“alert”, “foo”)
ExternalInterface.call(“alert(‘foo’)”)
ExternalInterface.call(“function(){alert(‘foo’); alert(‘bar’);}”)
var js:String = “function(){function myFunc(str){alert(str);};myFunc(Foobar);}”;
ExternalInterface.call(js)
原来我以为http://code.google.com/p/flex-iframe/这外开源项目用的已经很好了。
还有更好的:用XML在AS3中嵌入JavaScript
import flash.external.ExternalInterface;
var myJavaScript:XML =
<script>
<![CDATA[
function(){
var Foobar = 'foo';
function myFunc(str){
alert(str);
};
myFunc(Foobar);
}
]]>
</script>
ExternalInterface.call(myJavaScript); 这样写JS漂亮多了。
下面是一些更深入的研究,我没试过,从原文抄来的。
import flash.external.ExternalInterface;
var myJavaScript:XML=
<script>
<![CDATA[
function(){
// 本地变量
var myLocal = 'foo';
// 全局变量
myGlobal = 'bar';
}
]]>
</script>;
因为“var”被省略,myGlobal变成全局的,可以改变网页上js文件里写的一些变量值了。
import flash.external.ExternalInterface;
var myJavaScript :XML =
<script>
<![CDATA[
function(){
// 命名的本地函数,不保存
function myLocalFunction(){
alert('foo');
}
// 匿名的本地函数,不保存
var myOtherLocalFunction = function(){
alert('bar');
}
// 全局函数,可能会覆盖原有函数
myGlobalFunction = function(){
alert('Yo global dude!');
}
}
]]>
</script>
方法和变量效果一样,下面两者结合的例子:
import flash.external.ExternalInterface;
var myJavaScript :XML =
<script>
<![CDATA[
function(){
var snafu = 'You said';
// "Dojo"是被其它脚本创建的全局对象,
// 确认它存在再赋值,避免抛出异常.
// myVar和myFunction会存在对象 "Dojo"中,直到明确摧毁。
if(Dojo){
Dojo.myVar = 'foo';
Dojo.myFunction = function (str) {
alert(snafu + ":" + str);
}
};
}
]]>
</script>
ExternalInterface.call(myJavaScript);
这个XML定义函数被销毁,它保存的变量还在,是一种维护状态的方法,但是要小心内存泄漏和覆盖另一个脚本。
我们增加了一个新的全局方法,ExternalInterface.call(” Dojo.myFunction”,”你好”) ,将获得一个警告框说: “You said:你好。”
发送参数和返回值:
import flash.external.ExternalInterface;
var myJavaScript :XML =
<script>
<![CDATA[
function(myFoo){
function myFunc (str){
return str.toUpperCase()
};
var anonResult = myFunc(myFoo);
return anonResult;
}
]]>
</script>
var myResult = ExternalInterface.call(myJavaScript , “foobar”);
// myResult is “FOOBAR”
(转自http://www.javaeye.com/topic/457095)(来自GOOGLE SITES)
RegExp
有人说过,一个程序员大概一生当中大概有60%的时间在处理无聊的字符串!足可以看出字符串在浪费我们宝贵的生命!正在这是正则表达式来到了这个星球,一个很牛的技术,基本上每程序员都因该接触过他,当然了FP9才开始支持RegExp,这对于我们搞AS的人来说是一种福音,为如果不借助其他语言的话只靠String类来处理字符串的话,简直是在挣扎,当然如果借助其他语言的话,毕竟在数据验证的时候有个时间差,用户体验不是很好!现在形势就不一样了,让我们尽情的享受开发RegExp的快感吧!从今天开始看RegExp的API~~~拿下它,不废话了,开始吧!(2009-09-17-23-22)
company’s new website
最近DESIGNERS在做BANNER,所以我们的PROGRAMMER–CUP要出LAYOUT,哈哈!BOSS发话了,十一必须ONLINE!
OMG!又要睡公司的沙发了~~~~(2009-09-23-23-49)
LAYOUT是25日出的,所以就有4天的开发时间,愁啊,因为我是30号早上的火车,总不能把田一个人扔下吧(他还要去西藏,真有体力啊!),不过还好,功夫不负有心人,BETA在(2009-09-28-03-49)就诞生了,哈哈,URL是(http://www.openglow.com),这三天一直都干到凌晨4点钟!身体很虚啊!一会公司组织去爽!哈哈(2009-29-15-13)(来自GOOGLE SITES)


最近评论