|
0 / 0 / 0
Регистрация: 21.12.2014
Сообщений: 65
|
|
Отладка кода (программы) во FreeBasic21.02.2024, 01:11. Показов 19055. Ответов 224
Уважаемые программисты. Подскажите - как производится
В QB это делалось просто. В меню Debug командой toggle breakpoint метится строка до которой проверить. После запуска идет проверка, отмечаются ошибки, проблемы. У меня во FreeBasic этот метод не работает. Программа на метку не реагирует, действия не совершаются. Прошу помощи.
0
|
|
| 21.02.2024, 01:11 | |
|
Ответы с готовыми решениями:
224
Грамотная отладка программы, подмога в структуризации кода Отладка программы в Delphi(нужно подредактировать текст чужой программы) |
|
|
|||
| 02.03.2024, 15:38 | |||
![]() Можно еще предметы цифрами называть. Вместо того чтобы сказать "Принеси пожалуйста мне бумагу и карандаш", скажите - "Принеси пожалуйста мне 18488 и 203450". Непонятно? Загляни в документацию и узнаешь что я просил. ![]() По поводу остального. Даже комментировать не буду. Почти со всем не согласен.
0
|
|||
|
|
|||
| 02.03.2024, 17:46 | |||
|
1. это чистый эзопов язык. 2. все равно нужно описание, ибо не понятно, что я хочу: получить один байт или несколько или весь файл, и что такое это байт, и т.п. Вопрос куча и приходится читать определение, а значит лезть в код. А лезть в код, это значит лезть в болото.
0
|
|||
|
|
||||
| 02.03.2024, 19:08 | ||||
|
Подсказки не появляются сами собой! Это двойные стандарты? Подстраивание ситуации под себя? Или может что-то еще? Если бы было больше байта, функции логичнее дать имя GetFileBytes() или GetFileData(). А вот что делает функция f1234() совершенно не понятно. Может она возвращает число 1234?
0
|
||||
|
Кормпилятор
|
||||
| 03.03.2024, 00:43 | ||||
|
а стандарт - больше похож на бумагу, которой можно подтереться, т.к. там просто запечатлено то, что было в компиляторах того времени(что пишут обычно в книжках по бейсику). И когда люди пишут стандарт языком "больше бумаги - чище задница" то примерно так оно и получается, что это больше бюрократия и формальность нежели свод каких-то принципов и актуальных требований. GOTO не убрали ни из Паскаля, ни из Си, поэтому не вижу смысла убирать его, однако числовые метки, GOSUB и всякое старье типа PLAY и касательно "световых перьёв", надо бы выпилить и заменить чем-то более актуальным, например звуковой библиотекой и работой с тач скрином(если мы используем планшет) именно в современном стандарте языка если бы он сущестовал. По поводу Однако есть пределы и не любой код можно портировать без переписывания. И на самом деле все эти опции - очень суровый перебор. Достаточно было двух режимов FB и QB. Т.е. Lite можно было не включать, всё что там есть из различий можно было делать директивами в режиме FB. однако бюрократы в, трещащей на тот момент по швам, стране посчитали, что насрать на актуализацию стандарта и гораздо проще отменить всякие сроки давности. Чтобы ты понимал это равносильно снятию ограничения президентских сроков в конституции, примерно тот же "эффект". Именно поэтому документ дошёл до нас в архивном виде документа СССР актуализированного 1 раз с 89 по 92-й, т.е. времён DOS и текстовой Windows 2.0. И даже тогда умные люди уже не использовали GOSUB. Который точно так же являлся инструментом сугубо более ранних бейсиков, ещё не успевших технически развиться до процедур с функциями. GOSUB включили туда чисто для совместимости, а GOSUB-у нашли новое применение и перенесли в плоскость событий. И это всё там обозначено: Это 1988 год. Т.е. уже тогда понимание рудиментарности GOSUB было отчётливое. Ну и опять же этот стандарт актуален лишь в отсталой в IT плане стране типа России. В миру его отозвали.
0
|
||||
|
Кормпилятор
|
|||
| 03.03.2024, 01:17 | |||
|
Так бывает, когда кто-то решает, что проще взять чужие библиотеки и включить их в ЯП в качестве "внутренних" функций. Как понимаешь переписывать подобные работы они с си на бейсик не будут ибо нет соотв. компетенций. Добавлено через 20 минут а вот пара сотен - заставят человека облысеть, т.е. как хулиган хочет чтобы кодер постоянно лазил по документации. Сущности без имени это отдельная категория, причём чисто психологически, это постоянные лишние сверки, трата времени и внимания. Чтобы представить себе последствия достаточно представить себе кепчи, ты быстро хочешь написать запрос в гугл и тут тебе вылезает кепча, ты её и так дрючишь и сяк дрючишь, появляется заново и всё, протрахавшись в итоге с кепчей минуты две появляется вожделенная строка поиска, а вот что спросить хотел - уже и не помнишь. То же самое, те же последствия. Думаю в "современном мире" было у каждого.
0
|
|||
|
|
|||
| 03.03.2024, 01:40 | |||
|
А если их сотни с ничего не значащими именами? Мне приходилось анализировать код после обфускатора (никакой документации ответственно не было). У всех функций, переменных, массивов, их индексов и т. д. числовые имена. Анализ кода требовал предварительно разобраться что и для чего нужно и изменить имена на понятные. Это заняло очень много времени. Поэтому я не понимаю зачем вносить путаницу используя ничего не значащие имена? Это в дальнейшем создаст сложности при доработке кода.
1
|
|||
|
|
||||||||
| 03.03.2024, 11:47 | ||||||||
|
Более того, если бы язык запрещал создавать эзопов язык, то по формату имени мог бы делать полезную работу. К тому же не потребовались бы ключевые слова вида: function и т.п., так как из самого имени ясно с чем мы имеем дело. То есть язык можно сильно упростить.
0
|
||||||||
|
1022 / 312 / 17
Регистрация: 21.01.2023
Сообщений: 548
|
|||
| 03.03.2024, 12:17 | |||
|
0
|
|||
|
|
|||
| 03.03.2024, 12:54 | |||
|
Ну и еще можно добавить: а как же все эти имена, которые определяют тип в basic: myvar% и т.п.? То есть компилятор знает некий формат имени сущности, по которому определяет её тип. Это шаг в нужном направлении.. Добавлено через 13 минут Добавлено через 3 минуты А нынешние программисты как-будто соревнуются между собой - кто напишет более непонятный код. Более того, говорят, что комментарии не нужны, ведь код настолько самоочевиден. Если бы я был руководителем, то не взял бы на работу такого человека. Работа в полиции это не только погоня за преступниками, но 90% времени - бумажная работа, отчеты, рапорты и пр. И программисты должны не только за чашечкой кофейку придумывать алгоритмы, но писать документацию.
1
|
|||
|
0 / 0 / 0
Регистрация: 21.12.2014
Сообщений: 65
|
|
| 03.03.2024, 13:49 [ТС] | |
|
0
|
|
|
1022 / 312 / 17
Регистрация: 21.01.2023
Сообщений: 548
|
|
| 03.03.2024, 14:22 | |
|
0
|
|
|
|
||||||||
| 03.03.2024, 14:54 | ||||||||
|
Код станет совершенно непонятным? Даже в чужом коде для меня будет очевидно что функция GetFileByte() читает байт из файла. А f1234() может делать все что угодно. В разных программах функция f1234() может выполнять совершенно другие задачи. Короче сами все усложняете. Код должен быть таким чтобы как можно реже заглядывать в документацию для уточнения того или иного момента. Без разницы для чего функция, вызываем любую и может угадаем и что-то как-то будет работать!
0
|
||||||||
|
|
||||||
| 03.03.2024, 15:25 | ||||||
|
0
|
||||||
|
COM‐пропагандист
|
|||||||
| 03.03.2024, 15:30 | |||||||
0
|
|||||||
|
|
|||
| 03.03.2024, 16:04 | |||
|
Добавлено через 10 минут int f1234(bla, bla)// функция делает то-то и то-то { var v1//переменная для .... bla bla } Ну хотя бы вот это. Или вот этому даже надо учить?))
0
|
|||
|
|
||||||
| 03.03.2024, 16:31 | ||||||
|
У вас очень много свободного времени и не знаете чем себя занять? Что еще нового расскажите?
0
|
||||||
|
|
|
| 03.03.2024, 17:32 | |
|
locm,
Я говорю только о том, что совершенно недостаточно "самодокументируемых" имен, для понимания работы системы. Вы можете писать как привыкли, но обязаны создать описание на человеческом языке. Без вербльюжьей нотации.
0
|
|
|
930 / 257 / 100
Регистрация: 21.10.2012
Сообщений: 621
|
|
| 03.03.2024, 18:29 | |
|
Locm, CoderHuligan в чем-то прав. GetFileByte() не явно читает байт файла. Вот GetByteFromFile() более понятна. Каждый под себя, под свои привычки, придумывает имена процедур и функций. И однозначно их не всегда можно интерпретировать.
Комментарий в любом случае нужен, но в разумных пределах. А не как на форуме разжевывать каждую строку, и даже каждую переменную. И по поводу документации CoderHuligan прав. Она нужна! На некоторых предприятиях закупалось оборудование без нужной документации, и в итоге это оборудование так и не использовалось, никому не хотелось изучать его "кишки". Тем более если под них нужно было писать управляющую программу. И даже бывало такое, есть исходный код программы к оборудованию, но нет комментариев в нем и другой информации. А его нужно доработать, т.к. он не совсем то, что нужно делает с оборудованием. Т.е. программа была написана под управление другими функциями. И нахрен он никому не нужен такой код. И оборудование простаивает. Это было и раньше, это есть и сейчас. А все из-за того, что начальники, закупающие оборудование пытаются сэкономить.
1
|
|
|
|
||
| 03.03.2024, 19:13 | ||
|
Именовать функции можно как удобно, но когда имя бессмысленно это очень плохая практика программирования. markiza-inc, посмотрите что предлагает CoderHuligan. Именовать функции как угодно без смысловой нагрузки и заполнять этот пробел документацией. Это неправильно. Документация нужна, но код должен быть таким чтобы как можно реже к ней обращаться, а не на каждом шагу потому что имена в коде ничего не означают.
1
|
||
|
930 / 257 / 100
Регистрация: 21.10.2012
Сообщений: 621
|
|
| 03.03.2024, 19:25 | |
|
locm, так я и написал, что он прав частично, именно про комментарии и документацию. А именовать "бессмысленно" - бессмысленно! Именовать переменные и функции нужно в соответсвии со здравым смыслом. Они должны быть понятны. Если я уж про GetFileByte() написал, что она не совсем понятна, то f1234() и подавно бестолковое название.
0
|
|
| 03.03.2024, 19:25 | |
|
Отладка кода Отладка кода Отладка кода Отладка кода Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|