Akira_Life_WAL
@Akira_Life_WAL
I just chill and study technology!

Как понять что и как гуглить новичку при изучении программирования с нуля?

Всем привет!

Я хочу спросить у людей, которые не первый год работают программистами, на любом из языков программирования!

Я посмотрев пару видосов и прочитав несколько статей о том "Как писать программы, стадии создания проектов, этапы разработки" я понял следующее:

1. Понять проблему, что делает программа, что на входе и что на выходе, как прогамму видит пользователь
2. Формулирование требований к программе со стороны выдуманного "ЗАКАЗЧИКА"
3. Построение архитектуры проекта ( UML, псевдокод)
4. Декомпозиция
5. Начинаем программировать по кусочкам и собирает пазл ориентируясь по архитектуре UML проекта
6. Пишем тесты

Так вот я по такому принципу и начал делать, программист с опытом в 7 лет на java сказал что тебе не надо гуглить а нужно самому как сможешь написать шахматы, хотябы плохо, так я и начал сам, но впал в ступор уже на шаге создания игрового поля( не понимал как или в виде чего представить само поле и фигуры, как сделать перемещение) и я увидел одно решение, в разумной мере думать о решении, алгоритме, а затем прогуглить скажем, как создать игровове поле на основе массивов, и так далее, взять все задачи которые я поставил, анализировать, есть ли у меня знания или идея как это сделать, если смог придумать решение(хоть и плохое) подумать еще и приминить, а вот что делать если и близко не понимаю как сделать то или инное действие, скажем в архитектуре, есть некая сущность которая будет делать то то, а идея как сделать такое или хотя бы что то похожее, к примеру, есть крестики нолики, есть шахматы, есть тетрис, есть судоку и я понимаю теперь загуглив как с массивами наполнить поле, как примерно сделать змейку или судоку! Верно ли что нужно гуглить ставить задачи и пытаться решить проблему но перед этим подумать самому но в разумной степени???
Было дело, что во 2-3 главе учебника Head first java я просидел 5 часов что бы выполнить упражнения "Головоломка у бассейна" кто знает, там дополнительное задание было вывести другое число и выполнить это можно было только зная что объект присвоенный знаком равно не становиться копией а просто 2 ссылки на 1 объект и не загуглив коментарий на форуме я бы не понял что переменные cat1.age + cat2.age при условии что cat1 = cat2 будут ссылать на один объект и их переменные будут одним целым для 2 экземпляров класса!

Как гуглить и программировать с умом, где граница что пора спросить у гугла или ютуба "Гугл как это ... зделать?"

Всем спасибо за внимание и помощь!!!
  • Вопрос задан
  • 953 просмотра
Пригласить эксперта
Ответы на вопрос 5
@AVKor
Продемонстрированный подход - устроить свалку в голове.

Таким способом невозможно научиться ничему, и программирование - не исключение.

Берёте книгу, ориентированную на новичков, и последовательно читаете, выполняя упражнения.
Ответ написан
Комментировать
@kandrash
Кратко о себе
Видосы - овно. "Пара статей" - овно. Какие нахрен 'требования заказчика' если вы полный 0? Возьмите клёвую книгу по интересующему языку программирования и прочитайте от корки до корки. Дальше доки. PHP учите? https://www.php.net/docs.php Laravel? https://laravel.com/docs/8.x. ASP NET? https://docs.microsoft.com/en-us/aspnet/core/?view...
Ответ написан
Комментировать
Adamos
@Adamos
Пока у вас нет опыта решения банальных задач, вы не сможете начать выполнять свои 6 пунктов.
Сведите задачу к тому куску слона, который реально можете проглотить, и когда он воплотится в код - только тогда пытайтесь хвататься за соседний.
Не можете представить себе все взаимосвязи в шахматах? Отложите шахматы, сделайте судоку и змейку, только не примерно, а так, чтобы оно работало. Потом беритесь за задачи, в которых эту банальную часть вы уже сможете решить, это упростит решение остального.
Что вы можете, прочитав учебник по грамматике языка, выстроить работоспособную иерархию классов - и не надейтесь. Грабли ждут. Но гуглить и выспрашивать на перекрестках - бесполезно. Самому - носом в опилки, как говаривал Карандаш.
Ответ написан
Комментировать
@Wan-Derer
Зобанели на Хабре, волки́ ;((
Книги - это хорошо, но потом. Программист с 7-летним опытом - это сильно потом!
Я тоже хотел по книгам, но здесь мне посоветовали курс на stepik.org. И это очень правильный совет! В книгах есть упражнения, но это не то. Курс - это дозированная теория + МНОГО задач. Т.е. каждую тему ты рассматриваешь на практике многократно и с разных сторон. Твоё решение проверяется тестовой системой, ты можешь его обсудить с другими участниками в комментариях.
Ты учишься разбирать задачи - от простых к более сложным. На курсе тебе дают далеко не всю теорию - много приходится искать самому и это тоже правильно.
В итоге у тебя набита рука на:
- понимание задачи;
- составление алгоритма;
- запись его в виде кода;
- отладку программы - это крайне важно!
- поиск необходимого в интернете;
- использование IDE.
После этого можно читать книги. Они заполнят пробелы: "Ого, я этим пользуюсь, а оказывается вот оно что!". Ты будешь понимать прочитанное т.к. многие вещи ты уже знаешь, а также знаешь как устроены вещи, которых ты ещё не знаешь.
А программистом надо общаться уже потом - когда у тебя мозг перестроится и вы начнёте общаться на одном языке :)
Ответ написан
saboteur_kiev
@saboteur_kiev Куратор тега IT-образование
software engineer
Если шахматы сделать сложно, напишите сперва helloworld
потом усложняйте
Массив это правильно, у вас просто непонимание что массив с данными о фигурах и визуальная картинка - разные вещи.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ФЛАЙ НЭТ Москва
от 70 000 до 70 000 ₽
IXORA Нижний Новгород
от 115 000 ₽
Wanted. Москва
от 60 000 до 120 000 ₽