Học ngôn ngữ lập trình đầu tiên như thế nào?
VTC Academy VTC Academy
Học ngôn ngữ lập trình đầu tiên như thế nào?

Học ngôn ngữ lập trình đầu tiên như thế nào?

Ngày đăng 12/12/2017

Là lập trình viên thì dĩ nhiên là phải biết lập trình. Tuy nhiên, một trong những khó khăn khiến nhiều bạn bỏ cuộc, đó là việc chọn và học ngôn ngữ lập trình đầu tiên.

Dù cho bạn có học Đại Học, hay tự học lập trình, bạn đều sẽ phải đối diện với những khó khăn này! Vì vậy, mình sẽ chia sẻ một số kinh nghiệm và định hướng khi học những ngôn ngữ lập trình đầu tiên.

Đầu tiên nên học ngôn ngữ gì?

Mình hay nhận được câu hỏi từ nhiều bạn: Nên bắt đầu bằng ngôn ngữ lập trình gì? Thật sự, ở giai đoạn đầu, học ngôn ngữ gì không quan trọng như bạn nghĩ!

Tại sao vậy? Ở giai đoạn đầu, bạn học là để nắm cơ bản, để hiểu về lập trình, chứ không phải học rồi theo ngôn ngữ đó cả đời! Khi đã có trình độ, bạn có thể học một ngôn ngữ/công nghệ chỉ trong vài ngày hoặc vài tuần. Do vậy đừng quá lăn tăn về chuyện chọn ngôn ngữ. Thay vì ngồi đắn đồ suy nghĩ, cứ bắt đầu học đi thôi!

Đầu tiên, bạn có thể chọn một ngôn ngữ đơn giản để nhập môn trước. Mình thấy đa phần các trường ở Việt Nam dạy C, đây là một ngôn ngữ khá hay, ngắn gọn, giúp bạn hiểu cách máy tính hoạt động. Một số trường nước ngoài dạy Python, cú pháp khá gọn và trong sáng, cũng khá thích hợp cho newbie.

Sau đó, hãy học một ngôn ngữ lập trình nào đó có hỗ trợ OOP: C++, C#, Java. Hãy nhớ rằng ngôn ngữ không quan trọng, mục đích của bạn là để làm quen và nắm vững các khái niệm OOP.

Học những gì trong đấy?

Ở giai đoạn đầu, bạn sẽ cảm thấy khá khó khăn vì có quá nhiều khái niệm mới, quá nhiều điều cần học. Tuy nhiên, chúng thường bao gồm những điều sau đây:

  • Cú pháp (syntax) ngôn ngữ
  • Biến và con trỏ
  • Cấu trúc điều kiện (if/else)
  • Vòng lặp
  • Hàm
  • Đọc/ghi file
  • Một số thư viện và hàm cơ bản

Sau khi học về OOP, bạn sẽ cần học thêm một số điều như:

  • Bốn thuộc tính của OOP
  • Lý do sử dụng OOP
  • Class, Object, Modulde, Namespace
  • Access Modifier
  • Nguyên lý thiết kế OOP (Cái này khá khó, đi làm có nhiều kinh nghiệm đôi khi làm vẫn không đúng)

vtc academy ngon ngu lap trinh 2

Học sao cho code giỏi? Nản quá phải làm sao?

Như mình đã chia sẻ trong bài Căn bản và tư duy lập trình, muốn code giỏi thì các bạn phải … code nhiều. Ở giai đoạn đầu, các bạn hãy chịu khó làm bài tập nhiều, viết code nhiều để quen với cú pháp của ngôn ngữ, quen với cách tư duy.

Khi có lỗi thì nên tự sửa, đừng hễ gặp lỗi là mang lên các forum này nọ hỏi. Làm theo cẩm nang fix bug, hãy tập đọc message lỗi để tìm cách sửa các lỗi cú pháp, lỗi khi chương trình chạy sai. Chỉ cần luyện tập nhiều là bạn sẽ giỏi lên thôi!

Nhiều bạn chia sẻ với mình là cảm thấy code khó quá, học rất nản, sợ không theo ngành nổi. Đừng lo, hầu hết dân trong nghề đều công nhận là code thật ra khá khó.

Ngày xưa, khi ngồi làm bài tập, code mình viết toàn sai và bị lỗi. Mình cũng từng rất nản, nghĩ rằng mình không hợp với lập trình (mình chắc ai cũng từng cảm thấy như thế).

Tuy nhiên, sau khi code nhiều, tiếp xúc nhiều với lập trình, khả năng của bạn sẽ tiến bộ dần lên. Lúc đó, những vấn đề phức tạp ngày trước không còn làm khó bạn được đâu. Cố lên nhé!

vtc academy coding

Code không hề dễ dàng, nên bạn chớ vội nản và bỏ cuộc!

Một số bạn có câu hỏi là em đã học xong ngôn ngữ này ngôn ngữ kia, giờ em nên làm gì?

Đầu tiên, không có khái niệm học xong một ngôn ngữ, chỉ có xong một môn trên trường mà thôi. Nhiều người đi làm 5-10 năm mà còn cảm thấy mình không “xong” nổi một ngôn ngữ. Kiến thức bạn học được trong trường rất ít, chưa đủ lên tầm junior nữa, đừng tự tin quá!

vtc academy hoc

Học thế nào mới là “xong”?

Lý do là ở trong trường, chúng ta chỉ cần viết code cho chạy được là xong. Tuy nhiên, thiết kế cấu trúc toàn bộ dự án ra sao, viết code thế nào cho dễ đọc, dễ hiểu, dễ bảo trì là những điều trường học không hề dạy.

Do vậy, các bạn hãy chịu khó xem code người khác viết viết để lấp đầy khoảng trống kiến thức của mình nhé!

Học framework, học xong là phải làm!

Tiếp theo, hãy bắt đầu học một framework nào đó! Ví dụ bạn học Java, hãy thử tìm hiểu Spring hoặc Android. Học C# thì thử tìm hiểu ASP.NET MVC hoặc WPF.

Kiến thức và kinh nghiệm sử dụng framework là thứ mà các công ty đang cần. Nhưng nhớ là phải nắm căn bản trước khi ham hố nhảy vào học framework nhé!

Tới một lúc nào đó, việc làm bài tập sẽ không có ích gì nữa. Lý thuyết phải đi đôi với thực hành. Lúc này, việc bạn cần là tạo ra một sản phẩm. Không cần phải là một thứ gì to tát, hãy áp dụng kiến thức mình đã học để làm cái gì đó nho nhỏ đơn giản (Xem các gợi ý trong bài viết về pet project nhé).vtc academy coding 2

Vững kiến thức cơ bản, biết cách dùng framework, có dự án trên Github; những điều đó khá là đủ cho bạn có một CV khá đẹp để đi xin thực tập. Nếu có thể, hãy ráng học một số kĩ năng tìm việc, sau đó xin đi thực tập từ năm 3 năm 4 nhé! Không có cách học nào nhanh bằng việc học trong môi trường thực tế, tiếp xúc với dự án thật đâu!

Về kinh nghiệm thực tập và phỏng vấn, các bạn xem lại trong series muôn nẻo đường tìm việc nhé!

Kết

Như mình đã nói, việc học ngôn ngữ lập trình đầu tiên không quá quan trọng, cũng không quá khó khăn như bạn nghĩ. Vấn đề là liệu bạn có biết tự định hướng bản thân, có dám bắt tay vào học và làm ngay hay không thôi!

Hi vọng bài viết này đã có ích cho bạn! Nếu gặp khó khăn hay có điều gì muốn chia sẻ, các bạn cứ chia sẻ trong mục comment nha.

(Nguồn: toicodedao.com)
Tin tức khác
Nếu muốn trở thành Frontend Developer, bạn cần 13 kỹ năng này

Nếu muốn trở thành Frontend Developer, bạn cần 13 kỹ năng này

Ngày đăng 17/11/2017
Bạn đã bao giờ vào trang web yêu thích của mình và để ý đến cách mà trang web đó được bố cục như thế nào chưa? Các “button” sẽ “phản ứng” ra sao sau khi bạn click chuột vào đó? Và những điều tương tự như thế.Tất cả điều này gói gọn trong front-end development. Thiết kế web là cách mà trang web đó nhìn như thế nào, bố cục ra sao, còn frontend development là làm sao để thực hiện hóa các bố cục đó.
Con đường trở thành lập trình viên Web Full-stack

Con đường trở thành lập trình viên Web Full-stack

Ngày đăng 16/11/2017
Thuật ngữ lập trình viên full stack muốn nói đến những nhà phát triển phần mềm lập trình cả công nghệ back-end lẫn front-end. Hiện nay, lập trình viên full stack sẽ đóng một vai trò ngày càng quan trọng trong việc phát triển các ứng dụng web, đặc biệt là khi các kỹ thuật phát triển như DevOps đang trở thành một phần thiết yếu đối với các công ty làm phần mềm, nơi ranh giới giữa các lập trình viên và quản trị viên (administrator) có trách nhiệm triển khai và cài đặt mã nguồn không còn phân biệt rõ ràng như trước.Và con đường để trở thành một lập trình web full - stack  cũng không dễ dàng như bạn nghĩ nhưng không gì là không thể nếu bạn có quyết tâm và kiên trì.
Top 10 công việc công nghệ thông tin “khát” nhân sự hiện nay

Top 10 công việc công nghệ thông tin “khát” nhân sự hiện nay

Ngày đăng 01/03/2025
Khóa học mới nhất
ỨNG DỤNG AI TRONG THỰC TẾ DOANH NGHIỆP (PRACTICAL AI IN BUSINESS)

ỨNG DỤNG AI TRONG THỰC TẾ DOANH NGHIỆP (PRACTICAL AI IN BUSINESS)

5 (959)
Hình thức học: Online
Thời hạn: 1 tháng
Khối ngành: Công nghệ thông tin
PHÁT TRIỂN BẢN THÂN VÀ CÔNG VIỆC VỚI TRỢ LÝ AI (EMPOWERING GROWTH WITH AI ASSISTANCE)

PHÁT TRIỂN BẢN THÂN VÀ CÔNG VIỆC VỚI TRỢ LÝ AI (EMPOWERING GROWTH WITH AI ASSISTANCE)

5 (893)
Hình thức học: Online
Thời hạn: 1 tháng
Khối ngành: Công nghệ thông tin
CHUYÊN GIA TIẾP THỊ TÌM KIẾM (SEARCH MARKETING MASTERY)

CHUYÊN GIA TIẾP THỊ TÌM KIẾM (SEARCH MARKETING MASTERY)

5 (853)
Hình thức học: Tập trung/Bán thời gian
Thời hạn: 6 tháng
Khối ngành: Thương mại
CHUYÊN GIA SÁNG TẠO NỘI DUNG (CONTENT MARKETING MASTERY)

CHUYÊN GIA SÁNG TẠO NỘI DUNG (CONTENT MARKETING MASTERY)

5 (853)
Hình thức học: Hybrid (Trực tiếp & Online)
Thời hạn: 6 tháng
Khối ngành: Thương mại
CHUYÊN GIA KIỂM THỬ PHẦN MỀM (SOFTWARE TESTING MASTERY)

CHUYÊN GIA KIỂM THỬ PHẦN MỀM (SOFTWARE TESTING MASTERY)

5 (873)
Hình thức học: Hybrid (Trực tiếp & Online)
Thời hạn: 6 tháng
Khối ngành: Lập trình
IT BACHELOR (LIÊN THÔNG QUỐC TẾ)

IT BACHELOR (LIÊN THÔNG QUỐC TẾ)

5 (1239)
Hình thức học: Tập trung
Thời hạn: 1,5 năm tại VTC Academy + 2,5 năm tại Chisholm Institute
Khối ngành: Lập trình
Chuyên gia Vận hành & Hỗ trợ Hạ tầng CNTT (IT HELPDESK)

Chuyên gia Vận hành & Hỗ trợ Hạ tầng CNTT (IT HELPDESK)

5 (1023)
Hình thức học: Hybrid (Trực tiếp & Online)
Thời hạn: 6 tháng/khóa
Khối ngành: Lập trình
SCP – Essentials of Supply Chain Principles

SCP – Essentials of Supply Chain Principles

4.9 (1591)
Hình thức học: Online
Thời hạn: 2-3 tháng
Khối ngành: Thương mại
POP – Essentials of Operations Planning

POP – Essentials of Operations Planning

4.9 (1502)
Hình thức học: Online
Thời hạn: 2-3 tháng
Khối ngành: Thương mại
PMO – Essentials of Managing Operations

PMO – Essentials of Managing Operations

4.9 (1009)
Hình thức học: Online
Thời hạn: 2-3 tháng
Khối ngành: Thương mại
PMM – Essentialss of Manufacturing Management

PMM – Essentialss of Manufacturing Management

4.9 (1221)
Hình thức học: Online
Thời hạn: 2-3 tháng
Khối ngành: Thương mại
PIM – Essentialss of Inventory Management

PIM – Essentialss of Inventory Management

4.8 (1421)
Hình thức học: Online
Thời hạn: 2-3 tháng
Khối ngành: Thương mại
PDL – Essentialss of Distribution & Logistics

PDL – Essentialss of Distribution & Logistics

4.9 (1093)
Hình thức học: Online
Thời hạn: 2-3 tháng
Khối ngành: Thương mại
Chuyên gia tiếp thị thương mại điện tử (E-commerce Marketing Mastery)

Chuyên gia tiếp thị thương mại điện tử (E-commerce Marketing Mastery)

5 (853)
Hình thức học: Tập trung/Bán thời gian
Thời hạn: 6 tháng
Khối ngành: Thương mại
Chuyên viên Thiết kế đồ họa

Chuyên viên Thiết kế đồ họa

4.9 (5674)
Hình thức học: Tập trung
Thời hạn: 2 năm
Khối ngành: Thiết kế
Chuyên viên <br>Lập trình game (Phát triển Game)

Chuyên viên
Lập trình game (Phát triển Game)

4.9 (1545)
Hình thức học: Tập trung
Thời hạn: 2 năm
Khối ngành: Công nghệ thông tin
Chuyên viên Logistics và Quản lý Chuỗi cung ứng

Chuyên viên Logistics và Quản lý Chuỗi cung ứng

5 (2585)
Hình thức học: Tập trung
Thời hạn: 2 năm
Khối ngành: Thương Mại
Họa Sỹ Nhân Vật 3D Chuyên Nghiệp (3D Character Artist Pro)

Họa Sỹ Nhân Vật 3D Chuyên Nghiệp (3D Character Artist Pro)

5 (893)
Hình thức học: Tập trung/Bán thời gian
Thời hạn: 8 tháng
Khối ngành: Thiết kế
Kỹ Xảo Hoạt Hình 3D (Liên Thông Quốc Tế)

Kỹ Xảo Hoạt Hình 3D (Liên Thông Quốc Tế)

5 (1456)
Hình thức học: Tập trung
Thời hạn: 2.5 năm
Khối ngành: Thiết kế
Kỹ Thuật Phần Mềm (Liên Thông Quốc Tế)

Kỹ Thuật Phần Mềm (Liên Thông Quốc Tế)

5 (1265)
Hình thức học: Tập trung
Thời hạn: 2.5 năm
Khối ngành: Lập trình
Trí Tuệ Nhân Tạo

Trí Tuệ Nhân Tạo

5 (58898)
Hình thức học: Tập trung
Thời hạn: 2.5 năm
Khối ngành: Công nghệ thông tin
THIẾT KẾ 3D NÂNG CAO (LIÊN THÔNG QUỐC TẾ)

THIẾT KẾ 3D NÂNG CAO (LIÊN THÔNG QUỐC TẾ)

5 (78445)
Hình thức học: Tập trung
Thời hạn: 2.5 năm
Khối ngành: Thiết kế
Họa sỹ Môi trường 3D chuyên nghiệp (3D Environment Artist Pro)

Họa sỹ Môi trường 3D chuyên nghiệp (3D Environment Artist Pro)

5 (562)
Hình thức học: Tập trung/Bán thời gian
Thời hạn: 8 tháng
Khối ngành: Thiết kế
Chuyên viên Thiết kế 3D (3D Modeling)

Chuyên viên Thiết kế 3D (3D Modeling)

4.9 (6576)
Hình thức học: Tập trung
Thời hạn: 2 năm
Khối ngành: Thiết kế
Chuyên viên Lập trình phần mềm (Full-stack)

Chuyên viên Lập trình phần mềm (Full-stack)

4.9 (6545)
Hình thức học: Tập trung
Thời hạn: 2 năm
Khối ngành: Công nghệ thông tin
Chuyên viên Hoạt hình 3D (3D Animation)

Chuyên viên Hoạt hình 3D (3D Animation)

4.9 (6777)
Hình thức học: Tập trung
Thời hạn: 2 năm
Khối ngành: Thiết kế
Chuyên viên Digital Marketing (Full-stack)

Chuyên viên Digital Marketing (Full-stack)

5 (7656)
Hình thức học: Tập trung
Thời hạn: 2 năm
Khối ngành: Thương Mại
Tin tức khác
Nếu muốn trở thành Frontend Developer, bạn cần 13 kỹ năng này

Nếu muốn trở thành Frontend Developer, bạn cần 13 kỹ năng này

Ngày đăng 17/11/2017
Bạn đã bao giờ vào trang web yêu thích của mình và để ý đến cách mà trang web đó được bố cục như thế nào chưa? Các “button” sẽ “phản ứng” ra sao sau khi bạn click chuột vào đó? Và những điều tương tự như thế.Tất cả điều này gói gọn trong front-end development. Thiết kế web là cách mà trang web đó nhìn như thế nào, bố cục ra sao, còn frontend development là làm sao để thực hiện hóa các bố cục đó.
Con đường trở thành lập trình viên Web Full-stack

Con đường trở thành lập trình viên Web Full-stack

Ngày đăng 16/11/2017
Thuật ngữ lập trình viên full stack muốn nói đến những nhà phát triển phần mềm lập trình cả công nghệ back-end lẫn front-end. Hiện nay, lập trình viên full stack sẽ đóng một vai trò ngày càng quan trọng trong việc phát triển các ứng dụng web, đặc biệt là khi các kỹ thuật phát triển như DevOps đang trở thành một phần thiết yếu đối với các công ty làm phần mềm, nơi ranh giới giữa các lập trình viên và quản trị viên (administrator) có trách nhiệm triển khai và cài đặt mã nguồn không còn phân biệt rõ ràng như trước.Và con đường để trở thành một lập trình web full - stack  cũng không dễ dàng như bạn nghĩ nhưng không gì là không thể nếu bạn có quyết tâm và kiên trì.
Ngành Logistics và Quản lý Chuỗi cung ứng học ở đâu tốt nhất? So sánh các hệ đào tạo và lời khuyên từ chuyên gia

Ngành Logistics và Quản lý Chuỗi cung ứng học ở đâu tốt nhất? So sánh các hệ đào tạo và lời khuyên từ chuyên gia

Ngày đăng 14/06/2025
Giữa bối cảnh ngành Logistics  đang khát nhân lực chất lượng cao, việc lựa chọn một bệ phóng khởi đầu vững chắc trở nên quan trọng hơn bao giờ hết.  Khi đứng trước rất nhiều lựa chọn, câu hỏi lớn nhất của mọi người có lẽ vẫn là logistics và quản lý chuỗi cung ứng học trường nào để đảm bảo một tương lai rộng mở. Thấu hiểu trăn trở đó, VTC Academy sẽ cùng bạn phân tích các tiêu chí quan trọng, vạch ra một lộ trình rõ ràng để bạn có thể đưa ra quyết định phù hợp nhất cho hành trình sự nghiệp của mình.

Liên hệ với VTC Academy

    Tôi đã đọc và đồng ý với Điều khoảnChính sách bảo mật của VTC Academy.

  • Hotline: 1900292958