วิศวกรซอฟต์แวร์
ชุดรวมแหล่งข้อมูลการเรียนรู้คุณภาพสูงที่คัดสรรมาอย่างดี โดยเน้นที่ Python และในอนาคต C/C++ ออกแบบมาเพื่อสร้างรากฐานที่แข็งแกร่งด้านวิศวกรรมซอฟต์แวร์และความเข้าใจในระดับระบบ
โครงสร้างของ Repository
.
├── python-basic/ # Essential Python syntax, data types, and operations
├── python-advanced/ # Decorators, threading, logging, JSON, and more
├── python-OOP/ # Deep dive into Python's object-oriented programming
├── cpp-basic/ # Fundamentals of C++: syntax, memory, pointers, etc.
├── cpp-advanced/ # Advanced C++: RAII, noexcept, smart pointers, RVO, etc.
├── cpp-OOP/ # Object-oriented programming in C++
├── CUDA/ # GPU programming with CUDA (host & device code)
├── MPI/ # Message Passing Interface programming and demos
├── docs/ # System-level notes on performance, Python-C++ interop, mixed precision, etc.
└── README.md # Project overview (this file)
วิธีการใช้งาน
แต่ละโฟลเดอร์ที่มีหมายเลขจะมีไฟล์ README.md อธิบายแนวคิด พร้อมไฟล์ .py ที่สามารถรันได้ ตัวอย่างเช่น:
cd python-advanced/08-decorators
python basic_function_decorator.py
สคริปต์บางตัวต้องการไลบรารีจากบุคคลที่สาม (เช่น numpy, scipy, torch)โค้ดทั้งหมดสามารถใช้งานกับ Python 3.7+ และเขียนให้มีความ กระทัดรัด, ตรงประเด็น, และทดสอบได้ง่าย
ไฮไลท์
Python
- เชี่ยวชาญ OOP: คลาส, การสืบทอด, เมตาคลาส, ดีสคริปเตอร์ (
python-OOP/) - หัวข้อขั้นสูง: เดคอเรเตอร์, คอนเท็กซ์เมเนเจอร์, แคชฟังก์ชัน, การประมวลผลแบบขนาน
- โครงสร้างข้อมูล: ลิสต์, ทูเพิล, ดิกต์, เซ็ต พร้อมตัวอย่างการใช้งานจริง
C++
- พื้นฐาน C++: ไวยากรณ์, ฟังก์ชัน, พอยน์เตอร์, สตรัคต์, ขอบเขต, เอนัม (
cpp-basic/) - C++ สมัยใหม่: RAII, สมาร์ทพอยน์เตอร์, การย้ายข้อมูล, การจัดแนว, RVO (
cpp-advanced/) - C++ OOP: คลาส, การกำหนดสิทธิ์เข้าถึง, การสืบทอด, พอลิมอร์ฟิซึม, เท็มเพลต
Systems & Performance
- การเขียนโปรแกรม CUDA: โมเดลโฮสต์/ดีไวซ์, การเรียกเคอร์เนล, การจัดการหน่วยความจำ (
CUDA/) - การเขียนโปรแกรม MPI: โปรแกรมกระจายแบบใช้งานจริง, การดำเนินการกับเมทริกซ์, และการตรวจสอบผล (
MPI/) - เอกสาร: การเชื่อมต่อ Python-C++, การจัดการ GIL, การปรับแต่ง CUDA, การเทรนแบบ precision ผสม (
docs/)
ปรัชญาการเรียนรู้
- ตัวอย่างขนาดเล็ก แยกโมดูล — ไม่มีโน้ตบุ๊กที่รกตา
- แยกชัดเจนระหว่างแนวคิด, โค้ด, และคำอธิบาย
- เน้นการออกแบบ, ประสิทธิภาพ และการดูแลรักษา
- สร้างพื้นฐานความรู้แบบต่อเนื่อง — เหมาะสำหรับผู้เรียนจริงจังและมืออาชีพ
ประวัติการกดดาว
🤝 การมีส่วนร่วม
พบข้อผิดพลาด, คำผิด, หรืออยากขยายอะไรเพิ่มเติม? เปิด PR ได้เลย — ยินดีรับทุกการมีส่วนร่วม
📄 ใบอนุญาต
ใบอนุญาต MIT — สามารถใช้ ดัดแปลง และแบ่งปันได้ฟรีเพื่อการเรียนรู้และการสอน
--- Tranlated By Open Ai Tx | Last indexed: 2025-07-18 ---