C# ครองตำแหน่งศูนย์กลางใน Microsoft.net เวอร์ชันเริ่มต้น เป็นภาษาการเขียนโปรแกรมเชิงวัตถุล่าสุดที่พัฒนาโดย Microsoft โดยผสมผสานพลังของ C++ เข้ากับการใช้งาน Visual Basic ที่ง่ายดาย หนังสือเล่มนี้แบ่งออกเป็นสามส่วนเพื่อช่วยให้ผู้อ่านเรียนรู้ภาษา C# ส่วนแรกเป็นการอภิปรายที่ครอบคลุมเกี่ยวกับภาษา C# โดยอธิบายคำหลัก ข้อความ และคุณลักษณะที่กำหนดในภาษา C# นอกจากนี้ ยังมีการแนะนำ I/O, การประมวลผลไฟล์, การแมป และขั้นตอนการประมวลผลล่วงหน้าอีกด้วย ส่วนที่ 2 กล่าวถึงไลบรารีคลาส C# ซึ่งก็คือ . ไลบรารีคลาสเฟรมเวิร์ก NET เนื่องจากมีพื้นที่จำกัด หนังสือเล่มนี้จึงมุ่งเน้นไปที่ไลบรารีคลาสหลักที่มีอยู่ในเนมสเปซของระบบ เนื้อหาส่วนนี้ถูกใช้โดยโปรแกรมเมอร์ C# เกือบทุกคน ส่วนที่ 3 มีตัวอย่างแอปพลิเคชัน C#
เนื้อหาของหนังสือเล่มนี้มีตั้งแต่ระดับตื้นไปจนถึงระดับลึก และมีแอปพลิเคชันที่หลากหลาย นอกจากนี้ยังเหมาะสำหรับผู้อ่านที่ไม่มีประสบการณ์ด้านการเขียนโปรแกรมและโปรแกรมเมอร์ที่มีพื้นฐานภาษา C++ หรือ Java มาก่อน
ไดเร็กทอรีมีดังนี้:
ส่วนที่ 1 ภาษา C#
บทที่ 1 ต้นกำเนิดของ C#
1.1 ประวัติความเป็นมาของการพัฒนา C#
1.2 C# เกี่ยวข้องกับ .NET Framework อย่างไร
1.3 วิธีการทำงานของ Universal Language Runtime
1.4 รหัสที่สามารถจัดการได้และรหัสที่ไม่สามารถจัดการได้
บทที่ 2 ภาพรวม C#
2.1 การเขียนโปรแกรมเชิงวัตถุ
2.2 โปรแกรมง่ายๆ ตัวแรก
2.3 การจัดการข้อผิดพลาดทางไวยากรณ์
2.4 การปรับปรุงเล็กน้อย
2.5 โปรแกรมอย่างง่ายที่สอง
2.6 ข้อมูลประเภทอื่น
2.7 สองคำสั่งควบคุม
2.8 การใช้บล็อคโค้ด
2.9 อัฒภาคและการวางตำแหน่ง
2.10 การเยื้อง
2.11 ตัวระบุ
2.12 ไลบรารีคลาส C#
บทที่ 3 ชนิดข้อมูล ตัวอักษร และตัวแปร
3.1 ความสำคัญของประเภทข้อมูล
3.2 ประเภทตัวเลขใน C#
3.3 ประเภทจำนวนเต็ม
3.4 ประเภทจุดลอยตัว
ประเภททศนิยม 3.5
3.6 ตัวอักษร
3.7 ประเภทบูล
3.8 ตัวเลือกเอาต์พุตบางอย่าง
3.9 ปริมาณทางตรง
3.10 ตัวแปร
3.11 ขอบเขตและระยะเวลาการใช้งานของตัวแปร
3.12 การแปลงประเภทและการบังคับขู่เข็ญ
3.13 พิมพ์การแปลงในนิพจน์
บทที่ 4 ผู้ปฏิบัติงาน
4.1 ตัวดำเนินการทางคณิตศาสตร์
4.2 ตัวดำเนินการเชิงสัมพันธ์และตัวดำเนินการเชิงตรรกะ
4.3 ผู้ดำเนินการมอบหมาย
ตัวดำเนินการ 4.4 บิต
4.5? ตัวดำเนินการ
4.6 ระยะห่างและวงเล็บ
4.7 ลำดับความสำคัญของตัวดำเนินการ
บทที่ 5 คำชี้แจงการควบคุมโปรแกรม
5.1 ถ้าคำสั่ง
5.2 คำสั่งสวิตช์
5.3 สำหรับการวนซ้ำ
5.4 ในขณะที่วนซ้ำ
5.5 ลูปทำในขณะที่
5.6 foreach วนซ้ำ
5.7 ใช้คำสั่งแบ่งเพื่อออกจากลูป
5.8 คำสั่งดำเนินการต่อ
คำสั่ง 5.9 ข้ามไป
บทที่ 6 คลาส วัตถุ และวิธีการ
6.1 พื้นฐานของชั้นเรียน
6.2 วิธีการสร้างวัตถุ
6.3 ตัวแปรอ้างอิงและการกำหนด
6.4 วิธีการ
6.5 ตัวสร้าง
6.6 โอเปอเรเตอร์ใหม่
6.7 การเก็บขยะและการทำลายล้าง
6.8 คำหลักนี้
บทที่ 7 อาร์เรย์และสตริง
7.1 อาร์เรย์
7.2 อาร์เรย์หลายมิติ
7.3 อาร์เรย์ที่ไม่ผสานรวม
7.4 การจัดสรรการอ้างอิงอาร์เรย์
7.5 คุณลักษณะความยาว
7.6 foreach วนซ้ำ
7.7 สตริง
บทที่ 8 วิธีการและคลาส
8.1 การควบคุมการเข้าถึงสมาชิกชั้นเรียน
8.2 การส่งวัตถุไปยังวิธีการ
8.3 พารามิเตอร์อ้างอิงและพารามิเตอร์ออก
8.4 จำนวนข้อโต้แย้งแปรผัน
8.5 คืนวัตถุ
8.6 วิธีการโอเวอร์โหลด
8.7 ตัวสร้างที่บรรทุกเกินพิกัด
8.8 หลัก() วิธีการ
8.9 การเรียกซ้ำ
8.10 คำหลักคงที่
บทที่ 9 ผู้ประกอบการโอเวอร์โหลด
9.1 พื้นฐานของการบรรทุกเกินพิกัดของผู้ปฏิบัติงาน
9.2 การจัดการการดำเนินการกับประเภทภายใน C#
9.3 การโอเวอร์โหลดตัวดำเนินการเชิงสัมพันธ์
9.4 การโอเวอร์โหลดจริงและเท็จ
9.5 การโอเวอร์โหลดตัวดำเนินการเชิงตรรกะ
9.6 ตัวดำเนินการแปลง
9.7 คำแนะนำและข้อจำกัดในการบรรทุกเกินพิกัดของผู้ปฏิบัติงาน
9.8 อีกตัวอย่างหนึ่งของการโอเวอร์โหลดของผู้ปฏิบัติงาน
บทที่ 10 ดัชนีและคุณสมบัติ
10.1 ดัชนี
10.2 คุณสมบัติ
10.3 การใช้ดัชนีและคุณสมบัติ
บทที่ 11 มรดก
11.1 พื้นฐานการรับมรดก
11.2 การเข้าถึงและการสืบทอดของสมาชิก
11.3 ผู้สร้างและมรดก
11.4 มรดกและการซ่อนชื่อ
11.5 การสร้างลำดับชั้นหลายระดับ
11.6 เมื่อใดที่จะเรียกตัวสร้าง
11.7 การอ้างอิงคลาสพื้นฐานและอ็อบเจ็กต์ที่ได้รับ
11.8 วิธีการเสมือนและการโอเวอร์โหลด
11.9 การใช้คลาสนามธรรม
11.10 ใช้ปิดผนึกเพื่อป้องกันการสืบทอด
คลาสอ็อบเจ็กต์ 11.11
บทที่ 12 การเชื่อมต่อ โครงสร้าง และการแจงนับ
12.1 อินเทอร์เฟซ
12.2 การใช้การอ้างอิงอินเทอร์เฟซ
12.3 คุณสมบัติอินเทอร์เฟซ
12.4 ดัชนีอินเทอร์เฟซ
12.5 อินเทอร์เฟซสามารถสืบทอดได้
12.6 การสืบทอดอินเทอร์เฟซทำให้เกิดการซ่อนชื่อ
12.7 การนำไปปฏิบัติที่ชัดเจน
12.8 การเลือกระหว่างอินเทอร์เฟซและคลาสนามธรรม
12.9 .NET อินเทอร์เฟซมาตรฐาน
12.10 ตัวอย่างการศึกษาอินเทอร์เฟซ
12.11 โครงสร้าง
12.12 การแจงนับ
บทที่ 13 การจัดการข้อยกเว้น
13.1 คลาส System.Exception
13.2 พื้นฐานของการจัดการข้อยกเว้น
13.3 ผลที่ตามมาของข้อยกเว้นที่ไม่ได้รับการตรวจสอบ
13.4 ข้อยกเว้นอนุญาตให้มีการจัดการข้อผิดพลาดที่สมเหตุสมผล
13.5 การใช้คำสั่ง catch หลายรายการ
13.6 การจับข้อยกเว้นทั้งหมด
13.7 โมดูลลองซ้อน
13.8 การโยนข้อยกเว้น
13.9 คำสั่งสุดท้าย
13.10 การวิเคราะห์ข้อยกเว้นโดยละเอียด
13.11 คลาสข้อยกเว้นที่ได้รับมา
13.12 การจับข้อยกเว้นคลาสที่ได้รับ
13.13 ข้อความที่ตรวจสอบและข้อความที่ไม่ถูกตรวจสอบ
บทที่ 14 อินพุตและเอาต์พุต
14.1 I/O ของ C# อาศัยสตรีมข้อมูล
14.2 คลาสการไหลของข้อมูล
14.3 คอนโซล I/O
14.4 สตรีมข้อมูลไฟล์และ I/O ไฟล์เชิงไบต์
14.5 I/O ไฟล์ตามอักขระ
14.6 การเปลี่ยนเส้นทางสตรีมข้อมูลมาตรฐาน
14.7 การอ่านและการเขียนข้อมูลไบนารี่
14.8 ไฟล์เข้าถึงแบบสุ่ม
14.9 คลาส MemoryStream
14.10 คลาส StringReader และคลาส StringWriter
14.11 แปลงสตริงตัวเลขเป็นตัวแทนภายใน
บทที่ 15 ตัวแทนและเหตุการณ์
15.1 ตัวแทน
15.2 เหตุการณ์
15.3 หลักการเหตุการณ์ .NET
15.4 เหตุการณ์การสมัคร: กรณีศึกษา
บทที่ 16 เนมสเปซ ตัวประมวลผลล่วงหน้า และแอสเซมบลี
16.1 เนมสเปซ
16.2 พรีโปรเซสเซอร์
16.3 แอสเซมบลีและตัวดัดแปลงการเข้าถึงภายใน
บทที่ 17 รหัสประเภทรันไทม์ การแมป และคุณสมบัติ
17.1 การระบุประเภทรันไทม์
17.2 การทำแผนที่
17.3 การใช้การแมป
17.4 คุณสมบัติ
17.5 การใช้คุณสมบัติในตัว
บทที่ 18 รหัสที่ไม่ปลอดภัย ตัวชี้ และหัวข้ออื่นๆ
18.1 รหัสที่ไม่ปลอดภัย
18.2 คำหลักอื่นๆ
18.3 const และผันผวน
ส่วนที่ 2 ไลบรารีคลาส C#
บทที่ 19 เนมสเปซของระบบ
19.1 สมาชิกของระบบ
19.2 วิชาคณิตศาสตร์
19.3 โครงสร้างประเภทตัวเลข
19.4 คลาสอาร์เรย์
คลาส 19.5 BitConverter
19.6 ใช้ Random เพื่อสร้างตัวเลขสุ่ม
19.7 การจัดการหน่วยความจำและคลาส GC
19.8 คลาสอ็อบเจ็กต์
19.9 อินเทอร์เฟซที่เปรียบเทียบได้
19.10 Iคอนเวอร์เตอร์อินเทอร์เฟซ
19.11 อินเทอร์เฟซแบบแยกได้
19.12 อินเทอร์เฟซ IFormatProvider และอินเทอร์เฟซ IFormattable
บทที่ 20 สตริงและการจัดรูปแบบ
20.1 สตริงใน C#
20.2 คลาสเครื่องสาย
20.3 การจัดรูปแบบ
20.4 การจัดรูปแบบข้อมูลโดยใช้ String.Format() และ ToString()
20.5 การสร้างรูปแบบตัวเลขที่กำหนดเอง
20.6 จัดรูปแบบวันที่และเวลา
20.7 การจัดรูปแบบการแจงนับ
บทที่ 21 การเขียนโปรแกรมแบบมัลติเธรด
21.1 พื้นฐานมัลติเธรด
21.2 คลาสเธรด
21.3 กำหนดเวลาสิ้นสุดเธรด
21.4 เป็นทรัพย์สินพื้นหลัง
21.5 ลำดับความสำคัญของเธรด
21.6 การซิงโครไนซ์
21.7 การสื่อสารเธรดโดยใช้ Wait(), Pulse() และ PulseAll()
21.8 คุณลักษณะ MethodImplAttribute
21.9 ระงับ ดำเนินการต่อ และหยุดเธรด
21.10 การกำหนดสถานะเธรด
21.11 การใช้เธรดหลัก
21.12 เคล็ดลับการทำมัลติเธรด
21.13 เริ่มงานอิสระ
บทที่ 22 การรวมตัว
22.1 ภาพรวมของคอลเลกชัน
22.2 ส่วนต่อประสานการรวบรวม
22.3 โครงสร้างรายการพจนานุกรม
22.4 ชั้นรวบรวมทั่วไป
22.5 การใช้ BitArray เพื่อจัดเก็บบิต
22.6 คอลเลกชันส่วนตัว
22.7 การเข้าถึงคอลเลกชันผ่านเคาน์เตอร์
22.8 การจัดเก็บคลาสที่ผู้ใช้กำหนดไว้ในคอลเลกชัน
22.9 สรุป
บทที่ 23 การสร้างเครือข่ายผ่านอินเทอร์เน็ต
23.1 สมาชิกของ System.Net
23.2 ตัวระบุทรัพยากรที่สม่ำเสมอ
23.3 พื้นฐานของการเข้าถึงอินเทอร์เน็ต
23.4 การจัดการข้อผิดพลาดของเครือข่าย
23.5 คลาสยูริ
23.6 เข้าถึงข้อมูลการตอบสนอง HTTP เพิ่มเติม
23.7 MiniCrawler: กรณีศึกษา
23.8 การใช้เว็บไคลเอ็นต์
ส่วนที่สามใช้ C#
บทที่ 24 ส่วนประกอบอาคาร
24.1 แนวคิดเรื่องส่วนประกอบ
24.2 แนวคิดของส่วนประกอบ C#
24.3 อินเทอร์เฟซ IComponent
24.4 คลาสส่วนประกอบ
24.5 องค์ประกอบอย่างง่าย
24.6 การกำจัดโอเวอร์โหลด ()
24.7 การใช้คำสั่งใช้
24.8 ตู้คอนเทนเนอร์
24.9 ส่วนประกอบคืออนาคตของการเขียนโปรแกรม
บทที่ 25 การสร้างแอปพลิเคชัน Windows ที่ใช้แบบฟอร์ม
25.1 ประวัติโดยย่อของการเขียนโปรแกรม Windows
25.2 สองวิธีในการเขียนแอปพลิเคชัน Windows ที่ใช้แบบฟอร์ม
25.3 วิธีการสำหรับ Windows เพื่อโต้ตอบกับผู้ใช้
25.4 แบบฟอร์ม Windows
25.5 โปรแกรมเฟรมเวิร์ก Windows ที่ใช้แบบฟอร์ม
25.6 การเพิ่มปุ่ม
25.7 การประมวลผลข้อความ
25.8 การใช้กล่องข้อความ
25.9 การเพิ่มเมนู
25.10 น. สรุป
บทที่ 26 ตัววิเคราะห์นิพจน์แบบเรียกซ้ำ
26.1 นิพจน์
26.2 การวิเคราะห์นิพจน์: ปัญหา
26.3 การวิเคราะห์นิพจน์
26.4 การวิเคราะห์นิพจน์
26.5 ตัวแยกวิเคราะห์นิพจน์อย่างง่าย
26.6 การเพิ่มตัวแปรให้กับเครื่องวิเคราะห์
26.7 การตรวจสอบไวยากรณ์ในตัวแยกวิเคราะห์แบบเรียกซ้ำ
26.8 ความพยายามบางอย่าง
ภาคผนวก A ความคิดเห็น XML การอ้างอิงด่วนภาคผนวก BC# และวิทยาการหุ่นยนต์
ขยาย