Skip to content

Một Awesome List nhưng là về lập trình và hoàn toàn (hoặc một phần) là Tiếng Việt

Notifications You must be signed in to change notification settings

daihocmo/awesome-lap-trinh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 

Repository files navigation

Awesome Lập trình Awesome

Một trang Awesome lấy ý tưởng từ computer-science!

Giới thiệu

Một danh sách những gì liên quan đến lập trình và việc học lập trình. Có rất nhiều những tài liệu lập trình bằng Tiếng Việt tốt. Trang này chỉ đơn giản là một trang tổng hợp không bao giờ đầy đủ về những nguồn tài nguyên chất lượng có mặt.

Tất nhiên, Tiếng Anh vẫn sẽ luôn luôn nhiều hơn và rất gợi ý nếu bạn có thể đọc được Tiếng Anh. Nhưng nếu bạn chưa đọc được Tiếng Anh đủ tốt để hiểu thì có thể cân nhắc sử dụng bất kì tài nguyên nào ở dưới đây.

Nhưng hãy nhớ là PHẢI HỌC TIẾNG ANH, vì nguồn tài nguyên Tiếng Việt rất ít, mình sẽ làm riêng một khu để tổng hợp phần này.

Các hạng mục sẽ được phân chia theo teachyourselfcsbản dịch Tiếng Việt tương ứng của trang. Các tài nguyên sẽ được chọn dưới hai kiểu chính:

  • Hoàn toàn bằng Tiếng Việt.
  • Tiếng Anh nhưng có phụ đề Tiếng Việt.

Mục tiêu của chương trình

  • Để có thời gian rèn luyện một Tiếng Anh thật tốt: Trong khi bạn học những quy tắc nền tảng của lập trình bằng Tiếng Việt, hãy dành thời gian để làm vững chắc Tiếng Anh của bạn lên. Cá nhân mình gợi ý Level B2, hoặc đạt được ít nhất 1500 giờ nghe Tiếng Anh (Có thể là các nội dung liên quan đến lập trình, nhưng không phải là Tiếng Anh của mấy ông Ấn). Đích đến của việc này để đảm bảo bạn có khả năng phát âm và nghe hiểu thật vững.
  • Đọc tài liệu bằng Tiếng Anh không được dùng đến Google Dịch hay dịch tự động: Có nhiều người mình biết khi đọc bài tập hoặc hướng dẫn bằng Tiếng Anh thì hay dùng Google Dịch hoặc ChatGPT, nhưng bạn có dám đảm bảo là nó dịch đúng không? Nó sẽ luôn dịch cả những thuật ngữ bao gồm trong đó và có thể ra một nghĩa khác (Giờ chưa biết đỡ chưa nhưng gét gô học thôi).

Mình không bao giờ phủ nhận tầm quan trọng của Tiếng Anh trong quá trình học này. Và để khiến cho nó trở lên dễ dàng hơn nữa, bạn có thể sẽ muốn xem xét tạm dừng lại và làm hai điều này:

  • Học nền tảng của KHOA HỌC MÁY TÍNH (Lý thuyết cơ bản thì khó bị lỗi thời theo thời gian).
  • Học Tiếng Anh (Đưa Tiếng Anh của bạn lên mức tốt hơn nhiều so với bây giờ).

Mục lục

1. Tiếng Anh

2. Khoa học máy tính

3. Các chủ đề mở rộng

Tiếng Anh chuyên ngành

Bạn sẽ cần học Tiếng Anh song song với chương trình này.

Lập trình

Hầu hết các chương trình đại học cho ngành KHMT đều bắt đầu với phần “giới thiệu” về lập trình máy tính. Các khóa học tốt nhất cho chủ đề này không chỉ giúp cho người mới học, mà còn rất tốt chho những người đã bỏ lỡ các khái niệm và mô hình lập trình khi họ mới học viết mã.

Kiến trúc máy tính

Kiến trúc Máy tính — đôi khi được gọi là “hệ thống máy tính” hoặc “tổ chức của máy tính” — là một góc nhìn quan trọng đầu tiên về phần tính toán bên dưới bề mặt của phần mềm. Theo kinh nghiệm của chúng tôi, đó là lĩnh vực bị bỏ qua nhất trong các kỹ sư phần mềm tự học.

Thuật toán

Chúng tôi đồng ý với sự đồng thuận chung trong nhiều thập kỷ rằng sự quen thuộc với các thuật toán và cấu trúc dữ liệu phổ biến là một trong những đặc điểm có nhiều ý nghĩa nhất của chương trình giáo dục khoa học máy tính. Đây cũng là một nơi tuyệt vời để đào tạo khả năng giải quyết vấn đề chung của một người, khả năng này sẽ mang lại hiệu quả trong mọi lĩnh vực nghiên cứu khác.

Toán

Theo một cách nào đó, khoa học máy tính là một nhánh của toán học ứng dụng đã phát triển quá nhanh. Mặc dù nhiều kỹ sư phần mềm cố gắng bỏ qua chủ đề này ở các mức độ khác nhau, chúng tôi khuyến khích bạn nắm bắt nó bằng cách nghiên cứu trực tiếp. Nếu học được thành công sẽ mang lại cho bạn một lợi thế cạnh tranh to lớn so với những người không học.

Các bác học hết Calculus A, B, C với khóa Mathematics for Computer Science.

Nếu bác muốn học toàn bằng Tiếng Anh thì: https://github.com/ossu/computer-science#core-math

Hệ điều hành

Mạng máy tính

Thực tế hiện nay có rất nhiều kỹ thuật phần mềm nằm trên máy chủ web và máy khách, nên một trong những lĩnh vực có giá trị tức thì của khoa học máy tính là mạng máy tính. Các sinh viên tự học của chúng tôi, những người nghiên cứu mạng máy tính một cách có phương pháp thấy rằng cuối cùng họ cũng hiểu các thuật ngữ, khái niệm và giao thức mà họ đã nhìn thấy trong trong nhiều năm.

Cơ sở dữ liệu

Tự học về hệ thống cơ sở dữ liệu sẽ mất nhiều công sức hơn so với hầu hết các chủ đề khác. Đây là một lĩnh vực nghiên cứu tương đối mới (tức là sau những năm 1970) với những giá trị thương mại lớn cho các ý tưởng tưởng được giữ lại sau các cánh cửa đóng kín. Ngoài ra, nhiều tác giả tiềm năng cho các giáo trình xuất sắc tiềm năng đã muốn tham gia hoặc thành lập các công ty hơn là viết sách.

Ngôn ngữ và trình biên dịch

Hầu hết các lập trình viên học ngôn ngữ, trong khi hầu hết các nhà khoa học máy tính học về ngôn ngữ. Điều này mang lại cho nhà khoa học máy tính một lợi thế khác biệt so với lập trình viên, ngay cả trong lĩnh vực lập trình! Kiến thức của họ khái quát; họ có thể hiểu hoạt động của một ngôn ngữ mới sâu hơn và nhanh hơn so với những người chỉ đơn thuần học một ngôn ngữ cụ thể.

Hệ thống phân tán

Khi số lượng máy tính tăng lên, chúng cũng lan rộng. Trong khi các doanh nghiệp trước đây thường mua các máy tính càng ngày càng lớn hơn, thì giờ đây việc các ứng dụng thậm chí rất nhỏ chạy trên nhiều máy tính cũng rất phổ biến. Hệ thống phân tán là nghiên cứu về các đánh đổi khi sử dụng nó.

Tìm hiểu về hệ phân tán

Được đăng bởi Hero Gustin trên Viblo.

Trí tuệ nhân tạo

  • d2l-vi - Một cuốn sách về Học Sâu đề cập đến nhiều framework phổ biến, được sử dụng trên 300 trường Đại học từ 55 đất nước bao gồm MIT, Stanford, Harvard, và Cambridge.
  • ml-yearning-vi - Một cuốn sách tập trung vào hướng dẫn cách cấu trúc các dự án Học Máy và phân tích cách làm cho các thuật toán Học Máy hoạt động.
  • handson-ml2-vn - Jupyter Notebook cung cấp các kiến thức cơ bản về Học Máy và Học Sâu bằng Python với Scikit-Learn, Keras, và TensorFlow 2.

Ngôn ngữ lập trình

HTML/CSS/JS

Rust

C++

Bảo mật

  • opsec-guide - Hướng dẫn thực hành căn bản về bảo mật thông tin cá nhân/danh tính trên không gian mạng, chống lại việc dò tìm thông tin.

Hệ thống

Học ở bậc đại học

Những thứ linh tinh khác

About

Một Awesome List nhưng là về lập trình và hoàn toàn (hoặc một phần) là Tiếng Việt

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published