ในที่สุดก็ลองโดย Delphi2005 หอพักดีกว่า 512m การพูดถึงความมั่นคงมันดีกว่า D8 มาก แต่ฉันก็ยังได้ยินคนพูดว่ามีข้อบกพร่องมากมาย ถูกนำมาใช้ ท้ายที่สุดมันใช้เวลาไม่นานสำหรับ Borland ในการพัฒนาคอมไพเลอร์โดยใช้. NET
ฉันจะไม่พูดถึงคุณสมบัติใหม่ของ Delphi2005 มันมีอยู่ทุกที่บนอินเทอร์เน็ต
แต่ฉันไม่เข้าใจจริงๆ จุดที่สองคือแผนภาพ UML สามารถสร้างรหัสได้โดยตรง รู้ว่านี่คือเหตุผลหรือไม่ แต่ Delphi2005 ไม่ได้บอกว่าคุณสามารถทำได้โดยไม่ต้องใช้ Eco? จุดสุดท้ายคือคอมไพเลอร์ Borland อยู่ในระดับสูง แต่ตัวแก้ไขรหัสอยู่ไกลจาก VS2005 ตกลงและความเร็วนั้นเร็วมากและมันออกมาทันที เพื่อรีบไปมาสักพักก่อนที่จะออกมา แต่เพื่อความเป็นธรรมคำแนะนำสำหรับการใช้ VS นั้นขึ้นอยู่กับรหัสโดยตรง มันจะเป็นหายนะจริงๆ เมื่อพูดถึงการเยื้องอัตโนมัติของรหัสบอร์แลนด์นั้นหาที่เปรียบได้จริง ๆ สิ่งสุดท้ายที่ฉันไม่ชอบคือฉันจะสร้างเทมเพลตคำอธิบายประกอบโดยอัตโนมัติโดย 3 // ใน VS แต่ Delphi ไม่ได้ให้ฟังก์ชั่นที่สอดคล้องกันดังนั้นจึงไม่ใช่เรื่องง่ายที่จะแสดงความคิดเห็นด้วยวิธีนี้
กลับไปที่หัวข้อ Delphi for.net ได้ทำการปรับไวยากรณ์บางอย่างเพื่อปรับให้เข้ากับข้อกำหนดบางประการของ. NET แต่มีหนังสือที่เกี่ยวข้องน้อยและพวกเขาไม่สามารถเขียนได้ดี วิธีการเขียนพวกเขา ตอนนี้คุณมี Delphi2005 คุณไม่สามารถรอได้เพียงแค่สำรวจตัวเองต่อไป
วันนี้ฉันจะดูความช่วยเหลือและเรียนรู้เนมสเปซ
เนมสเปซ
ประกาศเนมสเปซ
ในไฟล์โครงการของ Delphi มีการประกาศเนมสเปซโดยปริยายเรียกว่าเนมสเปซเริ่มต้นของโครงการ สมมติว่าส่วนหัวไฟล์โครงการถูกกำหนดดังนี้:
โปรแกรม MyCompany.programs.myprogram; (ส่วนหัวของคำหลักเช่นแพ็คเกจไลบรารี)
จากนั้นเนมสเปซเริ่มต้นของโครงการคือ MyCompany.programs
หากส่วนหัวของหน่วยถูกกำหนดเป็นหน่วย ****;
หากส่วนหัวของหน่วยถูกกำหนดเป็นหน่วย ***. ****. ***;
หน่วยที่ประกาศในวิธีแรกเรียกว่าหน่วยทั่วไปซึ่งมักจะเป็นพื้นที่ย่อยของเนมสเปซเริ่มต้นของโครงการ
การตั้งชื่อเนมสเปซเป็นตัวพิมพ์ใหญ่ กล่าวอีกนัยหนึ่งในหลาย ๆ ส่วนของคำที่หารด้วย. ส่วนสุดท้ายไม่ได้นับเป็นชื่อและไม่ได้รวบรวมไว้ในแอสเซมบลี หน่วย 3 การใช้คุณสมบัตินี้หากเนมสเปซขนาดใหญ่จำเป็นต้องแบ่งออกเป็นหลายไฟล์เพื่อเขียนคุณสามารถทำให้ส่วนทั้งหมดของหน่วยเหล่านี้เหมือนกันซึ่งแตกต่างกันในส่วนนี้ของไฟล์สุดท้าย
การอ้างอิงถึงเนมสเปซ
ใช้คำสั่งการใช้งาน สมมติว่ามีข้อความต่อไปนี้:
ใช้ AAA.BBB.UNIT1, UNIT2;
มีการระบุไว้อย่างชัดเจนสำหรับ AAA.BBB.UNIT1
1 namespace ยูนิตปัจจุบัน (ถ้ามี)
2 เนมสเปซเริ่มต้นของโครงการ (ถ้ามี)
3 เนมสเปซที่ระบุโดยตัวเลือกคอมไพเลอร์
แม้ว่าส่วนสุดท้ายของชื่อหน่วยจะไม่สามารถมองเห็นและแยกไม่ออกสำหรับคอมไพเลอร์ภายนอก แต่ส่วนสุดท้ายยังคงขาดไม่ได้ใน Delphi ดังนั้นส่วนสุดท้ายจะต้องรวมอยู่ในคำสั่งการใช้เช่น Class1 ถูกกำหนดไว้ใน UNIT1 AAA.BB .UNIT1 ไม่ว่าจะเกิดอะไรขึ้น UNIT1 มีความสำคัญในการใช้งาน
ในความช่วยเหลือของ Delphi กล่าวว่า:
หลายหน่วยสามารถจัดกลุ่มเข้าด้วยกันเป็นหนึ่งเนมสเปซโดยใช้ส่วนขยายของประโยคในไฟล์แหล่งที่มาของโครงการ
ใช้ myprogram.mynamespace ใน 'filepath/unoon1.pas; otherpath/unoon2.pas';
ในตัวอย่างนี้ Namespace myProgram.Mynamespace มีเหตุผลที่มีเหตุผลสัญลักษณ์อินเตอร์เฟสทั้งหมดจาก UNIT1 และ UNIT2 สัญลักษณ์ชื่อ MySymbol คอมไพเลอร์จะรายงานข้อผิดพลาดในข้อใช้
แต่ไม่ว่าฉันจะทดลองอย่างไรฉันให้ความสนใจกับข้อผิดพลาดในการรวบรวมและไม่สามารถนำไปใช้ได้
จนถึงตอนนี้ฉันยังไม่พบวิธีที่จะอ้างอิง DLL ที่สร้างโดย Delphi เพราะเมื่อฉันเพิ่ม DLL ที่รวบรวมโดย Delphi สำหรับ. NET ในโครงการใหม่ของโครงการ Delphi จากนั้นรวบรวมฉันจะบอกว่ามีข้อผิดพลาดร้ายแรงฉันไม่สามารถนำเข้าอะไรได้โปรดใช้แพ็คเกจ ฯลฯ อย่างไรก็ตามไม่มีปัญหาในการเพิ่ม DLLs ใน vs.net และโปรแกรมสามารถทำงานได้ตามปกติ
จนถึงตอนนี้ฉันได้พบวิธีแก้ปัญหาชั่วคราวเท่านั้นซึ่งไม่ได้สร้างไลบรารีและแทนที่ด้วยแพ็คเกจเพื่อให้ไฟล์เป้าหมายสุดท้ายเป็น DLL และฉันยังสามารถเรียกมันได้ตามปกติใน VS