หน้าแรก
หน้าแรก
ขณะที่คุณกำลังเขียนแอป Rails คุณอาจพบปัญหาที่คุณสามารถแก้ไขได้ง่ายขึ้นด้วยที่เก็บข้อมูลอื่น ตัวอย่างเช่น คุณอาจมีกระดานผู้นำที่จัดอันดับผู้ใช้ตามจำนวนคะแนนที่พวกเขาได้รับจากการตอบคำถามบนไซต์ของคุณ ด้วย Redis Sorted Sets มีการดำเนินการมากมายสำหรับคุณ สุดยอด! แต่คุณจะใส่โค้ดที่โต้ตอบกับ Redis ไว้ที่ไห
ฉันได้ยินจากคนบางคนที่กังวลเกี่ยวกับการแยกมุมมอง Rails ขนาดใหญ่ออกเป็นส่วนที่เล็กกว่า:การแสดงบางส่วนใช้เวลานานเท่าใดจริง ๆ ผลกระทบด้านประสิทธิภาพของการโทรบางส่วนจะมีมากกว่าประโยชน์ในด้านความสามารถในการอ่านโค้ดหรือไม่ ฉันใช้ตัวเลขบางส่วนเพื่อยกตัวอย่างว่าการเรนเดอร์บางส่วนแบบง่ายเมื่อเปรียบเทียบกับก
การค้นหา การจัดเรียง และการกรองในตัวควบคุม Rails อาจเป็นเรื่องยุ่งยาก ElasticSearch และ Solr เป็นโซลูชันที่มีประสิทธิภาพสูงและยอดเยี่ยม แต่เป็นการพึ่งพาอาศัยกันอย่างมากสำหรับแอปขนาดเล็ก โชคดีที่ Rails มีขอบเขตซึ่งสามารถให้สิ่งที่คุณต้องการมากมายสำหรับการค้นหา การกรอง และการเรียงลำดับอย่างง่าย หากคุ
นักพัฒนาที่ดีรู้ว่าควรทดสอบโค้ดของตน แต่บ่อยครั้งที่การทดสอบถูกข้าม เร่ง หรือไม่เคยเริ่มเลย มีกับดักทั่วไปบางอย่างที่ฉันเคยเห็นผู้คนตกหล่น และพวกเขาจะทำลายแรงจูงใจของคุณในการทดสอบทุกครั้ง 1. ฉันควรใช้ RSpec หรือไม่ แตงกวา? คาปิบาร่า? น้อยที่สุด? เมื่อคุณเริ่มโครงการใหม่ มันคือทาง ง่ายเกินไปที่จะใช้
“อย่าทำซ้ำตัวเอง” เป็นหนึ่งในแนวคิดที่มีค่าที่สุดจากหนังสือที่มีค่าที่สุดเล่มหนึ่งที่ฉันอ่านระหว่างอาชีพการพัฒนาซอฟต์แวร์ของฉัน หากคุณปรับโครงสร้างโค้ดที่ซ้ำกันออกไปได้ คุณจะได้สร้างโค้ดที่กว้างและเสถียรยิ่งขึ้น เมื่อคุณเริ่มสร้างโค้ดแบบแห้ง คุณจะเริ่มพบปัญหาบางอย่าง เช่น โค้ดที่ไม่สามารถจัดการกับ e
คุณเพิ่งพิมพ์ rails new ในโครงการต่อไปของคุณ ตอนนี้อะไร? คุณจะเริ่มต้นที่ไหน คุณเขียนทุกอย่างในแอปเดียวหรือไปกับ Service Oriented Architecture? นี่เป็นเวลาที่ดีในการเรียนรู้ RSpec หรือไม่ คุณควรเริ่มสร้างแบบจำลองข้อมูลทั้งหมดของคุณ หรือดำเนินการบางอย่างที่ทำงานแบบ end-to-end? มีการตัดสินใจมากมายที่ค
เมื่อสัปดาห์ที่แล้ว ฉันได้พูดถึงสามข้อตกลงที่สามารถช่วยให้คุณเอาชนะการผัดวันประกันพรุ่งและเริ่มต้นโครงการ Rails ใหม่ของคุณได้ ถึงตอนนี้คุณน่าจะรู้สึกไม่สบายใจกับงานตรงหน้าคุณน้อยลง แต่คุณยังมีทางเลือกที่ยากจะทำ คุณเขียนรหัสใดก่อน รับรองความถูกต้อง? ส่วนที่คุยกับ Twilio? และคุณจะ เริ่มต้น . ได้อย่างไ
คุณรู้ว่าสิ่งที่คุณต้องการ ที่ต้องทำ แต่รหัสของคุณไม่ได้ให้ความร่วมมือ อาจมีระดับการเยื้องมากเกินไปหรือเชื่อมโยงวิธีการครึ่งโหลหรือดูไม่สมมาตร ไม่ว่ามันจะเป็นอะไรก็ตาม คุณสามารถเพิกเฉยได้ – ฉันหมายความว่าคุณมีงานในมือที่เต็มไปด้วยคุณสมบัติที่คุณยังต้องการเขียน และนั่นไม่ใช่นั่นจริงๆ แย่. แต่นั่นอาจเ
การแคชบางส่วนเป็นวิธีที่ยอดเยี่ยมในการปรับปรุงความเร็วหน้าเว็บที่สำคัญโดยไม่ต้องทำงานมาก แต่ถ้าคุณลืม touch: true กับหนึ่งในการเชื่อมโยงของคุณ หรือการอ้างอิงเทมเพลตของคุณทำงานไม่ถูกต้อง บางส่วนของแคชของคุณจะไม่ได้รับการอัปเดต เนื่องจากสภาพแวดล้อมการพัฒนามักจะทำงานโดยปิดใช้งานการแคช คุณจะค้นพบสิ่งนี
หากคุณต้องการสิ่งที่ทำใน Ruby อัญมณีสำหรับมันอาจมีอยู่จริง ดีโหลอัญมณีสำหรับมันอาจมีอยู่ บางส่วนมีความสง่างาม ลักษณะเด่น และได้รับการดูแลอย่างดี และบางรายการก็เขียนขึ้นเพื่อแก้ปัญหากรณีการใช้งานที่ผู้เขียนพบในคราวเดียว คุณมีอัญมณีมากมายให้เลือก ดังนั้นคุณจะเลือกอัญมณีที่ใช่อย่างไร ? ตัวเลือกนี้มีควา
เมื่อถึงจุดหนึ่งในอาชีพ Rails ของคุณ คุณจะได้พบกับคอนโทรลเลอร์ที่จะทำให้คุณเลิกเขียนโปรแกรมไปตลอดกาล อาจมีโค้ดทุกบรรทัดสำหรับคุณลักษณะทั้งหมด อาจมี 15 before_filters ที่ทุกคนสื่อสารผ่านตัวแปรอินสแตนซ์และต้องถูกเรียกในลำดับเฉพาะหรือสิ่งต่าง ๆ ที่ระเบิดขึ้น และการทดสอบของมันก็จะมีลักษณะดังนี้: test in
(สัปดาห์นี้ฉันอยู่ที่ชิคาโกเพื่อเข้าร่วม RailsConf ถ้าคุณเห็นฉันแถวๆ นี้ ทักทายฉันสิ ฉันอยากพบคุณ ฉันอายุมากกว่าในรูปในแถบด้านข้าง) ผู้อ่านถามคำถามที่ดีเกี่ยวกับการทดสอบในความคิดเห็นในบทความของฉัน: ฉันรู้ว่าฉันต้องทำให้ มู่เล่ TDD เคลื่อนที่ด้วย แต่ TDD นั้นไม่คุ้นเคยกับฉันมาก คุณมีคำแนะนำใดๆ เก
ฉันเขียนเกี่ยวกับ TDD มากมาย จึงไม่แปลกใจเลยที่ตอนที่ฉันเผยแพร่บทความที่แล้วเกือบ นาทีที่แน่นอน David Heinemeier Hansson พูดถึง TDD ในระหว่างการกล่าวสุนทรพจน์ RailsConf ฉันมีคำถาม: คุณเห็นด้วยกับความคิดเห็นของ DHH เกี่ยวกับ TDD หรือไม่? คุณยังคงแนะนำ TDD หรือไม่? ถ้าไม่ฉันควรทำอย่างไรแทน? สิ่งที่
ระเบียบยักษ์ของ if คำพูดคอยจ้องหน้าคุณอยู่เสมอ คุณรู้สึกว่าคุณ ควร สามารถลดความซับซ้อนได้ ยกเว้น Business Logic ที่คอยขัดขวาง ตัวอย่างเช่น สมมติว่าคุณมีแพลตฟอร์มการขายที่คุณสร้าง Quote s ซึ่งมี LineItem . มากมาย ส. ยกเว้น คุณสามารถขอใบเสนอราคาพร้อมรายการโฆษณาที่ซ้ำกันได้หากเป็น โฆษณา แต่ถ้าคุณมี เว
ไม่มีเวลาเพียงพอที่จะเรียนรู้ทุกสิ่งที่คุณต้องการ และดูเหมือนว่ามีอะไรอีกมากมายที่ทำให้คุณเสียเวลาทำ มี. ทำให้การติดตามความรู้ Ruby ของคุณเป็นเรื่องยาก หนังสือและ screencasts นั้นยอดเยี่ยม แต่ต้องใช้เวลาและสมาธิ และการล้างจาน เดินทางไปทำงาน และพาสุนัขไปเดินเล่นอาจน่าเบื่อ เป็นเรื่องดีที่มีช่วงเวลาเ
เมื่อคุณอ่านบล็อกและหนังสือของ Rails หรือดูการบรรยายในการประชุม คุณจะได้เรียนรู้มากมายเกี่ยวกับการทำให้นางแบบของคุณดูผอมลง เทคนิคเหล่านี้ยอดเยี่ยมเพราะนางแบบของคุณจะ ใหญ่หรือซับซ้อนเกินกว่าจะรับมือได้ แต่คุณต้องการให้แบบจำลองของคุณรับผิดชอบต่อการคงอยู่ การเชื่อมโยง และการตรวจสอบเท่านั้นจริงหรือ คุณ
ขณะที่คุณกำลังสร้างซอฟต์แวร์ จะมีบางสิ่งที่จะทำให้คุณหงุดหงิดทุกครั้งที่ต้องเขียนมัน บิตของรหัสที่ดูน่าเกลียด หรือบรรทัดเหล่านั้นที่คุณแทบจะจำวิธีการเขียนไม่ได้เลย ดังนั้นคุณจึงหาตัวอย่างที่อื่นใน codebase ของคุณเพื่อคัดลอกและวาง สิ่งเหล่านี้ทำลายกระแสของคุณ! การจดจำและทำให้พวกเขาสะดวกขึ้นจึงเป็นสิ่
(เดิมทีฉันเขียนบทความนี้สำหรับจดหมายข่าวของฉัน หากคุณต้องการอ่านเรื่องอื่นๆ แบบนี้ คุณควรลงชื่อสมัครใช้!) ชุมชน Rails ให้ความสำคัญกับการทดสอบเป็นอย่างมาก และโดยเฉพาะอย่างยิ่ง TDD วัฒนธรรมการทดสอบนี้เป็นหนึ่งในสิ่งที่ดีที่สุดเกี่ยวกับ Rails แต่ความกดดันในการทดสอบและการทดสอบที่ถูกต้องอาจล้นหลามสำหรั
เชิงมุมกับ Ember RSpec เทียบกับ Minitest Haml กับ Slim เทียบกับ ERB คุณมีตัวเลือกมากมายที่ต้องทำเมื่อคุณเริ่มโครงการใหม่ มีผู้พิทักษ์แกนนำในแต่ละด้าน และในไม่ช้าคุณก็เริ่มตระหนักว่าคุณสามารถเริ่มโครงการของคุณในเวลาที่คุณเสียเวลาอ่านบทช่วยสอนที่สี่นั้นหรือข้อโต้แย้ง 30 ความคิดเห็นว่า Sass ดีกว่า Less
หลังจากที่คุณสร้างแอป Rails ไม่กี่แอป คุณจะเริ่มมีวิธีการทำงานที่ต้องการกับแอปเหล่านั้น บางทีคุณอาจต้องการใช้ awesome_print ในคอนโซล Rails ของคุณ หรือคุณอาจต้องการ rails new เพื่อสร้างโครงการที่ใช้ rspec แทน minitest แน่นอนว่ามันน่ารำคาญนิดหน่อยที่ต้องระบุการตั้งค่าเหล่านี้ทุกครั้งที่คุณเรียกใช้คำส