Serguey Zefirov ([info]thesz) wrote,

Утащил у кого-то интересную статью Петцольда.

"Правда, что Visual Studio портит мозги?"

Интересный пассаж насчёт "зависимости" от наших компьютеров.

И, вот оно, от человека, специализирующегося на программировании на C# и под Windows Forms:
And yet, IntelliSense is also dictating the way we program...

Well, the debate is now over. In order to get IntelliSense to work correctly, (вырезано мной для сохранения интриги) programming is best.


Как всегда, важно подобрать цитатку. ;)
Tags: программирование, языки программирования

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    Your reply will be screened

    Your IP address will be recorded 

  • 64 comments

[info]kashnikov

December 27 2009, 22:19:04 UTC 2 years ago

Я правильно понимаю, что главный поинт в том, что программист начинает быть зависимым от IntelliSense?

[info]thesz

December 28 2009, 09:27:05 UTC 2 years ago

Технология начинает диктовать, как её использовать.

В этом главная мысль (если что, то main point именно так переводится).

[info]kashnikov

December 28 2009, 12:35:35 UTC 2 years ago

Просто я так и не понял, а какой выход предлагается? Альтернативы-то точно существуют. Интересно какие.

За главную мысль спасибо, это всё тлетворное влияние :)

[info]wizzard0

December 28 2009, 12:52:10 UTC 2 years ago

подпиливать студию под себя, юзать DSL, T4 и прочую фигню)))

[info]thesz

December 28 2009, 21:32:05 UTC 2 years ago

Я не знаю, что такое T4 и зачем подпиливать студию под себя.

[info]wizzard0

December 29 2009, 00:47:12 UTC 2 years ago

T4 - Text Template Transformation Tool, язык шаблонов, компилятор которого доступен в VS а также отдельно в составе .net sdk от майкрософта, позволяет втыкаться в Language Service и заниматься метапрограммированием, не заморачиваясь с написанием парсеров и кодогенераторов тк работает на уровне обьектной модели VS, соответственно для всех поддерживаемых ею языков программирования. хотя никто не запрещает и самому парсить, конечно.

[info]wizzard0

December 29 2009, 00:57:14 UTC 2 years ago

>> зачем подпиливать студию под себя

потому что когда в одном UI компактно представлены редакторы (применительно к играм - правил геймплея и редакторы уровней, например), которые генерируют код логики, которая подхватывается в текущий проект - это просто удобно.

подсветка ошибок и контекстный хелп к своим конфигам\DSL'ям, опять же. фидбек от компиляторов. правда, подсветку синтаксиса я пока написать не осилил.

[info]thesz

December 29 2009, 20:11:17 UTC 2 years ago

Ну, понятно.

C++?

[info]wizzard0

2 years ago

[info]thesz

2 years ago

[info]wizzard0

2 years ago

[info]thesz

2 years ago

[info]wizzard0

2 years ago

[info]thesz

2 years ago

[info]wizzard0

2 years ago

[info]thesz

2 years ago

[info]wizzard0

2 years ago

[info]thesz

2 years ago

[info]wizzard0

2 years ago

[info]thesz

December 28 2009, 21:33:27 UTC 2 years ago

Головой работать, вот основная альтернатива.

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

И тп, и тд.

[info]kashnikov

December 28 2009, 21:34:46 UTC 2 years ago

Мне нравится ход Ваших мыслей. Это хорошая альтернатива.

[info]thesz

December 28 2009, 21:37:32 UTC 2 years ago

Плохого не предложу. ;)

[info]wizzard0

December 27 2009, 22:22:34 UTC 2 years ago

Ну, я вот пишу с использованием intellisense в top-down стиле (набрал имя метода/класса/конструктора - Ctrl+. -> Generate Class/Constructor/Method). А если идентификатор определен, то я его увижу, да.

Так что чувак не совсем прав.

Минус интеллисенса в том что снижает порог вхождения, плюс в том, что позволяет писать читаемые имена (особенно с R#/помидором/VS2010, когда можно писать RLI -> ReallyLongIdentifier)

[info]wizzard0

December 27 2009, 22:23:04 UTC 2 years ago

* RLI<Enter>, конечно же

[info]metaclass

December 27 2009, 23:30:48 UTC 2 years ago

С именами очень верно - интеллисенс позволяет не экономить буквы в именах, что сильно улучшает читабельность кода.

[info]thesz

December 28 2009, 09:31:19 UTC 2 years ago

Подход сверху вниз возможен и для стороннего класса? Типа, пишу AClass, собрал параллельно BClass.

Насчёт "порога вхождения" - это ты про возможность пользоваться всеми 60000 именами библиотеки C#?

Плюс Intellisense не уникальный.

[info]wizzard0

December 28 2009, 12:32:48 UTC 2 years ago

Не совсем понял, что подразумевается под "сторонним классом" здесь.

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

Интеллисенс не уникален, угу. В том же питоне\фшарпе мне больше нравится писать без каких-либо autocomplete, в принципе :)

Но мне все же хотелось бы прояснить п.1 - не уверен, что мы друг друга правильно понимаем.

[info]thesz

December 28 2009, 21:38:28 UTC 2 years ago

Сторонний класс. Не тот, в теле которого пишем.

Плюс Интеллисенса не уникален. Читаемые имена можно писать и так.

[info]wizzard0

December 29 2009, 00:41:15 UTC 2 years ago

>> Не тот, в теле которого пишем.

Стало еще менее понятно. В чем разница?

[info]thesz

December 29 2009, 20:12:24 UTC 2 years ago

В чём разница чего с чем?

Если про классы, то возможность создавать то, да сё одного класса, редактируя другой - прямое доказательство возможности изменения направления разработки.

[info]wizzard0

2 years ago

[info]thesz

2 years ago

[info]wizzard0

2 years ago

[info]thesz

2 years ago

[info]wizzard0

2 years ago

[info]thesz

2 years ago

[info]wizzard0

2 years ago

[info]thesz

2 years ago

[info]wizzard0

2 years ago

[info]metaclass

2 years ago

[info]thesz

2 years ago

[info]thesz

2 years ago

[info]thesz

2 years ago

[info]thesz

2 years ago

[info]bik_top

December 27 2009, 23:35:50 UTC 2 years ago

Так ведь и Эричка™ Мейер в своих видеолекциях про Хаскель (sic!) говорил, что предпочитает C# для промышленной разработки в том числе из-за IDE-driven style of coding (за точность цитаты не ручаюсь).

[info]wizzard0

December 28 2009, 12:50:48 UTC 2 years ago

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

[info]jakobz

December 28 2009, 00:40:31 UTC 2 years ago

Забань меня, я пишу на C#.

[info]jakobz

December 28 2009, 00:52:06 UTC 2 years ago

Ололо ололо трололо трололо

[info]metaclass

December 28 2009, 05:40:47 UTC 2 years ago

Прочитал статью. Не одного меня этот тупизм вижуал студии бесит, оказывается.
Вообще, стиль, который студия навязывает, сильно противоречит тому, как я привык работать. Я некоторые задачи предпочел бы решать самостоятельно, а тут положено сначала минут 20 искать в всех базовых классах, "а может уже сделано". А потом оказывается(неоднократно), что стандартной реализацией пользоваться невозможно, и все равно нужно делать собственную.
Windows Forms вообще убожество, дизайнер, который генерит код - ад кривой и тормозной, даже с дельфи 10-летней давности не сравнить. Ну, про внутренности стандартных классов windows forms и говорить не хочется - там кошмар.

[info]wizzard0

December 28 2009, 12:36:03 UTC 2 years ago

решарпер или vs2010 дает возможность ложить болт на интеллисенс, в смысле писать идентификаторы и потом нажатием хоткея генерировать правильно типизированные stub'ы

а насчет виндовс формс - ну не надо ворошить труп, есть же впф, хосспади.

я тоже люблю переписывать солидные куски фрэймворка, знакомый синдром ))
Create an Account
Forgot your login or password?
Facebook Twitter More login options
English • Español • Deutsch • Русский…