Cảm nhận bài đầu tiên khóa Lập trình Java cơ bản
Mình tưởng mở bài là gõ code ngay
Đăng ký khóa Lập trình Java cơ bản xong, mình mở #Bài 1 với tâm thế: chắc phải cài JDK, gõ Hello World, rồi debug tới 2 giờ sáng. Tên bài hiện ra: Tư duy lập trình. Không một dòng Java.
Lúc đó hơi thất vọng. Học xong mới hiểu: nếu nhảy vào code trước, mình sẽ copy-paste cả tuần mà không biết mình đang giải bài toán gì.
Tư duy trước, code sau
Bài học nói rất thẳng: lập trình không bắt đầu từ cú pháp, mà từ cách nhìn một vấn đề đời thực rồi bẻ nó thành bước máy tính làm được. Mentor trong video nhắc đi nhắc lại: đừng cố nhớ hết khái niệm trong một đêm.
Ba ý mình ghi vào sổ:
- Đối tượng là “cái gì”, thuộc tính là “nó đang như thế nào”, phương thức là “nó làm được gì”
- Miền giá trị giúp mình biết dữ liệu nào hợp lệ, dữ liệu nào phải loại
- Hướng thủ tục đi theo bước; hướng đối tượng đi theo “vật” trong đời thật
Cái đèn bàn trên góc học cũng là một đối tượng: có màu, có công tắc, có hành động bật/tắt. Nhìn quanh phòng là hiểu OOP hơn là đọc định nghĩa suông.
Thủ tục hay hướng đối tượng?
Phần so sánh #OOP với lập trình hướng thủ tục mới làm mình “à ra thế”. Làm theo bước thì nhanh khi bài toán ngắn. Nhưng khi chương trình lớn lên, thiếu đối tượng thì mọi thứ rối như mì. Java chọn OOP không phải để làm khó người mới — mà để mình mô hình hóa đúng từ đầu.
5 bước phân tích bài toán
Cuối bài có 5 bước. Mình thử áp vào việc “tính tiền quán trà sữa”:
- Xác định bài toán: khách gọi món, hệ thống ra thành tiền
- Tìm đối tượng: khách, món, hóa đơn
- Gắn thuộc tính: tên món, giá, số lượng, topping
- Gắn phương thức: thêm món, tính tổng, in hóa đơn
- Kiểm tra miền giá trị: số lượng không được âm
Chưa viết nổi một class Java, nhưng lần đầu mình thấy chương trình trong đầu. Cái sợ “mình không hợp với code” giảm hẳn.
Nếu bạn cũng đang đứng trước khóa Lập trình Java cơ bản: đừng bỏ Bài 1 vì nó chưa có code. Học hết video, ghi 5 bước ra giấy, rồi hãy sang bài sau. Một buổi thôi, tư duy đã khác.
Bình luận từ TechJA-er
1 bình luậnBình luận được kiểm duyệt tự động để tránh nội dung phản cảm, tục tĩu và ảnh hưởng thuần phong mỹ tục.
Bài 1 không có code mà mình vẫn thấy đã hơn. Phần đối tượng / thuộc tính / phương thức dễ hiểu ghê.
Bài viết liên quan
Có thể bạn cũng muốn đọc