5 GitHub .NET Repos ที่ช่วยเพิ่ม Tech Skills ของคุณ ขึ้นไปอีกขั้น

13-ส.ค.-21

คัมภีร์เทพ IT

มีหลาย Projects ที่เผยแพร่บน GitHub Repositories ซึ่งกลายเป็น Resource ที่ยอดเยี่ยมสำหรับ Software Developers

เช่นเดียวกับ หนังสือ, Online Courses และ Blogs ที่สำคัญคือ Projects ที่ดีไม่จำเป็นต้องซับซ้อนมากเกินไป มิฉะนั้น Developers จะเลิกเรียนรู้กลางคันได้ สำหรับผู้ที่ใช้งาน .Net บทความนี้เป็น 5 GitHub .NET Repos ที่ช่วยเพิ่ม Tech Skills ของคุณ ขึ้นไปอีกขั้น

1. Modular Monolith with DDD

Repository นี้ จะแสดงถึงวิธีสร้าง Monolithic Application ในแบบ Modular

Project Modules จะเชื่อมต่อกันอย่างหลวม ๆ และสื่อสารกันโดยใช้ Memory Event Bus เท่านั้น แต่ละ Application Module มี Composition Root ของตนเองสำหรับการสร้าง Dependencies ด้วย DI Container 

ด้วยแนวทางที่ใช้นี้ จะทำให้สามารถแบ่ง Code ออกเป็นส่วนย่อย ๆ ได้ชัดเจนขึ้น และทำให้การ Migration ไปยัง Microservices สามารถทำได้ง่ายกว่าการใช้ Monolithic Projects แบบทั่วไป

Project นี้จะช่วยสอนคุณเกี่ยวกับวิธีประยุกต์ใช้ Domain-Driven Design Concepts, CQRS และ Event Sourcing Approaches, Event Storming, C4 Model และอื่นๆ 

อีกทั้ง Project นี้ ได้รับการ Implement โดยใช้ .NET Core 3.1, Autofac, IdentityServer4, MediatR, Swashbuckle, Entity Framework Core 3.1, Dapper, Quartz.NET, SSDT Database Project, DbUp, NetArchTest และเทคโนโลยีอื่น ๆ

2. EventSourcing.NetCore

Repository นี้มีวัตถุประสงค์ เพื่ออธิบาย Concept ของ Event Sourcing และการนำไป Implement ใน .NET 5 Sample Application ซึ่งจะช่วยให้คุณเรียนรู้แทบจะทุกอย่างเกี่ยวกับ Event Sourcing Concept

ในส่วน Tutorial ของ Repository นี้ เริ่มต้นด้วย Description ของ Event Sourcing ด้วยการตอบคำถามที่ว่า "Events คืออะไร" เพื่ออธิบาย Concepts ที่เหลือทั้งหมดของ Event Sourcing พร้อมตัวอย่างของ Code

เทคโนโลยีหลัก ๆ ที่ใช้ ได้แก่ .NET 5, Kafka, Marten, Docker, MediatR และอื่นๆ

3. Sample .NET Core CQRS API

Repository นี้ประกอบไปด้วย Project ตัวอย่าง ที่ใช้ Clean Architecture ด้วยแนวทาง CQRS

สำหรับ Read Model จะใช้ Dapper Framework เพื่อ Fetch ข้อมูลจาก Database ส่วน Write Model จะใช้แนวทางDomain-Driven Design และ Migrate ไปยัง Database โดยใช้ Entity Framework Core

สิ่งที่น่าสนใจที่ Project ใช้ก็คือ Cache-Aside และ Outbox Patterns

เทคโนโลยีหลัก ได้แก่ .NET Core 3.1, MediatR, FluentValidation, Quartz.NET, Swashbuckle และอื่น ๆ

4. Clean Architecture Manga

Repository นี้มีตัวอย่าง Virtual Wallet Single-Page Web Application ที่ถูก Implement โดยใช้หลักการของ Clean Architecture

ในส่วน Tutorial ของ Repository นี้ มีการจัดโครงสร้างมาเป็นอย่างดี ซึ่งสามารถช่วยค้นหาคำตอบสำหรับคำถามเชิง Practical ต่าง ๆ ที่เกี่ยวข้องกับการใช้ Feature Flags ได้อย่างรวดเร็ว, การทำงานกับ EF Core Migrations, การเพิ่มในเรื่อง Authentication และ Authorization ให้กับ Projects, การ Implement Domain-Driven Patterns และอีกมากมาย

เทคโนโลยีหลัก ๆ ที่ใช้ใน Project ได้แก่ .NET 5, React และ Redux, Docker, Swagger, nginx

5. WhiteApp, Onion Architecture with ASP.NET Core

Repository นี้ มี Project ตัวอย่างที่ชื่อ WhiteApp ที่มีการใช้ Onion Architecture Pattern ที่สร้างด้วย .NET 5 Tech Stack

มันมีรายละเอียดอธิบายไว้อย่างชัดเจน เกี่ยวกับขั้นตอนในการ Set up, การ Build และการ Run Application

WhiteApp Project นั้นง่ายกว่า Project อื่น ๆ ที่คล้ายกันก่อนหน้านี้ ซึ่งอธิบายไว้ในข้างต้น การเรียนรู้ Project นี้อาจเป็นการเริ่มต้นที่ดีสำหรับคุณ หากคุณรู้สึกว่า Project ก่อนหน้านี้ ยากเกินไปสำหรับคุณ

การอ่าน GitHub Repositories นอกเหนือจากการอ่านหนังสือ Basic Programming, การดู Online Courses ที่ได้รับความนิยมสูง และการอ่าน Blogs ของคนเก่ง ๆ จะช่วยเพิ่มทักษะทางด้าน Technical ของคุณไปสู่ระดับที่สูงขึ้นได้ ซึ่งถือว่า คุ้มค่าที่คุณจะลองทำดู

ที่มา: https://levelup.gitconnected.com/

 

 

รับตำแหน่งงานไอทีใหม่ๆ ด้วยบริการ IT Job Alert

 

อัพเดทบทความจากคนวงในสายไอทีทาง LINE ก่อนใคร
อย่าลืมแอดไลน์ @techstarth เป็นเพื่อนนะคะ

เพิ่มเพื่อน

 

บทความล่าสุด