
Học cấu trúc dữ liệu và thuật toán dễ dàng qua hình ảnh (Phần cơ bản)
gamja5
Thông qua khóa học này, bạn có thể học cấu trúc dữ liệu tuyến tính và thuật toán.
Nhập môn
Algorithm
Bạn không phải chuyên ngành nên không biết bắt đầu học C như thế nào? Bạn đã học C ở trường với tư cách là sinh viên chuyên ngành, nhưng vẫn chưa thể viết code? Học C trong thời gian dài thì có ích gì? Khi mà không thể tạo ra được một dòng code đàng hoàng nào... Tôi sẽ truyền đạt bí quyết để bạn có thể tự mình lập trình được. Trong khóa học này, bạn sẽ cùng với một lập trình viên tiền배 giàu kinh nghiệm từng bước học cú pháp và phương pháp ứng dụng ngôn ngữ C, đồng thời được dẫn dắt đến mức độ có thể thực hiện các dự án đơn giản.


Hiểu về cú pháp cốt lõi của ngôn ngữ C
Khả năng viết trực tiếp mã C thông qua các dự án thực hành quy mô nhỏ
Chia sẻ kinh nghiệm thực tế từ một senior developer chính hiệu
# Kiến thức tiên quyết để học Cấu trúc dữ liệu và Giải thuật bằng ngôn ngữ C ## 1. Kiến thức cơ bản về ngôn ngữ C ### Cú pháp cơ bản - Biến và kiểu dữ liệu (int, float, char, double) - Toán tử (số học, logic, so sánh, bitwise) - Cấu trúc điều khiển (if-else, switch-case) - V
Dejavu C Programming
Cả người học chuyên ngành và không chuyên ngành đều cảm thấy bối rối trước ngôn ngữ C phải không?
Tôi - người đã tích lũy 20 năm kinh nghiệm nghiên cứu/phát triển trong lĩnh vực IT tại Kakao, EA, v.v. sẽ trực tiếp giảng dạy cho bạn!
Sự bức bối khi ngôn ngữ C học ở trường không chuyển hóa thành khả năng lập trình,
Sự bối rối khi không biết bắt đầu bước đầu tiên của lập trình từ đâu, tất cả những điều này tôi sẽ giải quyết một cách thỏa đáng cho bạn.
Cùng nhau hoàn thiện dự án C cuối cùng,
tôi sẽ truyền đạt sinh động những bí quyết của một senior developer chính hiệu.
Dựa trên kinh nghiệm thực tế, bạn có thể học được các nguyên lý cốt lõi của ngôn ngữ C và cách áp dụng thực tế. Mục tiêu là hiểu sâu sắc về ngôn ngữ C, vốn đã được sử dụng trong nhiều lĩnh vực khác nhau mặc dù đã trải qua 50 năm kể từ khi ra mắt.
Vượt ra ngoài việc học ngữ pháp đơn thuần, phát triển khả năng giải quyết vấn đề thông qua việc tự tay xây dựng các dự án thực tế. Nâng cao năng lực phát triển lên một tầm cao mới thông qua trải nghiệm tự viết và hoàn thiện code.
Thông qua ngôn ngữ C, bạn sẽ xây dựng nền tảng cơ bản vững chắc cho việc học thuật toán. Cùng với kiến thức nền tảng về coding test phục vụ cho việc xin việc, bạn có thể có được sự tự tin bằng cách học một cách có hệ thống những kiến thức thực tế được yêu cầu trong môi trường phát triển thực tế.
Tại Kakao và cộng đồng Kakao, tôi đã làm việc với vai trò xử lý ngôn ngữ tự nhiên tiếng Hàn và lập trình viên Backend, và tại EA - công ty phát triển/phát hành game nổi tiếng thế giới, tôi đã phát triển game server cho FIFA Online 3 và FIFA Online 4.
Tôi đã tích lũy kinh nghiệm thực tế thông qua vô số dự án với nhiều ngôn ngữ lập trình khác nhau như C, C++, Java, Python, Node.js (Javascript, Typescript).
Nhưng tôi không thể quên được khoảnh khắc bế tắc khi lần đầu học ngôn ngữ C.
Tôi hiểu rõ tình huống của các bạn khi chỉ với ngữ pháp học ở trường thì rất khó để viết code thực tế, và tôi muốn chia sẻ kinh nghiệm đã vượt qua điều này.
Trong thế giới rộng lớn của ngôn ngữ C, chúng tôi đã thiết kế lộ trình học tập hiệu quả nhất để bạn không bị lạc đường.
Dựa trên kinh nghiệm thực tế của lập trình viên, chúng tôi sẽ giúp bạn nắm vững nền tảng cốt lõi của ngôn ngữ C.
Ngôn ngữ C vốn chỉ cảm thấy phức tạp, nếu cùng với nhà phát triển Dejavu - một lập trình viên kỳ cựu, sẽ không còn đáng sợ nữa.
Nhà phát triển Dejavu
Hãy tự tay xây dựng nền tảng vững chắc về ngôn ngữ C.
Bây giờ, đến lượt bạn.
Giới thiệu bối cảnh ra đời của ngôn ngữ C, mối quan hệ với hệ điều hành Unix, và quá trình phát triển. Tìm hiểu quá trình tiêu chuẩn hóa từ K&R C đến ANSI C, và hiểu rõ đặc điểm cốt lõi của ngôn ngữ C là phương thức biên dịch. Xây dựng chiến lược học tập rõ ràng để tối đa hóa hiệu quả học tập.
Thông qua các ví dụ mã đơn giản, bạn sẽ làm quen với các quy tắc viết cơ bản và quy trình thực thi của ngôn ngữ C. Tiến hành thực hành dựa trên kinh nghiệm của các lập trình viên senior để nâng cao hứng thú với lập trình.
Học các kiểu dữ liệu cơ bản của ngôn ngữ C (kiểu số nguyên, số thực, ký tự, v.v.) và khái niệm về biến. Làm quen với cách xử lý dữ liệu bằng cách sử dụng các toán tử đa dạng (toán tử số học, quan hệ, logic, toán tử bit), đồng thời hiểu về ép kiểu, typedef và toán tử sizeof.
Học cách kiểm soát luồng thực thi của chương trình bằng cách sử dụng câu lệnh điều kiện (if, else), vòng lặp (while, for), câu lệnh phân nhánh (break, continue), v.v. Nâng cao khả năng lập trình thực tế thông qua các ví dụ ứng dụng sử dụng nhiều câu lệnh điều khiển khác nhau.
Học về hàm giúp tăng tính tái sử dụng của code. Hiểu và thực hành về định nghĩa hàm, cách truyền tham số, storage class, và nguyên lý cũng như cách sử dụng hàm đệ quy.
Học về khái niệm mảng (một chiều, đa chiều) và con trỏ để quản lý dữ liệu một cách hiệu quả. Nắm vững kỹ thuật cấp phát bộ nhớ động sử dụng con trỏ và tìm hiểu các trường hợp sử dụng con trỏ hàm.
Bạn sẽ học về vai trò của bộ tiền xử lý (preprocessor) xử lý mã nguồn trước khi biên dịch (#include, #define). Bạn sẽ học cách sử dụng cấu trúc file header và các chỉ thị tiền xử lý nâng cao.
Học cách thiết kế và sử dụng các kiểu dữ liệu tự định nghĩa như struct, enum, union dựa trên khái niệm trừu tượng hóa. Nắm vững cách biểu diễn dữ liệu phức tạp bằng struct và cách sử dụng bit field.
Học cách tạo file và đọc, ghi dữ liệu. Hiểu sự khác biệt giữa xử lý file văn bản và file nhị phân, đồng thời nắm vững phương pháp lưu trữ và quản lý dữ liệu vĩnh viễn thông qua thao tác nhập xuất file.
Trong quá trình này, chúng ta sẽ tổng hợp toàn bộ kiến thức về cú pháp C và nội dung thực hành đã học để thực hiện một dự án quy mô nhỏ. Đây là khóa học cốt lõi để hoàn thiện khả năng lập trình thực tế. Chúng tôi sẽ đưa ra hướng dẫn để trở thành một lập trình viên.
Người mới bắt đầu học ngôn ngữ lập trình C
Người học muốn rèn luyện nền tảng lập trình cơ bản
Môi trường thực hành
Bạn cần môi trường phát triển tích hợp (IDE) để thực hành ngôn ngữ C. Vui lòng cài đặt Microsoft Visual Studio 2022 trở lên.
Hệ điều hành mặc định là Windows. Bạn có thể sử dụng cả macOS và Linux nếu cài đặt trình biên dịch C và chương trình chỉnh sửa mã nguồn, tuy nhiên bạn sẽ phải tự cài đặt và quản lý môi trường phát triển.
Kiến thức cần có và lưu ý
Dành cho những người mới bắt đầu học cú pháp cơ bản của ngôn ngữ C.
Phù hợp với những người đã học ngôn ngữ C ở trường nhưng gặp khó khăn trong việc viết code.
Khóa học này được khuyến nghị cho những ai muốn củng cố vững chắc ngữ pháp ngôn ngữ C trước khi học cấu trúc dữ liệu và thuật toán.
Tài liệu học tập
Tôi cung cấp tài liệu PDF slide bài giảng.
Chúng tôi cung cấp mã nguồn ví dụ thực hành và các file dự án.
Hỗ trợ hỏi đáp thông qua cộng đồng lập trình viên ngôn ngữ C.
Khóa học này dành cho ai?
Là người học chuyên ngành, đã học ngôn ngữ C nhưng không biết phải viết code như thế nào
Người không chuyên ngành, muốn bắt đầu lập trình thông qua ngôn ngữ C
Những người muốn ôn tập ngữ pháp ngôn ngữ C trước khi học cấu trúc dữ liệu và thuật toán
Cần biết trước khi bắt đầu?
Trên hệ điều hành Windows, cách sử dụng cơ bản với thư mục (directory) và tệp tin
Khả năng cài đặt trên Windows các tệp cài đặt được tìm thấy thông qua công cụ tìm kiếm
Các đơn vị cơ bản (bit, byte, kilobyte, megabyte, gigabyte, ... )
Hoàn thành chương trình Tiến sĩ Khoa học Kỹ thuật Điện tử, Máy tính và Truyền thông tại Đại học Hanyang (Seoul)
Nghiên cứu Đo lường Internet (Internet Measurement)
Phát triển AI phát hiện bất thường (Anomaly Detection) đối với các cuộc tấn công DDoS, virus Worm, v.v.
Phát triển công cụ phân tích lưu lượng truy cập quy mô lớn (C, Java, MySQL)
Kakao và các công ty con của Kakao
Xử lý ngôn ngữ tự nhiên tiếng Hàn (C, Python, MySQL)
Phát triển Backend
(Java, Node.js, MySQL)
Electronic Arts Korea Studio (EA Korea Studio)
Phát triển máy chủ trò chơi FIFA Online 3 (Node.js, MongoDB)
Phát triển máy chủ trò chơi FIFA Online 4 (hiện là FC Online)
Tác phẩm
Ghi chép bài giảng C như một cuốn tiểu thuyết, Jabook
JAVA giải thích dễ hiểu dành cho SCJP, Nhà xuất bản Yihan
Bằng sáng chế
Bằng sáng chế số 10-1195413, Thiết bị và phương pháp phát triển ứng dụng
Tất cả
45 bài giảng ∙ (27giờ 34phút)
Tài liệu khóa học:
6. Biến và định danh
16:12
7. Kiểu dữ liệu
09:03
8. số nguyên
46:33
9. số thực
31:05
10. chuỗi ký tự
33:00
11. Boolean
24:39
12. Ép kiểu
22:31
14. Toán tử số học
31:41
16. Toán tử bit
34:53
Tất cả
2 đánh giá
5.0
2 đánh giá
Đánh giá 29
∙
Đánh giá trung bình 5.0
Đánh giá 1
∙
Đánh giá trung bình 5.0
Khám phá các khóa học khác trong cùng lĩnh vực!