Bambook开发比赛简记
生活随笔
收集整理的這篇文章主要介紹了
Bambook开发比赛简记
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近參加了[url=http://bbsdk.sdo.com/]盛大的Bambook開發比賽[/url],記錄一下這次比賽的經歷。
因為一直是在做web應用,所以我參加比賽的創意自然和web脫離不了關系:開發一個瀏覽器插件,用戶安裝好這個插件以后,就能夠通過網頁管理、分享Bambook上的書籍。
最終完成的作品: [url=http://bambook.cnprog.com/]http://bambook.cnprog.com/[/url]
瀏覽器插件源碼: [url=https://github.com/quake/BambookPlugin]https://github.com/quake/BambookPlugin[/url]
服務器端源碼: [url=https://github.com/quake/bambook]https://github.com/quake/bambook[/url]
在開發過程中遇到了幾個問題:
1. 跨平臺,跨瀏覽器的兼容性問題,我設想這個插件要能夠支持IE,Firefox, Chrome,而且還能夠支持Linux下的Firefox,MacOS下的Safari。經過一番對比,最終選擇了[url=http://www.firebreath.org/]Firebreath[/url]這個跨平臺支持的瀏覽器插件體系架構進行開發。它在NPAPI和ActiveX上做了封裝,然后用模板生成編譯腳本和平臺獨有代碼解決了不同操作系統下的編譯問題。
2. 服務器端當然選擇了我熟悉的Ruby On Rails,最終統計了一下代碼行數,完成上傳,下載,分享功能只用了50行左右的ruby代碼就搞定了。對于這種web項目,RoR的生產力還是一如既往地給力。
3. 因為不會做UI,所以找了一個現成的web css framework,然后寫了300行左右的js來和瀏覽器交互,所有的操作都是基于ajax。和其他一些界面很好的作品比起來,我這個作品只能寄希望在創意上取勝了。
4. Bambook PC端API其實挺難用的,特別是現在流行采用開放協議基礎上做的api,而Bambook卻采用了私有協議做API,這樣不僅導致SDK也要出各種版本(Windows, Ubuntu, Macos),而且開發人員受限頗多。如果能夠直接將Bambook變成一個Http Server,然后將書籍做為Restful Resource,這樣Bambook的PC端和機器端api都可以統一。
最后是廣告時間:如果你有Bambook,請下載我的作品,給我打個分吧: [url=http://bbsdk.sdo.com/opus_detail.do?sid=ff68269aab1b673622afa33107877dee]http://bbsdk.sdo.com/opus_detail.do?sid=ff68269aab1b673622afa33107877dee[/url]
因為一直是在做web應用,所以我參加比賽的創意自然和web脫離不了關系:開發一個瀏覽器插件,用戶安裝好這個插件以后,就能夠通過網頁管理、分享Bambook上的書籍。
最終完成的作品: [url=http://bambook.cnprog.com/]http://bambook.cnprog.com/[/url]
瀏覽器插件源碼: [url=https://github.com/quake/BambookPlugin]https://github.com/quake/BambookPlugin[/url]
服務器端源碼: [url=https://github.com/quake/bambook]https://github.com/quake/bambook[/url]
在開發過程中遇到了幾個問題:
1. 跨平臺,跨瀏覽器的兼容性問題,我設想這個插件要能夠支持IE,Firefox, Chrome,而且還能夠支持Linux下的Firefox,MacOS下的Safari。經過一番對比,最終選擇了[url=http://www.firebreath.org/]Firebreath[/url]這個跨平臺支持的瀏覽器插件體系架構進行開發。它在NPAPI和ActiveX上做了封裝,然后用模板生成編譯腳本和平臺獨有代碼解決了不同操作系統下的編譯問題。
2. 服務器端當然選擇了我熟悉的Ruby On Rails,最終統計了一下代碼行數,完成上傳,下載,分享功能只用了50行左右的ruby代碼就搞定了。對于這種web項目,RoR的生產力還是一如既往地給力。
3. 因為不會做UI,所以找了一個現成的web css framework,然后寫了300行左右的js來和瀏覽器交互,所有的操作都是基于ajax。和其他一些界面很好的作品比起來,我這個作品只能寄希望在創意上取勝了。
4. Bambook PC端API其實挺難用的,特別是現在流行采用開放協議基礎上做的api,而Bambook卻采用了私有協議做API,這樣不僅導致SDK也要出各種版本(Windows, Ubuntu, Macos),而且開發人員受限頗多。如果能夠直接將Bambook變成一個Http Server,然后將書籍做為Restful Resource,這樣Bambook的PC端和機器端api都可以統一。
最后是廣告時間:如果你有Bambook,請下載我的作品,給我打個分吧: [url=http://bbsdk.sdo.com/opus_detail.do?sid=ff68269aab1b673622afa33107877dee]http://bbsdk.sdo.com/opus_detail.do?sid=ff68269aab1b673622afa33107877dee[/url]
總結
以上是生活随笔為你收集整理的Bambook开发比赛简记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: portlet java_Portlet
- 下一篇: 发动机曲轴加工工艺与专用机床夹具设计(论