LINUX.ORG.RU

Автодополнение - зло?

 , , , ,


0

2

Кто нормально работает с клавиатурой? 90-100 wps? Десятипальцевый?

Можете работать в простом редакторе без автодополнения кода? MCEdit, joe, ee, micro, nano, vim без плагинов(удалённо на чужой машине)? Не могу себе представить, ээээээээээ, голый emacs?

Как вы считаете, новичок или специалист средней руки при изучении нового ЯП, автодополнение помогает или является помехой?
Если человек не может в методы, это не потому, что «в документацию не шмогла»? Лень? Неумение набирать на клавиатуре?

Когда стоит давать новичку IDE? На каком этапе? И стОит ли вообще?


Ответ на: комментарий от modest

Могу поспорить за какчество получаемого кода

поспорьте.

alysnix ★★★
()
Ответ на: комментарий от Legioner

Начинать надо с notepad.exe или /bin/ed

Не соглашусь. Хорошо, если редактор хоть минимально помогает не думать о табах-пробелах.

demidrol ★★★★★
()
Ответ на: комментарий от modest

не в питоне дело. У меня вот коллега пишет в mcedit, так у него табы-пробелы в одну кучу свалены. ЧСХ, он не понимает, в чем проблема, как ни объяснял.

demidrol ★★★★★
()
Ответ на: комментарий от modest

не, ну в ghdl наваяли gdhl-ls, который теоретически можно даже куда-то прицепить. Но один хрен – язык слишком сложный для разбора (ЕМНИП, его с помощью flex/bison не разобрать полностью). Да и в чем соль шутки-то будет? Автодополнение по полям сигналов, объявленных как структуры? Автоустановка компонентов в vhdl-mode есть, и работает она на тупых регулярках.

А в целом народ валит куда-то в странные области. Одни на скале пишут (Chisel/FIRRTL – это для Rocket Chip, одна из реализаций RISC-V), другие – на питоне (всякие васянские MyHDL, которые все равно ничего сложнее счетчиков не умеют), третьи вообще что-то вендорспецифичное юзают (блоки Symphony для Simulink, всякие Vivado HLS для синтеза из C и так далее).

demidrol ★★★★★
()
Ответ на: комментарий от modest

treesitter

чую я, что он тоже от языка страдает. Там же if-else, when по-разному ведут себя в процессах и вне их (по сути – это вообще разные конструкции, зачем-то названные одним и тем же именем).

ну так-то парсер можно отломить от того же ghdl (он умеет высирать промежуточное машинно-читаемое представление). Опять же, на кой оно для редактирования кода? Никто в здравом уме все фичи vhdl не использует (а там есть реально опасные мины замедленного действия типа позиционного маппинга портов или использования компонентов, конфигураций и прочего языкового шлака).

Если сознательно ограничивать себя подмножеством языка – то и регулярки отлично работают.

demidrol ★★★★★
()
Ответ на: комментарий от modest

ну так а как оно ведет себя с привязками components к конкретным entity? Разных architecture к одному и тому же entity? Что делает, если в области видимости несколько процедур с одинаковыми сигнатурами и именами? (это все то, чего в нормальном коде быть не должно, но присутствует в языке).

demidrol ★★★★★
()
Ответ на: комментарий от demidrol

Если есть интерес - спишись с пилящим. Заодно поболтаете о нелёгкой жизни :))

И там интереснй подход. Люди это дело используют в страннном формате - подсветке синтаксиса. А штука может огого.

modest
() автор топика
Последнее исправление: modest (всего исправлений: 1)
Ответ на: комментарий от demidrol

язык слишком сложный для разбора

Оно и на не шибко сложных спотыкается и тормозит. И большой вопрос, а нужно ли вообще париться о правильном контексте при комплите. Если какие-то забубенные API используются, можно нагенерить словарь для вима, и по нему дополнять. Или из документации вытащить эти адские имена, или через ctags. Просто тупой список имён, и всё. А с контекстом уже сам погромист разберется, на то он и приставлен к клавиатуре.

bread
()
Ответ на: комментарий от bread

на то он и приставлен к клавиатуре.

Чёт те, кто купил стоячий стол, так сидя на нём и пашут. Во всяком случае мои знакомые

modest
() автор топика
Ответ на: комментарий от demidrol

другие – на питоне (всякие васянские MyHDL, которые все равно ничего сложнее счетчиков не умеют

На litex устанавливал pll в две строчки, написав класс, который вычисляет все параметры модуля, прописывает нужные сигналы, устанавливает bufg если необходимо.

Конструктор принимает входную частоту и имя такового домена. Дальше есть метод, добавляющий выходную частоту.

Такой класс был у меня написан для virtex 6 и cyclone II - совершенно разные производители, поколения чипов, интерфейсы.

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

pll_inst=PLL(f_in,"ext")
pll_inst.CRG(100e6,"sys")

А на vhdl и verilog даже 100e6 нельзя писать. Можно извернуться, конечно, везде, но сложно. Проще писать 100_000_000.

kolpakchi
()

Автодополнение часто мешает. Я например хочу перевести строку нажав Enter, а оно вместо веревода что-то вставляет. Бесит автоматическая вставка скобок и кавычек, иногда замучаешься это обойти.

Автодополнение должно вызыватся явно специальным сочетанием клавиш и не мешать.

X512 ★★★★★
()
Последнее исправление: X512 (всего исправлений: 2)

Не могу себе представить, ээээээээээ, голый emacs?

Ловите извращенца! Он емакс голым представляет!

rupert ★★★★★
()

Немощь без автодополнения - это вид профессиональной инвалидности, часто получаемой сразу в шараге после изучения дельфи/сисярп. В следствии этого программирование схлопывается в тыканье ctrl+space и поиск нужного метода. Как-то иначе могз уже не функционирует и на попытки предложить что-то отличное от привычного рабочего процесса больной будет реагировать агрессией.

crutch_master ★★★★★
()
Последнее исправление: crutch_master (всего исправлений: 1)
Ответ на: комментарий от untitl3d

А хрошие IDE с анализаторами кода и дебагерами надо писать и продвигать.
ps: ничего не имею против vim, emacs. Они хороши как редакторы, но не многотонной незнакомой кодовой базы.

Многотонные кодовые говнобазы не нужны вместе с их говномешалками. Я думал все уже поняли, что сложность их поддержки растёт по экспоненте, ан нет.

crutch_master ★★★★★
()
Последнее исправление: crutch_master (всего исправлений: 1)

90-100 wps

Как расшифровывается?

Могу. Могу и землянку построить из земли и палок, но зачем?

Помогает, потому что ускоряет ввод; как автодополнение может мешать, ума не приложу. Конечно есть те, кто любят чинить автомобили с повязкой на глазах, но по-моему когда глаза видят какой инструмент доступен для манипуляций с авто — это банально надежнее (кто не понял, тот поймет).

mydibyje ★★★★
()
Последнее исправление: mydibyje (всего исправлений: 1)

Я напомню что подсветка цветом и автодополнение - графика. Может уже хватит изобретать текстовый процессор и просто писать код в word, разукрашивая его как угодно?

kolpakchi
()
Ответ на: комментарий от kolpakchi

Может уже хватит изобретать текстовый процессор и просто писать код в word, разукрашивая его как угодно?

Мсье любитель делать всё своими руками, включая то, что в продакшен не пойдёт?

Miguel ★★★★★
()
Последнее исправление: Miguel (всего исправлений: 1)
Ответ на: комментарий от anonymous

Один? 😲

Да вас тут БОЛЬШЕ, ЧЕМ ГРЯЗИ...

anonymous
()
Ответ на: комментарий от modest

Давай ты сначала запишешь видео, где ты пишешь код с такой скоростью (без опечаток, разумеется), а мы посмотрим.

Я набираю с такой скоростью. А ты?

С бумажки переписываешь? С такой скоростью код не рождается. Но если ты один из этих… эффективных менеджеров, и пишешь поток сознания, то да, автодополнение - это зло. Оно ведь мешает бред выражать - пытается подсказать, от опечаток избавиться.

anonymous
()
Ответ на: комментарий от kolpakchi

Ещё бы научиться это продавать.

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

Miguel ★★★★★
()
Ответ на: комментарий от anonymous

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

mydibyje ★★★★
()
Ответ на: комментарий от Miguel

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

kolpakchi
()
Ответ на: комментарий от crutch_master

Многотонные кодовые говнобазы не нужны вместе с их говномешалками.

А они существуют независимо от твоего желания, прикинь? За пределами локахоста уже давно другая жизнь - вылезай из под стола.

anonymous
()

Ну просто наплыв хардкорщиков-нинздя, блеать. Из жопы дым просто, птушнике опасносте.

anonymous
()

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

vazgen05 ★★★
()
Ответ на: комментарий от Siborgium

просто этим инструментам не дано понять всей гениальности и победоносности плюсов

anonymous
()

У ТС на все доводы «за» постоянно то питон не такой, то ява корявая. Он троллит просто.

anonymous
()
Ответ на: комментарий от Siborgium

MSVC

Он в порядке.

убогая работа IntelliSense с шаблонами

Добавляешь Resharper - и конкурентов нет.

anonymous
()
Ответ на: комментарий от anonymous

У ТС на все доводы «за» постоянно то питон не такой, то ява корявая. Он троллит просто.

ТС на шарпе ездит. Пайтон презираем. Пробелы любимы в GHCI.

modest
() автор топика
Ответ на: комментарий от anonymous

Добавляешь Resharper - и конкурентов нет.

Голая правда

modest
() автор топика
Ответ на: комментарий от modest

Ну это тоже самое что писать код рандомно шлепая по клаве, такой человек и без хаемого автодополнения допишет название метода с потолка. Это не аргумент.

mydibyje ★★★★
()
Ответ на: комментарий от mydibyje

Это факт. Я даже проводил над собой опыт. И он неутешителен.

modest
() автор топика
Ответ на: комментарий от mydibyje

Увы многие вот так и пытаются прорываться надеясь что кривая вывезет, и им нормально, вообще причинно-следственная цепочка не строится и на таком уровне будут продолжать бесконечно пока кто-то не подтолкнет в нужную сторону, а если толкать некому, то так останавливаются в развитии надолго. Просто людям не надо дальше, нет дискомфорта.

slapin ★★★★★
()
Ответ на: комментарий от untitl3d

А куда их деть?

Туда же, куда обычно и девали. Декомпозиция, перенос сложности, добавление уровней абстракции и т.д.

crutch_master ★★★★★
()
Ответ на: комментарий от anonymous

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

Да я в курсе, нытьё про кодовую базу в 100М строк даже тут слышно.

А они существуют независимо от твоего желания, прикинь?

А с этим никто не спорит. Говно делать не нужно, говно само сделается. Ынтерпрайз слишком ленив, чтобы что-то там изобретать. У них есть язычок с фреймворком, на котором пишут все, они и делают.

crutch_master ★★★★★
()

Пишу на Java в Vim без автодополнений. Скорость разработки на порядок (в 10 раз) быстрее чем в IntelliJ IDEA.

anonymous
()

Ты мясо покупаешь в магазине, или ловишь в лесу и разделываешь сам? А обувь и одежду тебе кто шьет?

Может уже сейчас начинать жить без этого всего? Вдруг оно все исчезнет – помрешь от голода и холода.

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

vlad9486
()
Ответ на: комментарий от vlad9486

Ты мясо покупаешь в магазине, или ловишь в лесу и разделываешь сам?

Неудачно сравнил. То, что вырастил сам явно вкуснее и полезнее, только дольше, да. И готовка явно дольше магазинного.

По второму сравнению. Давай сравним vscode и codium (если я правильно написал). Пока не полезешь в код и обманом магазин не добавишь… А без дополнений популярный редактор превращается в тыкву.

Третий пункт вообще правда. Слепая печать? Что? Правильные клавиатуры? Ась? Это же для идиотов! Я горжусь своей мембранкой за 2 бакса! А тупые что-то пишут о сплит, home row… Ну тупые!

А ты знаешь, что английская фирма, которая выпускает проф клавиатуры почету-то заблокирована в России? http://xahlee.info/kbd/iergo/Maltron_keyboard-s1200.jpg А знаешь, что там уникальная раскладка, сделанная на основе исследований немцев? А цена? 400 фунтов - это прихоть, мембранка рулит. Это для тупых, кто ценит своё здоровье, комфорт и скорость в наборе.

Для нищуков забабахали http://xahlee.info/kbd/kinesis/Kinesis_top_view_194406-s.jpg, они и жрут.

Глазки выколоть… Ты и так на пути к инвалидности.

modest
() автор топика
Ответ на: комментарий от modest

То, что вырастил сам явно вкуснее

Как сказала моя бабушка, надкусив горький огурец со своего огорода.

Miguel ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.