ฉันมีปัญหาในการทำความเข้าใจว่าทำไมคุณควรพัฒนาไลบรารีภายในเพื่อใช้สำหรับการพัฒนาแอปพลิเคชันภายในโดยเฉพาะ ฉันขอขอบคุณที่ถ้าฉันต้องการใช้ซอฟต์แวร์ที่บุคคลภายนอกองค์กรเขียนขึ้นพวกเขาสามารถส่งไฟล์ส่วนหัวและไฟล์. a หรือ. so และฉันสามารถลิงก์ไปยังโครงการของฉันได้ (สมมติว่าพวกเขารวบรวมในสภาพแวดล้อมเดียวกัน) .
แต่ทำไมห้องสมุดภายในควรได้รับการพัฒนาเพียงเพื่อเชื่อมโยงกับแอปพลิเคชันภายในเมื่อฉันเข้าถึงส่วนหัวและไฟล์การใช้งานและสามารถรวมไว้ในแผนภูมิแหล่งที่มาของฉันและรวบรวมทั้งหมดเข้าด้วยกันได้
กล่าวอีกนัยหนึ่ง: ถ้ามีการเขียนซอร์สโค้ดคุณจะตัดสินใจได้อย่างไรว่าควรจะคอมไพล์ลงในไลบรารีไบนารีและเชื่อมโยงกับแอปพลิเคชันของคุณหรือรวมอยู่ในไฟล์ต้นฉบับของโครงการและคอมไพล์อย่างสม่ำเสมอ?
เมื่อฉันพูดว่าไฟล์ 'รวม' ในแต่ละโครงการฉันไม่ได้หมายถึงการคัดลอกและวางแต่ละไฟล์ลงในแผนผังแหล่งที่มาของโครงการที่กำลังพัฒนา ฉันหมายถึงการพัฒนาไดเรกทอรี / ไลบรารี (แยกเป็นโครงการใด ๆ ) ที่มีซอร์สโค้ดร่วมที่สามารถรวมอยู่ในไฟล์ของโครงการได้ตามปกติคือ #include
ps ฉันกำลังพูดถึงการพัฒนา c / c ++ ที่นี่สำหรับแอปพลิเคชันเดสก์ท็อปหลาย ๆ ตัว