คำถามติดแท็ก ruby

คำถามเกี่ยวกับภาษาทับทิม, ไดนามิก, ไตร่ตรอง, ภาษาการเขียนโปรแกรมเชิงวัตถุที่มุ่งเน้นทั่วไปที่รวมไวยากรณ์ที่ได้รับแรงบันดาลใจจาก Perl กับคุณสมบัติคล้าย Smalltalk

3
แมโครของ LISP นั้นดีกว่า“ ความสามารถ” ของรูบี้ในการสร้าง DSL
หนึ่งในสิ่งที่ทำให้ Ruby shine คือความสามารถในการสร้าง Domain Specific Languages ​​ที่ดีขึ้นเช่น ซินาตร้า rspec คราด Ruby on Rails 'ActiveRecord แม้ว่าเราสามารถทำซ้ำไลบรารี่เหล่านี้ใน LISP ผ่านมาโครได้ แต่ฉันคิดว่าการติดตั้งของรูบี้นั้นสง่างามกว่า อย่างไรก็ตามฉันคิดว่ามีบางกรณีที่แมโครของ LISP นั้นสามารถทำได้ดีกว่ารูบี้แม้ว่าฉันจะไม่สามารถคิดได้ ดังนั้นมาโครของ LISP ในพื้นที่ใดที่ดีกว่า "ความสามารถ" ของรูบี้ในการสร้าง DSL ถ้ามี? ปรับปรุง ฉันถามสิ่งนี้เพราะภาษาการเขียนโปรแกรมที่ทันสมัยกำลังเข้าใกล้ LISP เอกพจน์เช่น C มีตัวประมวลผลก่อนการขยายตัวของแมโครแม้ว่าจะเป็นแบบดั้งเดิมและมีแนวโน้มที่จะเกิดข้อผิดพลาด C # มีคุณสมบัติแม้ว่าจะเป็นแบบอ่านอย่างเดียวซึ่งเปิดเผยผ่านการสะท้อนกลับ Python ได้เพิ่มมัณฑนากรที่สามารถปรับเปลี่ยนพฤติกรรมของฟังก์ชั่น (และคลาสสำหรับ v 3.0) แต่รู้สึกค่อนข้าง จำกัด Ruby TMTOWTDI ที่ทำให้ DSL สง่างามหากใช้งานอย่างระมัดระวัง …
21 ruby  lisp  dsl 

1
ห้องสมุด Ruby Git ที่ดีที่สุด?
Git library ใดที่ดีที่สุดใน Ruby ที่จะใช้ Git, Grit, Rugged, Other? ความเป็นมา: ฉันเป็นผู้ดูแลปัจจุบันของTicGit-ngซึ่งเป็นระบบจำหน่ายตั๋วออฟไลน์ที่สร้างขึ้นบน git และฉันได้อ่านและได้ยินซ้ำแล้วซ้ำอีกว่า Grit เป็นสิ่งที่ฉันควรใช้เพราะมันแทนที่อัญมณี Git แต่ ดูเหมือนว่าจะไม่มีเอกสารหรือขาดคุณสมบัติเนื่องจากตัวฉันและคนอื่น ๆ ล้มเหลวในการพยายามเปลี่ยนจาก Git ที่เลิกใช้แล้ว แต่ใช้งานได้ไปเป็นอัญมณี Grit รุ่นใหม่
21 ruby  git 

8
Ruby: The Bad Parts [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการถกเถียงอภิปรายโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา คำถามนี้ถูกโยกย้ายจาก Stack Overflow เพราะสามารถตอบได้ใน Software Engineering Stack Exchange อพยพ 8 ปีที่ผ่านมา เมื่อเร็ว ๆ นี้ฉันอ่านหนังสือ "Javascript: The Good Parts" ของ Crockford และหนึ่งในสถานที่สำคัญคือภาษาการเขียนโปรแกรมสามารถมีฟีเจอร์ที่ไม่ดีซึ่งโปรแกรมเมอร์ควรหลีกเลี่ยง ฉันเป็น Rubyist และในขณะที่ฉันรักภาษามีค่าเสมอในการรับมุมมอง ดังนั้นสิ่งที่คุณเห็นว่าเป็นคุณลักษณะที่เลวร้ายที่สุด (เช่นวิธีการเรียนการปฏิบัติ) ในทับทิม? ความตั้งใจของฉันที่นี่ไม่ได้เริ่มต้นการโต้เถียงเกี่ยวกับข้อดีของภาษาหรือความเร็วของมันและอื่น ๆ แต่ฉันต้องการอภิปรายว่าคุณลักษณะใดที่คุณคิดว่าเป็นอันตราย / ลำบาก / เจ็บปวดที่จะใช้โดยอิงจากประสบการณ์ที่ผ่านมา
20 ruby 

7
นักพัฒนา Ruby on Rails ที่มีประสบการณ์ใช้นั่งร้านหรือไม่
ในบทช่วยสอน Ruby on Rails ฉันอ่านสิ่งที่แนะนำว่าผู้พัฒนาที่มีประสบการณ์ไม่ได้ใช้นั่งร้านเนื่องจากพวกเขามักจะชอบเขียนโค้ดเพื่อเชื่อมต่อ MVC ด้วยตัวเอง ในสถานที่ที่แตกต่างกันฉันอ่านว่ามันเป็นความคิดที่ดีที่จะใช้นั่งร้านเพราะมันช่วยให้คุณติดการประชุมเพื่อให้คนอื่นที่ดูและโต้ตอบกับโค้ดของคุณจะเข้าใจสิ่งที่คุณกำลังทำอยู่ ฉันค่อนข้างใหม่กับ Ruby on Rails แต่ไม่ใช่ MVC หรือเว็บแอปพลิเคชัน - โดยทั่วไปฉันควรพยายามอย่างหนักที่จะยึดการประชุมนั่งร้านและให้คำแนะนำแก่ฉันหรือไม่

11
ภาษาแบบไดนามิกถูกตีความเสมอหรือไม่
มองไปที่ภาษาไดนามิกส่วนใหญ่ (ถ้าไม่ใช่ทั้งหมด) (เช่น Python, PHP, Perl และ Ruby) พวกมันจะถูกตีความทั้งหมด ช่วยแก้ให้ด้วยนะถ้าฉันผิด. มีตัวอย่างของภาษาแบบไดนามิกที่ผ่านขั้นตอนการรวบรวมหรือไม่ ภาษาไดนามิกมีความเหมือนกันกับภาษาที่ตีความหรือไม่

5
ผู้พัฒนา Python ควรรู้อะไรบ้างขณะเรียนรู้ Ruby [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ฉันเป็นโปรแกรมเมอร์ Python ประมาณ 18 เดือนซึ่งประกอบด้วยการฝึกงานหนึ่งครั้งและโครงการสองสามด้านและฉันคิดว่าตัวเองค่อนข้างสบายใจในภาษา อย่างไรก็ตามดูเหมือนว่าจะมีความสนใจมากใน Ruby ในด้านการเขียนโปรแกรม แต่ไม่มากใน Python อีกต่อไป ดังนั้นในการเรียนรู้ทับทิมจะมีสิ่งที่ไพทอนเป็นเพียงแนวทางปฏิบัติที่ไม่ดีในทับทิมหรือไม่? ฉันควรระวังอะไรและควรหลีกเลี่ยงอะไร

3
ทำไมผู้สร้าง Ruby จึงเลือกใช้แนวคิดของ Symbols
tl; dr: จะมีคำจำกัดความเกี่ยวกับสัญลักษณ์ของผู้ไม่เชื่อเรื่องภาษาและมีเหตุผลที่จะใช้มันในภาษาอื่น ๆ หรือไม่? ดังนั้นทำไมผู้สร้าง Ruby จึงใช้แนวคิดsymbolsในภาษา ฉันถามสิ่งนี้จากมุมมองของโปรแกรมเมอร์ที่ไม่ใช่ทับทิม ฉันได้เรียนรู้จำนวนมากภาษาอื่น ๆ symbolsและพบว่าในไม่มีของพวกเขาจำเป็นที่จะต้องระบุถ้าผมจัดการหรือไม่กับสิ่งที่โทรทับทิม คำถามหลักคือแนวคิดของsymbolsRuby มีอยู่ในการแสดงหรือไม่หรือเป็นเพียงบางสิ่งที่จำเป็นเนื่องจากวิธีการเขียนภาษา? โปรแกรมใน Ruby จะเบาลงและ / หรือเร็วกว่าสมมติว่า Python หรือ Javascript เป็นคู่กันหรือไม่ ถ้าเป็นเช่นนั้นมันจะเป็นเพราะsymbolsอะไร? เนื่องจากหนึ่งในความตั้งใจของรูบี้คือการอ่านและเขียนสำหรับมนุษย์ได้ง่ายผู้สร้างมันไม่สามารถปลดเปลื้องกระบวนการเข้ารหัสโดยใช้การปรับปรุงเหล่านั้นในล่ามเอง (เพราะอาจเป็นภาษาอื่น) ดูเหมือนว่าทุกคนต้องการที่จะรู้ว่าอะไรsymbolsคืออะไรและใช้งานอย่างไรและทำไมพวกเขาถึงอยู่ที่นั่นในตอนแรก

1
เหตุใด Microsoft จึงละทิ้ง IronRuby และ IronPython [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา เมื่อหลายปีก่อน Microsoft ประกาศว่า Ruby และ Python กำลังจะมาที่. net โครงการที่เรียกว่า IronRuby และ IronPython ตามลำดับ Microsoft กล่าวว่าโครงการจะสร้างขึ้นจาก. DLR สุทธิ WIKIpedia ระบุว่าสำหรับโครงการและวัตถุประสงค์ทั้งหมด Microsoft ได้ละทิ้งโครงการเหล่านี้ เหตุใด Microsoft จึงละทิ้งโครงการเหล่านี้
15 .net  python  ruby  microsoft 

5
การฝึกลิงถือเป็นการฝึกเขียนโปรแกรมที่ดีหรือไม่?
ฉันได้รับความประทับใจแล้วการจับลิงนั้นเป็นประเภทแฮ็คที่รวดเร็วและสกปรกมากกว่าการฝึกเขียนโปรแกรมมาตรฐานที่ดี ในขณะที่ฉันใช้เป็นครั้งคราวเพื่อแก้ไขปัญหาเล็กน้อยกับ libs ของบุคคลที่สามฉันคิดว่าเป็นการแก้ไขชั่วคราวและฉันจะส่งปะที่เหมาะสมให้กับโครงการของบุคคลที่สาม แต่ผมเคยเห็นเทคนิคนี้มาใช้เป็น "วิธีปกติ" ในโครงการหลักเช่นใน Gevent ของโมดูลgevent.monkey การฝึกลิงกลายเป็นกระแสหลักปกติการฝึกเขียนโปรแกรมที่ยอมรับได้หรือไม่? ดูเพิ่มเติม: "Monkeypatching เพื่อมนุษย์"โดย Jeff Atwood

6
One-liners vs. readability: เมื่อใดที่จะหยุดลดรหัส? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา บริบท ฉันเพิ่งได้รับความสนใจในการผลิตรหัสที่จัดรูปแบบที่ดีขึ้น และโดยดีกว่าฉันหมายถึง "การปฏิบัติตามกฎเกณฑ์ที่รับรองโดยผู้คนมากพอที่จะถือว่าเป็นแนวปฏิบัติที่ดี" (เนื่องจากจะไม่มีวิธีที่ดีที่สุดในการเขียนโค้ดแน่นอน) ทุกวันนี้ฉันส่วนใหญ่เป็นรหัสใน Ruby ดังนั้นฉันจึงเริ่มใช้ linter (Rubocop) เพื่อให้ข้อมูลบางอย่างเกี่ยวกับ "คุณภาพ" ของรหัสของฉัน ("คุณภาพ" นี้ถูกกำหนดโดยชุมชนruby-style- project -guide-guide ) โปรดทราบว่าผมจะใช้ "คุณภาพ" ในขณะที่ "คุณภาพของการจัดรูปแบบว่า" ไม่มากเกี่ยวกับประสิทธิภาพของรหัสแม้ว่าในบางกรณีที่มีประสิทธิภาพรหัสจริงจะได้รับผลกระทบโดยวิธีการรหัสที่เขียน อย่างไรก็ตามทำทุกสิ่งที่ฉันรู้ (หรืออย่างน้อยก็จำได้) บางสิ่ง: บางภาษา (ที่โดดเด่นที่สุดคือ Python, Ruby และเช่นนั้น) อนุญาตให้สร้างโค้ดแบบหนึ่งบรรทัดที่ยอดเยี่ยม การปฏิบัติตามหลักเกณฑ์บางประการสำหรับรหัสของคุณอาจทำให้รหัสสั้นลงและชัดเจนมาก กระนั้นก็ตามการปฏิบัติตามแนวทางเหล่านี้อย่างเคร่งครัดเกินไปอาจทำให้รหัสชัดเจนน้อยลง / อ่านง่าย รหัสสามารถปฏิบัติตามหลักเกณฑ์บางอย่างเกือบจะสมบูรณ์แบบและยังคงมีคุณภาพไม่ดี ส่วนใหญ่การอ่านรหัสเป็นเรื่องส่วนตัว (เช่นเดียวกับใน "สิ่งที่ฉันเห็นชัดเจนว่าอาจคลุมเครือกับนักพัฒนาซอฟต์แวร์") นี่เป็นเพียงการสังเกตไม่ใช่กฎที่แน่นอน คุณจะทราบได้ว่าการอ่านโค้ดและแนวทางต่อไปนี้อาจดูเหมือนไม่เกี่ยวข้องกัน ณ …

3
เราสามารถสร้างแอพพลิเคชันบนเดสก์ท็อปด้วย Ruby ได้หรือไม่? [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Software Engineering Stack Exchange ปิดให้บริการใน6 ปีที่ผ่านมา ฉันรู้ว่ากรอบ Ruby on Rails นั้นใช้สำหรับการพัฒนาเว็บไซต์เท่านั้นและไม่เหมาะสำหรับการพัฒนาแอปพลิเคชันบนเดสก์ท็อป แต่ถ้าโปรแกรมเมอร์ทับทิมต้องการพัฒนาแอปพลิเคชันเดสก์ท็อปมันเหมาะสมและดีกว่าที่จะใช้กับ Ruby เท่านั้น (ไม่ใช่ jRuby เนื่องจากบทเรียนส่วนใหญ่มีไว้สำหรับ jRuby) หรือไม่ ถ้าใช่โปรดให้บทเรียนที่ดี ฉันต้องการใช้ linux เป็นระบบปฏิบัติการเพื่อการพัฒนา โปรดแนะนำบางสิ่งบางอย่างเนื่องจากฉันเป็นนักพัฒนาทับทิมและต้องการพัฒนาแอปพลิเคชันเดสก์ท็อป

4
Ruby ทำอะไรได้ถูกต้อง (หรือเป็น Rails) [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ภาษาโปรแกรมส่วนใหญ่มีการตัดสินใจออกแบบที่มีผลต่อการใช้งานและการบังคับใช้ ตัวอย่างเช่น: Python มุ่งเน้นไปที่การบำรุงรักษา / ความสามารถในการอ่านของรหัสและมีการเยื้องเป็นส่วนหนึ่งของภาษาเอง ความตั้งใจของ Java คือการข้ามแพลตฟอร์ม OOP 'ง่ายขึ้น' และ 'เป็นมิตร' กว่า C ++ Objective-C ถูกสร้างขึ้นเพื่อเป็นตัวคลุม OO รอบ C ซึ่งไม่รู้อนาคตของ C ++ ในเวลานั้น Erlang ได้รับการออกแบบสำหรับระบบที่ทนต่อความผิดพลาดสูงและเกิดขึ้นพร้อมกัน PHP ออกแบบมาเพื่อจัดการการสร้างเว็บเพจแบบไดนามิก CoffeeScript ออกแบบมาเพื่อให้เห็นส่วนที่ดีของ Javascript และเพิ่ม OOP syntactical sugar และซ่อนความแตกต่าง (กลม ฯลฯ ) ของ JS 'เบื้องหลัง' …

2
วิธีจัดการกับ“ ความหยิ่งยโส”
ฉันออกจากงาน (เพื่อย้ายไปยังประเทศอื่น) ซึ่งฉันตั้งโปรแกรมใน Javascript และ Haskell (บางไพ ธ อน) ส่วนใหญ่แล้ว ฉันชอบมันมากเพราะผู้คนมีจุดประสงค์ในเชิงบวกทางคณิตศาสตร์และยังได้ทำสิ่งต่างๆมากมาย นี่เป็นร้านค้ามืออาชีพอย่างแท้จริง ตอนนี้ฉันทำงานที่ร้าน Agile / XP ในขณะนี้เป็นสิ่งที่ดีและทั้งหมดที่ฉันรู้สึกว่าบางทีเราไม่เป็นมืออาชีพเมื่อมันมาถึงการเลือกเทคโนโลยีและห้องสมุด ฉันรู้สึกว่าวิธีการเขียนซอฟต์แวร์ของเรานั้นค่อนข้างอ่อนและไม่มีโครงสร้าง ฉันพยายามอ่านหนังสือที่ฉันได้รับการเสนอและดูเหมือนว่าพวกเขาจะสนับสนุนสไตล์นี้ ( ฮึ ) หลายครั้งที่เราเพิ่งเลือก libs จากฮับ git และใช้มันโดยไม่มีการตรวจสอบใด ๆ ฉันถูกบังคับให้ทำงานกับใครบางคนตลอดเวลาแม้ว่ามันจะเป็นงานเล็ก ๆ สำหรับคนคนหนึ่ง ดูเหมือนว่าจะมีกฎ "เร็ว ๆ " เล็กน้อยสำหรับทุกสิ่งแม้ว่ากฎนั้นอาจถูกทำลายโดยตัวอย่างเคาน์เตอร์เล็กน้อย (ครั้งหนึ่งฉันทำผิดพลาดจากการให้ตัวอย่างเคาน์เตอร์นั้นและฉันถูกโจมตีด้วยวาจา) นี่เป็นเรื่องปกติในอเมริกาหรือไม่ ฉันจะจัดการกับความหยิ่งยโสนี้ได้อย่างไร
13 ruby  haskell  agile 

7
สถานที่ที่ดีที่สุดในการสอนภาษาให้ตัวเองอยู่ที่ใด
ฉันไม่รู้ภาษาการเขียนโปรแกรมใด ๆ เลย ฉันจะสอนตัวเองและต้องรู้จักที่ดีที่สุดในการทำเช่นนั้นซึ่งฉันสามารถเรียนรู้จากระดับพื้นฐานที่สุด ที่ไหนดีในการเริ่มเรียนภาษา? ภาษาใดดีที่สุดที่จะเรียนรู้ก่อน โง่หรือไม่ที่จะเรียนรูบีก่อน? ที่นี่ฉันเจอบางคนบอกว่าการเรียนรู้ภาษาที่สูงขึ้นบางอย่างสามารถทำให้คุณ 'ขี้เกียจ' ถ้าคุณเรียนรู้พวกเขาก่อน เช่นเดียวกับทับทิมในหมู่คนอื่น ๆ สำหรับภาษาแรกของฉันสามีของฉันกำลังแนะนำให้ฉันเรียนรูบี้ (เพื่อผลประโยชน์ส่วนตัวของเขาเอง) อย่างไรก็ตามฉันต้องการคำแนะนำที่เป็นอิสระเกี่ยวกับวิธีการเริ่มต้นและภาษาที่ฉันควรเรียนรู้ก่อน ในที่สุดฉันจะเรียนรู้ทับทิมและจากนั้นทางรถไฟ สี่เดือนที่ผ่านมาสามีของฉันสั่งให้เขียนข้อความของวัตถุประสงค์ C เพราะเขาคิดว่าเขาจะรับมันไว้ ฉันพลิกผ่านและเห็นได้ชัดว่าเริ่มต้นในที่ที่สูงกว่าที่ฉันมา ฉันตบเบา ๆ ด้วยการกวดวิชาทับทิมและฉันไม่ได้รับมัน ฉันได้สิ่งที่ฉันใส่เข้าไปคือสิ่งที่ฉันได้รับ แต่ฉันไม่เข้าใจว่าอะไรนำไปสู่สิ่งนั้น ฉันจำเป็นต้องรู้กฎทั้งหมดก่อน จากนั้นฉันก็ค้นหาภาษาคอมพิวเตอร์และค้นคว้ารหัสไบนารี่ซึ่งช่วยได้มาก แต่ไม่ใช่ที่ที่ฉันต้องการเริ่ม ตอนนี้ฉันไม่มีเวลามากในชีวิตของฉัน (มีลูกสี่คน) ที่จะย้อนกลับไปไกลขนาดนั้น ถ้าฉันจะไปโรงเรียนนั่นจะแตกต่างกัน คำแนะนำใด ๆ ที่คุณสามารถให้ได้รับการต้อนรับมากที่สุด
13 ruby 

2
ทำไมผู้คนถึงไม่แนะนำให้ใช้ตัวแปรอินสแตนซ์สำหรับมุมมองใน Ruby on Rails
ทำไมฉันถึงได้ยินว่ามันไม่ดีที่จะแบ่งปันตัวแปรอินสแตนซ์ระหว่างตัวควบคุมและมุมมอง ฉันชอบมันเพราะฉันเห็นได้ทันทีผ่านทาง @ ว่ามีบางอย่างมาจากคอนโทรลเลอร์ ผมเห็นเป็นวิธีที่ดีที่จะใช้ผู้ช่วยเหลือในการควบคุมที่นี่: http://www.stephencelis.com/2008/09/06/rails-controllers-views-and-variables.html แต่ฉันใช้ cancan สำหรับส่วนนั้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.