Возможный дубликат:
Какое у вас самое длинное программирование, которое оказалось неверным?
Что вы считаете самым опасным заблуждением о программировании у людей, которые новичок в программировании, которые вы видели?
Возможный дубликат:
Какое у вас самое длинное программирование, которое оказалось неверным?
Что вы считаете самым опасным заблуждением о программировании у людей, которые новичок в программировании, которые вы видели?
Повторное создание стандартных библиотечных функций/классов.
После прохождения языковой книги/учебника большинство новичков - зная, как обрабатывать строки и числа - будут изобретать свои собственные функции даты, свои собственные алгоритмы сжатия, свои собственные реализации SORT.
О, и они всегда проводят свой первый день поиска clrscr();
.
Это потому, что их программа компилируется и запускается, она делает то, что они ожидают от нее.
Что, если их код не компилируется или не работает, это из-за ошибки в компиляторе.
Возможно, не самые вредные, но обычно они не могут оценить, сколько времени потребуется, чтобы сделать это, они думают, что это можно сделать намного быстрее, чем это действительно нужно (включая меня).
Что касается вредных вещей, хорошие компании обычно несут новички вдали от места, где они могут нанести большой вред. Их обычно поощряют к работе кого-то более опытного, чтобы они могли лучше учиться.
Что, если их программа работает на собственном компьютере, тогда она будет работать и на всех остальных компьютерах.
"Но это работает на моей машине!"
Это программирование - все о синтаксисе. Оказывается, все дело в решении проблем.
Что пользователь программист.
Мысль, если он не выглядит ужасно сложным, должен быть неправильным или "плохим" кодом.
Я должен признать, что несколько лет назад в школе я был виноват в том, что мои программы выглядели недостаточно сложными! В эти дни я хочу плакать, если что-то не получится так просто:
//start
if(something)
{
do_stuff();
}
//go home
: р
"Проблема не в моей программе, это ошибка в библиотеке/OS/языке".
"Это работало на моей машине! Что не так с твоей?"
"Все это шаблон, вам просто нужно их найти".
"Мне не нужно проверять, потому что я сделал только одно изменение строки".
"Контроль источника - пустая трата времени для этого проекта".
Реальная проблема, которую я видел при программировании tyros, - "программирование - это волшебство", а это означает, что компьютер не будет функционировать точно логически и будет делать то же самое каждый раз, когда он дает точный вход.
Они пишут то, что, по их мнению, должно делать то, что они хотят, а затем, когда оно не работает, вместо того, чтобы пытаться логически подойти к проблеме, они начинают менять вещи полуслучайно, надеясь, по-видимому, успокоить богов компьютерной магии благодаря их явной упорству или готовности смириться с алтарем прихоти. Они чувствуют, что компьютер капризничен и меняет вещи беспорядочно, и лучшее, на что они могут надеяться, это заставить вещи расплывчато приближаться к работе и надеяться, что звезды останутся выровненными в течение длительных периодов времени.
Конечно, даже опытным программистам он иногда может ощущать этот путь, но есть неотъемлемые знания о том, что происходящее происходит по определенной причине, и вам просто нужно копать, чтобы добраться по этой причине.
Чтобы у вас есть, у вас есть шаблоны дизайна в вашем коде.
Что их решение - это Один и единственный истинный способ решения проблемы, и все остальные просто глупы и неправы.
наиболее вредное заблуждение (финансовая версия):
"Чтобы высшее образование требовалось знать или иметь представление о том, как писать программное обеспечение".
"Я собираюсь зарабатывать кучу денег, играя с компьютерами!"
Изменить: Еще один, который меня заводит:
"Другой код парня неправильно называет меня, поэтому я не виноват, что система не работает". - без активного расследования, диагностики, предлагаемого патча, ничего. Как руководитель или руководитель группы, этот действительно попадает под мою кожу.
Чтобы вы использовали каждую особенность изучаемого вами языка, наследование, прежде всего.
Обновлено: быть навязчивым относительно встроенного кода сборки в C
Худшее неправильное понимание, с которым я столкнулся, и труднее всего избавиться от него, заключается в том, что программирование - это код, а не чтение.
Это круто == полезно.
Избавиться от понятия "совершенный, но очень поздний" лучше, чем "приемлемый и вовремя".
Никто не заботится о том, если какой-либо еженедельный отчет за 5 секунд, а не 8, если он опаздывает на два месяца.
Самое опасное заблуждение: вы делаете, когда получаете код для работы.
Это как-то связано с компьютерами.
Чтобы их код не документировался. Они единственные, кто когда-нибудь посмотрит на это, верно?
Наиболее распространенным заблуждением является то, что вы можете написать приложение, запустив свой любимый IDE/редактор, а затем сразу напишите код.
Да, он создаст приложение. Да, это, вероятно, cr @p тоже, когда вы закончите...
Вы начинаете разрабатывать программное обеспечение, сначала создавая дизайн. Предпочтительно с ручкой и бумагой или с некоторыми полезными инструментами на вашем компьютере. Написание фактического кода просто является небольшой частью всего процесса. (Если нет, вы делаете что-то неправильно!)
Самое опасное заблуждение - предположить, что люди в индустрии программного обеспечения знают, что они делают. Начинающие, как правило, доверяют всему, что написано в документации по продукту, они доверяют сообщениям об ошибках и описаниям исключений. Они даже доверяют материалам, размещенным в блогах.
Это все, что нужно для этого - создавать новые повседневные вещи. Обслуживание - часть программирования!
То, что сложная часть вводит код. Чем дальше вы идете, тем больше становится легкой частью.
В начале:
Позже:
Неправильно думая, что...
Эта сборка мусора спасет вас от управления ресурсами.
Порядок байтов? Перетяжка? Я не могу просто написать(), send() и т.д. Всю структуру?
Неправильно думая, что:
Что они "сломают" что-то!
Или, чтобы определить "новичков" как те, которые этого не делают, "это будет легко изменить! Это программное обеспечение!"
веселит,
Чтобы программа была правильной в первый раз.
Сбой быстро, рано и часто. Это единственный способ стать лучше.