Kiến thức lập trình của bạn có giảm nếu bạn không thực hành? [đóng cửa]


13

Tôi là một lập trình viên mới làm quen. Tôi học các ngôn ngữ như C, C ++, Python và Java (chủ yếu tập trung vào C ++). Tôi là những gì bạn gọi là "trẻ và thiếu kinh nghiệm" và tôi thừa nhận điều đó bởi vì tôi không thể yêu cầu khác.

Là một sinh viên, tôi có nhiều vấn đề khác ngoài lập trình. Tôi thực hành lập trình thường xuyên nhất có thể, và đặc biệt là vì giáo viên của tôi cho tôi nhiều bài tập hơn so với phần còn lại của lớp (nó ở mức rất thấp), vì vậy, tôi thường dành hàng tuần để làm những việc khác như dự án trường học hoặc thể thao, hoặc du lịch, bất cứ điều gì ngoài lập trình.

Đừng hiểu lầm tôi, tôi thích lập trình. Tôi thích xây dựng mã chức năng, để xem chương trình trở nên sống động chỉ bằng cách ấn nút và học nhiều nhất có thể. Vấn đề là, đơn giản là tôi không có nhiều thời gian cho nó.

Bây giờ, thẳng đến câu hỏi: kiến ​​thức lập trình của bạn có giảm khi thời gian trôi qua và bạn không thực hành? Bạn có thể hỏi "bạn có bao nhiêu thời gian?". Tôi không có nghĩa là một lượng thời gian cụ thể, nhưng để tham khảo bạn có thể lấy một tháng - hai hoặc thậm chí một năm làm ví dụ.

Theo kiến ​​thức tôi có nghĩa là bất cứ điều gì từ cú pháp đến chức năng ngôn ngữ.


3
"Để tham khảo bạn có thể mất một tháng hai hoặc thậm chí một năm" . Không thực hành một hoặc hai tháng là an toàn 99,9999%. Không luyện tập trong một năm cũng không phải là vấn đề lớn - giả sử kiến ​​thức thực tế vững chắc ở đây, trái ngược với những thứ người ta nhanh chóng nhồi nhét để vượt qua kỳ thi
gnat

1
@gnat Chà, thứ nhồi nhét cho một kỳ thi thậm chí không an toàn trong một tuần theo kinh nghiệm của tôi, chứ đừng nói là một tháng hoặc năm.
Izkata

Câu trả lời:


28

Rõ ràng, lập trình là thứ bạn học để làm, không phải là một tập hợp các sự kiện hoặc thông tin. Điều đó nói rằng, nó giống như đi xe đạp hoặc nói một ngôn ngữ. Cũng có những lý thuyết, nhưng đó là về việc đưa chúng vào thực hành.

Mặc dù vậy, giống như bất cứ điều gì, nếu bạn không sử dụng nó, não của bạn sẽ bắt đầu bỏ thông tin. Bộ não của bạn giống như một cơ bắp theo cách đó. Sau một thời gian, rất có thể bạn sẽ nhớ các khái niệm rộng nhưng không cụ thể về cú pháp và các hàm ít sử dụng. Ví dụ, bạn có thể muốn thực hiện một forvòng lặp hoặc lặp qua một danh sách và biết rằng đó là một cái gì đó giống while List.hasNext()hoặc for item in listhoặc for index, item of listkhông viết nó rất tự tin.

Điều tốt là, bạn sẽ biết những gì bạn muốn làm. Bạn chỉ cần tìm nó. Vì vậy, tôi sẽ không quá lo lắng về nó. Nó sẽ trở lại với bạn. Điều quan trọng là học cách giải quyết vấn đề với các chương trình. Tất cả các ngôn ngữ lập trình thường có khả năng làm những việc giống nhau, nhưng hầu hết thời gian theo những cách khác nhau. Bạn có thể quên rằng Ruby hoặc Python có sự hiểu biết và forthay vào đó viết quá nhiều vòng lặp, nhưng bạn sẽ hoàn thành công việc.

Về việc bạn sẽ quên hay nhớ bao nhiêu, tôi nghĩ rằng điều đó phụ thuộc vào mức độ chủ động của bạn và tuổi của bạn. Tôi không nghĩ rằng tôi đã phát triển một bộ não đầy đủ chức năng cho đến khi tôi 19 tuổi. Vào thời điểm đó, việc ghi nhớ bất cứ điều gì đối với tôi là một cách nhanh chóng. Mọi người đều khác nhau.

Tóm lại: chi tiết luôn mờ dần, tốc độ chúng mờ dần tùy thuộc vào bạn, tất cả các ngôn ngữ đang cố gắng làm cho nó dễ dàng giải quyết các vấn đề tương tự, vì vậy có lẽ điều quan trọng hơn là học cách giải quyết vấn đề. :)



9

Tôi là chủ một doanh nghiệp nhỏ, nghĩa là tôi là Guy. Vì vậy, khi trang web cần cập nhật, tôi phải là Zend / MVC guru. Khi tôi cần hack dữ liệu hoặc điều chỉnh các trang web, tôi thấy tôi cần sử dụng php. Khi tôi vật lộn với Quickbooks, tôi có thể thấy mình sử dụng các truy vấn giả-QB, Visual Basic, php, mysql, linux và windows trong một miasma của súp công nghệ. Ồ đúng rồi, và tôi làm công việc CAD khi một nhà cung cấp cần bản vẽ, điều đó có nghĩa là tôi phải là một kỹ sư / nhà thiết kế cơ khí và tìm ra các định dạng tệp và những gì cần có để mọi người hiểu rõ trong đầu tôi. Chúng tôi vừa hết danh mục một lần nữa, vì vậy tôi đã mua Adobe CS5 và lấy tệp InDesign cho danh mục cũ và điều chỉnh nó cho danh mục mới. Tôi cũng là thợ điện và mạng lưới xây dựng dây cáp khi cần thiết.

Với tất cả kinh nghiệm đó trong 10 năm qua, tôi thấy rằng tôi đã quên mọi thứ trong vòng khoảng một tháng. NHƯNG khi đắm chìm vào nó một lần nữa, bộ não sẽ khơi dậy những ký ức gửi tôi đến php.net hoặc đào qua mã cũ / di sản / mã cổ mà tôi đã viết. Tương tự cho công việc CAD; có một dự án lớn mà tôi đã tham gia trong hơn một năm. Khi tôi bật máy tính đó, phải mất một ngày để tất cả các bản cập nhật hoàn tất và giấy phép sắp xếp và sau đó hai đến năm ngày nữa để đến nơi tôi ở khi tôi rời đi.

Tôi đang gặp khó khăn nhất để chọn lại mỗi lần là lập trình Quickbook qodbc. : P Tôi đã thực hiện MySql và PostgreSQL trong nhiều năm qua và với các tệp văn bản gian lận của tôi , nơi tôi lưu các truy vấn đặc biệt hữu ích, tôi có thể nhanh chóng chọn ra những thứ đó.

Tóm tắt: giữ tất cả công việc của bạn mãi mãi, chơi với nó sau mỗi 6-12 tháng, khi bạn cần xem lại mã đó, có thể bạn sẽ không bị thoái lui quá nhiều và mong đợi sẽ được tốc độ trở lại trong vòng một tuần.


2

Kiến thức lập trình chung hoặc kỹ năng giải quyết vấn đề lập trình không thực sự già đi, nhưng kiến ​​thức cụ thể về ngôn ngữ hoặc khung cụ thể sẽ bị lỗi thời sau một thời gian.


2

Phương pháp và lượt thích không giảm nếu bạn không thực hành, nhưng nhớ đúng cú pháp và thư viện chắc chắn có.

Tôi chủ yếu sử dụng Java, C ++ và C #. Nhưng trong hai năm qua, thỉnh thoảng tôi chỉ sử dụng Java (nếu cần sửa lỗi trong một hệ thống cũ). Vì vậy, tôi thường đấu tranh một chút để nhớ cú pháp chính xác là gì hoặc thư viện nào tôi cần bây giờ.


1

kiến thức lập trình của bạn có giảm khi thời gian trôi qua và bạn không thực hành?

Kiến thức, không (ít nhất không phải là khái niệm Bức tranh lớn). Kỹ năng, vâng.


0

Kiến thức giảm đi phần nào, bạn có thể thấy mình quên một số cú pháp hoặc các khía cạnh phức tạp hơn của một ngôn ngữ nhất định. Lúc đầu, có thể khó cấu trúc mã của bạn nếu bạn không thực hành, nhưng sau một thời gian điều đó sẽ quay trở lại.


0

Học lập trình là học cách giải quyết vấn đề nhiều hơn bất cứ điều gì khác. Tôi đã ở trong tình huống mà tôi đã không lập trình được hơn 10 năm. Vâng, các chi tiết cú pháp tôi đã có và phải tìm kiếm thường xuyên nhưng kỹ năng giải quyết vấn đề vẫn còn đó.


0

Như với tất cả các hoạt động của não, kiến ​​thức bắt đầu mờ dần sau vài giây theo nghĩa đen. Điều đó tiếp tục trong vài giây và phút (ngắn hạn). Một số được hải mã chuyển sang bộ nhớ dài hạn, trong đó quá trình mờ dần chậm hơn nhiều.

Một tương tự mà tôi thích hơn cơ bắp là "miếng bọt biển". Học và sử dụng cũng giống như thêm nước làm cho miếng bọt biển đẹp và đầy đặn và 'nặng'. Ngừng thêm nước và nó sẽ bắt đầu khô và giảm cân. Các nhà thần kinh học có thể thích sự tương tự này;)

Một số thứ có thể chống lại đó là:

  • Sự lặp lại. Làm bất kỳ nhiệm vụ đủ thời gian và bạn sẽ nhớ nó.

  • Nghi thức. Cho dù hình ảnh, âm thanh hoặc bất cứ điều gì có thể thực sự hữu ích.

  • Uyển chuyển. Thay vì kiến ​​thức, khả năng đảm nhận các nhiệm vụ mới là chìa khóa và được trợ giúp bằng cách thường xuyên thực hiện các hoạt động hoàn toàn mới.

  • Tập thể dục. Nổi tiếng để giúp não và với bộ nhớ.

  • Ghi chép. Không phải (rất nhiều) để tham khảo trong tương lai mà bởi vì quá trình thực hiện chúng giúp khóa kiến ​​thức trong tâm trí của mọi người.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.