Thảo luận về lập trình có hiệu quả: Làm thế nào để học lập trình có hiệu quả?
Làm thế nào để học lập trình có hiệu quả ?
-
Tuy mình chưa lập trình được bao lâu nhưng mình đã tích góp được một số kinh nghiệm và hôm nay mình muốn share cho các bạn.
-
Chọn một ngữ ngôn ngữ lập trình tốt:
Bạn có thể thấy có rất nhiều lựa chọn về ngôn ngữ lập trình : C/C++, C#, Java, Ruby, Python… Nhưng lựa chọn nào là tốt nhất với bạn ?
Nếu bạn là người mới học lập trình mình khuyên các bạn nên học Python hoặc Ruby bởi vì nó mạnh mẽ và thân thiện với những người mới học lập trình, các bạn mới lập trình đừng nên dính líu đến C/C++ vì nó rất khó cho các bạn. -
Lập trình không phải là một cuộc chạy đua:
Mình thấy đa số các bạn muốn học lập trình theo kiểu " fast food " học vèo vèo mà không cần ngó trước ngó sau, cứ học theo kiểu " Mình học ngôn ngữ này để cho biết sơ sơ ", và vâng hậu quả của các bạn ấy là tốn thời gian mà chữ thầy cũng trả về thầy. Để học lập trình tốt các bạn phải học tập chung vào một ngôn ngữ, học nó đến trình độ các bạn hiểu nó như ngôn ngữ mẹ đẻ của mình rồi sau đó học các ngôn ngữ khác cũng không muộn. -
Luôn hình dung code của mình trước hình chạy nó:
Điều này sẽ giúp các bạn hiểu mình đang viết cái gì và nó còn giúp bạn kiểm tra lại coi thử mình có code lỗi chỗ nào không ? => lợi -
Không được copy-paste code
Điều này sẽ làm bạn không nhớ được code, Tuyệt đối không được copy-patse code -
Không được Lướt qua bất cứ bài nào cho dù bạn nhìn bài đó code đơn giản
-
Người mới lập trình không nên dùng IDE vì nó sẽ khiến bạn bị phụ thuộc
-
Không nên sài các compiler quá mới, vì nó không chắc chắn an toàn
-------------------------------------- Bổ Sung ------------------------------------------------------------------------------
- Nếu các bạn học các ngôn ngữ lập trình cấp cao như .NET hay Java thì xài IDE cũng được .
Mình rất hay coppy và paste code. Kể cả trong khi học vì cho nhanh. gần như mình k nhớ code nhiều chỉ nhớ mang máng để tra google
Không dùng IDE hả Vậy có mỏi tay không nhỉ
1000 likes.
Hiểu code mới quan trọng hơn là nhớ code. Bạn không thể nhớ sạch sành sanh hết thuật toán đâu.
Nói thật là cái QuickSort mình còn chả nhớ mặt mũi nó như thế nào. :v
Toàn copy từ snippet ra :3
Mới lập trình, code không biết xong chưa mà sợ lệ thuộc bạn nhỉ? @_@
Chưa kể IDE giúp debug tốt hơn. Chứ code chay, code chưa vững debug mắt sao nỗi.
Vì code chưa biết xong chưa mới sợ bị phụ thuộc đấy, dung IDE nó nhắc lệnh, dẫn đến việc không nhớ code, sau này nếu lỡ không có IDE hoặc giả dụ có IDE mà không nhớ code cũng chả biết code kiểu gì.
Nhớ code ở đây là nhớ syntax, ví dụ trong C: nhớ printf dùng làm sao, cần có dấu ( ) " , ; bỏ như thế nào, chứ không phải nhớ thuật toán gì gì đâu nhé.
Có thể không dùng IDE, nhưng dùng Notepad ++ thì vẫn được he…hihihi.
Nếu mình học lại ngôn ngữ đầu tiên, mình sẽ học C# hoặc Java.
Notepad++ nó cũng có nhắc lệnh, có khác gì, thật ra dùng gì cũng được, cứ tắt auto complete với highlight đi là ok.
mình muốn hỏi chủ thớt và mọi người:
Hướng giải quyết nào để bạn này nâng cao trình độ lập trình mình lên ?
Không biết bạn muốn code kiểu gì nhưng mình thấy là sài text edittor vẫn tốt hơn IDE vì mình mò từng code nên nó có thể giúp mình khắc phục lỗi sai
IDE nhắc câu nên bạn có thể bị quên cú pháp, với lại code nhiều cho quen
Không mỏi tay đâu bạn, có khi bạn còn cảm thấy Sướng nữa
Tư duy Logic là trên hết bạn nhé
Nếu phục vụ mục đích học thì tốt nhất không nên dùng IDE, còn nếu để làm việc mà ko dùng IDE thì rất mất time.
Có lẽ bạn rất hiểu về mình
Nên để hightlight, tắt autocomplete đi là được rồi. Để text một màu đen thui chán lắm :))
Thêm 1 cách nữa là ngủ ngày, học đêm. Làm thêm ly cafe với châm điếu jet, tinh thần hưng phấn lên kiểu gid học chả vô. haha…
Học được 3 hôm thì chán, phải có động lực j đó hoặc đam mê lập trình :d
Có 1 cách học khá hay mà mọi người ít nghĩ đến, đấy là học nhóm.
Tốt nhất khoảng 3 người, trình độ same same, như là bạn bè cùng lớp chẳng hạn.
Bắt đầu mỗi người sẽ nhận 1 chương trong Head First Java. Tuần 3 - 4 buổi mỗi người là phụ trách(Owner) 1 chương.
Owner có trách nhiệm đọc trước mọi người, tìm hiểu 1 số sample code, và những vấn đề quan trọng hay những chú ý của chương đó.
Buổi học nhóm sẽ đi qua từng topic, code thử và thảo luận.
Cuối buổi học Owner sẽ cbi 1 bài test cho tất cả mọi người làm, dựa trên những gì đã học.
Kết quả của buổi học sẽ rất tốt, mọi người sẽ nhớ rất lâu và hiểu sâu hơn là tự đọc.
Chú ý là phải học nghiêm túc, không nghiêm túc thì không nên vô nhóm
Code chưa xong mà đòi vọc IDE thì sao được nhỉ?
Nhắc thì nhắc, biết xài ko mới là quan trọng. Mình thấy IDE cùng lắm nó chỉ nhắc kiểu
tên_hàm(biến, biến,...)
Như strtok, cho nhắc luôn còn cách mà xài thì đố mà biết được nếu ko đọc qua -,-
Cái gì chứ cái kiến thức người mới lập trình không được sài IDE không phải là của mình mà là của mấy ông tạo nên mấy ngôn ngữ lập trình như: C/C++ … nên mình khẳng định là không thể sai được
Mục đích của các bác khuyên là để hiểu rõ về cách compiler bằng command mà IDE xài. Cái này học cơ bản qua rồi học cũng đc.
Mà mới học, chỉ cần biên dịch thôi chứ có làm gì thêm đâu. Mà biên dịch thì có mỗi lệnh
gcc source.c -o name
.Nên mình thì sẽ khuyên xài IDE để debug cho khỏe. Sau này khi cứng cơ bản thì học cách xài command line thì cũng chả muộn :3
Tâm lý nhiều người ban đầu mới học lập trình cứ thích dùng 1 cái tool hoành tráng (full chức năng, key-crack đầy đủ, blah blah…) để code mới chịu, mặc dù chả bao giờ dùng hết được tính năng của nó. Dùng cái notepad thì bảo cùi mía, không chuyên nghiệp, mà mới đầu lập trình thì code, project đã có gì đâu mà phải IDE quản lý.
Mình cũng thuộc trường phái không thích dùng IDE. Ban đầu thì cũng bị ảnh hưởng bởi cái tâm lý trên kia, sau này editcode bằng TextEditor compile-debug bằng command line, makefile này nọ thấy cuộc đời hay hẳn lên. Thích nhất mấy console based text editor như vi/emacs, làm hầu như mọi thứ được trên đấy.