Có lẽ các bạn cũng đã biết thông tin về việc Bộ Giáo Dục đã quyết định sẽ không dạy ngôn ngữ lập trình lập trình Pascal trong chương trình giáo dục phổ thông nữa (cụ thể là chương trình Tin học lớp 11).
Là một sinh viên học công nghệ thông tin mình hoàn toàn ủng hộ quyết định này của Bộ Giáo Dục. Trong bài viết này mình sẽ cùng các bạn phân tích tại sao Bộ lại quyết định như vậy, và nếu bỏ Pascal thì ngôn ngữ lập trình nào nên được sử dụng để thay thế?
#1. Quan điểm về việc dạy ngôn ngữ lập trình ở chương trình phổ thông
Có nhiều người đưa ra ý kiến rằng chương trình phổ thông vốn đã quá nặng về các môn Toán, Lý, Hóa… nên việc giảng dạy các môn học khác nên được giảm đi.
Cá nhân mình thì nghĩ việc giảng dạy bộ môn lập trình ở chương trình phổ thông lại rất nên được khuyến khích. Tại vì sao?
Vâng, cá nhân mình cũng từng đã rất rất sợ môn Tin học lớp 11, sợ lập trình và luôn nghĩ rằng chỉ cần học tốt các môn chính như Toán, Lý, Hóa là đủ rồi. Nhưng suy nghĩ đó sai quá sai các bạn ạ !
Nguyên nhân là vì:
Thứ nhất, ở khía cạnh xã hội. Thời kỳ công nghệ thông tin đang bùng nổ, đất nước hội nhập, việc để cho học sinh tiếp cận sớm với lập trình là một điều nên làm để khuyến khích các em tìm tòi, học hỏi, khám phá công nghệ… từ đó sẽ có định hướng tốt cho tương lai.
Thứ hai, ở khía cạnh cá nhân. Lập trình là một bộ môn rèn luyện tư duy (tư duy giải quyết vấn đề) rất tốt.
Nó giúp các bạn học được cách phân tích vấn đề, truyền đạt, giải quyết vấn đề và thông qua máy tính để đạt được kết quả tốt nhờ việc tận dụng tốc độ và sự chính xác của máy tính.
Nhưng mình nghĩ việc giảng dạy ngôn ngữ lập trình ở chương trình phổ thông chỉ nên dừng lại ở việc cung cấp cho các em một công cụ để rèn luyện cách tư duy giải quyết các vấn đề cơ bản, từ đó giúp các em có được định hướng cũng như chuẩn bị tốt hơn cho các cấp học sau phổ thông.
Không nên đặt nặng vì vốn dĩ chương trình giáo dục phổ thông Việt Nam đã nặng lắm rồi.
Đọc thêm:
- Kinh nghiệm chọn mua Laptop dành cho sinh viên ngành IT
- Tìm hiểu kỹ hơn về ngành CNTT qua 5 câu hỏi kinh điển, phần #1
#2. Quan điểm về việc không dạy Pascal trong chương trình phổ thông lớp 11 nữa
Pascal có lẽ là môn học ám ảnh với nhiều học sinh nhất, trong đó có mình khi còn học cấp 3 ●﹏●
Một phần vì chúng ta nghĩ nó không quan trọng bằng các môn như Toán, Lý, Hóa, một phần vì môn này khó mà không phải học sinh nào cũng có điều kiện rèn luyện (có máy tính, có thời gian, có người hướng dẫn…)
Hồi mình học toàn lập trình trên giấy ?
Nhưng đó không phải là nguyên nhân Bộ quyết định bỏ môn này khỏi chương trình tin học lớp 11.
Nguyên nhân chính theo mình nghĩ là Bộ đang muốn cải tiến chương trình giáo dục sao cho thiết thực hơn với thời kỳ đổi mới, đặc biệt là trong kỷ nguyên công nghệ như hiện nay.
Pascal là một ngôn ngữ lập trình đã quá cũ kỹ, ra đời từ rất lâu rồi (năm 1970). Hiện nay hầu như chỉ được dùng trong giảng dạy lý thuyết chứ xét về tính thực tế, áp dụng của ngôn ngữ này là không cao, chứ không muốn nói là thấp.
Chương trình giáo khoa phổ thông nói chung và tin học nói riêng cũng được viết từ khá lâu rồi, thời kỳ đó các ngôn ngữ lập trình khác chưa được biết đến nhiều nên việc lựa chọn Pascal vào giảng dạy là tốt nhất.
Theo thời gian các ngôn ngữ lập trình mới ra đời với nhiều cải tiến và tính thực tiễn áp dụng cao hơn. Thậm chí nếu bạn nào trong ngành thì biết rằng số lượng ngôn ngữ lập trình bây giờ có khi còn nhiều hơn ngôn ngữ giao tiếp trên thế giới.
=> Kết luận: Chúng ta không thể mãi dạy một thứ mà nó đã quá cũ, không còn được dùng nhiều, không ứng dụng được nhiều vào thực tiễn… Đứng trước thời kỳ đổi mới với công nghệ là cốt lõi thì việc thay đổi và hội nhập là bắt buộc.
#3. Nếu bỏ Pascal thì ngôn ngữ lập trình nào là thích hợp nhất để thay thế?
Trước tiên thì mình muốn các bạn hiểu rằng bản chất ngôn ngữ lập trình chỉ là công cụ. Việc có giải quyết được vấn đề hay không hoàn toàn nằm ở vấn đề con người.
Công cụ tốt chỉ giúp chúng ta giải quyết vấn đề nhanh hơn, tối ưu hơn thôi. Con người vẫn luôn luôn là nhân tố quyết định dù có dùng ngôn ngữ gì đi chăng nữa.
Quay lại với câu hỏi nếu bỏ Pascal thì nên thay bằng ngôn ngữ lập trình nào. Mình có đọc ở một vài trang báo thì có hai luồng ý kiến đó là Python hoặc C++.
Có người nói nên dạy C++ vì nó là nền tảng rất thích hợp cho người mới học và hầu hết các trường đại học đều dạy C/C++ trước khi dạy các ngôn ngữ lập trình khác.
Có người lại nói học Python đi vì cú pháp nó dễ hiểu, không những vậy học Python còn có thể làm về AI (trí tuệ nhân tạo) – đang là một xu thế công nghệ hiện đại.
Khoan hãy đưa ra lựa chọn vì mình đã từng học cả hai ngôn ngữ lập trình này. Về bản chất hai ngôn ngữ này khác nhau khá nhiều. Mỗi ngôn ngữ đều có những ưu điểm, nhược điểm riêng. Mình sẽ đưa ra bảng so sánh như thế này:
Yếu tố so sánh | Python | C++ |
Cú pháp | Dễ học, gần giống với tiếng anh. | Cú pháp phức tạp hơn |
Tốc độ xử lý, hiệu năng | Thấp hơn so với C++ vì Python là ngôn ngữ thông dịch | Hiệu năng cao vì được biên dịch trực tiếp ra mã máy |
Các thư viện hỗ trợ | Nhiều | Ít hơn |
Ứng dụng | Có thể dùng làm web, ứng dụng desktop, đặc biệt là AI do các thư viện hỗ trợ nhiều | Chủ yếu ứng dụng trong các thiết bị nhúng, hoặc xây dựng bộ core(nhân) cho các công cụ khác, cũng có thể dùng trong AI |
Trên đây là một vài những so sánh của mình về hai ngôn ngữ này. Nếu phải lựa chọn thì mình nghĩ vẫn nên chọn C++ hoặc C để giảng dạy ở cấp phổ thông.
Vì bản chất đây là những ngôn ngữ lập trình cấp thấp, việc học chúng sẽ giúp các bạn các bạn hiểu rõ hơn cách thức máy tính thực hiện các lệnh, giúp các bạn rèn tư duy tốt hơn vì cú pháp tuy hơi khó nhưng tường minh (đẩy đủ chấm phảy, có quy định, quy tắc…).
Giúp các bạn học sinh hình thành thoi quen tốt khi tiếp cận với các ngôn ngữ khác.
Không những vậy các vấn đề học sinh phổ thông phải giải quyết cũng là những vấn đề cơ bản (chủ yếu là cách giải quyết các bài toán truyền thống như tìm UCLN, BCNN, số nguyên tố… bằng cách lập trình). Các kiến thức sâu hơn về ngôn ngữ nên để các cấp học sau trau dồi thêm.
Chúng ta hội nhập nhưng hãy nhớ mục đích của giáo dục phổ thông là trang bị các kiến thức cơ bản để các em có nền tảng tốt khi tiếp cận với các cấp học cao hơn cũng như kiến thức khác.
#4. Kết luận
Mình hoàn toàn ủng việc Bộ Giáo Dục không giảng dạy ngôn ngữ lập trình Pascal ở cấp Phổ thông nữa, vì chúng ta có những lựa chọn tốt hơn và thiết thực hơn.
Và nếu bỏ Pascal thì C/C++ có lẽ sẽ là những ngôn ngữ nên được xem xét nhất. Có thể nó khó nhưng hãy dạy cơ bản thôi, trang bị cho các em kiến thức cơ bản để các em có được nền tảng tốt nhất.
Các bạn nghĩ sao về vấn đề này? Hãy comment phía bên dưới bài viết về góc nhìn của bạn, để anh em cùng thảo luận thêm nhé !
CTV: Nguyễn Đức Cảnh – Blogchiasekienthuc.com