<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
><channel><title>DominixZ : Live Smart &#38; Geeky &#187; Ruby และ Rails</title> <atom:link href="http://www.dominixz.com/blog/category/ruby-and-rails/feed/" rel="self" type="application/rss+xml" /><link>http://www.dominixz.com/blog</link> <description>Productivity , Techology News ,Website Review , Web Standard , Live Smart and Geeky</description> <lastBuildDate>Wed, 10 Mar 2010 12:48:21 +0000</lastBuildDate> <generator>http://wordpress.org/?v=2.9.2</generator> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <item><title>การใช้ jQuery Ajax put กับ delete ใน Ruby on Rails</title><link>http://www.dominixz.com/blog/ruby-and-rails/jquery-ruby-on-rails-setup-put-delete-method/</link> <comments>http://www.dominixz.com/blog/ruby-and-rails/jquery-ruby-on-rails-setup-put-delete-method/#comments</comments> <pubDate>Thu, 18 Sep 2008 16:25:21 +0000</pubDate> <dc:creator>DominixZ</dc:creator> <category><![CDATA[Ruby และ Rails]]></category> <category><![CDATA[jquery]]></category><guid
isPermaLink="false">http://www.dominixz.com/blog/?p=459</guid> <description><![CDATA[สืบเนื่องมาจากไปอ่าน blog rails66 แล้วได้อ่าน entry ของ sikachu เสร็จแล้วเห็นวิธีเขียนแต่ยังมองแล้วเข้าใจรวมถึงอ่านยาก เลยพยายามหาว่ามีวิธีเขียนแบบอื่นไหมสรุปว่าก็มีจริงๆครับแล้วก็ใช้ได้ 100% เพราะทดสอบแล้ว ดังนั้นผมจะมาเขียนให้อ่านกันครับ โดยยึดหลักของ entry นี้ใน rails66 ครับ โดยเริ่มต้นนอกเหนือจากการใส่ jquery เข้าไปในระบบแล้ว ที่มีปัญหาคือเรื่อง authenticity_token ซึ่งเจ้านี้คือตัวปัญหาที่ทำให้เรา เวลาจะส่ง ajax เป็นแบบ post / put / delete ทีไรก็มีปัญหาทุกที เราเลยมีวิธีแก้มาให้ครับ โดยผมได้ดัดแปลงนิดหน่อยจาก entry rails66 โดยเริ่มแรกให้ใส่ method นี้ลงไปใน application_helper.rb ครับ
def yield_authenticity_token
if protect_against_forgery?
%Q{
&#60;script type=&#8217;text/javascript&#8217;&#62;
//&#60;![CDATA[
var AUTH_TOKEN = #{form_authenticity_token.inspect};
//]]&#62;
&#60;/script&#62;
}
end
end
ส่วนต่อมาให้เรานำ code นี้ไปใส่ใน application.js ใน public/javascript ครับ
(function($) {
$().ajaxSend(function(event, request, [...]]]></description> <content:encoded><![CDATA[<p>สืบเนื่องมาจากไปอ่าน blog <a
rel="nofollow" target="_blank" href="http://www.rails66.com/blog/">rails66</a> แล้วได้อ่าน entry ของ <a
rel="nofollow" target="_blank" href="http://sikachu.com/">sikachu</a> เสร็จแล้วเห็นวิธีเขียนแต่ยังมองแล้วเข้าใจรวมถึงอ่านยาก เลยพยายามหาว่ามีวิธีเขียนแบบอื่นไหมสรุปว่าก็มีจริงๆครับแล้วก็ใช้ได้ 100% เพราะทดสอบแล้ว ดังนั้นผมจะมาเขียนให้อ่านกันครับ โดยยึดหลักของ <a
rel="nofollow" target="_blank" href="http://www.rails66.com/blog/?p=246">entry นี้ใน rails66 ครับ</a> โดยเริ่มต้นนอกเหนือจากการใส่ jquery เข้าไปในระบบแล้ว ที่มีปัญหาคือเรื่อง authenticity_token ซึ่งเจ้านี้คือตัวปัญหาที่ทำให้เรา เวลาจะส่ง ajax เป็นแบบ post / put / delete ทีไรก็มีปัญหาทุกที เราเลยมีวิธีแก้มาให้ครับ โดยผมได้ดัดแปลงนิดหน่อยจาก entry rails66 โดยเริ่มแรกให้ใส่ method นี้ลงไปใน application_helper.rb ครับ</p><p><span
style="color: #993366;">def yield_authenticity_token<br
/> if protect_against_forgery?<br
/> %Q{<br
/> &lt;script type=&#8217;text/javascript&#8217;&gt;<br
/> //&lt;![CDATA[<br
/> var AUTH_TOKEN = #{form_authenticity_token.inspect};<br
/> //]]&gt;<br
/> &lt;/script&gt;<br
/> }<br
/> end<br
/> end</span></p><p>ส่วนต่อมาให้เรานำ code นี้ไปใส่ใน application.js ใน public/javascript ครับ</p><p><span
style="color: #993366;">(function($) {<br
/> $().ajaxSend(function(event, request, settings){ //Set request headers globally<br
/> request.setRequestHeader(&#8220;Accept&#8221;, &#8220;text/javascript, text/html, application/xml, text/xml, */*&#8221;);<br
/> request.setRequestHeader(&#8220;Content-Type&#8221;, &#8220;application/x-www-form-urlencoded&#8221;);<br
/> if (typeof(AUTH_TOKEN) == &#8220;undefined&#8221;) return;<br
/> settings.data = settings.data || &#8220;&#8221;;<br
/> // settings.data is a serialized string like &#8220;foo=bar&amp;baz=boink&#8221; (or null)<br
/> settings.data += ((settings.data == &#8220;&#8221;) ? &#8220;&#8221; : &#8220;&amp;&#8221;) + &#8220;authenticity_token=&#8221; + encodeURIComponent(AUTH_TOKEN);<br
/> });<br
/> })(jQuery);</span></p><p>เสร็จแล้วสุดท้ายให้เรานำ code นี้ไปใส่ใน application layout หรือใน page ที่ต้องการใช้งาน</p><p><span
style="color: #993366;">&lt;%=yield_authenticity_token%&gt;</span></p><p>ส่วนวิธีใช้ก็ประมาณนี้ครับ</p><p><span
style="color: #993366;">$.post(&#8220;hello/10&#8243;,{_method:&#8221;delete&#8221;},function(data){<br
/> $(&#8220;h1&#8243;).html(data);<br
/> });</span></p><p>โดยปกติแล้วถ้าเราไม่ทำแบบนี้เราต้องทำการส่ง authenticity_token ไปทุกครั้ง</p><p><span
style="color: #993366;">$.post(&#8220;hello/put&#8221;,{_method:&#8221;put&#8221;,authenticity_token:encodeURIComponent(AUTH_TOKEN)},function(data){<br
/> $(&#8220;h1&#8243;).html(data);<br
/> });</span></p><p>โดยเจ้า AUTH_TOKEN นั้นจะต้องทำการ gen มาจาก form_authenticity_token.inspect ใน rails ซึ่งยุ่งยากหลายขั้นตอนเหลือเกิน ดังนั้นเลยต้องมีการทำแบบนี้ึึขึ้นมา โดยผมนำข้อมูลมาจากแหล่งเหล่านี้ครับ</p><ul><li>http://blog.lawrencepit.com/2008/09/04/unobtrusive-jquery-rails/</li><li>http://pastie.org/212798</li><li>http://www.rails66.com/blog/?p=246</li><li>http://henrik.nyh.se/2008/05/rails-authenticity-token-with-jquery</li></ul> Similar Posts:<ul><li><a
href="http://www.dominixz.com/blog/review/web-development/codeigniter-jquery-extjs-adobe-air/" rel="bookmark" title="April 25, 2008">Codeigniter , jQuery , Ext-Js และ Adobe AIR</a></li><li><a
href="http://www.dominixz.com/blog/programming-solution/understanding-jquery-ajax-cross-domain/" rel="bookmark" title="April 27, 2009">เข้าใจกับ jQuery Ajax Cross Domain</a></li><li><a
href="http://www.dominixz.com/blog/programming-solution/common-web-develop-problems-1/" rel="bookmark" title="March 27, 2009">ปัญหางานทั่วไปที่เจอในงานพัฒนาเว็บ (1)</a></li></ul><img
src="http://www.dominixz.com/blog/?ak_action=api_record_view&id=459&type=feed" alt="ruby and rails "  title="การใช้ jQuery Ajax put กับ delete ใน Ruby on Rails" />]]></content:encoded> <wfw:commentRss>http://www.dominixz.com/blog/ruby-and-rails/jquery-ruby-on-rails-setup-put-delete-method/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Simply Rails 2 ~ Book Review ~</title><link>http://www.dominixz.com/blog/review/simply-rails-2/</link> <comments>http://www.dominixz.com/blog/review/simply-rails-2/#comments</comments> <pubDate>Mon, 15 Sep 2008 07:21:19 +0000</pubDate> <dc:creator>DominixZ</dc:creator> <category><![CDATA[Ruby และ Rails]]></category> <category><![CDATA[บทวิจารณ์]]></category> <category><![CDATA[หนังสือ]]></category><guid
isPermaLink="false">http://www.dominixz.com/blog/?p=448</guid> <description><![CDATA[หลังจากที่ไม่ค่อยอัพบล็อค วันนี้ผมขอมา Review หนังสือที่ผมได้อ่านจบไปเมื่อวานนี้ โดยใช้เวลาอ่านตั้งแต่ช่วง Thailand Next Web Apps 2008 เป็นเวลาเดือนหนึ่งพอดีต้องขอบอกว่าพอใจกับหนังสือเล่มนี้มากเลยได้ความรู้เรื่อง Rails 2 มาเยอะรวมถึง Convention over Configuration ของมันไปเยอะพอตัวเลยทีเดียว เอาละครับผมจะสรุปให้ฟังว่าเหมาะกับใครเป็นผู้่อ่าน
หนังสือ Simply Rails 2 มีประมาณ 500 หน้าโดยผมก็ค่อยๆอ่านไปเรื่อยๆ โดยก่อนที่ผมจะมาอ่านหนังสือเล่มนี้ผมอ่านหนังสือ Ruby มาหลายเล่มเหมือนกัน ทำให้ผมข้ามเนื้อหาช่วง Ruby ไปค่อนข้างเร็วซึ่งก็ประมาณ 200 หน้าได้ โดยจริงๆแล้วเล่มนี้เหมาะสมกับคนที่มีประสบการณ์ การเขียน MVC ด้วย Framework หรือปกติมาบ้างแล้ว
คนที่ต้องการศึกษาว่าเร็วมี Convention อย่างไรบ้าง
คนที่ต้องการดูกลไกการทำงานของ Rails แบบภาพรวมไม่ใช่เชิงลึกโดยเนื้อหาที่มีจะคลอบคลุมทั้ง Ruby และ Rails 2 โดยเล่มนี้ที่ผมตัดสินใจอ่านแล้วได้ผลดีก็คือมันทำมาเพื่อ Rails 2 ดังนั้นใครใช้ version 2 ก็จะพอทำได้ โดยที่ผมใช้ทำตามแบบฝึกหัดเล่มนี้ผมใช้ [...]]]></description> <content:encoded><![CDATA[<div
style="float:right"><img
class="alignright" title="Simply Rails 2" src="http://www.idg.com.au/gim.php/id/4900/res/2" alt="ruby and rails " width="198" height="198" /></div><p>หลังจากที่ไม่ค่อยอัพบล็อค วันนี้ผมขอมา Review หนังสือที่ผมได้อ่านจบไปเมื่อวานนี้ โดยใช้เวลาอ่านตั้งแต่ช่วง Thailand Next Web Apps 2008 เป็นเวลาเดือนหนึ่งพอดีต้องขอบอกว่าพอใจกับหนังสือเล่มนี้มากเลยได้ความรู้เรื่อง Rails 2 มาเยอะรวมถึง Convention over Configuration ของมันไปเยอะพอตัวเลยทีเดียว เอาละครับผมจะสรุปให้ฟังว่าเหมาะกับใครเป็นผู้่อ่าน</p><p>หนังสือ Simply Rails 2 มีประมาณ 500 หน้าโดยผมก็ค่อยๆอ่านไปเรื่อยๆ โดยก่อนที่ผมจะมาอ่านหนังสือเล่มนี้ผมอ่านหนังสือ Ruby มาหลายเล่มเหมือนกัน ทำให้ผมข้ามเนื้อหาช่วง Ruby ไปค่อนข้างเร็วซึ่งก็ประมาณ 200 หน้าได้ โดยจริงๆแล้วเล่มนี้เหมาะสมกับ</p><ul><li>คนที่มีประสบการณ์ การเขียน MVC ด้วย Framework หรือปกติมาบ้างแล้ว</li><li>คนที่ต้องการศึกษาว่าเร็วมี Convention อย่างไรบ้าง</li><li>คนที่ต้องการดูกลไกการทำงานของ Rails แบบภาพรวมไม่ใช่เชิงลึก</li></ul><p>โดยเนื้อหาที่มีจะคลอบคลุมทั้ง Ruby และ Rails 2 โดยเล่มนี้ที่ผมตัดสินใจอ่านแล้วได้ผลดีก็คือมันทำมาเพื่อ Rails 2 ดังนั้นใครใช้ version 2 ก็จะพอทำได้ โดยที่ผมใช้ทำตามแบบฝึกหัดเล่มนี้ผมใช้ Netbeans 6.5beta (แต่หนังสือใช้แบบ console ธรรมดาเลยนะ) ซึ่งก็สะดวกดีครับ เขียนน้อยได้เยอะจริงๆ แถม code สวยและมีความหมายทั้งเรื่องครับ โดยเล่มนี้จะไม่สอนเฉพาะ code ยังไงจะรวมถึงอธิบายด้วยว่า ทำไมต้องตั้งชื่อแบบนี้เป็น Convetion หรือเป็น Best Practice ที่ควรทำ โดยต้องอาศัยอ่านไปมาเล็กน้อยสำหรับคนที่ยังใหม่กับ Ruby หรือ Rails โดยส่วนตัวเล่มนี้ผมให้ 7.5/10 ครับเขียนได้ดี เข้าใจง่ายเป็นแบบเรียนไปทำไปครับ ใครชอบอ่านอย่างเดียวเล่มนี้จะไม่เห็นภาพ ที่สำคัญ Rails 2 อันนี้พูดถึงเรื่อง Test ด้วยนะครับ จะได้รู้ว่า Rails มีดีที่ Test ด้วยเหมือนกันครับ วันนี้ลาไปก่อนสวัสดีครับ</p> Similar Posts:<ul><li><a
href="http://www.dominixz.com/blog/review/software/codeigniter-is-not-a-good-framework/" rel="bookmark" title="March 10, 2009">CodeIgniter ไม่ใช่ Framework ที่ดี !</a></li><li><a
href="http://www.dominixz.com/blog/ruby-and-rails/ruby-best-practice-patterns/" rel="bookmark" title="September 10, 2008">Ruby Best Practice Patterns ฉบับสรุป</a></li><li><a
href="http://www.dominixz.com/blog/productivity/my-favourite-programming-languages/" rel="bookmark" title="October 26, 2008">โปรแกรมมิ่งที่ผมชอบ <ณ ปัจจุบัน></a></li></ul><img
src="http://www.dominixz.com/blog/?ak_action=api_record_view&id=448&type=feed" alt="ruby and rails "  title="Simply Rails 2 ~ Book Review ~" />]]></content:encoded> <wfw:commentRss>http://www.dominixz.com/blog/review/simply-rails-2/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Ruby Best Practice Patterns ฉบับสรุป</title><link>http://www.dominixz.com/blog/ruby-and-rails/ruby-best-practice-patterns/</link> <comments>http://www.dominixz.com/blog/ruby-and-rails/ruby-best-practice-patterns/#comments</comments> <pubDate>Tue, 09 Sep 2008 17:32:38 +0000</pubDate> <dc:creator>DominixZ</dc:creator> <category><![CDATA[Ruby และ Rails]]></category><guid
isPermaLink="false">http://www.dominixz.com/blog/?p=434</guid> <description><![CDATA[หลังจากที่ผมเคยคิดจะจด Domain เกี่ยวกับ Ruby หรือ Rails มาเฉพาะของตัวเอง สรุปว่ายังไม่พร้อมสักเท่าไรเลยมาทำใน Blog ก่อนละกันครับ แล้วเดียวค่อย Dump บทความไปยังบ้านใหม่ก็ยังไม่สาย เอาละครับมาฟังผมสรุปวีดีโออันนี้กันครับ  Ruby Hoedown 2008 : Ruby Best Practice Patterns โดยนาย Rein Henrichs คนนี้เขาพูดดีมากครับ แต่กว่าผมจะจับใจความได้เล่นเอาเหนื่อยเหมือนกัน โดยผมจะสรุปเฉพาะ 40 นาทีแรกนะครับ ซึ่งเป็นเนื้อหาของเขาโดยตรง แล้วส่วน 30 นาทีหลังมันเป็นคนถามคำถาม แล้วเขาตอบ ซึ่งผมจะไม่นำมารวมในนี้ละกันครับ มาเริ่มกันเลยครับBest Practice คือเทคนิคสุดยอดที่ยังถูกยอมรับและใช้
Pattern คือทางเลือกที่ดีที่สุดที่ถูกใช้แล้วใช้อีก ซึ่งช่วยในการสื่อสารระหว่างกันดีขึ้น
Pattern ช่วยให้คุณเขียนโค๊ดที่คนอื่นเข้าใจได้โดยเริ่มแรกเข้าจะพูด Unfactoring from Pattern (ซึ่งเป็นสิ่งที่ไม่ควรกระทำแต่ในวีดีโอพูดว่าควรทำเพราะมัน Save Your Job) อันนี้ผมสรุปอันหลังที่เขาพูดเลยละกันครับ โดยเขาพูดถึง Best Practice ของ Ruby [...]]]></description> <content:encoded><![CDATA[<p>หลังจากที่ผมเคยคิดจะจด Domain เกี่ยวกับ Ruby หรือ Rails มาเฉพาะของตัวเอง สรุปว่ายังไม่พร้อมสักเท่าไรเลยมาทำใน Blog ก่อนละกันครับ แล้วเดียวค่อย Dump บทความไปยังบ้านใหม่ก็ยังไม่สาย เอาละครับมาฟังผมสรุปวีดีโออันนี้กันครับ  <a
rel="nofollow" target="_blank" href="http://rubyhoedown2008.confreaks.com/03-rein-henrichs-ruby-best-practice-patterns.html">Ruby Hoedown 2008 : Ruby Best Practice Patterns</a> โดยนาย <a
rel="nofollow" target="_blank" href="http://reinh.com/">Rein Henrichs</a> คนนี้เขาพูดดีมากครับ แต่กว่าผมจะจับใจความได้เล่นเอาเหนื่อยเหมือนกัน โดยผมจะสรุปเฉพาะ 40 นาทีแรกนะครับ ซึ่งเป็นเนื้อหาของเขาโดยตรง แล้วส่วน 30 นาทีหลังมันเป็นคนถามคำถาม แล้วเขาตอบ ซึ่งผมจะไม่นำมารวมในนี้ละกันครับ มาเริ่มกันเลยครับ</p><ul><li>Best Practice คือเทคนิคสุดยอดที่ยังถูกยอมรับและใช้</li><li>Pattern คือทางเลือกที่ดีที่สุดที่ถูกใช้แล้วใช้อีก ซึ่งช่วยในการสื่อสารระหว่างกันดีขึ้น</li><li>Pattern ช่วยให้คุณเขียนโค๊ดที่คนอื่นเข้าใจได้</li></ul><p>โดยเริ่มแรกเข้าจะพูด Unfactoring from Pattern (ซึ่งเป็นสิ่งที่ไม่ควรกระทำแต่ในวีดีโอพูดว่าควรทำเพราะมัน <strong>Save Your Job</strong>) อันนี้ผมสรุปอันหลังที่เขาพูดเลยละกันครับ โดยเขาพูดถึง Best Practice ของ Ruby ดังนี้ครับ</p><ul><li>DRY &#8211; Don&#8217;t Repeat Yourself (อย่าทำงานซ้ำ)</li><li>Local Consequences (จำกัดผลลัพธ์ ซึ่งจะช่วยให้คุณคุมงานง่ายขึ้น)</li><li>Optimize for Understanding (ทำให้เหมาะสมกับความเข้าใจ)</li><li>Accurate Domain Model (ทำต้นแบบความคิดอย่างระมัดระวัง)</li><li>Intention Reveling Name (เปิดเผยชื่อแบบตรงๆ)</li><li>Composed Method (การประพันธ์ Method)</li></ul><p>โดยเจ้า <a
rel="nofollow" target="_blank" href="http://reinh.com/">Rein Henrichs</a> นั้นพูดมาว่า &#8220;การทำให้งาน ตามเวลา,ต่ำกว่าทุน,ไม่มี bug เราเลือกได้แค่ 2 อย่างโดยต้องคำนึงถึงความเสี่ยง , ความสามารถในการผลิต , ความสามารถในการดูแลรักษา และการเขียน Code คือความเสี่ยง และความเสี่ยงไม่เป็นมิตรกับความสามารถในการผลิต และระบบจากรุ่นก่อนต้องการ การดูแลรักษา โค๊ดของคุณจะกลายเป็นโค๊ดรุ่นก่อนทันทีที่ถูกเขียน&#8221; ดังนั้นจุดแข็งที่ Ruby ต้องการคือ</p><ol><li>Ruby ต้องการทำให้ Code ดูแลได้ง่ายขึ้น แต่ไม่ได้เขียนเพื่อให้ระบบเร็วขึ้น</li><li>Ruby ต้องการให้เขียน Code สำหรับมนุษย์อ่าน</li><li>Ruby Code จะต้องบอกผู้อ่านถึงจุดประสงค์ของมัน</li></ol><p>โดยเจ้า Best Practice Pattern ที่พูดมานั้นช่วยให้้เราเขียน code ที่คนอื่นเข้าใจได้ เพราะคุณต้องคิดมากขึ้นในการสร้างมัน จากบรรทัดไปอีกบรรทัด จาก method ไป method โดยสรุปมันทำให้โค๊ดคุณเร็วขึ้น ความเสี่ยงน้อยลง และดูแลง่ายขึ้น</p><p><strong>Composed Method</strong></p><p>การประพันธ์ Method ชื่อมันตามนี้จริงๆผมชอบ Concept มากโดยเขาถือว่า แต่ละ Method จะมี 2 แบบคือ Simple Method กับ Complex Method โดยแต่ละ Method จะต้องทำงาน Task ง่ายๆ 1 Task และชื่อของ Method จะต้องมีชื่อที่เข้าใจง่าย แล้ว Complex Method จะประกอบด้วย Simple Method หลายๆอันมารวมกัน โดยเจ้า Rein Henrichs เนี้ยเขาชอบเขียน 1 Method เพียง 4-5 บรรทัดเท่านั้น แล้วค่อยนำ Method มาต่อกันเป็นชั้นๆขึ้นไป</p><p><strong>แนวทางการศึกาษาการใช้ Pattern ในการแก้ปัญหาต้องทำดังนี้</strong></p><ol><li>Context เป็นสิ่งสำคัญมาก แต่ละ Pattern แก้ส่วนเล็กๆของปัญหา โดยการเขียน code ที่ดี โดยถ้าเราสามารถจำแนกได้ว่า pattern ไหนเหมาะกับอะไร จะแก้ปัญหาได้อย่างถูกต้อง</li><li>เราต้องรู้ความต้องการของเราก่อน เพื่อที่จะเลือก Paradigm และ Pattern เพื่อทำสิ่งนั้น เช่น ทำเพื่อ Perfomance หรือ Maintainability พยายามรู้ให้ได้ว่าเราต้องการเน้นในเรื่องอะไรมีเรื่องอะไร</li><li>ดู Examples ต่างๆที่อยู่ใน Ruby Libraries ที่คุณใช้ เพราะเขาเขียนไว้ดีอยู่แล้ว ต้องถามว่าทำไมเขาทำแบบนี้ ทำไมตรงนี้เขาทำด้วยวิธีอื่น แล้วเราก็หัดใช้และ apply</li><li>Try Them ลองทำ แล้วเขียนด้วย Pattern ที่คุณรู้ ลองทำแล้วคิดดูกลับไปว่า ต้องทำยังไงมีวิธีอื่นที่ดีกว่านี้ไหม</li></ol><p>นี้คือสิ่งที่ผมสรุปย่อๆมาให้ครับจริงๆแล้วคนนี้ยังพูดถึง คำถามและคำตอบที่เ้จ้า Ruby สามารถแก้ปัญหาได้ โดยวิธีง่ายแสนง่าย ตัวอย่างคำถามคือ How do i ensure that two actions happen together ? , How can I send Multiple Messages to the same object? วันนี้ผมลาไปก่อนแล้วครับ สวัสดีครับ</p> Similar Posts:<ul><li><a
href="http://www.dominixz.com/blog/productivity/ruby-problem-for-java-programmer/" rel="bookmark" title="August 5, 2008">ปัญหาของ Ruby ! สำหรับชาว Java</a></li><li><a
href="http://www.dominixz.com/blog/programming-solution/php-call-dot-net-webservice-that-require-object-param/" rel="bookmark" title="September 12, 2008">PHP เรียกใช้ Web Service ของ .NET ด้วยการส่งและรับ Object</a></li><li><a
href="http://www.dominixz.com/blog/geek-tips/design-pattern-vs-anti-pattern/" rel="bookmark" title="September 10, 2007">Design Pattern VS Anti Pattern</a></li></ul><img
src="http://www.dominixz.com/blog/?ak_action=api_record_view&id=434&type=feed" alt="ruby and rails "  title="Ruby Best Practice Patterns ฉบับสรุป" />]]></content:encoded> <wfw:commentRss>http://www.dominixz.com/blog/ruby-and-rails/ruby-best-practice-patterns/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> </channel> </rss>
<!-- This site's performance optimized by W3 Total Cache. Dramatically improve the speed and reliability of your blog!

Learn more about our WordPress Plugins: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk (user agent is rejected)
Database Caching using memcached

Served from: ns7.appservhosting.com @ 2010-03-14 07:59:22 -->