หวังว่าคำถามง่ายๆสัมพัทธภาพ ฉันเริ่มทำงานในโครงการภายในใหม่เพื่อสร้างความสามารถในการรองรับอุปกรณ์ที่ได้รับการซ่อมแซมภายในอาคารได้
ฐานข้อมูลจะถูกจัดเก็บจากระยะไกลบนเว็บเซิร์ฟเวอร์และจะสามารถเข้าถึงได้ผ่านทางเว็บ API (JSON เอาต์พุต) และได้รับการปกป้องด้วย OAuth GUI ปลายด้านหน้ากำลังดำเนินการใน WPF และรหัสธุรกิจใน C #
จากนี้ฉันเห็นเลเยอร์ที่แตกต่างกันการนำเสนอ / แอพลิเคชัน / Datastore จะมีรหัสสำหรับจัดการการโทรที่ผ่านการรับรองความถูกต้องทั้งหมดไปยัง API, คลาสเพื่อเป็นตัวแทน (วัตถุธุรกิจ), คลาสเพื่อสร้างเอนทิตี (วัตถุธุรกิจ), ชิ้นส่วนสำหรับ WPF GUI, ชิ้นส่วนของ WPF viewmodels เป็นต้น
เป็นการดีที่สุดที่จะสร้างสิ่งนี้ในโครงการเดียวหรือแยกพวกมันออกเป็นแต่ละโครงการ?
ในใจฉันบอกว่าควรมีหลายโครงการ ฉันได้ทำทั้งสองวิธีก่อนหน้านี้และพบว่าการทดสอบทำได้ง่ายขึ้นด้วยโซลูชันโครงการเดียว แต่ด้วยโครงการหลายโครงการจากนั้นการอ้างอิงแบบเรียกซ้ำสามารถครอบตัด โดยเฉพาะอย่างยิ่งเมื่อคลาสมีอินเทอร์เฟซเพื่อให้ง่ายต่อการทดสอบฉันพบว่าสิ่งต่าง ๆ อาจไม่สะดวกสบาย