post-image

Các Môn Học Nền Tảng Cho LTV Tương Lai

Tổng quan

Nhiều bạn sinh viên IT nghĩ rằng để trở thành lập trình viên thì chỉ cần giỏi những môn có tiêu đề “máy tính”, “lập trình” thôi là đủ, theo mình nó chưa hoàn toàn đúng và đủ. Vì dù ở bất kỳ ngành nghề nào cũng cần có kiến thức tổng quan về nó, riêng ngành lập trình nói riêng và CNTT nói chung cần phải có tư duy logic về thuật toán (toán học), các framework cũng như các hệ cơ sở dữ liệu.

Sau đây là một số chia sẻ của mình về kinh nghiệm của bản thân mình trên con đường chinh phục lập trình.

Năm 1 đại học cần biết những gì?

1. Nhập môn Công nghệ Thông tin

Đây là môn cực kỳ quan trọng vì nó giúp ta khái quát tổng quan về ngành cũng như các kiến thức nền về cấu tạo, nguyên lý hoạt động của máy tính, đại số Boolean (cái này mình khoái lắm), cách chuyển đổi các cơ số, RAM là gì, Ổ cứng hoạt động ra sao, CPU gồm những bộ phận nào, ALU, BUS có chức năng gì,… Bên trường mình thì môn này là môn kiến trúc máy tính.

2. Toán rời rạc

Lúc đầu học thì đúng là “rời rạc” theo nghĩa đen, rời rạc, phờ phạc cả người, nghe lùng bùng mà muốn rớt cả não luôn vì môn này là môn mới trên đại học á, thuộc dạng toán tin, lúc đầu học thì có hơi khó nhưng lâu dần rồi quen sẽ thấy nó rất thú vị và cần thiết vì nó liên quan nhiều đến các thuật toán trong lập trình (chia để trị, truy hồi, phương pháp đếm).

3. Toán cao cấp

Này thì chắc chắn là có rồi, nhất là trong các ngành kỹ thuật, kinh tế. Toán cao cấp chia thành 2 phần: Đại số tuyến tính (ma trận chuyển vị, cộng nhân biến đổi ma trận bậc thang,..), giải tích 1,2 (môn này giống với môn toán hồi cấp 3 thôi nhưng nâng cao hơn) nếu có tạch môn thì cũng là chuyện bình thường, đừng vội nản chí.

4. Cơ sở lập trình (lập trình cơ bản):

Và 1 môn cực kỳ quan trọng cho các anh em theo nghiệp lập trình là đây. 1 số nội dung cực kỳ quan trọng cần phải nắm vững:

       + Các kiểu dữ liệu  (thường là trong C/C++ như int,float, long, double, long long, bool, unsigned,…)

       + Các biến (biến cục bộ và biến toàn cục)

       + Vòng lặp (for, while, do while)

       + Các hàm (void (ko giá trị trả về), int (có giá trị trả về))

       + Hàm con

       + Đệ quy

       + Mảng 1 chiều, mảng 2 chiều.

5.Mạng máy tính

Dù là lập trình viên hay làm ở các vị trí kỹ thuật khác trong ngành IT thì bạn cũng nên có kiến thức tổng quan về hệ thống mạng, Network, các thiết bị vào ra, module, route, môi trường và giao thức truyền dữ liệu thông tin của các hệ thống thông tin, để kịp thời xử lý khi có sự cố ngoài ý muốn.

Năm 2 cần học gì?

1. Lập trình hướng đối tượng (OOP):

là môn lập trình cực kỳ quan trọng, không lập trình viên nào không cần, là kỹ thuật cho phép người lập trình code trừu tượng hóa các đối tượng

(sự vật, sự việc). Đặc biệt các CLass, hàm friend, các nguyên lý cơ bản như tính đóng gói, tính kế thừa, tính đa hình, tính trừu tượng cần lưu ý kỹ.

2. Cấu trúc dữ liệu và giải thuật:

Nhiều bạn hay lơ là môn này nhưng thực tế nó là một trong những môn quan trọng nhất, đặc biệt là sau này khi tham gia phỏng vấn xin việc ở các công

ty công nghệ, môn này giúp chúng ta có khả năng phân tích, tư duy logic 1 bài toán lập trình, các kiến thức trọng tâm trong môn này như: Pointer (con trỏ), struct array, Phân tích độ phức tạp thuật toán (độ O), Các thuật toán

tìm kiếm và sắp xếp, stack, List linked, hàng đợi (queue), cây,… cần học kỹ.

3. Lập trình nâng cao (Kỹ Thuật Lập Trình)

Là lập trình viên mà kêu không học môn này thì chịu luôn đó các bác ạ, không chỉ ôn lại phần lập trình cơ bản mà còn nâng cao hơn với các hàm struct, pointer, string, lập trình file,…các kỹ thuật thần thánh như chia để trị, quy hoạch động, tham lam, bảng băm, quay lui rất hữu ích nữa.

4. Cơ sở dữ liệu:

Dữ liệu là một kho tàng khổng lồ với đủ loại thông tin trong đó, phải hiểu, cách thiết kế, quản lý và truy xuất sử dụng 1 cách hợp lý mới có hiệu quả cao, này nghe đâu học để tạo ra các cơ sở dữ liệu( mình chưa học môn này nên chưa biết nhiều hihi)trên nền tảng các hệ quản trị CSDL SQL và MySQL.

5. Kiểm thử phần mềm

Một LTV cần biết debug, kiểm lỗi sau khi code một sản phẩm nào đó phải không? Thì đây chính là một môn học cần thiết giúp bạn tăng khả năng debug ấy, xem kỹ các kỹ thuật debug,  các loại lỗi và nguyên nhân gây ra lỗi để sau này debug dễ hơn nha.

Định hướng chuyên ngành

Năm 3,4

Sau khi đã nắm vững kiến thức mấy môn trên rồi thì bắt đầu học theo định hướng bản thân đi là vừa rồi, bác nào muốn theo front-end thì học mấy ngôn ngữ HTML,CSS,JS cùng vài frameworks Reactjs, Angular,… Ai theo back-end thì học C#, PHP, JAVA, Python, RuBy với 1 số framework đi kèm như Nodejs, Django, Spring,… và nhớ là phải có kiến thức về database SQL nữa nhé. Ngoài ra còn có lập trình fullstack (giỏi tất cả những điều trên luôn thì làm), lập trình di động (học kỹ C++, JAVA, SQL, thiết kế UI/UX), lập trình games (tối thiểu là C++, giỏi về hướng đối tượng ).

Tập làm một vài sản phẩm đơn giản, đề tài đồ án về chủ đề công nghệ mà bản thân hướng tới cho giỏi.
Hai năm cuối này bạn nên đi thực tập, công việc dành cho fresher, thực tập sinh đầy trên các trang như Topcv, Ybox, VietNamwork,… hoặc qua bạn bè, thầy cô, gia đình giới thiệu chẳng hạn
Cần trang bị các câu hỏi, câu trả lời, kinh nghiệm khi đi xin việc từ những người đi trước.
Kỹ năng mềm: teamwork, tiếng anh, thái độ, đạo đức thật tốt.

Kết

Đây là 1 số điều mà mình đúc kết, tổng hợp được từ bản thân và các anh chị đi trước, có thể chưa đầy đủ nhưng mong sẽ có ích cho các bạn sinh viên IT, có định hướng đúng đắn hơn trên con đường mà mình đã chọn. Chúc các bạn thành công nhé!

Nguồn: https://codelearn.io/sharing/cac-mon-hoc-nen-tang-cho-ltv

Leave a Reply

Your email address will not be published. Required fields are marked *