Google Sitebricks Web Framework
JSF和Wicket主要隱藏了Http,把Http打入了底層,用桌面的設計思維如: Events, components 和widgets 來和使用者的點選事件互動。而Sitebricks直接基於Http,類似REST精神,暴露Http,而不是隱藏。
我個人以前在帖子裡也嘀咕過JSF這種模式,現在都是WOA,都在向Web學習, 而JSF則是讓Web向桌面Swing學習,倒行逆施吧,Web世界是多大的一個資訊科技世界,不是你幾個SUN公司或 IBM公司以及微軟所有天才設計師加在一起就能抵得過的。但是我們更多企業程式設計師屁顛顛參加這些IT廠商 的各種所謂技術釋出會,被一些忽悠概念誤導,真正技術就很簡單,就在你每天使用的瀏覽器中。
我在Spring被收購時,也指出其一個缺點,就是沒有跟上REST大勢,果真現在很具有RESTful的Web框架終於出來了,雖然我們更看好基於RIA的Restful的Web框架,不過Sitebrick探索也讓我們感覺非常有衝擊力。
Sitebricks = MVC + RESTful + Google Guice
用Sitebricks寫一個MVC的Controller如下,很類似REST框架的Resource類:
Sitebricks的 templating layer建立類似面向功能語言functional language, 允許你以一種簡單明瞭方式進行頁面組合Compose。每個頁由 Html模板和POJO兩個部分組成。如:
Sitebricks作者指出了現有Web框架陷入了怪異的誤區,導致Javascript等AJAX無法正常順利使用(左撇子),而Sitebricks由於基於乾淨的html,所以對AJAX能很正常支援,這也是我至今喜歡用Struts1.x的原因,它簡單的Jsp/html頁面和Javascript能夠天然融合。
所以,盲目跟風,最後反覆傷害的是自己,表面上,自己學習了一個新框架使用,其實可能是學了一個垃圾,浪費精力,有這個時間少加點班,多陪陪家人女朋友呢。關鍵是要有自己的架構主見思維,可惜不以為然人太多。
Sitebricks目前處於alpha版本,雖然沒有正式版本,但是至少讓我們明白現有表現層框架Struts 1/2 JSF和Wicket的不足:
我個人以前在帖子裡也嘀咕過JSF這種模式,現在都是WOA,都在向Web學習, 而JSF則是讓Web向桌面Swing學習,倒行逆施吧,Web世界是多大的一個資訊科技世界,不是你幾個SUN公司或 IBM公司以及微軟所有天才設計師加在一起就能抵得過的。但是我們更多企業程式設計師屁顛顛參加這些IT廠商 的各種所謂技術釋出會,被一些忽悠概念誤導,真正技術就很簡單,就在你每天使用的瀏覽器中。
我在Spring被收購時,也指出其一個缺點,就是沒有跟上REST大勢,果真現在很具有RESTful的Web框架終於出來了,雖然我們更看好基於RIA的Restful的Web框架,不過Sitebrick探索也讓我們感覺非常有衝擊力。
Sitebricks = MVC + RESTful + Google Guice
用Sitebricks寫一個MVC的Controller如下,很類似REST框架的Resource類:
@At("/blogs") //URL public class Blogs { private Blog newBlog = new Blog(); private List<Blog> blogs; @Post //http的POST操作 public void postEntry() { ...save(newBlog); return "/blogs"; //重定向到 '/blogs' as a GET ,就是下面這個方法} @Get //http的GET 返回Blog列表 public void listBlogs() { this.blogs = .. ; //fetch from store } } |
Sitebricks的 templating layer建立類似面向功能語言functional language, 允許你以一種簡單明瞭方式進行頁面組合Compose。每個頁由 Html模板和POJO兩個部分組成。如:
<html> <body> @ShowIf(true) <p>${message} from Sitebricks!</p> </body> </html> |
Sitebricks作者指出了現有Web框架陷入了怪異的誤區,導致Javascript等AJAX無法正常順利使用(左撇子),而Sitebricks由於基於乾淨的html,所以對AJAX能很正常支援,這也是我至今喜歡用Struts1.x的原因,它簡單的Jsp/html頁面和Javascript能夠天然融合。
所以,盲目跟風,最後反覆傷害的是自己,表面上,自己學習了一個新框架使用,其實可能是學了一個垃圾,浪費精力,有這個時間少加點班,多陪陪家人女朋友呢。關鍵是要有自己的架構主見思維,可惜不以為然人太多。
Sitebricks目前處於alpha版本,雖然沒有正式版本,但是至少讓我們明白現有表現層框架Struts 1/2 JSF和Wicket的不足:
http://code.google.com/p/google-sitebricks/
INFQ採訪錄:
Google Sitebricks Web Framework - Q&A with Dhanji Prasanna
[該貼被banq於2009-09-28 15:06修改過]
[該貼被admin於2009-09-28 16:05修改過]
相關文章
- 快速web開發框架——learun frameworkWeb框架Framework
- .NET Framework 4.8 Web API+Entity Framework(實現增刪改查)FrameworkWebAPI
- WEB.DEV – Google SEO 工具WebdevGo
- 一起寫個 WSGI Web FrameworkWebFramework
- .net Framework Web Api 實現多國語FrameworkWebAPI
- sbt建立play framework(play!)scala web專案FrameworkWeb
- Spring Boot整合Google Bard - Web介面訪問Google AI聊天機器人Spring BootGoWebAI機器人
- Google I/O 2018 : Web 現狀綜述GoWeb
- 如何在Google Web Toolkit環境下GetshellGoWeb
- 國產paozhu c++ web framework 正式版釋出C++WebFramework
- 實現Google帶截圖功能的web反饋外掛GoWeb
- 在 Linux 中輕鬆搜尋和安裝 Google Web 字型LinuxGoWeb
- 這一次,Google 終於對 Web 自動化下手了!GoWeb
- Android FrameworkAndroidFramework
- Android Framework中的Application Framework層介紹AndroidFrameworkAPP
- 【論文解讀】【半監督學習】【Google教你水論文】A Simple Semi-Supervised Learning Framework for Object DetectionGoFrameworkObject
- 【C# .Net Framework】在.Net Framework中使用gRPCC#FrameworkRPC
- Accelerate Framework in SwiftFrameworkSwift
- .net framework 5.0Framework
- Entity Framework(1)Framework
- framework7Framework
- Spring framework核心SpringFramework
- Framework是什麼?Flutter Framework 之 RenderObject深入分析FrameworkFlutterObject
- .NET Framework 4和.NET Framework 4 Client Profile的區別Frameworkclient
- 【譯】Google – 使用 webpack 進行 web 效能優化(一):減小前端資源大小GoWeb優化前端
- 【譯】Google - 使用 webpack 進行 web 效能優化(二):利用好持久化快取GoWeb優化持久化快取
- 【譯】Google - 使用 webpack 進行 web 效能優化(三):監控和分析應用GoWeb優化
- 【譯】Google - 使用 webpack 進行 web 效能優化(一):減小前端資源大小GoWeb優化前端
- AOSP之修改frameworkFramework
- Django_Restful_FrameworkDjangoRESTFramework
- robot framework 小試Framework
- .net framework autoMapper使用FrameworkAPP
- Framework + plugin架構FrameworkPlugin架構
- REST framework:分頁RESTFramework
- REST framework:介面文件RESTFramework
- AntBlazor Theme in ABP FrameworkBlazorFramework
- framework——DisplayContent簡介Framework
- robot framework 移動端自動化測試有沒有類似 WEB 端的 SikuliLibrary 庫FrameworkWeb
- [JavaScript+Firebase]基於Google Firebase的無後臺web端註冊與登入JavaScriptGoWeb