Помилки в самостійному вивченні Java з нуля
-
Недостатня кількість практики: не теоретично повинен розбиратися програміст насамперед. Насамперед програмує програміст, навчання такого фахівця має будуватися саме на практиці і тут хоч кіл на голові тіші! "Ось зрозумію, що до чого, а потім зроблю завдання" - це не про програмування!
-
Новачок через відсутність досвіду не може відрізнити важливу інформацію від другорядної , часто тоне в деталях або заривається в складні теми тому, що хтось розумний в інтернеті сказав, мовляв, «не вмітимеш програмувати алгоритми сортування, програмістом тобі не бути». Потім губиться в них і все.
-
Відсутність системного підходу - спроба вистачати інформацію з різних джерел, нескінченне ходіння по колу.
-
Спроби відразу ж у всьому досконально розібратися , перш ніж починати програмувати.
-
Формальний підхід: особливо не вникаючи і не намагаючись вирішити завдання самостійно більше ніж один раз, люди шукають в інтернеті чуже рішення. Насправді “списування” може бути корисним, у навчання основ програмування часто входить розбір чужого коду. Але саме розбір, і саме після того, як людина здійснила кілька підходів до проблеми самостійно.
-
Втрата мотивації. Тільки ось це — не причина, а наслідок всього перерахованого вище. Вивчення Java з нуля самостійно вимагає високого рівня організованості та системності. І, звичайно, великої кількості практики. Якщо з цим відбувається збій, людина вирішує, що все зникло, він даремно витратив час і нічого в нього не вийде. Тож не варто й намагатися.
Як просунутися у навчанні програмування?
-
Знайти основне джерело інформації, опрацьоване, добре структуроване, наповнене лише найпотрібнішою інформацією та ненудним (це важливо!). Дотримуватися цього джерела;
-
Вміти знаходити додаткові джерела інформації та користуватися ними за потребою. При цьому не розпорошуватися;
-
Постійно програмувати: вирішувати багато практичних завдань та мати можливість перевіряти коректність рішень;
-
Займатися регулярно, не закидати навчання надовго;
-
Не намагатися охопити все одразу, рухатися за циклом, з поступовим нарощуванням складності;
-
Навчитися читати чужий код;
-
Навчитися знаходити відповіді на запитання в інтернеті, але не зловживати цим;
-
Спілкуватися з побратимами на майбутнє щастя: бажано, щоб поряд був ще хоча б один студент - програміст, навчання онлайн без спілкування йде набагато менш ефективно;
-
Спілкуватися з досвідченими програмістами;
-
Не здаватися!
JavaRush - нестандартний підхід до навчання
-
JavaRush - це добре структурований курс з мови Java. Він складається з коротких лекцій, представлених у формі цікавих діалогів, які перемежовуються численними практичними завданнями. Курс ви проходите від імені персонажа, якого потрібно “прокачати” з 0-го до 40-го рівня, як у грі жанру РПГ. Вирішуєте завдання – отримуєте бали, які можна витратити на відкриття наступної лекції.
Але насправді хитається не персонаж, а ваше вміння програмувати. Курс містить всю необхідну інформацію з Java Core (ядро мови Java, саме його має досконало знати майбутній Java Junior Developer) і трохи більше. На цьому місці можна поставити галочку навпроти першого пункту зі списку.
-
На JavaRush є спеціальні лекції, де методисти курсу рекомендують ті чи інші книги, відеоролики та інші джерела інформації. Крім того, адміністрація курсу, а також просунуті студенти часто пишуть статті з рекомендаціями, які мають полегшити розуміння складних тем. Це закриває пункт 2.
-
Щоб стати програмістом, потрібно програмувати. Правило найпростіше, та й звучить гранично логічно. Проте, напрочуд часто забувають, що навчання на програміста — це насамперед практика написання коду, а потім уже — решта.
Творці JavaRush це зрозуміли давно, так що практика лежить в основі курсу. У ньому – 1200 завдань! Це той самий цінний досвід програмування, якого не вистачає всім тим, хто намагається стати розробником ПЗ.
Однак самих по собі завдань мало, їх потрібно вирішити і зрозуміти, що рішення правильне.
Для цього на JavaRush реалізовано систему миттєвої автоматичної перевірки рішень. Ви вирішуєте завдання, натискаєте на одну кнопку - і відразу отримуєте результат (правильно або неправильно вирішене завдання). Більше того, розумна система рекомендацій підкаже, в чому саме ви помаболися (якщо ви помаболися, зрозуміло).
Також окрім умови завдання ви отримаєте вимоги до неї. Вимоги — це докладніша умова, в якій покроково розписано, що саме має робити ваша майбутня програма.
-
Практичні завдання на JavaRush
- Частина завдань охоплює теоретичний матеріал лекції, що йде перед нею.
- Ще одна частина розрахована на повторення раніше пройденої теорії (на попередніх рівнях).
- Треті завдання - це "завдання з майбутнього", вони даються за матеріалами наступного одного-двох-трьох рівнів. Так-так, вам не здалося. Це зроблено навмисно. Хочете вирішити завдання зараз, але вам не вистачає знань? Гугліть! Це надзвичайно корисна навичка для програміста. Ну а якщо ви хочете рухатися послідовно, просто відкладіть завдання і поверніться до неї через пару рівнів, коли дійдете необхідної теорії. На цьому місці можна поставити галочки навпроти пунктів 5 та 7.
- Бонусні завдання. Ці завдання підвищеної складності для самостійного навчання та розвитку алгоритмічного мислення. Ще одна галочка до пункту 7!
- Міні-проекти. Це завдання, розбиті на кілька підзавдань, у результаті поступового вирішення яких ви створите відносно складні та великі програми. Наприклад, гру "Сокобан" або онлайн-чат. Такі завдання з'являться приблизно у середині курсу.
- Набір коду – завдання для початківців. Іноді майбутньому програмісту потрібно просто набити руку та відчути код. Для цього ви просто "списуєте" зі зразка.
- Розбір чужого коду та пошук помилок. Ну ви зрозуміли. Такі завдання також є, і тут можна поставити плюс навпроти пункту 6.
- Відео. Іноді корисно перейти на іншу діяльність. На JavaRush такою діяльністю служить перегляд відеороликів про айтішників.
-
Допомога у вирішенні завдань
Як ми вже згадували вище, навчання програмуванню онлайн не повинно нагадувати одиночне плавання на плоту серед океану. Вам потрібно спілкуватись. Для цього на JavaRush в першу чергу є розділ "Допомога". Якщо ви вже дуже довго застрягли на якомусь завданні з курсу або не можете зрозуміти складну тему, ставте питання у спеціальному розділі . Вам обов'язково допоможе хтось із студентів, розробників чи адміністрації ресурсу. Крім того, ми маємо розділ “Групи”, де можна спілкуватися з іншими студентами курсу. А ще, коли відчуєте в собі сабо, буде дуже корисно заходити до розділу “допомога” для того, щоб допомогти комусь із навчанням. Тут вам доведеться розбиратися в чужому коді. Ставимо галочку навпроти пунктів 8 та 9 і ще одну навпроти 6!
-
У курс JavaRush вплетена велика кількість мотиваційних лекцій, а ще наші випускники, які вже працюють програмістами, іноді надсилають нам свої історії успіху . Судячи з коментарів під цими історіями, вони справді мотивують людей не закидати навчання. Тут можна поставити галочку навпроти пункту 10.
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ