天天看點

rails面試碎碎念

面試繼續面試

又有問ruby multiple inheritage,和怎麼給類加方法,怎麼給執行個體加方法還有怎麼singleton

extend include mudule

call back 話說,call back從8個變7個了,create 2個,save 2個 ,2 個validation 一個commit

還有個問郁悶的,什麼是rails,什麼是activerecord....

[url]http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html[/url]

[url]http://api.rubyonrails.org/classes/ActiveRecord/NestedAttributes/ClassMethods.html[/url]

[url]http://api.rubyonrails.org/classes/ActiveRecord/Callbacks.html[/url]

以前多少看過一點rails 代碼,但當時就是卡住了,沒有說出來activerecord有啥

還有,很多人關心你是不是熟悉,rails部署,反向代理

很多人關心,scaling,這個可以參考new relic出的系列casts

[url]http://railslab.newrelic.com/scaling-rails[/url]我這個也比較弱,需要學習

還有個很熱的面試問題

database sharding

我自己整理個

ORM優點缺點錢

來來抄一段,給連結

[quote]

優勢:ORM自其概念被提出,就得到了無數的響應,花樣繁多的應用架構更是應接不暇。可見,他是有其獨到的優勢的。那麼他的優勢有哪些那:

首先,ORM最大的優勢。

隐藏了資料通路細節,“封閉”的通用資料庫互動,ORM的核心。他使得我們的通用資料庫互動變得簡單易行,并且完全不用考慮該死的SQL語句。快速開發,由此而來。

第二:ORM使我們構造固化資料結構變得簡單易行。

在ORM年表的史前時代,我們需要将我們的對象模型轉化為一條一條的SQL語句,通過直連或是DB helper在關系資料庫構造我們的資料庫體系。而現在,基本上所有的ORM架構都提供了通過對象模型構造關系資料庫結構的功能。這,相當不錯。

缺點:

第一:

無可避免的,自動化意味着映射和關聯管理,代價是犧牲性能(早期,這是所有不喜歡ORM人的共同點)。現在的各種ORM架構都在嘗試使用各種方法來減輕這塊(LazyLoad,Cache),效果還是很顯著的。

第二:

面向對象的查詢語言(X-QL)作為一種資料庫與對象之間的過渡,雖然隐藏了資料層面的業務抽象,但并不能完全的屏蔽掉資料庫層的設計,并且無疑将增加學習成本.

第三:

對于複雜查詢,ORM仍然力不從心。雖然可以實作,但是不值的。視圖可以解決大部分calculated column,case ,group,having,order by, exists,但是查詢條件(a and b and not c and (d or d))。。。。。。

[/quote]

[url]http://www.cnblogs.com/trisaeyes/archive/2007/01/08/614996.html[/url]

繼續閱讀