ดอตเน็ตเฟรมเวิร์ก

โลโก้ของดอตเน็ตเฟรมเวิร์ก และ ดอตเน็ต
ดอตเน็ตเฟรมเวิร์ก เป็นคำที่ใช้เรียกเฟรมเวิร์กสำหรับการพัฒนาซอฟต์แวร์ ที่สร้างขึ้นโดยไมโครซอฟท์ ที่ยึดหลักการ โครงสร้างพื้นฐานภาษาร่วม
มีหลายเฟรมเวิร์กที่ผู้คนมักเรียกว่า ดอตเน็ตเฟรมเวิร์ก นั่นคือ
*ดอตเน็ตเฟรมเวิร์ก (.NET Framework)
*ดอตเน็ตคอมแพกต์เฟรมเวิร์ก (.NET Compact Framework)
*ดอตเน็ตไมโครเฟรมเวิร์ก (.NET Micro Framework)
*ดอตเน็ต (.NET)
ไมโครซอฟท์ยังได้พัฒนาสิ่งแวดล้อมสำหรับการพัฒนาแบบเบ็ดเสร็จ เรียกว่าวิชวลสตูดิโอ ในการพัฒนาด้วยเฟรมเวิร์กเหล่านี้อีกด้วย

**ดอตเน็ตเฟรมเวิร์ก**
สถาปัตยกรรมของดอตเน็ตเฟรมเวิร์ก 3.0
ดอตเน็ตเฟรมเวิร์ก (.NET Framework) เน้นการทำงานบนวินโดวส์ โดยเมื่อก่อนนี้ดอตเน็ตเฟรมเวิร์กเป็นแพลตฟอร์มที่ยึดหลักการ โครงสร้างพื้นฐานภาษาร่วม ตัวหลัก ก่อนที่จะถูกแทนที่ด้วยเฟรมเวิร์กดอตเน็ต ตัวใหม่ที่ทำงานได้แบบข้ามแพลตฟอร์ม มีไลบรารีเป็นจำนวนมาก เรียกว่า Framework Class Library (FCL) และสนับสนุนให้แต่ละภาษาสามารถใช้โค้ดที่เขียนในภาษาอื่นได้ โดยรองรับภาษาระบบโครงสร้างพื้นฐานภาษาร่วมมากกว่า 40 ภาษา และโค้ดแต่ละภาษาสามารถเข้าถึงโค้ดที่เขียนในภาษาอื่นได้ 
โปรแกรมที่เขียนบน ดอตเน็ตเฟรมเวิร์ก จะทำงานบนสภาพแวดล้อมที่เรียกว่า รันไทม์ภาษาร่วม (Common Language Runtime (CLR)) โดย CLR นั้นคือเครื่องจักรเสมือนระดับแอปพลิเคชัน (application virtual machine) ทีให้บริการด้านกลไกระบบความปลอดภัย การบริหารหน่วยความจำ(Memory Management) และException handling ทำให้ผู้พัฒนาไม่ต้องคำนึงถึงความสามารถที่แตกต่างระหว่างหน่วยประมวลผลต่าง ๆ 
ดอตเน็ตเฟรมเวิร์ก นั้นเริ่มต้นด้วยการเป็นซอฟต์แวร์กรรมสิทธิ์ (proprietary software) ทำให้ถึงแม้ว่าจะมีความพยายามที่จะสร้างมาตรฐานของเฟรมเวิร์กนี้ ผู้พัฒนาจำนวนมากโดยเฉพาะในแวดวงซอฟต์แวร์ที่ฟรีและโอเพนซอร์สได้ตำหนิเฟรมเวิร์กนี้ ในเดือนเมษายน พ.ศ. 2562 ไมโครซอฟต์ได้ปล่อย ดอตเน็ตเฟรมเวิร์ก เวอร์ชัน 4.8 ซึ่งเป็นเวอร์ชันสุดท้ายเป็นซอฟต์แวร์กรรมสิทธ์ มีการอัปเดตผ่านการซ่อมบั๊กซอฟต์แวร์เป็นรายเดือนเท่านั้น ไม่มีการเปลี่ยนแปลงเพิ่มเติม 

**ดอตเน็ตคอมแพกต์เฟรมเวิร์ก**
ดอตเน็ตคอมแพกต์เฟรมเวิร์ก (.NET Compact Framework (.NET CF)) เป็นเวอร์ชันของดอตเน็ตเฟรมเวิร์ก ที่ออกแบบมาให้ทำงานได้บนอุปกรณ์ที่มีทรัพยากรจำกัด โดยไลบรารีในดอตเน็ตคอมแพกต์เฟรมเวิร์ก ถูกย่อขนาดมาจากไลบรารีในดอตเน็ตเฟรมเวิร์ก เพื่อให้กินเนื้อที่น้อยลง

**ดอตเน็ตไมโครเฟรมเวิร์ก**
ดอตเน็ตไมโครเฟรมเวิร์ก (.NET Micro Framework (.NET MF)) เป็นเวอร์ชันของ ดอตเน็ตเฟรมเวิร์ก ที่ออกแบบมาให้ทำงานได้บนอุปกรณ์ที่มีทรัพยากรจำกัด 
ดอตเน็ตไมโครเฟรมเวิร์ก เป็นส่วนหนึ่งของมูลนิธิดอตเน็ต 
คุณสมบัติอันเป็นเอกลักษณ์ของ ดอตเน็ตไมโครเฟรมเวิร์ก คือ- ต้องการหน่วยความจำแค่ 300 kB; ซึ่งน้อยกว่าความต้องการของ ดอตเน็ตเฟรมเวิร์ก ที่เล็กที่สุดเป็นตัวถัดไปมาก นั่นคือดอตเน็ตคอมแพกต์เฟรมเวิร์ก ที่ทำงานบน Windows CE (ต้องการหน่วยความจำ 12 MB)- สามารถทำงานบนเครื่องจักรที่มีหรือไม่มีระบบปฏิบัติการก็ได้- ปรับปรุงประสิทธิภาพมาเพื่อการประหยัดพลังงานสำหรับอุปกรณ์ที่ใช้แบตเตอรี่- ไม่ต้องการ memory management unit- มีโมเดลไดรเวอร์อุปกรณ์ ทำให้อุปกรณ์สามารถเขียนด้วยภาษาซีชาร์ปได้- มีข้อบังคับในการทำงานที่จะแก้ไขปัญหาอุปกรณ์ล่ม- รองรับการเก็บวัตถุในความจำที่ไม่ต้องใช้ไฟฟ้า

**การรองรับดอตเน็ตไมโครเฟรมเวิร์ก**
สถาปัตยกรรมอาร์ม (รวมไปถึง ARM7, ARM9, และ Cortex-M) รองรับ ดอตเน็ตไมโครเฟรมเวิร์ก และยังรองรับบนอุปกรณ์ Blackfin จากบริษัท Analog Devices 
ไมโครซอฟต์อนุญาตให้นักพัฒนาสร้างแอปพลิเคชันด้วย ดอตเน็ตไมโครเฟรมเวิร์ก ได้โดยไม่ต้องเสียค่าใช้จ่าย และแจกชุดพัฒนาซอฟต์แวร์ ให้ดาวน์โหลดไปใช้กับวิชวลสตูดิโอได้ฟรี 
ผู้ผลิตหลายรายสร้างชิปและชุดพัฒนาที่ทำงานบนดอตเน็ตไมโครเฟรมเวิร์ก

**จีเฮชไออิเล็กทรอนิกส์**
จีเฮชไออิเล็กทรอนิกส์ (GHI Electronics)ผลิตโมดูลที่รองรับดอตเน็ตไมโครเฟรมเวิร์ก:- อีเอ็มเอ็กซ์โมดูล (EMX Module) - ชิปเวิร์กเอ็กซ์โมดูล (ChipworkX Module)- USBizi144 Chipset และ USBizi100

**เมาท์เท่นเนียร์บอร์ดส์**
เมาท์เท่นเนียร์บอร์ดส์ (Mountaineer boards) ส่วนหนึ่งของ เมาท์เท่นเนียร์กรุ๊ป (Mountaineer Group) ผลิตบอร์ดที่ใช้ดอตเน็ตไมโครเฟรมเวิร์ก 

**เน็ตเอ็มเอฟดีไวซ์**
เน็ตเอ็มเอฟดีไวซ์ (Netmfdevices) เป็นเพลตฟอร์มอิเล็กทรอนิกส์โอเพนซอร์สที่ใช้เฟสแฮ็กเกอร์ (FEZHacker) กับ ดอตเน็ตไมโครเฟรมเวิร์ก

**ดอตเน็ต**
ดอตเน็ต (.NET) เดิมเรียกว่า ดอตเน็ตคอร์ (.NET Core) เป็นเฟรมเวิร์กที่ฟรีและโอเพนซอร์ส สำหรับวินโดวส์ ลินุกซ์ และแมคโอเอส  นับเป็นตัวพัฒนาฉบับข้ามแพลตฟอร์มต่อเติมมาจาก ดอตเน็ตเฟรมเวิร์ก  โปรเจกต์นี้ถูกพัฒนาโดยพนักงานของบริษัทไมโครซอฟท์ภายใต้การดูแลของมูลนิธิดอตเน็ต และปล่อยออกมาด้วยสัญญาอนุญาตของสถาบันเทคโนโลยีแมสซาชูเซตส์

**ความเป็นมาของ ดอตเน็ต**
ในวันที่ 12 พฤศจิกายน พ.ศ. 2557 ไมโครซอฟต์เปิดตัวดอตเน็ตคอร์ เพื่อสร้างการสนับสนุนแบบครอสแพลตฟอร์มสำหรับดอตเน็ต รวมไปถึงลินุกซ์และแมคโอเอส
ดอตเน็ตคอร์ 1.0 ได้ปล่อยออกมาในวันที่ 27 มิถุนายน พ.ศ. 2559 พร้อมกับ Microsoft Visual Studio 2015 Update 3, ซึ่งใช้ในการพัฒนาร่วมกับดอตเน็ตคอร์  ดอตเน็ตคอร์ 1.0.4 และดอตเน็ตคอร์ 1.1.1 ถูกปล่อยมาพร้อมกับเครื่องมือดอตเน็ตคอร์ 1.0 และ Visual Studio 2017 ในวันที่ 7 มีนาคม พ.ศ. 2560 
ดอตเน็ตคอร์ 2.0 ได้ปล่อยออกมาในวันที่ 14 สิงหาคม พ.ศ. 2560, พร้อมกับ Visual Studio 2017 15.3, ASP.NET Core 2.0, และ Entity Framework Core 2.0. .NET Core 2.1 was released on May 30, 2018. NET Core 2.2 was released on December 4, 2018.
ดอตเน็ตคอร์ 3 ได้ปล่อยออกมาในวันที่ 23 กันยายน พ.ศ. 2562. ดอตเน็ตคอร์ 3 เพิ่มการรองรับการพัฒนาแอปฟลิเคชันบนเดสก์ทอปวินโดวส์  และการพัฒนาประสิทธิภาพทั่วทั้งไลบรารีพื้นฐาน 
ดอตเน็ต 5 ได้ปล่อยออกมาในวันที่ 23 พฤศจิกายน พ.ศ. 2563, ตั้งแต่เวอร์ชันนี้เป็นต้นไปจะไม่มีคำว่า "คอร์" อยู่ในชื่อ นอกจากนี้เวอร์ชัน 4.0 ถูกข้ามไปเพื่อป้องกันการสับสนกับดอตเน็ตเฟรมเวิร์ก ซึ่งยังคงเป็นผลิตภัณฑ์เฉพาะสำหรับวินโดวส์
ดอตเน็ต 6 ได้ปล่อยออกมาในวันที่ 8 พฤศจิกายน พ.ศ. 2564 และดอตเน็ต 7 ได้ปล่อยออกมาในวันที่ 8 พฤศจิกายน พ.ศ. 2565  แต่มีแค่ดอตเน็ต 6 เท่านั้นที่เป็นการปล่อยแบบสนับสนุนยาว (long-term support หรือ LTS)

**ภาษาที่ ดอตเน็ต รองรับ**
Common Language Infrastructure (CLI)
ดอตเน็ตรองรับภาษา C# และ F# นอกจากนี้ยังรองรับ Visual Basic .NET
ไมโครซอฟต์เดิมประกาศว่าดอตเน็ตคอร์ 3 จะมาพร้อมกับรันไทม์ของวิชวลเบสิก แต่สองปีถัดมาเส้นเวลาของการสนับสนุนดังกล่าวถูกเลื่อนไปเป็นดอตเน็ต 5

**สถาปัตยกรรมของ ดอตเน็ต**
ดอตเน็ตรองรับการทำงานแบบข้ามแพลตฟอร์มดังต่อไปนี้: โปรแกรมประยุกต์บนเว็บ ที่เขียนด้วย เอเอสพีดอตเน็ตคอร์, command line apps, ไลบรารีต่าง ๆ และ Universal Windows Platform apps ก่อนหน้าดอตเน็ตคอร์เวอร์ชัน 3 ดอตเน็ตยังไม่ได้รองรับ  Windows Forms กับ Windows Presentation Foundation (WPF), ซึ่งเป็นตัวเรนเดอร์ GUI พื้นฐานของวินโดวส์ ตั้งแต่ดอตเน็ตคอร์ 3 เป็นต้นไปก็ได้รองรับฟังก์ชันเหล่านั้นรวมถึง Universal Windows Platform (UWP)
ส่วนประกอบหลักสองอย่างของดอตเน็ตคือ CoreCLR และ CoreFX ซึ่งเทียบได้กับ Common Language Runtime (CLR) และ Framework Class Library (FCL) ของ ดอตเน็ตเฟรมเวิร์ก (ทั้งดอตเน็ตเฟรมเวิร์กและดอตเน็ตพัฒนาตามมาตรฐาน Common Language Infrastructure (CLI) )
ผังแพกเก็จ UML ของ stream hierarchy ภายในดอตเน็ต

**ดอตเน็ต เอ็มเอยูไอ**
ดอตเน็ต เอ็มเอยูไอ (.NET Multi-platform App UI) หรือ  .NET MAUI เป็นเฟรมเวิร์กแบบข้ามแพลตฟอร์มในการสร้างแอปด้วยภาษาซีชาร์ปและ Extensible Application Markup Language (XAML),

**ดูเพิ่ม**
 ภาษาระบบโครงสร้างพื้นฐานภาษาร่วม- ADO.NET- เอเอสพีดอตเน็ต- วิชวลสตูดิโอ

**อ้างอิง**

**แหล่งข้อมูลอื่น**
  .NET Framework Developer Center -  Microsoft .NET Framework 3.0 Community date=2010-08-19  -   Microsoft .Net Framework คืออะไร?-  บทความ .NET Framework (ภาษาไทย) สอน .NET และอื่น ๆ  ที่เกี่ยวข้อง 
หมวดหมู่:การเขียนโปรแกรม

หมวดหมู่:แพลตฟอร์มคอมพิวเตอร์
หมวดหมู่:เอพีไอของไมโครซอฟท์