Nhập môn lập trình là một môn học quan trọng trong chương trình đào tạo của ngành Công nghệ thông tin tại FPT Polytechnic. Tuy nhiên, không phải sinh viên nào cũng hứng thú với môn học này. Vậy làm thế nào để nâng cao hiệu quả học tập và trong môn Nhập môn lập trình? Bài viết sẽ làm rõ một số vấn đề quan trọng để hỗ trợ các giảng viên và sinh viên.
Lập trình là một kỹ năng cơ bản và đặc biệt quan trọng đối với sinh viên ngành Công nghệ thông tin. Vấn đề đặt ra làm sao để có thể học môn Lập trình một cách hiệu quả, đảm bảo sinh viên nắm vững những kiến thức nền tảng để phát triển thuận lợi.
Theo thầy Võ Tá Hoàng (giảng viên Bộ môn Ứng dụng phần mềm, FPT Polytechnic Hà Nội), trong giai đoạn đầu tiếp cận với lập trình, sinh viên thường gặp một số khó khăn sau:
- Ngôn ngữ lập trình C là ngôn ngữ có cấu trúc chặt chẽ, kết quả chương trình in ra trên màn hình consolse không thân thiện, khó tạo được hứng thú cho sinh viên. Ngôn ngữ này cũng ít được sử dụng trong xây dựng các ứng dụng thông thường và giao diện trong thực tiễn.
- Cú pháp của ngôn ngữ lập trình C gần với tiếng Anh nhưng đa số sinh viên năm nhất vốn tiếng anh tương đối hạn chế, khó cho sinh viên đọc hiểu một chương trình
- Hệ thống bài tập và ví dụ trong tài liệu giảng dạy áp dụng công thức toán học quá nhiều. Chỉ có những sinh viên có kiến thức tốt về toán học mới có thể giải được.
- Bài tập và ví dụ không gắn với đời sống thực tiễn nên không gây được hứng thú cho sinh viên. Sinh viên không biết việc tính toán với các con số để làm gì.
- Học sinh khó kiểm tra bài làm của mình sau khi lập trình là đúng hay là sai. Có thể trên lý thuyết là đúng nhưng thực tế có thể sẽ có những trường hợp thiếu chính xác, thường sẽ có một khoảng sai số nhất định nào đó.
Từ những khó khăn nêu trên, thầy Võ Tá Hoàng đã đưa ra một số giải pháp sau:
Đối với giảng viên:
- Xây dựng môi trường thân thiện giữa giảng viên và sinh viên:
Bên cạnh việc chuẩn bị nội dung, phương pháp hay hình thức tổ chức dạy học, việc thiết lập được mối quan hệ hợp tác tích cực tốt đẹp giữa giảng viên và sinh viên, giữa sinh viên với nhau cũng sẽ tạo hứng thú nhiều hơn cho người học. Hình thức tổ chức dạy học hấp dẫn cùng với một bầu không khí thân ái, hữu nghị trong giờ học sẽ tạo ra sự tập trung cho cả thầy và trò. Người giảng viên vừa là người giúp các em lĩnh hội kiến thức, còn là người truyền lửa, truyền đam mê nghiên cứu cho các em.
- Gây chú ý bằng cách đặt câu hỏi hoặc tổ chức trò chơi nhỏ:
Những giây phút đầu tiên của tiết học có vai trò rất quan trọng quyết định chất lượng bài học hôm đó. Thay vì ngay lập tức đi vào bài học mới giáo viên có thể đặt một vài câu hỏi liên quan đến bài cũ. Điều này sẽ giúp kích thích hứng thú học của sinh viên.
- Lồng ghép những câu chuyện, hình ảnh minh họa vào bài giảng:
Bạn nghĩ sao nếu trong một tiết học chỉ có giáo viên là người liên tục nói về các nội dung lý thuyết cứng ngắc, còn học sinh đóng vai ngồi nghe chăm chú mà không có một sự tương tác nào xảy ra. Thực tế cho thấy các mẩu chuyện nhỏ hài hước của giáo viên sẽ giúp người học dễ dàng tiếp nhận kiến thức hơn rất nhiều so với việc học sinh chăm chăm ngồi ghi chép bài. Bên cạnh đó, việc này còn giúp thu hẹp khoảng cách giữa giáo viên với học sinh.
- Tăng cường các hoạt động làm việc nhóm, thuyết trình trước lớp:
Đây là phương pháp hiện đại được áp dụng trong trường học. Việc giáo viên nhận xét đánh giá việc làm nhóm sẽ giúp học sinh nghiêm túc hơn với vai trò được giao. Sự cạnh tranh giữa các nhóm cũng kích thích rất nhiều tới người học khiến họ có động lực tìm hiểu bài hơn.
Đối với sinh viên
- Đừng đi quá nhanh, hãy nắm bắt nó trước khi đi tiếp:
Đó chính là việc họ đã đi quá nhanh, và lối mòn của họ là tưởng rằng mình biết tất cả nhưng thực sự họ hiếm khi thực hiện công việc lập trình. Có thể họ biết một số cái nâng cao hơn so với những sinh viên khác, nhưng bấy nhiêu đó là không đủ để nắm vững các nguyên tắc cơ bản.
Do đó, trước tiên sinh viên cần tạo cho mình một nền tảng tốt bằng cách thường xuyên luyện tập thực hành các bài tập lập trình. Trong quá trình luyện tập như vậy bạn sẽ thấy được những vấn đề cơ bản mà các lập trình viên thường mắc phải. Và tạo cho mình một thói quen tốt để giải quyết vấn đề.
Đồng thời bạn đừng bao giờ ngừng tiến trình luyện tập của mình, cũng không nên đi quá nhanh hay quá chậm. Đừng tránh một chủ đề nào sau khi bạn đã nắm vững tất cả những gì dẫn đến nó. Bằng cách đối mặt với nhiều ý tưởng và thách thức, bạn sẽ có một chất men giúp bạn nhanh chóng nắm bắt được những vấn đề cơ bản.
- Không nên copy và paste khi học lập trình
Với đa số các lập trình viên đã thành nghề, thông thạo trong lập trình thì việc copy và paste code là vấn đề không thể thiếu. Nhưng ở đây các bạn đang là những người mới bắt đầu làm quen với lập trình, chỉ bằng cách gõ code bạn mới có thể rèn luyện được tốt nhất vì “trăm thấy không bằng một làm”. Chỉ có bắt tay vào gõ từng dòng lệnh bạn mới gõ sai và có cơ hội để chỉnh sửa lại.
- Vừa xem, vừa làm, vừa code theo
Bạn đừng có mở video lên, pha ly cà phê rồi ngồi vuốt râu khen “phải! phải!”. Cách đó tôi thấy không hiểu quả cho lắm. Rất nhiều người cũng từng ngồi khoanh tay gật gù khen có lý. Nhưng khi tắt video đi thì lại mơ hồ không rõ lắm. Chính vì thế bạn mở video một bên và cửa sổ code một bên. Xem đến đâu gõ đến đó thì hiệu quả hơn rất nhiều.
- Hãy viết chương trình theo cách riêng của mình
Khi bắt đầu viết một chương trình bạn không biết phải bắt đầu từ đâu, sử dụng cấu trúc dữ liệu gì? Việc phân bổ viết code như thế nào? Xử lý các phương thức ra sao?… Điều đầu tiên là bạn sử dụng các công cụ tìm kiếm ở google hoặc các công cụ tìm kiếm khác để tìm kiếm đoạn mã mình cần. Đây là một điều có thể làm cho tư duy lập trình của bạn ngày càng giảm đi và ngày càng bị lệ thuộc vào các công cụ tìm kiếm.
Giải pháp được đưa ra trong trường hợp này là bạn hãy tự nghĩ cho mình một thuật toán riêng. Đầu tiên bạn viết nó bằng mã giả, sau đó dùng ngôn ngữ lập trình để viết lại. Tuy việc này rất khó và tốn nhiều thời gian, nhưng nó sẽ giúp bạn có được những kinh nghiệm thực sự hữu ích, khả năng tư duy lập trình ngày càng phát triển.
Trường hợp ý tưởng chương trình của bạn lớn, phải viết một lượng lớn code. Khi đó bạn hãy phân nhỏ từng tính năng chương trình của mình ra, tự tập thiết kế cấu trúc của chương trình nhỏ đó, rồi ghép chúng lại với nhau sẽ được một chương trình lớn hoàn chỉnh hơn. Có thể chương trình đó không hoạt động tốt, nhưng cái mà bạn được ở đây chính là kinh nghiệm và một tư duy tự lập trong lập trình.
- Tự thêm thử thách cho bản thân
Đây là cách giảng viên rất hay tự làm với mình. Ví dụ bạn xem một tutorial về cách gửi mail bằng PHP. Trong video, chúng tôi có hướng dẫn gửi mail nhưng không gửi file đính kèm. Bạn hãy cho đấy là bài tập về nhà của mình và tự tìm cách khắc phục. Ví dụ khi chúng ta đọc một bài về jQuery Slider chẳng hạn, nếu người ta chỉ có chuyển hình kiểu chạy qua, chúng ta sẽ tự tìm cách tạo cho nó fade qua, vòng lại … Bằng cách tự tạo ra thách thức cho mình, bạn sẽ tiến bộ nhanh hơn.
- Học từ nhiều nguồn, nhiều tài liệu
Bạn cũng có thể tham gia vào các diễn đàn về lập trình , khi không hiểu một vấn đề gì đó bạn có thể post bài để các thành viên trong diễn đàn giúp đỡ cho bạn. Nếu có khả năng về. Lưu ý khi hỏi trên các diễn đàn bạn phải đặt câu hỏi ngắn gọn, tập trung vào mô tả nội dung vấn đề mà bạn đang gặp vướng mắc thì bạn sẽ nhận được câu trả lời tốt hơn.
iệc trước mỗi buổi học nên chuẩn bị bài ở nhà, xây dựng danh sách các câu hỏi về vướng mắc mà bạn gặp phải vào một cuốn sổ tay nhỏ để lên hỏi giáo viên hoặc bạn bè là một việc rất có ích, nó sẽ giúp bạn tiếp thu hơn, và nó cho thấy rằng bạn là một con người cầu tiến, ham học hỏi
- Học nhóm
Học nhóm sẽ giúp bạn tiến bộ nhanh hơn, tăng cường khả năng giao tiếp với bạn bè và đồng nghiệp sau này. Khi làm việc nhóm bạn sẽ viết ra được những chương trình lớn hơn và có sức thuyết phục người dùng hơn.
- Tìm hiểu cách sử dụng một công cụ gỡ rối Debug
Debug là một công cụ rất tốt dùng để gỡ rối chương trình của bạn khi có một lỗi nào đó là chương trình bạn chạy sai. Nó cho bạn theo dõi giá trị của các biến và các thay đổi của chúng qua từng mã lệnh của chương trình.
Công cụ debug giúp chúng ta hiểu chương trình của mình hơn, và là thứ chúng ta cần phải biết khi viết chương trình. Một chương trình debug có thể giúp bạn nhanh chóng trả lời những gì mà bạn đang làm.
Trên đây là những kinh nghiệm được giảng viên Võ Tá Hoàng tích lũy trong quá trình học và giảng dạy của bản thân. Tuy nhiên, nếu bạn đã xác định học lập trình, theo thầy, bí quyết tốt nhất là phải tạo ra một thói quen tư duy độc lập: “Chỉ hỏi khi thực sự hết cách, chỉ hỏi sau khi đã thử rất nhiều cách, chỉ hỏi khi đã suy nghĩ về vấn đề đó rất nhiều lần trong ngày và chỉ hỏi khi bạn thực sự không thể giải quyết được vấn đề”.
Giảng viên Võ Tá Hoàng
Bộ môn Ứng dụng phần mềm
FPT Polytechnic Hà Nội