Bootstrapper ในการเขียนโปรแกรมคืออะไร?


15

บางครั้งฉันเห็นคำว่า "Bootstrapper" ฉันเห็นมันครั้งสุดท้ายเมื่อสร้างแบบฝึกหัดการเรียนรู้สำหรับปริซึม ฉันสะดุดกับUnityBootstrapperชั้นเรียน คำถามของฉันคือ: เมื่อใดที่คุณจะเรียกชั้นเรียนว่า "Bootstrapper" ทำไม? พูดเกี่ยวกับชั้นเรียนว่าอย่างไร?


3
ตรวจสอบบทความ Wikipedia
ChrisF

คำตอบ:


22

ในตัวอย่างเฉพาะของคุณคุณกำลังพูดถึง Bootstrapper Container Dependency นี่คือที่ที่คุณกำหนดค่าอินสแตนซ์ทั้งหมดของคุณและเตรียมคอนเทนเนอร์สำหรับการใช้งานโดยทั่วไป

ท้ายที่สุดก็คือการมีเพศสัมพันธ์ส่วนใหญ่ในแอปพลิเคชันของคุณอยู่ (มันต้องอยู่ที่ไหนสักแห่ง) แต่นี่เป็นผลข้างเคียงไม่ใช่วัตถุประสงค์

โดยทั่วไปแล้ว bootstrapper เป็นเพียงคลาสหรือวิธีที่เตรียม / กำหนดกลุ่มคลาส / วัตถุหรือ API ทั้งหมดสำหรับความต้องการและการใช้งานเฉพาะของคุณ


11

ในความหมายทั่วไปมีคำตอบที่ยอดเยี่ยมที่EL & U.SEสำหรับคำถามความหมายของ "bootstrap" คืออะไร? :

เงินทุนหมายถึงกระบวนการที่เป็นคล้ายกับยกตัวเองขึ้นไปตามวัฏจักร ความคิดคือมันเป็นไปไม่ได้ทางร่างกายที่จะยกตัวเองโดยการโค้งงอและพยายามที่จะ "ยก"

Bootstrappingหมายถึงการทำอย่างนั้น แต่ในทางที่คล้ายกับฟิสิกส์ การคำนวณเป็นเรื่องที่พบบ่อยที่สุดที่ฉันได้ยิน โปรแกรมที่bootstrapsนั้นเป็นโปรแกรมที่เริ่มต้นด้วยการปฏิบัติการที่ไม่สำคัญอย่างยิ่งจากนั้นใช้โปรแกรมนั้นเพื่อดำเนินการกระบวนการเริ่มต้นต่อไปภายใน โปรแกรมนี้ต้องการความช่วยเหลือในขั้นตอนแรก แต่เมื่อเกิดขึ้นแล้วก็ไม่ต้องการความช่วยเหลือจากภายนอก

เช่นนั้น UnityBootstrapperนั้นเหตุผลจะเป็นคลาสที่อนุญาตให้แอปพลิเคชันของคุณมารับเองได้จาก bootstrapsซึ่งเป็นการยืนยันที่ยืนยันโดยเพจ MSDNสำหรับคลาสนั้น

คลาสพื้นฐานที่จัดเตรียมลำดับการบูตพื้นฐานที่ลงทะเบียนสินทรัพย์ Composite Application Library ส่วนใหญ่ใน IUnityContainer

ข้อสังเกต: คลาสนี้จะต้องถูก overriden เพื่อให้การกำหนดค่าเฉพาะแอปพลิเคชัน


2

ในคำศัพท์ระดับต่ำ bootstrapper เป็นชิ้นส่วนของรหัสที่โหลดใน bootup ซึ่งกำหนดค่าหน่วยความจำและสภาพแวดล้อมก่อนที่จะจุดเข้าใช้งานของระบบปฏิบัติการ


1

โดยปกติแล้วมันหมายถึงสิ่งที่ให้ชุดข้อมูลน้อยที่สุดสร้างวัตถุที่สมบูรณ์ ตัวอย่างเช่น YieldCurveBootstrapper รับราคาตลาด (อัตราดอกเบี้ยเงินฝาก, อัตราแลกเปลี่ยน, ฯลฯ ) และสร้างเส้นกราฟอัตราผลตอบแทนที่ปรับเทียบแล้ว

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