顯示具有 ajax 標籤的文章。 顯示所有文章
顯示具有 ajax 標籤的文章。 顯示所有文章

星期五, 2月 23, 2007

[link] YUI now has Free Hosting.

http://developer.yahoo.com/yui/articles/hosting/

YUI最近除了把版本跳了兩號之外, 又作出大動作: Free Hosting For YUI users.

YUI內含javascript/CSS/圖片, 現在免去下載直接可以使用確實省了一番功夫.

jQuery原本也是這麼做, 不過據說一陣子下來流量驚人.

所以後來就不建議人直接內嵌.

jQuery不過20K就流量驚人. 何況是更"碩大"的YUI.

不過 Yahoo! 果然是財大氣粗. 連widget的圖片都幫忙hosting了.

看來是有流量限制的網站的首選js library. YAHOO! 幫妳節省了頻寬. :P

Anyway, Nice Job!

看來過一陣子可以試試看直接在blogger用YUI了.

(無責任發言: 怎麼不快把jack簽下來這樣可以順便hosting一下ext :P)

星期一, 2月 19, 2007

[link] PyPy 0.99.0 released !

http://codespeak.net/pypy/dist/pypy/doc/news.html

光看這個版本號就非常令人興奮. 沒想到1.0指日可待了 :)

PyPy一直是我非常關注的專案,
作者群裡面包含了Psyco的作者跟不少很有經驗的開發者,
加上有金主奧援, 可以看作是Scripting Language的指標專案之一.

專案的目標主要是用python來撰寫Python Interpreter,
PyPy的實作相對於其他如Cpython/Jython/Ironpython的好處是:

1. 讓Interpreter核心程式碼更容易懂:
使用Python而非傳統使用C或C++或java或C#

2.更容易移植
PyPy基本上顛覆了傳統撰寫Interpreter的方式,
PyPy並不是對特定平台而寫,而是寫出來之後低階與機器相關的部份透過"language specification"來翻譯.
所以實際上Interpreter的核心不論在哪個平台其實程式碼都是一樣的.
只有低階的部分由rpython撰寫並透過不同的翻譯器翻譯成目標平台的語言.

目前的svn code裡面的平台翻譯器有C/Java/.net/Common Lisp/Java script/squeak(small talk)/llvm. (翻成Javascript倒是挺有趣的, 這裡還示範了怎麼用pypy在django裡作ajax =.= 不過這麼前衛然後再加一層的技術目前我是不敢真的用在專案上的 除非pypy1.0之後有很多人採用 不然暫時我還是喜歡乖乖的寫我的javascript :P 不過有興趣而且不喜歡javascript的人倒是可以看這篇Developing web applications with PyPy)

3.更容易加入JIT compiler
官方宣稱透過"language specification"的方式可以作到傳統Interpreter作不到的事情,
例如替Interpreter加入JIT compiler,讓Interpreter也能達到接近native language的速度.
不過0.99版由於JIT尚未整合進Pypy核心, 所以還未放入,
所以實在是不知道未來PyPy到底能多快. (我對這個一向是抱持著看到才相信的態度 :P)
不過當初的秘密謠言(Rumors have it that the secret goal is being faster-than-C which is nonsense, isn't it?)...
對比現在的0.99版官方宣稱的overall 2-3 slower than CPython實在是無法令人滿意...
最主要是JIT的速度不如預期, 所以只能說請PyPy Team裡的高手多加加油了...

也希望快點有1.0出來囉也希望1.0文件多一點...
現在的文件數目對於我這種只是看著code流口水的EndUser來說實在是有點太少而且編排太亂...

ps: 剛看到reddit上也有人在討論 看起來像是rpython的使用範例.
範例中透過translatorshell.py翻譯Rpython成為C code可以比原先的pure python code快了70倍.
http://programming.reddit.com/info/152lr/comments/c156v0

星期二, 2月 13, 2007

[圖解][特別報導] 日本女高中生用機器語言開發AJAX網站





日本人果然很惡搞 :P

ps: 被標題騙的人請舉手 :P

星期六, 1月 20, 2007

pyjamas -- GWT in python

GWT 是google放出的一個完全僅撰寫java(不用寫任何一行javascript)
而進行ajax/javascript開發的一個工具組

pyjamas 則是模仿GWT的一個完全使用python進行ajax開發的一個工具



從SVN commit 進來之後

svn co http://svn.pyworks.org/svn/pyjamas/trunk/ pyjamas

cd pyjamas/examples

./buildall.sh 就可以將範例都編譯好


此時就可以直接將瀏覽器指向examples目錄來觀看各個範例的效果
老實說 雖然只要會python聽起來很酷 但是如果真的要使用 請考慮兩個問題:

1. pyjamas仍是成熟度不高的專案 如果有任何問題 你還是得自行動手使用javascript
2. 不懂javascript 而進行ajax/javascript開發經常是非常危險的
因為你很容易誤用了javascript而導致網頁更多的問題

另外, 網路上也有人寫了關於與Django一起用的應用
http://trac.pyworks.org/pyjamas/wiki/DjangoWithPyJamas

星期六, 12月 30, 2006

Django如何支持JSON式AJAX

其實滿簡單的
Django已經內建simplejson模組 只要import進來就好了

底下是個傳遞JSON物件的範例

from django.utils import simplejson
def ajax_view(request):
jsondict = {'a':request.session['a'],'b':'hi'}
return HttpResponse(simplejson.dumps(jsondict))

如此你就會在javascript端收到一個含有a,b這兩個屬性的物件.

update: A tip using via decorator from mailing list

> def json_wrap(func):
> def _json_wrap(*args, **kwargs):
> return HttpResponse(dumps(func(*args,**kwargs)),mimetype="application/json")
> return _json_wrap

and then you can use it like:

> @json_wrap
> def foo(request,a,b,c):
> return dict(a=a,b=b,c=c)

update 2:

how to serialize the QuerySet object.

http://www.djangoproject.com/documentation/serialization/