4
แนวทางปฏิบัติที่ดีที่สุดกับ Nuget: Debug or Release?
ตอนนี้ฉันจัดแพ็คเกจบิวด์รีลีสด้วย Nuget สำหรับบิวด์อย่างเป็นทางการไปยัง nuget.org แต่ฉันแพ็กเกจการดีบักบิวด์ด้วย Nuget สำหรับซอร์สสัญลักษณ์ที่ส่งไปยัง Symbolource.org แก้ไข: (Jon Skeet มีอคติจากการพัฒนา Noda Time) ตอนนี้ NuGet รองรับการส่งไปยังทั้งแกลเลอรีNuGet และ Symbolource.org (หรือเซิร์ฟเวอร์ที่คล้ายกัน) ตามที่บันทึกไว้ น่าเสียดายที่มีข้อกำหนดที่ขัดแย้งกันสองประการที่นี่: เมื่อใช้ไลบรารีโดยไม่จำเป็นต้องมีการดีบักใด ๆ คุณต้องการสร้างรุ่น นั่นคือสิ่งที่รุ่นสร้างมีไว้สำหรับหลังจากทั้งหมด เมื่อทำการดีบักลงในไลบรารีเพื่อวัตถุประสงค์ในการวินิจฉัยคุณต้องการสร้างดีบักโดยปิดใช้งานการเพิ่มประสิทธิภาพที่เหมาะสมทั้งหมด นั่นคือสิ่งที่สร้างดีบักมีไว้สำหรับหลังจากทั้งหมด นั่นจะดี แต่ NuGet ไม่ (เท่าที่ฉันบอกได้) อนุญาตให้เผยแพร่ทั้งรุ่นและรุ่นแก้ไขข้อบกพร่องในรูปแบบที่เป็นประโยชน์ในแพ็คเกจเดียวกัน ดังนั้นตัวเลือกคือ: แจกจ่ายบิวด์การแก้ไขข้อบกพร่องให้ทุกคน (ดังที่แสดงในตัวอย่างในเอกสาร) และใช้งานกับ Hit ขนาดและประสิทธิภาพใด ๆ แจกจ่ายรุ่นสร้างให้กับทุกคนและใช้ชีวิตด้วยประสบการณ์การดีบักที่บกพร่องเล็กน้อย ใช้นโยบายการแจกจ่ายที่ซับซ้อนมากโดยอาจให้แพ็คเกจรีลีสและดีบักแยกต่างหาก สองคนแรกเดือดลงไปถึงผลของความแตกต่างระหว่างการดีบักและการสร้างรุ่น ... แม้ว่าจะเป็นที่น่าสังเกตว่ายังมีความแตกต่างอย่างมากระหว่างการต้องการก้าวเข้าสู่รหัสของไลบรารีเพราะคุณต้องการตรวจสอบพฤติกรรมบางอย่างและต้องการ เพื่อดีบักโค้ดของไลบรารีเพราะคุณเชื่อว่าคุณพบข้อบกพร่อง ในกรณีที่สองอาจเป็นการดีกว่าที่จะรับโค้ดของไลบรารีเป็นโซลูชัน Visual Studioและดีบักด้วยวิธีนี้ดังนั้นฉันจึงไม่ต้องใส่ใจกับสถานการณ์นั้นมากเกินไป …