หน้าแรก
หน้าแรก
การพิมพ์ที่ยอดเยี่ยมเป็นอัญมณีที่ดีที่จัดรูปแบบผลลัพธ์ของคุณใน irb &แงะ เพื่อให้อ่านง่ายขึ้น ตัวอย่างเช่น… นี่คือสิ่งที่แสดงแฮชด้วย awesome_print ดูเหมือนว่า: แต่วิธีนี้ทำงานอย่างไร “ความจริงสามารถพบได้ในที่เดียวเท่านั้น:รหัส” ― โรเบิร์ต ซี. มาร์ติน มาดูซอร์สโค้ดกันเพื่อหาคำตอบกัน! การพิมพ์
คุณรู้หรือไม่ว่าการใช้วิธี Ruby ที่ถูกต้องสามารถช่วยคุณได้มาก ยิ่งคุณคุ้นเคยกับวิธีการต่างๆ มากเท่าใด ยิ่งสร้างรหัสการทำงานได้เร็วเท่านั้น และโค้ดนี้จะยิ่งดีขึ้นทั้งในด้านประสิทธิภาพและคุณภาพ วันนี้เลยอยากมาแนะนำ 7 วิธีที่น่าสนใจที่คุณอาจไม่เคยเห็นมาก่อน สารบัญ เมธอด 1 Integer#digits (ทับทิม 2.4
สมมติว่าคุณต้องการเปรียบเทียบสองอาร์เรย์ ทีละองค์ประกอบ เพื่อหาความแตกต่าง หรือบางทีคุณอาจต้องการหาตัวเลขที่ใหญ่ที่สุดในทุกดัชนี หรือคุณเพียงแค่ต้องการรวมรายการคีย์และรายการค่าเพื่อสร้างแฮช... … วิธีที่ยาก ในการทำเช่นนี้จะมีลักษณะเช่นนี้ ตัวอย่าง : a = [1,2,3,4,5] b = [1,2,3,6,8] c = a.map.with
วันนี้คุณจะได้เรียนรู้วิธีจัดการกับกริดใน Ruby โดยใช้วิธีทรานสโพสของ Ruby ลองนึกภาพว่าคุณมีตารางที่สมบูรณ์แบบ สมมติว่าสี่เหลี่ยมจัตุรัส 3×3 ในรูปแบบของอาร์เรย์หลายมิติ และคุณต้องการนำแถวและแปลงเป็นคอลัมน์ . ทำไมคุณถึงอยากทำอย่างนั้น ใช้ครั้งเดียวสำหรับเกมคลาสสิค:tic-tac-toe คุณเก็บกระดานของคุณเ
เวอร์ชัน Ruby ใหม่มีการปรับปรุงอย่างต่อเนื่อง &Ruby 2.5 ก็ไม่ต่างกัน ทับทิม 2.5 แนะนำการเพิ่มประสิทธิภาพเหล่านี้: การแก้ไขสตริงจะเร็วขึ้นประมาณ 72% เมื่อสร้างสตริงขนาดใหญ่ String#prepend จะเร็วขึ้นประมาณ 42% หากให้อาร์กิวเมนต์เพียงอาร์กิวเมนต์เดียว Enumerable#sort_by, Enumerable#min_by &Enumerable
หากคุณกำลังมองหาโครงการเล็กๆ เพื่อฝึกฝนและฝึกฝนทักษะ Ruby ของคุณ แสดงว่าคุณมาถูกที่แล้ว วันนี้ฉันต้องการสร้างแอปพลิเคชัน ตัวย่อลิงก์ ร่วมกับคุณ ตัวย่อลิงก์คืออะไร ฉันแน่ใจว่าคุณเคยเห็นพวกเขามาก่อน… “ลิงก์สั้น ๆ” เหล่านี้ เช่น: https://t.co/eKBRm2tTUF เมื่อคุณเยี่ยมชม URL นี้ คุณจะถูกเปลี่ยนเส
หากคุณกำลังใช้ Atom สำหรับการพัฒนา Ruby คุณอาจรู้ว่ามีปลั๊กอิน (packages ใน Atom) ที่สามารถปรับปรุงประสิทธิภาพการทำงานของคุณด้วยตัวแก้ไข แต่ที่เก็บข้อมูลแพ็คเกจของ Atom มีแพ็คเกจนับพัน! ควรใช้อันไหน และยิ่งไปกว่านั้น แป้นพิมพ์ลัดที่มีประโยชน์อะไรบ้างที่คุณสามารถใช้ทำงานได้เร็วขึ้น หากคุณเป็นผู้
ทรีคำนำหน้า (หรือที่เรียกว่า tri) คือโครงสร้างข้อมูลที่ช่วยคุณจัดระเบียบรายการคำและค้นหาคำที่ขึ้นต้นด้วยคำนำหน้าเฉพาะได้อย่างรวดเร็ว ตัวอย่างเช่น คุณสามารถค้นหาคำทั้งหมดในพจนานุกรมที่ขึ้นต้นด้วยตัวอักษร “ca” เช่น “cat” หรือ “cape” ดูภาพนี้: นี่คือคำนำหน้าต้นไม้ ติดตามได้จากรูท (* ) ไปยังโหนดที
Ruby จะจงใจซ่อนข้อผิดพลาดและข้อยกเว้นบางอย่างจากคุณ บางครั้งสิ่งนี้ก็มีประโยชน์ เช่นเดียวกับเมื่อใช้ Kernel#loop เมธอดที่มีบล็อก loop จะหยุดเมื่อ StopIteration ยกข้อยกเว้นขึ้น แต่บางครั้งอาจทำให้การดีบักของคุณยากขึ้นมาก มาดูตัวอย่างกัน! ข้อยกเว้นที่ซ่อนอยู่:โมดูลที่เปรียบเทียบได้ + วิธีการ ตัว
ไม่มี… มันคืออะไร? ก็ nil เป็นวัตถุ Ruby พิเศษที่ใช้แทนค่า ว่าง หรือ ค่าเริ่มต้น นอกจากนี้ยังเป็นค่า เท็จ ซึ่งหมายความว่ามีพฤติกรรมเหมือน false เมื่อใช้ในประโยคเงื่อนไข ตอนนี้ : มีเพียงหนึ่ง nil วัตถุที่มี object_id จาก 4 (หรือ 8 ใน Ruby 64 บิต) นี่เป็นส่วนหนึ่งของสาเหตุที่ nil เป็นพิเศษ nil.ob
สตริงคือลำดับของอักขระ สตริงคือออบเจ็กต์ ดังนั้นสตริงจึงมีวิธีการมากมายที่คุณสามารถใช้ทำสิ่งต่างๆ กับสตริงได้ ในบทความนี้ คุณจะค้นพบ วิธีสตริงทับทิม . ที่มีประโยชน์ที่สุด พร้อมตัวอย่าง! สารบัญ 1 วิธีรับความยาวของสตริง 2 วิธีตรวจสอบว่าสตริงว่างหรือไม่ 3 การแก้ไขสตริงคืออะไร 4 วิธีการแยกสตริงย่อย
บางทีคุณอาจเพิ่งเคยได้ยินเกี่ยวกับ Functional Programming และมีคำถามบางอย่าง ชอบ… การเขียนโปรแกรมเชิงฟังก์ชันคืออะไรกันแน่? เปรียบเทียบกับการเขียนโปรแกรมเชิงวัตถุเป็นอย่างไร คุณควรใช้การเขียนโปรแกรมเชิงฟังก์ชันใน Ruby หรือไม่ ให้ฉันตอบคำถามเหล่านี้ให้คุณเพื่อให้คุณได้รับแนวคิดที่ดีขึ้นเกี่ยวกับว
สัญลักษณ์มีลักษณะดังนี้: :testing บางคนสับสนสัญลักษณ์กับตัวแปรแต่ไม่เกี่ยวอะไรกับตัวแปร… …สัญลักษณ์เป็นเหมือนสตริงมากกว่ามาก . สัญลักษณ์และสตริง Ruby ต่างกันอย่างไร สตริงใช้เพื่อทำงานกับ ข้อมูล . สัญลักษณ์คือตัวระบุ . นั่นคือความแตกต่างหลัก: สัญลักษณ์ไม่ใช่แค่สตริงประเภทอื่น แต่มีจุดประสงค์
การเขียนส่วนขยาย C ช่วยให้คุณโต้ตอบกับ Ruby จาก C. คุณอาจต้องการทำเช่นนี้หากมีวิธีการสำคัญเฉพาะที่คุณต้องการปรับให้เหมาะสมด้วยความเร็ว C หรือหากคุณต้องการสร้างอินเทอร์เฟซระหว่างไลบรารี C และ Ruby อีกทางเลือกหนึ่งคือการใช้โมดูล FFI ตอนนี้ : มาค้นพบวิธีเขียนส่วนขยาย C กันเถอะ! ส่วนขยาย C แรกของคุณ
ความซับซ้อนของเวลาเป็นหนึ่งในแนวคิดที่น่าสนใจที่สุดที่คุณสามารถเรียนรู้จากวิทยาการคอมพิวเตอร์ และคุณไม่จำเป็นต้องมีปริญญาเพื่อทำความเข้าใจมัน! เป็นเรื่องที่น่าสนใจเพราะช่วยให้คุณเห็นทำไมอัลกอริทึมหรือโปรแกรมบางอย่างจึงอาจทำงานช้า และสิ่งที่คุณทำได้เพื่อให้เร็วขึ้น คุณสามารถใช้สิ่งนี้กับรหัสของคุณเ
การจัดสรรหน่วยความจำทำงานใน Ruby อย่างไร Ruby ได้รับหน่วยความจำเป็นชิ้น ๆ เรียกว่าเพจ วัตถุใหม่จะถูกบันทึกไว้ที่นี่ แล้ว… เมื่อหน้าเหล่านี้เต็ม จำเป็นต้องใช้หน่วยความจำเพิ่มขึ้น Ruby ขอหน่วยความจำเพิ่มเติมจากระบบปฏิบัติการด้วย malloc ฟังก์ชัน mallocนี้ ฟังก์ชั่นเป็นส่วนหนึ่งของระบบปฏิบัติการ แ
มีบทความสองสามบทความเกี่ยวกับวิธีการค้นหาหน่วยความจำรั่ว แต่ถ้าสร้างขึ้นมาล่ะ? ฉันคิดว่ามันจะเป็นแบบฝึกหัดที่น่าสนใจเพื่อให้คุณรู้ว่าหน่วยความจำรั่วใน Ruby เป็นอย่างไร มาดูตัวอย่างกัน หลุดง่าย เราสร้างหน่วยความจำรั่วได้โดยการเพิ่มวัตถุใหม่ลงในอาร์เรย์ ถูกใจสิ่งนี้ : a = [] b = {} loop { sle
รูปแบบการออกแบบของมัณฑนากรคืออะไร และคุณจะนำรูปแบบนี้ไปใช้ในโครงการ Ruby ได้อย่างไร รูปแบบการออกแบบมัณฑนากรช่วยให้คุณปรับปรุงวัตถุโดยเพิ่มความสามารถใหม่ โดยไม่ต้องเปลี่ยนคลาส มาดูตัวอย่างกัน! การบันทึกและประสิทธิภาพ ในตัวอย่างนี้ เรากำลังส่งคำขอ HTTP โดยใช้ gem เช่น rest-client นี่คือลักษณะ: r
มาพูดถึงรูปแบบการออกแบบกลยุทธ์กันเถอะ! รูปแบบการออกแบบนี้ช่วยให้คุณเปลี่ยนอัลกอริทึมหลักภายในวิธีการได้ คุณทำได้โดยส่งผ่านคลาสที่ใช้อัลกอริทึมนี้ แทนที่จะฮาร์ดโค้ดลงในคลาส และเมื่อฉันพูด อัลกอริทึม ฉันไม่ได้หมายถึงอัลกอริธึมวิทยาการคอมพิวเตอร์แฟนซี แต่โค้ดใดๆ ที่ทำตามขั้นตอนตามลำดับเพื่อให้ได้ผลล
หลักการเชิงวัตถุที่สำคัญที่สุดสองประการคือการทำงานร่วมกันและการมีเพศสัมพันธ์ ความสามัคคี เป็นเรื่องเกี่ยวกับความสัมพันธ์ระหว่างเมธอดทั้งหมดภายในคลาส พวกเขาใช้ชุดตัวแปรและพารามิเตอร์ของอินสแตนซ์ชุดเดียวกันหรือไม่ ทั้งหมดทำงานร่วมกันเพื่อเป้าหมายเดียวกัน ? หรือทุกวิธีรู้สึกแยกจากกัน? ข้อต่อ คือการพึ