Khoá học lập trình C# (.NET Core) [Video] Chương trình quản lý sách - Develop Book Project - Lập Trình C# - OOP trong C# - C Sharp - C2010G

  • 5.0/5.0
  • 2k Đăng ký
  • Học lập trình
  • Tiếng việt

Thông tin khóa học


Chương trình quản lý sách - Develop Book Project - Lập Trình C# - OOP trong C# - C Sharp

1. Tổng quan bài toán

Bạn cần xây dựng ứng dụng quản lý sách Aptech gồm hai loại đối tượng:

  • Book: lớp cơ bản mô tả một cuốn sách thông thường.

  • AptechBook: lớp kế thừa từ Book, thêm thông tin chuyên biệt cho sách lập trình Aptech như ngôn ngữ lập trình và kỳ học.

Chương trình có các chức năng:

  1. Nhập danh sách sách Aptech

  2. Hiển thị danh sách sách

  3. Sắp xếp theo năm xuất bản

  4. Tìm kiếm theo tên sách

  5. Tìm kiếm theo tên tác giả

  6. Lưu danh sách sách ra file books.txt

  7. Đọc danh sách sách từ file books.txt

  8. Thoát chương trình


2. Cấu trúc chương trình

Chương trình gồm 3 file:

BT1458/ │ ├── Book.cs ├── AptechBook.cs └── Program.cs

Mỗi file đảm nhiệm một vai trò riêng:

  • Book.cs: Định nghĩa lớp cha Book

  • AptechBook.cs: Kế thừa từ Book và mở rộng tính năng

  • Program.cs: Xử lý menu, nhập/xuất, tìm kiếm, lưu/đọc file


3. Phân tích từng lớp


🧩 Lớp Book

Chức năng:
Lưu trữ các thông tin cơ bản của một cuốn sách:

  • Tên sách

  • Tác giả

  • Nhà sản xuất

  • Năm xuất bản

  • Giá bán

Các thành phần chính:

✅ Thuộc tính

public string BookName { get; set; } public string BookAuthor { get; set; } public string Producer { get; set; } public string YearPublishing { get; set; } public int Price { get; set; }

Cách khai báo này sử dụng auto-properties của C#, giúp mã ngắn gọn mà vẫn đảm bảo tính đóng gói (Encapsulation).

✅ Constructors

public Book() { } public Book(string bookName, string bookAuthor, string producer, string yearPublishing, int price) { BookName = bookName; BookAuthor = bookAuthor; Producer = producer; YearPublishing = yearPublishing; Price = price; }

Gồm:

  • Constructor mặc định.

  • Constructor có tham số (để khởi tạo nhanh giá trị khi tạo đối tượng mới).

✅ Phương thức Input()

Nhập dữ liệu từ bàn phím:

public virtual void Input() { Console.WriteLine("Nhap ten sach: "); BookName = Console.ReadLine(); ... }

Dùng virtual để cho phép lớp con ghi đè (override) khi cần mở rộng logic nhập.

✅ Phương thức Display()ToString()

public void Display() => Console.WriteLine(this); public override string ToString() { return "Ten sach: " + BookName + ", ten tac gia: " + BookAuthor + ", NSX: " + Producer + ", nam xuat ban: " + YearPublishing + ", gia ban: " + Price; }

ToString() giúp hiển thị thông tin dễ đọc. Khi gọi Console.WriteLine(this);, C# tự động gọi ToString().

✅ Phương thức GetFileLine()

Dùng để chuyển một đối tượng Book thành chuỗi lưu vào file:

public virtual string GetFileLine() { return BookName + "," + BookAuthor + "," + Producer + "," + YearPublishing + "," + Price + "\n"; }

📚 Lớp AptechBook

Kế thừa từ: Book
Thêm thuộc tính riêng:

public string Language { get; set; } public string Semester { get; set; }

✅ Constructor kế thừa

public AptechBook(string language, string semester, string bookName, string bookAuthor, string producer, string yearPublishing, int price) : base(bookName, bookAuthor, producer, yearPublishing, price) { Language = language; Semester = semester; }

Từ khóa : base(...) giúp gọi constructor lớp cha để tránh lặp lại code.

✅ Ghi đè phương thức Input()

public override void Input() { base.Input(); Console.WriteLine("Nhap ngon ngu lap trinh: "); Language = Console.ReadLine(); Console.WriteLine("Nhap ky hoc: "); Semester = Console.ReadLine(); }

Dùng base.Input() để tái sử dụng phần nhập của lớp Book, sau đó nhập thêm phần riêng của AptechBook.

✅ Override ToString()GetFileLine()

public override string ToString() { return "Ngon ngu lap trinh: " + Language + ", ky hoc: " + Semester + ", " + base.ToString(); } public override string GetFileLine() { return Language + "," + Semester + "," + base.GetFileLine(); }

Giúp hiển thị và lưu file đầy đủ cả thông tin của lớp cha và lớp con.

✅ ParseFileLine()

Dùng để đọc dữ liệu từ file text và gán lại vào đối tượng:

public void ParseFileLine(string line) { string[] elements = line.Split(","); Language = elements[0]; Semester = elements[1]; BookName = elements[2]; BookAuthor = elements[3]; Producer = elements[4]; YearPublishing = elements[5]; Price = int.Parse(elements[6]); }

🧮 Lớp Program

Đây là lớp điều khiển chính (Main) chứa menu thao tác.

✅ Menu chính

static void ShowMenu() { Console.WriteLine("1. Nhap N sach"); Console.WriteLine("2. Hien thi"); Console.WriteLine("3. Sap xep theo nam xuat ban"); Console.WriteLine("4. Tim kiem theo ten sach"); Console.WriteLine("5. Tim kiem theo tac gia"); Console.WriteLine("6. Luu books.txt"); Console.WriteLine("7. Doc books.txt"); Console.WriteLine("8. Thoat"); Console.WriteLine("Chon: "); }

Chạy trong vòng lặp do...while để lặp lại cho đến khi người dùng chọn “8 – Thoát”.

✅ Chức năng 1 – Nhập sách

private static void Input() { Console.WriteLine("Nhap so sach can them N = "); int N = int.Parse(Console.ReadLine()); bookList = new AptechBook[N]; for (int i = 0; i < N; i++) { Console.WriteLine("Nhap thong tin sach thu {0}", i + 1); AptechBook aptechBook = new AptechBook(); aptechBook.Input(); bookList[i] = aptechBook; } }

✅ Chức năng 2 – Hiển thị danh sách

private static void Display() { Console.WriteLine("Thong tin sach: "); for (int i = 0; i < bookList.Length; i++) { bookList[i].Display(); } }

✅ Chức năng 3 – Sắp xếp theo năm xuất bản

Array.Sort<AptechBook>(bookList, (b1, b2) => { return b1.YearPublishing.CompareTo(b2.YearPublishing); });

Sử dụng Array.Sort() với lambda expression để sắp xếp theo YearPublishing.

✅ Chức năng 4 & 5 – Tìm kiếm

Tìm theo tên sách hoặc tác giả, duyệt mảng và so sánh chuỗi.

✅ Chức năng 6 – Lưu file

private static void SaveFile() { string content = ""; for (int i = 0; i < bookList.Length; i++) content += bookList[i].GetFileLine(); File.WriteAllText(@"books.txt", content); Console.WriteLine("Luu file thanh cong!!!"); }

Mỗi dòng trong file tương ứng một đối tượng AptechBook.

✅ Chức năng 7 – Đọc file

private static void ReadFile() { string content = File.ReadAllText(@"books.txt"); if (string.IsNullOrWhiteSpace(content)) return; string[] lines = content.Split("\n"); bookList = new AptechBook[lines.Length]; for (int i = 0; i < lines.Length; i++) { if (lines[i] == "") continue; AptechBook aptechBook = new AptechBook(); aptechBook.ParseFileLine(lines[i]); bookList[i] = aptechBook; } }

Đọc toàn bộ file, tách theo dòng, và tái tạo lại danh sách đối tượng.


4. Một số lưu ý & mẹo học OOP hiệu quả

  • Tính đóng gói (Encapsulation):
    Dùng get; set; để bảo vệ dữ liệu, không cho truy cập trực tiếp từ bên ngoài.

  • Tính kế thừa (Inheritance):
    Giúp tái sử dụng code, ví dụ AptechBook kế thừa toàn bộ Book.

  • Tính đa hình (Polymorphism):
    Sử dụng virtualoverride để phương thức có thể tùy biến theo từng lớp con.

  • Xử lý file:
    Sử dụng File.ReadAllText()File.WriteAllText() giúp thao tác nhanh gọn.


5. Kết luận

Qua bài tập này, bạn đã học được:

  • Cách định nghĩa và kế thừa lớp trong C#

  • Cách ghi đè phương thức (override)

  • Cách nhập, hiển thị, tìm kiếm, sắp xếp dữ liệu

  • Cách lưu trữ dữ liệu vào file và đọc lại từ file

🎯 Mục tiêu quan trọng:
Hiểu rõ cách tổ chức chương trình hướng đối tượng, làm nền tảng để phát triển các dự án thực tế lớn hơn (quản lý sinh viên, nhân viên, sản phẩm...).

💡 Gợi ý mở rộng:

  • Thêm chức năng xóa hoặc cập nhật thông tin sách.

  • Lưu dữ liệu ở định dạng JSON hoặc XML.

  • Xây dựng giao diện WinForms hoặc WPF để quản lý sách trực quan.


📘 Book.cs

using System; namespace BT1458 { public class Book { public string BookName { get; set; } public string BookAuthor { get; set; } public string Producer { get; set; } public string YearPublishing { get; set; } public int Price { get; set; } public Book() { } public Book(string bookName, string bookAuthor, string producer, string yearPublishing, int price) { BookName = bookName; BookAuthor = bookAuthor; Producer = producer; YearPublishing = yearPublishing; Price = price; } public virtual void Input() { Console.WriteLine("Nhập tên sách: "); BookName = Console.ReadLine(); Console.WriteLine("Nhập tên tác giả: "); BookAuthor = Console.ReadLine(); Console.WriteLine("Nhập nhà sản xuất: "); Producer = Console.ReadLine(); Console.WriteLine("Nhập năm xuất bản: "); YearPublishing = Console.ReadLine(); Console.WriteLine("Nhập giá bán: "); Price = int.Parse(Console.ReadLine()); } public virtual void Display() { Console.WriteLine(ToString()); } public override string ToString() { return $"Tên sách: {BookName}, Tác giả: {BookAuthor}, NSX: {Producer}, Năm XB: {YearPublishing}, Giá: {Price}"; } public virtual string GetFileLine() { return $"{BookName},{BookAuthor},{Producer},{YearPublishing},{Price}\n"; } } }

📗 AptechBook.cs

using System; namespace BT1458 { public class AptechBook : Book { public string Language { get; set; } public string Semester { get; set; } public AptechBook() { } public AptechBook(string language, string semester, string bookName, string bookAuthor, string producer, string yearPublishing, int price) : base(bookName, bookAuthor, producer, yearPublishing, price) { Language = language; Semester = semester; } public override void Input() { base.Input(); Console.WriteLine("Nhập ngôn ngữ lập trình: "); Language = Console.ReadLine(); Console.WriteLine("Nhập kỳ học: "); Semester = Console.ReadLine(); } public override void Display() { Console.WriteLine(ToString()); } public override string ToString() { return $"Ngôn ngữ: {Language}, Kỳ học: {Semester}, {base.ToString()}"; } public override string GetFileLine() { return $"{Language},{Semester},{base.GetFileLine()}"; } public void ParseFileLine(string line) { string[] elements = line.Split(","); if (elements.Length < 7) return; Language = elements[0]; Semester = elements[1]; BookName = elements[2]; BookAuthor = elements[3]; Producer = elements[4]; YearPublishing = elements[5]; Price = int.Parse(elements[6]); } } }

📙 Program.cs

using System; using System.IO; namespace BT1458 { class Program { static AptechBook[] bookList; static void Main(string[] args) { int choose; do { ShowMenu(); Console.Write("Chọn chức năng: "); choose = int.Parse(Console.ReadLine()); switch (choose) { case 1: InputBooks(); break; case 2: DisplayBooks(); break; case 3: SortByYearPublishing(); DisplayBooks(); break; case 4: SearchByBookName(); break; case 5: SearchByAuthor(); break; case 6: SaveToFile(); break; case 7: ReadFromFile(); DisplayBooks(); break; case 8: Console.WriteLine("Thoát chương trình!"); break; default: Console.WriteLine("Lựa chọn không hợp lệ, vui lòng thử lại!"); break; } Console.WriteLine("-------------------------------------------"); } while (choose != 8); } static void ShowMenu() { Console.WriteLine("========= MENU QUẢN LÝ SÁCH APTECH ========="); Console.WriteLine("1. Nhập N sách"); Console.WriteLine("2. Hiển thị danh sách sách"); Console.WriteLine("3. Sắp xếp theo năm xuất bản (giảm dần)"); Console.WriteLine("4. Tìm kiếm theo tên sách"); Console.WriteLine("5. Tìm kiếm theo tác giả"); Console.WriteLine("6. Lưu danh sách vào file (books.txt)"); Console.WriteLine("7. Đọc danh sách từ file (books.txt)"); Console.WriteLine("8. Thoát"); Console.WriteLine("============================================"); } static void InputBooks() { Console.Write("Nhập số lượng sách N = "); int N = int.Parse(Console.ReadLine()); bookList = new AptechBook[N]; for (int i = 0; i < N; i++) { Console.WriteLine($"\nNhập thông tin sách thứ {i + 1}:"); AptechBook book = new AptechBook(); book.Input(); bookList[i] = book; } } static void DisplayBooks() { if (bookList == null || bookList.Length == 0) { Console.WriteLine("Chưa có dữ liệu sách để hiển thị!"); return; } Console.WriteLine("\n=== DANH SÁCH SÁCH APTECH ==="); foreach (AptechBook book in bookList) { book.Display(); } } static void SortByYearPublishing() { if (bookList == null || bookList.Length == 0) { Console.WriteLine("Danh sách trống, không thể sắp xếp!"); return; } Array.Sort(bookList, (b1, b2) => { return b2.YearPublishing.CompareTo(b1.YearPublishing); }); Console.WriteLine("Đã sắp xếp danh sách theo năm xuất bản giảm dần!"); } static void SearchByBookName() { Console.Write("Nhập tên sách cần tìm: "); string name = Console.ReadLine(); bool found = false; foreach (AptechBook book in bookList) { if (book.BookName.Equals(name, StringComparison.OrdinalIgnoreCase)) { book.Display(); found = true; } } if (!found) Console.WriteLine("Không tìm thấy sách có tên này!"); } static void SearchByAuthor() { Console.Write("Nhập tên tác giả cần tìm: "); string author = Console.ReadLine(); bool found = false; foreach (AptechBook book in bookList) { if (book.BookAuthor.Equals(author, StringComparison.OrdinalIgnoreCase)) { book.Display(); found = true; } } if (!found) Console.WriteLine("Không tìm thấy sách của tác giả này!"); } static void SaveToFile() { if (bookList == null || bookList.Length == 0) { Console.WriteLine("Không có dữ liệu để lưu!"); return; } string content = ""; foreach (AptechBook book in bookList) { content += book.GetFileLine(); } File.WriteAllText(@"books.txt", content); Console.WriteLine("Đã lưu dữ liệu vào file books.txt thành công!"); } static void ReadFromFile() { string path = @"books.txt"; if (!File.Exists(path)) { Console.WriteLine("File không tồn tại!"); return; } string[] lines = File.ReadAllLines(path); if (lines.Length == 0) { Console.WriteLine("File rỗng!"); return; } bookList = new AptechBook[lines.Length]; for (int i = 0; i < lines.Length; i++) { if (string.IsNullOrWhiteSpace(lines[i])) continue; AptechBook book = new AptechBook(); book.ParseFileLine(lines[i]); bookList[i] = book; } Console.WriteLine("Đọc dữ liệu từ file thành công!"); } } }

Tính năng trong chương trình

  1. Nhập danh sách N sách Aptech.

  2. Hiển thị danh sách sách đã nhập.

  3. Sắp xếp danh sách theo năm xuất bản giảm dần.

  4. Tìm kiếm theo tên sách.

  5. Tìm kiếm theo tên tác giả.

  6. Lưu dữ liệu vào file books.txt.

  7. Đọc dữ liệu từ file books.txt.

  8. Thoát chương trình.

Đăng nhập để làm bài kiểm tra

Chưa có kết quả nào trước đó

Chương trình

EBook - Tài Liệu Học Lập Trình C Sharp

Video Giới thiệu về ngôn ngữ lập trình C# & .NET Framework + Khai báo biến trong C#
Video Hướng dẫn tìm hiểu biến + toán tử trong lập trình C#
Video Hướng dẫn tìm hiểu mệnh đề điều kiện if - else - switch trong C#
Video Tìm hiểu biến, toán tử, mệnh đề điều kiện, lặp (for, white, do .. while), switch - mảng trong C# - Khoá học lập trình C# - C2010G
In dãy Fibonacci trong C# - Tìm dãy số Fibonacci - Lập trình C# - Loop trong C#
Giải phương trình bậc 2 - Lập Trình C# - Mệnh đề điều kiên if else trong #
Viêt chương trình cho FlowChart - Lập trình C# - Tìm hiểu if else trong C#
Hiển thị hình tam giác - Lập trình C# - Loop trong C#
Viết chương trình ax + b = 0 bằng C#, C Sharp
Xây dựng dự án Hello World trong C# - C Sharp
Nhập và hiển thị thông tin sinh viên - Console trong C#
Tìm dãy số nguyên tố - Lập trình C# - Loop trong C#
Video Tìm dãy số nguyên tố - Lập trình C# - Loop trong C#
In dãy số chẵn & lẻ từ mảng số nguyên - Lập trình C# - Loop trong C#
Video In dãy số chẵn & lẻ từ mảng số nguyên - Lập trình C# - Loop trong C#

Video Array C# - Hướng dẫn tìm hiểu Array trong C#. C Sharp, Lập Trình C#, Lập Trình C Sharp
Tính tổng số chắc & Tổng số lẻ trong chuỗi - Lập Trình C# - Array Trong C#

Video Tìm hiểu lập trình OOP trong C# - Tính chất đóng gói - tính chất kế thừa - Override trong C# - C2010G
Video Học lập trình OOP C# - Tính chất đóng gói C# - Qua ví dụ quản lý sinh viên - Lập trình C#
Bài 1: Chương trình quản lý sản phẩm - Lập Trình C# - Lập Trình C Sharp - Làm quen OOP
Video Bài 1: Chương trình quản lý sản phẩm - Lập Trình C# - Lập Trình C Sharp - Làm quen OOP - AAHN-C2009G2
Bài 2: Chương trình quản lý sản phẩm - Product - Lập Trình C# - Lập Trình C Sharp
Video Bài 2: Chương trình quản lý sản phẩm - Product - Lập Trình C# - Lập Trình C Sharp - C2010L
Chương trình quản lý công nhân - Lập Trình C# - Lập Trình C Sharp - Làm quen OOP
Chương trình quản lý sách - Develop Book Project - Lập Trình C# - OOP trong C# - C Sharp
Video Chương trình quản lý sách - Develop Book Project - Lập Trình C# - OOP trong C# - C Sharp - C2010G

Video Tìm hiểu về lập trình OOP Tính chất đa hình - tính chất trừu tượng - interface trong C# - Lập trình C#
Ôn tập OOP - Table - Trong C# - Lập Trình C# - Lập Trình C Sharp
Chường trình quản lý sở thú - Lập trình C# - Lập trình C Sharp
Video Hướng dẫn chữa bài tập quản lý sở thú - Zoo Project C# - Lập trình C# - C2010G
Bài tập ôn luyện OOP + Interface trong C# - Lập Trình C# - Lập Trình C Sharp
Kiểm tra 30 phút - Chương trình quản lý thiết bị phòng lab cho trường học - Lập trình C# - Khoá học lập trình C Sharp
Chương trình quản lý khách sạn - Develop Hotel Project - Lập Trình C# - Lập Trình C Sharp
Video Chương trình quản lý khách sạn - Develop Hotel Project - Lập Trình C# - Lập Trình C Sharp
Video Cách 2: Chương trình quản lý khách sạn - Develop Hotel Project - Lập Trình C# - Lập Trình C Sharp - C2010L

Video Tạo khung dự án C Sharp + Tìm hiểu alias namespace C Sharp + Event & Delegate C Sharp
Viết chương trình quản lý sinh viên + delegate & event trong C# - Lập Trình C# - Lập Trình C Sharp
Examination & Test - Lập trình C# - Lập trình C Sharp
Bài tập - Xây dựng chương trình quản lý sức khoẻ - Lập trình C#
Video Bài tập - Xây dựng chương trình quản lý sức khoẻ - Lập trình C# - C2010G
Video Tìm hiểu Collections C Sharp (List, ArrayList, Dictionary, Stack, Queue) - Partial & Generic C Sharp
Viết chương trình quản lý tiêm chủng Vacxin COVID-19 - Lập trình C Sharp nâng cao.
Video Bài tập - Viết chương trình quản lý tiêm chủng Vacxin COVID-19 - Lập trình C Sharp nâng cao - C2010G

Chương trình quản lý sinh viên C# + Import/Export JSON + File - Lập Trình C# - Lập Trình C Sharp
Video Chương trình quản lý sinh viên C# + Import/Export JSON + File - Lập Trình C# - Lập Trình C Sharp
Video Thêm chức năng mới : Chương trình quản lý sinh viên C# + Import/Export JSON + File - Lập Trình C# - Lập Trình C Sharp - C2009G
Video Tìm hiểu Extension method C#, Partial C#, Type Anonymous C#
Chương trình nhập xuất dữ liệu điểm thi - Lập Trình C# - Lập Trình C Sharp - Làm quen OOP
Bài tập C Sharp - Chương trình quản lý cán bộ C# - C Sharp
Video Bài tập C Sharp - Chương trình quản lý cán bộ C# - C Sharp - C2010G

Video Quản lý sinh viên C# - Kết nối CSDL C# - Kết nối database C#
Video Học kết nối CSDL C# qua ví dụ quản lý khách hàng C# - MySQL
Chương trình quản lý sách C# - Book project C# - CSDL
Tools Import/Export JSON into Database C# - Nhập xuất JSON File vào CSDL C# - Quản lý sinh viên C#
Video Tools Import/Export JSON into Database C# - Nhập xuất JSON File vào CSDL C# - Quản lý sinh viên C# - Batch transaction SQL C# - C2010G
Bài tập - Viết chương trình quản lý nhập kho máy tính cho thegioididong.com C Sharp - Lập trình C Sharp
Video Viết chương trình quản lý nhập kho máy tính cho thegioididong.com C Sharp - Lập trình C Sharp - C2010G

Bài tập - Chương trình quản lý Mèo C# (C Sharp) | Chương trình quản lý Cat C# (C Sharp)
Bài tập - Quản lý điểm thi Aptech bằng C# - Lập trình C Sharp
Video Quản lý điểm thi Aptech bằng C# - Lập trình C Sharp
[Examination] C# - Chương trình quản lý đội thi TechWiz toàn cầu Aptech Ấn Độ - C#
Video [Examination] C# - Chương trình quản lý đội thi TechWiz toàn cầu Apptech Ấn Độ - C#
Bài Tập - Quản lý nhà - Lập trình C# | C Sharp
Bài tập - Quản lý rạp chiều phim C# - Lập trình C#
Viết chương trình quản lý xe car bằng C # - C Sharp | Khoá học lập trình C#
Ôn tập OOP - Table - Trong C# - Lập Trình C# - Lập Trình C Sharp
Nguyễn Văn An
Nguyễn Văn An
2026-06-22 11:23:07
Khóa học cực kỳ chất lượng, giảng viên hướng dẫn rất chi tiết và dễ hiểu. Mình đã áp dụng được ngay vào công việc thực tế.
Trần Thị Bích
Trần Thị Bích
2026-06-19 11:23:07
Nội dung bài giảng được sắp xếp logic, đi từ cơ bản đến nâng cao. Rất phù hợp cho người mới bắt đầu.
Lê Hoàng Hải
Lê Hoàng Hải
2026-06-17 11:23:07
Khóa học hay, tuy nhiên phần bài tập thực hành hơi khó một chút. Cần phải xem lại video vài lần mới làm được.
Phạm Minh Tuấn
Phạm Minh Tuấn
2026-06-10 11:23:07
Tuyệt vời! Đây là khóa học tốt nhất mình từng tham gia. Support nhiệt tình, giải đáp thắc mắc rất nhanh.

Đánh giá

B1. B1. Tạo tài khoản -> Sử dụng để học online
B2. Đăng ký học
B3. Hoàn thành mua khoá học
B4. Thanh toán theo hướng dẫn
B5. Đợi chúng tôi kiểm tra thông tin và thêm bạn vào lớp học

Chào mừng các anh chị và các bạn gia nhập đội ngũ Giảng viên QViet. Anh chị vui lòng đăng ký theo hướng dẫn sau:
Bước 1: Truy cập website https://gozic.vn/teacher/form
Bước 2: Điền thông tin theo yêu cầu. Để bản đăng ký được duyệt nhanh nhất, anh chị hãy điền đủ thông tin nhé.
Bước 3: Click vào "đăng ký ngay" để hoàn thành
Lưu ý:
Link video bài giảng mẫu: Video bài giảng mẫu là căn cứ để Trắc Nghiệm Việt duyệt về hình thức và chất lượng giảng dạy. Vì vậy anh chị hãy điền link này để đăng ký được duyệt nhanh nhất nhé.
Anh chị cũng nên mô tả kỹ về kinh nghiệm giảng dạy để Trắc Nghiệm Việt đánh giá nhé.
Chúc các anh chị và các bạn thành công, sớm gia nhập đội ngũ giảng viên Trắc Nghiệm Việt!
×