O3D這個東西大約在一年前google 就release出來了,雖然效能還比不上flash,但相信以javascript的執行效能不斷攀升且各家大廠相繼投入的成果,一定會促使著3d WEB蓬勃發展的,以下紀錄一些目前為止的相關資訊。
目前測試過的結果:在windows上裝了plugin之後可以在IE和firefox上運行,而windows版的chrome4.0版以上可以直接運作,而linux上的版本我還在嘗試build起來,之後有測試結果在做報告。
WEB 2D的發展已經愈來愈成熟了,SVG和canvas幾乎是複雜的2D處理的首選,也可以做到複雜的動畫處理。而O3D的出現,加快了WEB3D的發展,這應該也有助於未來chrome OS的推動,但是要吸引廠商來做相關應用程式的開發也還要在觀望,畢竟chrome OS在市場上的定位還是比較獨特的,如何擴大市場也是個難題。
Javascript 在指定物件為變數時是傳「reference」,若不知道這個特性很容易搞不清楚你的值為啥被改掉了,jQuery的extend函式可以做deep Clone,也就是遞迴將物件裡頭的任一成員都做clone,但針對array好像有點問題,因此我寫了一支小function來呼叫,以後要做cloneObject時可以直接服用。
/*
* cloneObject 會完整clone一個全新的Object
* 若傳入的object是array, 則會回傳array
*/
(function($) {
$.extend($, {
cloneObject : function(obj){
var newObj;
if($.isArray(obj)){
newObj = [];
for(var i=0; i<obj.length; i++){
newObj.push(arguments.callee(obj[i]));
}
return newObj;
}else{
newObj = {};
return $.extend(true, newObj, obj);
}
}
});
})(jQuery)
Closure Template 是google release 的工具Closure Tools其中之一,我會注意到這個工具是因為前端產生動態layout的需求愈來愈多,雖然已經很盡力要將邏輯與template分開,但前端跟layout的結合實在是太密切,很難說分就分,雖然要把layout獨立出來要花更多時間,但至少會更好維護,往後要換template也不用再重寫程式,本篇文章稍微紀錄一下使用心得與過程。
if (typeof examples == 'undefined') { var examples = {}; }
{namespace examples}
/**
* Says hello to the world.
*/
{template .helloWorld}
Hello world!
{/template}
if (typeof examples == 'undefined') { var examples = {}; }
if (typeof examples.helloworld == 'undefined') { examples.helloworld = {}; }
{template .helloName}
blablabla
{/template}
java -jar SoyToJsSrcCompiler.jar --outputPathFormat simple.js simple.soy
今年跟thegiive、JJ、PAPAYA組了一隊去參加,其實報名截止的前一天才決定要報名的,因為實在沒什麼idea,後來好不容易硬湊出個idea來做,勉強有了一點「梗」。
概念是嵌入blog的小工具,有點類似IE8的加速器,讓使用者選取文字之後可以更快速的選擇他想要查詢的功能,使用者可以停用任何功能或甚至停用這個功能。例如查詢地圖,生活+,知識+,翻譯,無名正妹,Youtube等等
用到的API:
雖然最後沒有拿到名次,不過感受到現場coding以及氣氛就值回票價了。隨意拍了一些照片分享一下。 More »
前端程式越搞越複雜,接踵而至的問題越來越多,雖然瀏覽器的效能不斷地提昇,但是只要IE6沒被淘汰的一天,網頁程式設計師永遠要替IE6補洞,Memory Leak是一個非常難搞得議題。關於微軟的官方說法可以參考Understanding and Solving Internet Explorer Leak Patterns,裡頭有詳細說明IE6會如何發生memory leak的情況。發生memory leak的徵狀就是:記憶體不斷飆上去,就算reload頁面,記憶體也不會被釋放,除非關掉瀏覽器。
在此不介紹為何為引發memory leak,因為我覺得這是瀏覽器應該要處理的問題,要拿出來講只是因為IE6沒辦法處理好罷了,雖然其他瀏覽器也並不是沒有這個問題,但是至少問題都沒有這麼嚴重,因此只需要針對IE6來處理即可。以下是我整理出幾種比較好的處理方式: More »
在電子地圖上直接繪製一些地標的資訊,對使用者會帶來一些便利,但顯示太多,又會造成圖示太繁雜。將地標直接標在圖面上有個特性,該地標不需要知道詳細的資訊,例如便利商店,我只要知道哪裡有便利商店,但大部份人不需要明確知道這是哪一個分店,只要標上某個icon即可,另外像加油站、郵局等都是類似的意義。不過觀察google map發現一些奇怪的地方:例如在不同的zoom level竟然會出現不同的商店,但是判斷是否要出現該地標的邏輯還是無法歸納,大概是為了版面的美觀,有重疊的地標就不做繪製,或者超過某一個量就不做繪製。個人覺得GMap最大的優點是有公車資訊,而且雖然是直接繪製在地圖上,但是點擊公車站牌是可以出現公車資訊的。 More »
很久沒發文了,最近忙翻了,雖然女朋友在國外逍遙,放棄優渥的台灣工作,跑去袋鼠國當服務生XD,但工作上也越來越多事情要處理,另外又跟朋友有些小計畫,把所有的時間都投入在工作中,以至於BLOG都荒廢了,碰巧最近跟朋友聊到工作的目標在哪?所以今天發點抒情文吧XD。
』Stay Hungry, Stay Foolish』 這句話我掛在MSN許久了,也有幾個朋友問我什麼意思,其實這句話是2005年Steve Jobs在史丹佛大學的畢業典禮對全校師生演講的最後一句話,他真不虧是世界上具有重要性的人之一,演講果然不同凡響,句句都能鼓舞人心。當我看到段演講時,我真的被振奮到了,他說「你無法預先把點點滴滴串連起來;只有在未來回顧時, 你才會明白那些點點滴滴是如何串在一起的(you can’t connect the dots looking forward; you can only connect them looking backwards)。 」我回想到我的大學生活,一進大一就被當了9學分,大二開始才知道要振作,雖然不認真唸書,當時倒也學到了一點企管的知識,但一直到要畢業的那一刻,我還是不知道念企管要幹麼,上網稍微找了一下工作,也不知道念企管能做什麼,但憑藉著一點對電腦的熱愛,從一個什麼都不懂的傻子,到現在做了一個programer的工作。在回顧過去的時候,將經歷過的一切串連起來的時候才發現這一切是多麼的奇妙。

Categories
Tag Cloud
Blog RSS
Comments RSS
Last 50 Posts
Back
Void « Default
Life
Earth
Wind
Water
Fire
Light 