|
183 / 182 / 56
Регистрация: 10.06.2011
Сообщений: 871
|
|
Как вы подходите к решению новых для вас задач12.11.2016, 13:24. Показов 1611. Ответов 12
Метки нет (Все метки)
Вопрос имеет с одной стороны косвенное, а с другой прямое отношение к программированию и языку С++. Задаю данный вопрос в данном разделе потому как сам пишу на языке С++ и соответственно интересно мнение людей которые пишут на этом же ЯП.
Иногда встречаются задачи решение которых не то чтобы нетривиально, просто никогда раньше не сталкивался с подобным. Возникает вопрос подхода к решению подобных задач именно в программировании. Стоит ли сидеть скажем 2 (и то не факт что два) дня в попытках реализовать что-то, или же, если есть возможность, подсмотреть решение, разобрать и затем попробовать реализовать то что в примере? Кто как поступает в данных ситуациях? После того как разобрали какое-то решение, переписываете ли вы его с примера, или же составляете план и затем пробуете реализовать собственными силами, в общем говоря, как вы его запоминаете?
0
|
|
| 12.11.2016, 13:24 | |
|
Ответы с готовыми решениями:
12
Подготовка к решению сложных задач и задач олимп.уровня Посоветуйте хорошие практикумы по решению задач на C# с разбором этих задач! Как у Вас с индексацией новых проектов в Яше? |
|
19496 / 10101 / 2461
Регистрация: 30.01.2014
Сообщений: 17,808
|
||
| 12.11.2016, 13:40 | ||
Сообщение было отмечено Ryuk как решение
РешениеРазбираться до упора в новой предметной области, изучать материал, посвященный этому (статьи, книги, мануалы), разговаривать, если доступны, со специалистами. И только потом (возможно спустя несколько месяцев), после того, как все понятно, приступать к проектированию архитектуры, а затем к кодированию. Решение не надо запоминать, его надо понять. Вообще, я убежден, что программист, занимающийся разработками в определенной предметной области, должен разбираться в ней чуть хуже, чем средний специалист с соответствующим образованием. Иначе неизменно на выходе будет в разной степени "не то", в зависимости от распространенности готовых программных решений. Бывает такие сферы науки и техники, где вообще нет ничего готового в части программной автоматизации. Неоткуда взять реализацию на языке программирования, и подглядеть там что-то. И здесь путь один - знать и понимать что нужно сделать, а без изучения предметной области на должном уровне этого не достичь.
8
|
||
|
183 / 182 / 56
Регистрация: 10.06.2011
Сообщений: 871
|
||
| 12.11.2016, 14:00 [ТС] | ||
|
0
|
||
|
19496 / 10101 / 2461
Регистрация: 30.01.2014
Сообщений: 17,808
|
||
| 12.11.2016, 14:10 | ||
|
Или, может я слишком серьезно воспринял, и речь в теме идет вообще о чисто программистских вещах? В любом случае, программист ведь не пишет программы в вакууме. Обычно есть какая-то область, куда его программы относятся. И вот применительно к этому я и высказал свое мнение.
0
|
||
|
1936 / 1048 / 109
Регистрация: 29.03.2010
Сообщений: 3,167
|
||
| 12.11.2016, 14:38 | ||
|
0
|
||
|
Ушел с форума
|
||
| 12.11.2016, 16:03 | ||
Сообщение было отмечено Ryuk как решение
РешениеСначала читаю документацию по соответствующей тематике, если она есть. Затем лезу в Гугл и делаю "штурм" запросов по нужным ключевым словам, стараясь получить максимум полезной практической информации еще до того, как начну работать с кодом. Попутно отмечаю непонятные для себя моменты и стараюсь с каждым из них разобраться до конца, чтобы не осталось никаких "белых пятен". Потом работаю с исходными кодами примеров, если такие имеются, изучаю их. И только после этого пытаюсь самостоятельно "слепить" свой аналог. Копипасты стараюсь избегать всеми силами. Копипасте не доверяю вообще ни в каких проявлениях. Даже если это 100% проверенный и тысячу раз перепроверенный код, который пользуется популярностью и постоянно используется большим количеством программистов. По ходу работы все сделанные "открытия" (недокументированное поведение, ошибки в документации, что-то неочевидное и т.п.) стараюсь записывать в специальном текстовом файле, его храню вместе с исходниками в системе контроля версий.
7
|
||
|
Полярный
477 / 449 / 158
Регистрация: 11.09.2011
Сообщений: 1,156
|
|||
| 12.11.2016, 16:44 | |||
Сообщение было отмечено Ryuk как решение
Решение И как же библиотеки? Чем проверенный скопированный код хуже библиотек? Или это только по отношению к нетривиальным задачам?
1
|
|||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 12.11.2016, 17:24 | ||
|
Если же практическая, то можно и готовое решение поискать. Но и в этом случае никто собственные мозги поразмять не запрещает.
1
|
||
|
Ушел с форума
|
|||
| 12.11.2016, 19:58 | |||
![]()
Я против подхода в духе "оу, я тут нашел какой-то код непонятно на какой помойке, не понимаю ни фига, как он работает, а сегодня он почему-то вдруг у меня не работает".
0
|
|||
|
19496 / 10101 / 2461
Регистрация: 30.01.2014
Сообщений: 17,808
|
||
| 12.11.2016, 20:00 | ||
|
Я немного другое имел в виду под категоричной фразой "никакого кодинга". Поясню: если мы пишем прототип, то мы уже примерно представляем себе что нужно сделать. Прототип - это уже процентов на 40% сформированная мысль, нуждающаяся в эксперименте. А я говорил про другое, я говорил про попытку "с места в карьер" написать реализацию на основе обрывочных сведений, по наитию или просто использовав чужой код, не осознавая что это и как это будет работать.
1
|
||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||||
| 12.11.2016, 22:22 | ||||
|
Списывает учебные задачи тот, кому лень учиться. Тот же, кому учиться нравится и интересно, еще и дополнительно себе задачи выискивает. У нас вот на мехмате был один, так он постоянно имел в голове какую-нибудь сложную математическую задачу, которую решал просто для интереса (иногда по месяцу и более), для разминки мозгов, так сказать. Про одну такую задачу он после узнал, что ее один студент в Израиле защитил в качестве кандидатской. Добавлено через 23 минуты
1
|
||||
|
183 / 182 / 56
Регистрация: 10.06.2011
Сообщений: 871
|
||
| 12.11.2016, 22:49 [ТС] | ||
|
0
|
||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 13.11.2016, 03:51 | ||
|
Мне кажется, задача может быть неинтересна по трем причинам. Либо она слишком простая, либо слишком сложная, либо из ненужной сферы. Интуитивно нам кажутся интересными именно те задачи, которые нас наиболее эффективно развивают. Добавлено через 3 часа 54 минуты Если задача интересная, то над ней начинает работать наша интуиция на уровне подсознания, и решения сами всплывают оттуда, иногда даже во сне. Если интуиция не работает, значит задача неинтересная, и на нее надо плюнуть, либо как-то простимулировать себя, чтобы появился интерес.
2
|
||
| 13.11.2016, 03:51 | |
|
Помогаю со студенческими работами здесь
13
Нужна консультация по решению задач! Дать объяснения решению задач Книга по решению многокритериальных оптимизационных задач
Посоветуйте учебник php или сайт по решению задач Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
|
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|