Không rõ là bạn @w.b vướng chỗ nào. Kinh nghiệm tự học của mình là phải tự trắc nghiệm được bản thân để biết đúng cái chỗ mình vướng, tránh nhìn nhận nhầm và cứ cố mà gỡ cái nhầm nhọt đó thì mãi không tiến bộ nổi. Nếu không tự đánh giá được, hãy mô tả chính xác lại khi học thì làm những gì để anh em ở đây hỗ trợ. Ví dụ như mình trong vấn đề học PHP thì mình mô tả như sau (mình ví dụ thôi nhé, thực tế mình xài hệ điều hành Mint):
- Môi trường để học lập trình là hệ điều hành Windows 7 32bit, chạy Web server là: AppServ 8.6.0
- Công cụ để viết mã: Notepad Plus Plus version 7.5.3
- “Giáo trình” để mình học là trang Tu tó ri ơn boy, cụ thể là mục này.
Ngoài ra, luôn tham khảo php.net, PHP-FIG trong quá trình học để viết mã không đến nỗi dở tệ/ rối rắm.
Để hấp thụ nhanh không gì bằng làm bài tập nhiều, bài tập có ứng dụng vào một việc cụ thể nào đó sẽ càng tốt. Ví dụ như học với các bài tập như tính ước số chung, bội số chung, mã đi tuần,… sau đó ta tự thử với các bài cộng ma trận, giải trò chơi tic tac toe, tính Fibonaci,… đó là nếu bạn thích vùi đầu vô các thuật toán. Còn nếu không thích các thuật toán lắm mà chỉ muốn vọc các hàm thì ta có thể giải quyết các bài toán như nhập hồ sơ một người vào và xuất ra lại theo kiểu anh ta đã sống được bao nhiêu ngày tính từ ngày sinh, năm anh ta sinh ra có là năm nhuận hay không, xử lý việc cấm nhập hồ sơ vào kiểu có người sinh vào ngày 30/02. Hoặc mấy trò vui vui kiểu hỏi đáp con chó có mấy chân, con heo có bao nhiêu vú,… Để quá trình ngồi học không quá nặng nề.
Học Java có lẽ việc thiết lập môi trường ban đầu, làm quen với quá trình viết mã chỉn chu sẽ vất vả hơn học PHP, nhưng về lâu dài có lẽ đỡ nhức đầu hơn bởi vì mọi thứ quy tắc được tuân thủ tốt, ít có mã viết tào lao kiểu xào nấu lộn xộn.
Cuối cùng, mình cho rằng thay vì vùi đầu vào viết code thì thử viết lên trên tấm bảng trước xem thử ta có nhớ cú pháp ngôn ngữ được hay không, sau đó ngồi nhìn lên bảng gõ lại code, cho đến khi khá thuộc về cú pháp rồi mới dùng chức năng nhắc code của IDE, chứ ta quá phụ thuộc vào nó thì buông IDE hay Google ra là ta chết chắc. Có vài trường hợp ta phải viết code trong trình soạn thảo kiểu Notepad trên Win hay nano trên Linux thì việc thuộc cú pháp của một ngôn ngữ cứ tưởng không quan trọng nhưng lại là cái phao cứu sinh tuyệt diệu.