Некоторое время я занимался программированием, но проблема в том, что мне нужно много времени, чтобы написать решение этих проблем. Я хочу спросить, может ли конкурентное программирование помочь мне улучшить это.
Если да, то как мне начать и с каких веб-сайтов я могу использовать (например, TopCoder )? Я, очевидно, пока не смогу решить очень сложные проблемы. Что я должен делать?
Если нет, что еще мне делать?
У меня также есть другая проблема, которую я хочу изучать, но я чувствую, что я не очень хорош в этом. Что я должен делать? Это все равно что задеть меня изнутри.
Я знаю, что некоторые люди могут не найти этот вопрос информативным, но, по крайней мере, позвольте мне получить ответ.
programming-practices
self-improvement
Вайбхав Агарвал
источник
источник
Ответы:
Да, это возможно, и при наличии достаточного времени это, безусловно, будет. Тем не менее, скорость не самый важный навык, который вы собираетесь улучшить. Из моего опыта участия в TopCoder более 10 лет самым важным навыком, который вы приобретете в конкурентном программировании, является умение правильно писать простые фрагменты кода с первого раза, без использования отладчика.
Используйте тренировочные комнаты для Дивизиона 2. Уровень 1 Дивизиона 2 - это, как правило, «печатные состязания», в том смысле, что вы сразу же находите решение, поэтому ваша задача становится как можно быстрее его кодировать. Большинство реальных заданий таковы. Вы быстро поймете, что отладчик является самой большой «утечкой времени», поэтому вы, естественно, попытаетесь завершить свой код, не отлаживая его. Это будет разочаровывать в начале, но со временем улучшится. Чтобы справиться с этим нужно несколько сотен задач первого уровня, так что не сдавайтесь.
Отладка в вашей голове - это навык, который поможет вам в вашей реальной работе: хотя скорость кодирования не важна, умение писать правильные фрагменты кода без отладки поможет вам перейти от хорошего к выдающемуся.
источник
Как начинающий программист, вы должны гораздо больше заботиться о качестве своего кода, чем о скорости его написания. Вы должны работать над проектами самостоятельно, чтобы расширить свои навыки. Вы могли бы продолжить изучение проектов с открытым исходным кодом, чтобы увидеть, как другие пишут код, и, возможно, начать вносить вклад в проект с открытым исходным кодом.
За мои 25 с лишним лет разработки кода для различных платформ и бизнес-доменов я никогда не встречал случая, когда скорость написания моего кода была бы более важной, чем качество и стабильность моего кода.
источник