Интернет и Intellisense плохо для вашей памяти?

Будучи запрограммированным какое-то время, я заметил, что я все больше и больше полагаюсь на Интернет и IntelliSense, чтобы выполнять свою работу. Но мне было интересно, насколько это повлияло на мои знания за прошедший год или около того. Но имеет ли это значение?

Например, я, скорее всего, сейчас помню, что когда мне нужно программировать объекты, о которых я не знаю, я перейду в пространство имен System.Reflection, и быстрый просмотр вниз по списку предоставит мне достаточно подробностей, чтобы получить снова. Но если бы вы спросили меня, какие классы и т.д. Требуются, я бы изо всех сил назвал их всех.

Эта проблема запоминания, похоже, проявляется больше при посещении интервью, когда люди, похоже, больше сосредотачиваются на мельчайших деталях неясных областей платформы .NET, а не на широких и разнообразных знаниях и опыте заявителя. В любом случае я отвлекаюсь.

Кто-нибудь еще думает, что, возможно, пришло время отключить IntelliSense и попытаться найти более эффективные способы обучения, чем быстрые исправления и обходные возможности Интернета?

Ответ 1

Вы читали эссе Чарльза Петцольда по этому вопросу? Там есть кое-какие пронзительные вещи.

Я не уверен, что это слишком важно, что вы не знаете вещей наизусть. Да, это проблема для интервью, но это показывает, что процесс опроса не соответствует действительности.

Я бы не рекомендовал отключать Intellisense. Кодирование достаточно сложно, не пытаясь выучить наизусть вещи, которые компьютер легко может нам рассказать.

Ответ 2

Intellisense - это только плохо, если вы планируете написать код на острове без Интернета или коллег или MSDN. Это может произойти после Третьей мировой войны, но я думаю, что мне все равно придется выбирать новую карьеру.

Ответ 3

Да, это так. Плохо в том же смысле, что калькулятор плох для вашей скорости умения умножения, а сотовый телефон плохо подходит для написания письма и навыков письма. Итак, если вы хотите улучшить свою память и мнемонические методы, запомните весь свой API, но, с другой стороны, если вы просто хотите запрограммировать и выполнить все, Google и IS - ваши друзья.

Ответ 4

Для большинства вещей в программировании не имеет значения, что вы знаете точное имя. Неважно, что вы знаете, что оно есть, и вы можете его найти.

Intellisense - отличный инструмент для этой задачи, он позволяет сосредоточиться на вашей основной задаче. То же самое верно для Интернета. Это ценный источник знаний. Вам просто нужно умение определять ценность знаний. (Не каждый сайт имеет систему upvote/downvote, поэтому вам нужно самостоятельно подумать.)

Ответ 5

Я не отключу ИС. Мышление на проблемы, шаблоны и архитектуры более полезно, чем наизусть изучать API. Если yopu не знает API в целом, IS не поможет. Если вы знаете это примерно, это увеличивает скорость кодирования.

Это то же самое, что и вопрос о том, следует ли использовать Notepad вместо VS и R # для программирования.

Ответ 6

ИМО верно: устраняя необходимость запоминания деталей, завершения кода и интернет-ресурсов, вы можете сосредоточиться на более важных и сложных вопросах, чтобы узнать больше о том, что можно сделать, если это необходимо, а не о том, как это сделать что-то конкретное.

Гораздо полезнее знать общие возможности 5 библиотек API, чем точный синтаксис одного, или знать 5 алгоритмов, которые решают разные проблемы, чем знать, как точно реализовать конкретный.

Ответ 7

Кроме того, intellisense помогает таким людям, как я, у которых есть ужасное правописание и/или дислексия.

Изменить: для записи я пришел к этому вопросу, потому что я читал, что intellisense плохо для ваших денег...

Ответ 8

Я согласен с каждым ответом здесь.

Не то, чтобы я отключил IS или удалил себя из Интернета. Полагаю, я думал больше о том, как: если бы на все эти вопросы, заданные на этом форуме, можно было ответить, выполнив поиск в Интернете. Знают ли знание и понимание, насколько быстро и эффективно можно искать Google? Это влияет на то, как мы учимся.

Да, я мог бы ответить на каждый вопрос здесь, если бы у меня было время для поиска ответов, может быть, я бы чему-то научился, но я бы не стал классифицировать себя как Гуру. Кроме того, я бы чувствовал, что я обманул.

И так же IS и Интернет помогают людям с твердым пониманием быстро выполнять свою работу. Это также ограничивает или замедляет обучение (и понимание) людей, новых для программирования, чтобы получить это понимание. Поэтому я предполагаю, что люди, которые программировали в течение длительного времени, но изучая новые навыки или методы, у меня тоже есть те же проблемы, что и те, кто только начинает учиться. Когда я впервые начал программировать, а не просто случайно удалял ключи на своем C64, я следил за учебниками онлайн и читал куча вещей, чтобы выполнить эту работу. Но только после того, как я действительно отступил от "выполнения работы" и начал изучать архитектуру процессора, API-интерфейсы, управление памятью, ну, вы получите картину, которую я действительно начал понимать.

Возможно, у меня просто неуместное восприятие, что понимание и глубокое знание делают хорошего программиста хорошим.

Ответ 9

Я бы сказал, что IntelliSense является важным инструментом для продукта, который является всеобъемлющим и сложным, как .NET Framework. Имея буквально тысячи типов, ни один разработчик не может надеяться запомнить даже небольшой набор из них, не прибегая к какой-либо помощи. Лучше иметь его доступным по мере ввода, чем через F1, по-моему;)

Microsoft IntelliSense в сочетании с дизайном Framework и инструментами, такими как FxCop, означает, что у вас есть (в основном) последовательная инфраструктура разработки, которую вы можете использовать для разработки своего собственного программного обеспечения быстрее и с лучшей организацией. По сравнению с, скажем, разработкой с VB 6, это, безусловно, смелый новый мир, но я думаю, что Microsoft стояла на плечах гигантов и создала превосходного - если иногда и подавляющего - преемника.