Hướng dẫn học .NET


👉 Tìm hiểu về .NET: Bạn ít nhất phải biết .NET là gì (không biết thì đọc ở đây: https://daohainam.com/2023/10/18/gioi-thieu-ve-net/), cách nó chạy chương trình như thế nào, rồi tiếp đến tìm hiểu cách viết, dịch và chạy chương trình. Ít nhất bạn phải biết bạn làm được gì với nó, cách tải và cài đặt Visual Studio (dùng hẳn bản Visual Studio nhé, đừng dùng Visual Studio Code, tập đạp xe thì cứ kiếm cái xe bình thường mà tập, đừng bắt đầu bằng xe một bánh), cách tạo project, biên dịch, chạy và debug.

Bạn có thể học .NET bằng cách theo dõi các video bài học của một tác giả có hơn 20 năm kinh nghiệm .NET tại đây: https://www.youtube.com/playlist?list=PLRLJQuuRRcFlaITD5F6XKQJxOt8QgCNAg

👉 Học ngôn ngữ lập trình: C# là ngôn ngữ chính thống nhất và đầy đủ nhất trên .NET, cú pháp đơn giản, thân thiện với người đã biết C++, Java nên học rất nhanh. Bắt đầu bằng các chương trình console, giải các bài tập đơn giản để quen với cú pháp của nó.

Bạn nên lập ra một danh sách các bài tập cần viết trước khi bắt đầu, đặt mục tiêu hoàn thành là khi bạn làm hết các bài đó. Danh sách bài tập có thể tham khảo từ các sách học ngôn ngữ khác.

👉 Tìm hiểu các thư viện trong .NET: làm việc với File, với database, string, định dạng dữ liệu…

Tiếp tục làm bài tập, các bài tập phù hợp trong bước này là clone lại các chương trình console đã có: viết lại lệnh DIR hay lệnh COPY của Windows nè, đọc vào một file .CSV rồi chuyển dữ liệu trong đó vào một bảng trong database nè, hay làm một chương trình vẽ cây thư mục (giống lệnh TREE trên DOS)…

Mục tiêu của bước này là thành thạo các thư viện cơ bản trên .NET.

👉 Làm quen với Windows Form: WinForm tuy cũ nhưng lại rất đầy đủ và dễ học, thao tác chủ yếu là kéo thả, sử dụng các control, việc sử dụng chúng cũng khá đơn giản: thiết lập các thuộc tính, bắt các sự kiện… Bạn sẽ không mất nhiều thời gian để làm quen với phần này.

👉 Làm quen với WPF (optional): WPF có cách khai báo giao diện khác với Winform, và sẽ hơi khó học (đó là lý do vì sao mình khuyên học Windows Form trước). WPF cho phép dễ dàng tùy biến giao diện hơn Windows Form nhiều, đồng thời ngôn ngữ XAML dùng trong WPF cũng được sử dụng lại nhiều trong các UI framework sau này của Microsoft.

👉 Học lập trình web với ASP.NET: Bạn nên bắt đầu với các project dạng MVC (sử dụng Model/View/Controller), kể cả với API. Hãy đặt mục tiêu làm một webapp đủ lớn, và vì chúng ta tập trung vào phần .NET nên bạn chỉ cần tìm các bộ giao diện web đơn giản mà dùng. Bắt đầu với những tính năng như: CRUD, login/logout… Trong bước này bạn chỉ cần tập trung vào tính năng, tức là nó chạy được là được.

👉 Tìm hiểu các chủ đề cao hơn với ASP.NET: caching, dependency injection, sử dụng các tính năng được ASP.NET cung cấp sẵn… Bạn có thể thêm từng cái một: nâng cao hiệu năng với memcached hoặc Redis, hỗ trợ đăng nhập bằng tài khoản bên ngoài (Google, Facebook…), tách một số phần ứng dụng thành các service, các service này viết theo kiểu minimal thay vì MVC, sử dụng mesage queue để xử lý các thao tác không đồng bộ… có vô số thứ các bạn có thể làm và hầu hết yêu cầu bạn phải refactor chương trình. Bước này rất quan trọng vì không chỉ nó giúp bạn có kiến thức về .NET mà còn về thiết kế, các mô hình phát triển ngày càng chuyển sang việc yêu cầu việc design/code/refactor xoay vòng nhanh hơn, cũng như cần các developer đa năng thay vì phải có các designer riêng, đó cũng là lý do người ta càng lúc càng ít nhận những người chưa có kinh nghiệm.

Tới đây thì các bạn đã tự chủ được và có thể tự tìm con đường riêng của mình.

Nguyên tắc học luôn là: thực hành thật nhiều vào, đặt ra mục tiêu cụ thể trước khi bắt đầu một phần nào đó (ví dụ như viết một chương trình có chức năng cụ thể), chương trình mục tiêu mà bạn muốn viết nên đủ khó để bạn phải vò đầu bứt tóc, mất vài giờ, vài ngày để tìm ra giải pháp.

Lliệu bạn có thể hoàn thành tất cả các bước trên trong 2 tháng không?

Leave a comment