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

9
เป็นการดีหรือไม่ที่จะทำการทดสอบหน่วยใน hooks การควบคุมเวอร์ชัน?
จากมุมมองทางเทคนิคเป็นไปได้ที่จะเพิ่มตะขอกดล่วงหน้า / หลังบางอันซึ่งจะเรียกใช้การทดสอบหน่วยก่อนที่จะอนุญาตให้มีการรวมการมอบหมายเฉพาะกับสาขาเริ่มต้นระยะไกล คำถามของฉันคือ - จะดีกว่าหรือไม่หากทำการทดสอบหน่วยในการสร้างไปป์ไลน์ ฉันรู้ว่าฉันไม่ได้ถูก จำกัด ด้วยสองตัวเลือกนี้ ตัวอย่างเช่นฉันสามารถอนุญาตให้คอมมิชชันทุกสาขาและการทดสอบก่อนที่จะทำการผสานผสานกระทำการซื้อคืน แต่ถ้าคุณต้องเลือกระหว่างโซลูชันสองตัวนี้อย่างแน่นอนคุณจะเลือกอันไหนและด้วยเหตุผลอะไรกันแน่

4
ปลั๊กอินควรใช้อะไร: hooks เหตุการณ์หรืออย่างอื่น?
พิจารณาแอพที่อนุญาตให้ปลั๊กอินตอบสนองต่อโฟลว์ของโปรแกรม ฉันรู้ 2 วิธีในการบรรลุเป้าหมายนี้: hooksและevents 1. ตะขอ ใช้การเรียกฟังก์ชั่นที่ว่างเปล่าภายในผังโปรแกรมหลัก ฟังก์ชั่นเหล่านี้สามารถแทนที่ได้ด้วยปลั๊กอิน ตัวอย่างเช่น Drupal CMS ใช้ฮุคที่พร้อมใช้งานกับโมดูลและธีม นี่คือตัวอย่างของวิธีการใช้เบ็ดในฟังก์ชั่นfile_copy function file_copy(stdClass $source, $destination = NULL, $replace = FILE_EXISTS_RENAME) { // ... [File copying routine] // Inform modules that the file has been copied. module_invoke_all('file_copy', $file, $source); return $file; // ... } โมดูลสามารถใช้modulename_file_copy($file, $source)ฟังก์ชั่นซึ่งจะถูกเรียกโดยในmodule_invoke_all file_copyหลังจากฟังก์ชั่นนี้เสร็จสิ้นการfile_copyดำเนินการจะดำเนินการต่อ 2. …

3
เมื่อตะขอเป็นตัวเลือกการออกแบบที่ถูกต้อง
ฉันได้ทำงานกับแอพ Rails ขนาดใหญ่ซึ่งการใช้งานการเรียกกลับของ ActiveRecord นั้นอาละวาดและบาดใจ การบันทึกมักจะมีผลข้างเคียงที่ไม่คาดคิดและมันเป็นความท้าทายที่จะให้เหตุผลเกี่ยวกับระบบ ในเวลาเดียวกันฉันเคยเห็น hooks ใช้เพื่อให้เกิดผลดีในฐานะส่วนหนึ่งของการสืบทอด (เช่นคลาสแม่ที่ใช้แม่แบบวิธีการเพื่อให้คลาสย่อยเพิ่มพฤติกรรมพิเศษโดยไม่จำเป็นต้องรู้เกี่ยวกับ internals ของผู้ปกครอง) และปลั๊กอิน (เช่นโหมด emacs ที่เรียกใช้ hook เมื่อเปิดใช้งานช่วยให้ผู้ใช้สามารถเพิ่มพฤติกรรมที่กำหนดเองในโหมดนั้น) ฉันรู้ว่าแอพพลิเคชั่น Rails และ Lisp เป็นระบบที่แตกต่างกันอย่างมาก แต่ฉันอยากรู้ว่ามีเกณฑ์อะไรที่คนรู้จักกันดีเมื่อตัดสินใจว่า hooks เป็นตัวเลือกที่เหมาะสมสำหรับปัญหาที่พวกเขากำลังเผชิญหรือไม่ ชุดรูปแบบที่กระโดดออกมาที่ฉันคือการคาดการณ์ การใช้ตะขอในทางที่ผิดดูเหมือนว่าจะนำไปสู่การกระทำที่น่ากลัวในระยะไกลและพฤติกรรมที่น่าแปลกใจในขณะที่การใช้งานที่ดีสามารถนำไปสู่กรอบการทำงานที่คาดการณ์ได้โดยไม่ต้องมีเพศสัมพันธ์อย่างแน่นหนา ในขณะที่ฉันยังไม่กี่ปีในอาชีพการเขียนโปรแกรมของฉันฉันคิดว่าตัวเองเป็น noob ในหลาย ๆ ด้านและสงสัยว่าผู้คนได้ใส่ความคิดที่เป็นธรรมในหัวข้อนี้ แนวทางอะไรบ้างที่สามารถนำการตัดสินใจนี้ไปใช้?
10 hooks 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.