Чи зменшуються ваші знання з програмування, якщо ви не практикуєтесь? [зачинено]


13

Я початківець програміст. Я вивчаю такі мови, як C, C ++, Python та Java (в основному зосереджуючись на C ++). Я те, що ви назвали б "молодим і недосвідченим", і це визнаю, бо не можу заявити інакше.

Як студент, у мене є багато інших проблем, крім програмування. Я займаюся програмуванням так часто, наскільки я можу, і тим більше, що мій вчитель дає мені набагато більше вправ, ніж решта класу (це дуже низький рівень), тому часто я витрачаю тижні, займаючись чимось іншим, наприклад, шкільними проектами чи спортом, або подорожі, нічого, крім програмування.

Не зрозумійте мене неправильно, я люблю програмування. Я люблю будувати функціональний код, спостерігати, як програма оживає одним натисканням кнопки, і вчитися стільки, скільки можу. Річ у тому, що я просто не маю на це багато часу.

Прямо до питання, тепер: чи зменшуються ваші знання з програмування з часом, а ви не практикуєтесь? Ви можете запитати "скільки часу ви маєте на увазі?". Я не маю на увазі конкретну кількість часу, але для довідки можна взяти місяць-два чи навіть рік.

Під знаннями я маю на увазі що-небудь від синтаксису до функціональності мови.


3
"для довідки ви могли б зайняти місяць-два чи навіть рік" . Не практикуючись місяць-два - це 99,9999% безпечно. Непрактикуючий рік теж не є великою справою - припустимо, що тут є тверді практичні знання, на відміну, наприклад, від речі, яку швидко набивають для здачі іспиту
гнат

1
@gnat Ну, речі, натхнені на іспит, навіть не є безпечним протягом тижня в моєму досвіді, не кажучи вже про місяць чи рік.
Ізката

Відповіді:


28

Очевидно, програмування - це те, чого ти навчишся робити, а не сукупність фактів чи інформації. Однак, це більше схоже на їзду на велосипеді чи розмову мовою. Існують і теорії, але справа більше в тому, щоб реалізувати їх на практиці.

Незважаючи на те, як що-небудь, якщо ви не користуєтесь цим, ваш мозок почне кидати інформацію. Твій мозок так, як м'яз. Через певний проміжок часу ви, швидше за все, запам’ятаєте широкі поняття, але не конкретизацію синтаксису та функцій, що використовуються менше. Наприклад, ви можете захотіти зробити forпетлю або перебрати список і знаю , що це що - щось на зразок while List.hasNext()або for item in listчи , for index, item of listале не писати його дуже впевнено.

Хороша річ, що ти будеш знати, що ти хочеш робити. Потрібно просто подивитися. Тож я б не надто хвилювався з цього приводу. Це повернеться до вас. Важливо - навчитися вирішувати проблеми з програмами. Усі мови програмування, як правило, здатні робити однакові речі, але більшість часу різними способами. Ви можете забути, що Ruby або Python мають розуміння і forзамість цього записують занадто багато циклів, але ви виконаєте роботу.

Щодо того, скільки ви забудете чи запам’ятаєте, я думаю, що такий вид залежить від того, наскільки активний ваш розум і скільки вам років. Я не думаю, що я розвинув повністю функціональний мозок до 19 років. Тоді запам'ятовування чогось для мене було одразу. Усі різні.

Підсумовуючи: деталі завжди зникають, швидкість, яку вони зникають, залежить від вас, усі мови намагаються полегшити вирішення одних і тих же проблем, тому, можливо, важливіше навчитися вирішувати проблеми. :)



9

Я власник малого бізнесу, тобто я хлопець. Тож коли веб-сайт потребує оновлення, я повинен бути гундом Zend / MVC. Коли мені потрібно перевірити дані або переробити веб-сторінки, я вважаю, що мені потрібно використовувати php. Коли я веду боротьбу з Quickbooks, я можу опинитися, використовуючи faux-QB запити, Visual Basic, php, mysql, linux та windows у міазмі технологічного супу. Ну правильно, і я займаюся CAD роботою, коли постачальнику потрібні креслення, а це означає, що я повинен бути інженером-конструктором та розробляти формати файлів, і що потрібно, щоб люди чітко отримали знання, які знаходяться всередині моєї голови. Ми просто знову закінчилися каталогів, тому я купив Adobe CS5 і взяв файл InDesign для старого каталогу і підмітив його для нового каталогу. Я також електрик та мережевий хлопець, який будує кабелі за потреби.

Враховуючи весь цей досвід за останні 10 років, я виявив, що я забуваю речі протягом приблизно місяця. АЛЕ, коли знову зануриться в нього, мозок розкривить спогади, які надсилають мене на php.net або копають старий / спадщину / давній код, який я написав. Те саме для роботи з САПР; є величезний проект, в якому я був і вже не один рік. Коли я вмикаю цей комп’ютер, для завершення оновлень потрібен день, а ліцензії розбираються, а потім ще два-п’ять днів, щоб дістатися до того, де я був, коли я вийшов.

Мені найскладніше знову взяти участь у програмі Quickbooks qodbc. : P Я робив MySql і PostgreSQL протягом багатьох років, і за допомогою моїх чіт- текстових файлів, де я зберігаю особливо корисні запити, я можу швидко підібрати це.

Підсумок: зберігайте всю свою роботу назавжди, грайте з нею кожні 6-12 місяців, коли вам потрібно переглянути цей код, ви, ймовірно, не будете занадто сильно регресувати, і очікуєте, що знову буде на повній швидкості протягом тижня.


2

Загальні знання з програмування чи навички програмного вирішення проблем не старіють, але знання, що залежать від мови, або конкретні рамки, застаріли через деякий час.


2

Методології та подібність не зменшуються, якщо ви не практикуєтесь, але запам'ятовування правильного синтаксису та бібліотек, безумовно, є.

В основному я використовую Java, C ++ та C #. Але останні два роки я використовую Java лише зрідка (якщо помилку потрібно виправити в застарілій системі). Тому я часто намагаюся трохи згадати, що таке правильний синтаксис або яка бібліотека мені зараз потрібна.


1

чи зменшуються ваші знання з програмування з часом, а ви не практикуєтесь?

Знань, ні (принаймні, не концепцій Big Picture). Навички, так.


0

Знання дещо зменшуються, можливо, ви можете забути деякі синтаксиси або складніші аспекти певної мови. Спочатку може бути важко структурувати ваш код, якщо ви не практикуєтесь, але через деякий час це повернеться.


0

Навчитися програмувати - це навчитися вирішувати проблеми більше, ніж будь-що інше. Я був у ситуації, коли не програмував більше 10 років. Так, деталі синтаксису у мене були і доводиться регулярно шукати, але навички вирішення проблем все ще були.


0

Як і у всіх мозкових заходах, знання починають згасати через буквально секунди. Це триває протягом секунд і хвилин (короткий термін). Деякі переносяться гіпокампом у довготривалу пам’ять, де процес згасання відбувається значно повільніше.

Аналогія, яка мені подобається більше, ніж м’яз, - це «губка». Навчання та використання - це як додавання води, яка робить губку приємною, пухкою та «важкою». Перестаньте додавати воду, і вона почне висихати і худнути. Неврологи можуть сподобатися цій аналогії;)

Деякі речі, які можуть протистояти:

  • Повторення. Виконайте будь-яке завдання достатньо разів, і ви запам'ятаєте його.

  • Немоніки. Будь то візуальний, слуховий чи будь-що інше може бути дуже корисним.

  • Гнучкість. Замість того, щоб пізнати самі знання, ключова здатність брати на себе нові завдання допомагає часто, роблячи абсолютно нові дії.

  • Вправа. Добре відомо, що допомагає мозку та пам'яті.

  • Робити нотатки. Не (стільки) для подальшого ознайомлення, а тому, що власне процес їх виготовлення допомагає зафіксувати знання в розумі.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.