ฉันเป็นผู้เขียนโค้ดและมีประสบการณ์เกี่ยวกับรหัสดั้งเดิมและที่จัดการ ฉันเริ่มต้นด้วย Pascal และ C จากนั้นย้ายไปที่ C ++ และในที่สุดก็กลายเป็น C #
ในช่วงปีที่ผ่านมาฉันเขียนโค๊ดใน C # และสูญเสียสิ่งที่เคยเกิดขึ้นอย่างเป็นธรรมชาติเมื่อฉันเป็น C ++
ไม่กี่สัปดาห์ที่ผ่านมาเมื่อฉันนั่งลงเพื่อเขียนรหัสภาษา C ++ บางตัวฉันพบว่าตัวเองคลำไปรอบ ๆ ขณะที่ฉันค่อยๆทำความคุ้นเคยกับความซับซ้อน, นิสัยใจคอและนิสัยแปลก ๆ ของมันทั้งหมด ฉันเกือบจะอายที่จะบอกว่าฉันลืมไปแล้วว่าการส่งอาเรย์ที่จัดสรรแบบไดนามิกไปยังฟังก์ชั่นโดยไม่ผ่านขนาดของมันก็หมายความว่าฟังก์ชั่นที่รับจะไม่มีทางรู้ว่าอาเรย์นั้นนานแค่ไหน
มีบทความและเอกสารจำนวนนับไม่ถ้วนที่เปรียบเทียบและเปรียบต่างกับการจัดการเทียบกับรหัสที่ไม่มีการจัดการ เราทุกคนรู้ว่าโค้ดเนทีฟหากได้รับการปรับปรุงอย่างดีสามารถรันได้เร็วกว่าและเบากว่าโค้ดที่ได้รับการจัดการ ในทางกลับกันโค้ดที่ได้รับการจัดการมีตัวรวบรวมขยะและการเพิ่มประสิทธิภาพ CPU เฉพาะเวลาทำงานและการปรับแต่งเฉพาะระบบปฏิบัติการซึ่งสามารถให้โค้ดเนทีฟสำหรับเงินของตนได้
จากมุมมองทางเทคนิคไม่มีผู้ชนะที่ชัดเจน
ไม่ต้องสงสัยเลยว่ารหัสที่ได้รับการจัดการนั้นมีขนาดที่ง่ายต่อการเข้าใจและเข้าใจง่าย เพียงแค่ดูความแตกต่างของจำนวนบรรทัดที่จำเป็นในการสร้าง GUI อย่างง่ายใน Win32 C ++ เทียบกับ C #
ย้อนกลับไปในวันที่เขียนโค้ดดั้งเดิมของฉันฉันส่วนใหญ่เขียนแบบจำลองทางคณิตศาสตร์ที่วิ่งบนซูเปอร์คอมพิวเตอร์ พวกเขามี CLIs ที่น่าเกลียดและส่วนใหญ่จะเน้นอัลกอริธึม ทุกวันนี้ฉันเขียนด้วยภาษา C # และผลิตแอพพลิเคชั่น GUI ที่สวยงาม แต่จะหายไปถ้าฉันต้องทำสิ่งที่มีความสามารถคล้ายกันกับภาษาพื้นเมือง แม้ว่าจะมีเฟรมเวิร์กเช่น QT มันก็ยังคงใช้เวลานานเป็นสองเท่าในการสร้างบางสิ่งใน C ++ / QT กว่าที่จะเป็นใน C #
เมื่อใดก็ตามที่ฉันเห็นคนที่เขียนแอปพลิเคชั่น GUI ขนาดใหญ่เต็มรูปแบบใน C / C ++ ฉันไม่สามารถช่วย แต่รู้สึกถึงความกลัวและความหึงหวง
ฉันอยากรู้ว่านักเขียนโค้ดที่มีประสบการณ์คนอื่นเห็นภาษาที่มีการจัดการและไม่มีการจัดการอย่างไร คุณเห็นโค้ดที่ถูกจัดการในรูปแบบamateur-ishหรือไม่? คุณเห็นโค้ดเนทีฟเป็นฮาร์ดคอร์มากกว่าหรือไม่