|
0 / 0 / 0
Регистрация: 21.12.2014
Сообщений: 65
|
|
Отладка кода (программы) во FreeBasic21.02.2024, 01:11. Показов 17669. Ответов 224
Уважаемые программисты. Подскажите - как производится
В QB это делалось просто. В меню Debug командой toggle breakpoint метится строка до которой проверить. После запуска идет проверка, отмечаются ошибки, проблемы. У меня во FreeBasic этот метод не работает. Программа на метку не реагирует, действия не совершаются. Прошу помощи.
0
|
|
| 21.02.2024, 01:11 | |
|
Ответы с готовыми решениями:
224
Грамотная отладка программы, подмога в структуризации кода Отладка программы в Delphi(нужно подредактировать текст чужой программы) |
|
Кормпилятор
|
|||||||
| 04.03.2024, 01:50 | |||||||
|
стали фактически новым языком с отголосками старого. Это печально в части влияния на комьюнити и исходники - но ничего не поделаешь. Но это ладно, не об этом речь. Гораздо важнее, что ты упускаешь одну деталь, постоянно лазать в описание или в 98% случаев не лазать, а понимать по венгерщине. Колоссальная экономия времени потому что не нужно переключать внимание постоянно. Думаю locm просто максимально сократил, но чтобы хоть какой-то смысл оставался. Ну т.е. допустим оператор PutPixel, можно написать PutPixelOnTheScreen, ну и как бы понятно почему, хотя вариант GetByteFromFile() мне нравится больше. Это такая своеобразная балансировка чтобы печатать поменьше, но оставаться в более менее понятном виде. Добавлено через 2 минуты Добавлено через 2 минуты ![]() Добавлено через 10 минут а в переводчик и ещё чаще. На родном - разумеется надо делать, осталось объяснить это людям из отрасли, до них как-то туго доходит. Документация вообще это отдельный разговор, это накопленные знания об исследованиях в сжатом виде, она помогает анализировать, подмечать взаимосвязи. Есть термин наукоёмкость, трудоёмкость. Вот это про документацию, в ней заключена цена всей той работы, что делает программист. Если кто-то думает иначе - вырубите интернет и попробуйте без документации, вообще без любой. Тото и оно...
1
|
|||||||
|
930 / 257 / 100
Регистрация: 21.10.2012
Сообщений: 621
|
|
| 04.03.2024, 05:24 | |
|
Еще многое зависит от того: кто и для кого пишет документацию.
Пример из жизни. Закупило предприятие оборудование фирмы Siemens, станки Sinumerik разного профиля. Немцы это оборудование устанавливали и запускали в работу. Некоторое время еще и сопровождали. Документация была на русском языке. Все как бы хорошо, но было ощущение, что чего-то не полностью описано. Обратился к немцам. Дайте ваш экземпляр посмотреть, а то наш немного запортился, надо мол восстановить. Дали свой экземпляр. А у них он более подробный оказался. В нашем экземпляре были страницы, где заполненность была 60%, иногда доходило до 30%. А у них почти все страницы полные, с разными подробностями и расшифровками. Но документация это еще не все чудеса. У станков два языка прописаны, немцы переключали на немецкий, когда что-то делали на них, а мы на русский. Однажды, когда немец ковырялся во внутреннем ПО станка, я просто обратил внимание что менюха у них более объемная. Оказалось, что в немецкой версии ПО больше разных настроек и прибамбасов, больше параметров можно изменять и настраивать. Этим потом и пользовался, хорошо, что в институте изучал немецкий язык ... Так что документацию иногда специально ухудшают, чтобы зависимость от своей фирмы установить и деньги хапать за малейшие подробности.
1
|
|
|
Кормпилятор
|
||
| 04.03.2024, 10:39 | ||
|
Немцы вообще такие люди, они всегда работают на качество. Крысить, думаю, могли по разным причинам, может чтобы не лазили лишний раз в станок, чтобы не запороли случайно. А может конкуренции боятся.
1
|
||
|
|
||
| 04.03.2024, 12:04 | ||
|
0
|
||
|
Кормпилятор
|
||
| 05.03.2024, 06:46 | ||
|
При хорошей документации, модули воссоздаются(переписываются) "из праха" за считанные часы.
И да коллеги. Рекомендую иметь бумажные копии своих исходников, ну тех, что особо важны. На случай выхода из строя диска. Держать на каждом харде по копии - довольно суетливо в плане синхронизаций, особенно если это некоторых размеров кодархив. Да мне сейчас скажут про гитхабы и прочие "порнохабы", но я привык держать своё у себя, а не где-то там в облаках у дяди Васи. Интернет есть не всегда, да и за безопасность лучше отвечать лично. уже рассказывал. Это в общем случае. Ты про чтение пишешь, а я про создание. Это два разных процесса.
0
|
||
|
782 / 300 / 17
Регистрация: 21.01.2023
Сообщений: 525
|
||
| 05.03.2024, 08:22 | ||
|
1
|
||
|
|
|||
| 05.03.2024, 11:44 | |||
|
Лучше купить несколько дисков (HDD / DVD) для резервных копий и в облаке хранить в архиве с паролем.
0
|
|||
|
Кормпилятор
|
||||
| 05.03.2024, 12:39 | ||||
|
все они были записаны на минимальной скорости, с проверкой после записи и хранились в идеальных условиях(в темноте, просто лежали - к ним даже не прикасался). И это были CD(Verbatim), не DVD, что надёжнее. Случай был не единичный. После этого храню архивные записи только на жёстких дисках, а особо важные исходники на бумаге. вероятность чего падает с падением качества жёстких дисков(раньше встречались 1 ошибка на 10^-16, сейчас уже почти все 1 ошибка на 10^-14, особо наблюдательные, по идее, должны были это заметить, это случилось за последние 10 лет, ну даже чуть больше). Добавлено через 1 минуту
0
|
||||
|
782 / 300 / 17
Регистрация: 21.01.2023
Сообщений: 525
|
||
| 05.03.2024, 13:46 | ||
|
0
|
||
|
COM‐пропагандист
|
||
| 06.03.2024, 05:22 | ||
|
0
|
||
|
Кормпилятор
|
|||
| 06.03.2024, 08:43 | |||
|
"версия 2", "версия 3" и т.п.. Можно в скобках дописывать дату(так часто делал), перестраховка для сохранности. Историю изменений зачастую вообще не надо хранить. Ценны конкретные работы(не версии), а не изменения сами по себе. Изменений может быть хоть 1000, а номер версии изменится один раз или вообще не изменится. Всё не упомнишь, включая состояние кода в момент изменения, он может быть нерабочий или меняется концепт(структура, движок и т.п.). Человек со стороны, который влезет в этап изменений может там вообще нифига не понять. Это всё уже в моменте кодер должен помнить и отрабатывать. Поэтому данные сервисы это тупо понты, высосанные из пальца, причём дешёвейшие. Потому что когда написал и есть что показать - обернул в zip и передал конкретному человеку, на рабочий процесс создания ПО(на сам кодинг) оно вообще никак не влияет, это просто факт. Либо залил zip куда угодно, хоть на гугл диск, хоть на тот же SourceForge, если уж надо расшарить. Все эти сервисы, т.н. "кодерские социалки", создают "видимость активности", приписывая людям несуществующие преференции. Единственная кодерская активность, которую лично я приветствую это выпуск полностью готового ПО, с описанием. Мало кому интересны все пертурбации внутренней кухни. для конечного потребителя.
0
|
|||
|
0 / 0 / 0
Регистрация: 21.12.2014
Сообщений: 65
|
|
| 06.03.2024, 09:18 [ТС] | |
|
Замабувараев,
Quiet Snow, ; Уважаемые, подскажите, как избежать в графическом окне нарушения привязки расчётных значений к значениям графического окна. Есть несоответствие видимое. Задаётся окно в вариантах и с Wiev, и с Window, cо Screen и без. Вывожу для проверки линию на середину окна, но она даже на глаз не соответствует этому. И при выводе графики он начинает смещаться в зависимости от изменения параметров этой графики. Нестабильность математического вывода беспокоит. Знаю что основная (вроде бы) причина именно в Window и Screen. Но и без них не слишком удачно. На что обратить основное внимание?
0
|
|
|
COM‐пропагандист
|
|||||
| 06.03.2024, 09:23 | |||||
|
Добавлено через 3 минуты volchv, покажите ваш код.
0
|
|||||
|
Кормпилятор
|
||||||
| 06.03.2024, 10:02 | ||||||
|
Я под термином изменение имею в виду любое изменение кода, в любой его стадии, переименовал переменную - изменение, написал незаконченную строку(полез за подробностями в другую часть кода) - тоже изменение. При работе с кодом таких изменений тысячи и смысл их хранить - нулевой. Более того никакой гит тебе не пофиксит зависимые изменения, он просто хранит текст и историю его изменений, а каскады зависимостей могут быть весьма обширными и сколько часов\дней\лет может уйти на разбор зависимостей человека, который этот код не писал - вопрос риторический. Пишу о реальных вещах, о чём пишешь ты мне неведомо. Преимуществ того про что ты говоришь - не вижу в упор. Вижу только постоянные зависимости и геморы. Мне это не интересно, я не полезу в чужой код. Этот баг - их заслуги. Как хотят, - так пусть и ищут, балбесы. Уточню, не говорил о багах, не говорил об изменениях в готовом коде, и явно не говорил о том, что код всегда независимый. Доступны любому, не требуют специальных знаний, не требуют специального ПО, не требуют доступа в интернет. Обслуживаются одинаково на любой операционной системе. Пример: пришёл на другое рабочее место, надо "накатывать" всё что тебе необходимо, мне накатывать ничего не надо, вставил флешку - всё сразу есть. хранилище. Если они далеко друг от друга - то никакие гиты им не помогут синхронизировать разработку, они просто не смогут нормально договориться. Ну и да в таких случаях разумеется разумно работать в модульной структуре и избегать пересечений областей компетенций до стадии сборки. Добавлено через 3 минуты но ничего хорошего про них сказать не могу. Это искусственный ремаппинг координат, чего почти всегда не хватает для полноценного перемещения и масштабирования.
0
|
||||||
|
0 / 0 / 0
Регистрация: 21.12.2014
Сообщений: 65
|
||||||
| 06.03.2024, 10:10 [ТС] | ||||||
|
Замабувараев,
'подписи шагов программы на русском убраны,- они у меня в блокноте и здесь искажаются другим шрифтом и не читаются. 'если нужно, я их прямо здесь подпишу
0
|
||||||
|
Кормпилятор
|
|
| 06.03.2024, 10:36 | |
|
volchv, отдельно проверил работу каждого оператора? Я тут зашёл в справку, освежил память.
VIEW - усекает область(Clipping). Не даёт рисовать вне указанной области. WINDOW - преобразование координат. Путём нехитрого теста с обычной линией выясняется, что сначала отрабатывает преобразование координат, а потом срабатывает отсечение. Но отсечение работает в не преобразованных координатах, поэтому если окно меняется - его надо высчитывать руками. UPD: Совсем забыл написать - Window работает "внутри" отсечённого VIEW-ом окна. Это всё, что надо знать об этих двух операторах.
1
|
|
|
0 / 0 / 0
Регистрация: 21.12.2014
Сообщений: 65
|
||||
| 06.03.2024, 10:47 [ТС] | ||||
|
Quiet Snow,
Добавлено через 5 минут Quiet Snow, Теперь попробую с координатами помудрить. Спасибо! Добавлено через 2 минуты Quiet Snow,
0
|
||||
|
Кормпилятор
|
|
| 06.03.2024, 11:00 | |
|
volchv, высчитывай все координаты руками без WINDOW. Используй только VIEW SCREEN для клиппинга.
И геморой сразу уйдёт. Два этих оператора вместе - это ядерная смесь которая тебя путает.
1
|
|
|
0 / 0 / 0
Регистрация: 21.12.2014
Сообщений: 65
|
||
| 06.03.2024, 11:34 [ТС] | ||
|
Quiet Snow,
0
|
||
|
|
||||
| 06.03.2024, 13:33 | ||||
|
2
|
||||
| 06.03.2024, 13:33 | |
|
Помогаю со студенческими работами здесь
180
Отладка кода Отладка кода Отладка кода Отладка кода Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель здравосохранения 14. Собираем всю модель вместе.
anaschu 22.05.2026
Модель собрана. В будущих постах на видео я покажу, как она работает.
В этом посте запускаем её, проверяем результаты и разбираем что можно с ней делать дальше.
Перед запуском проверяем. . .
|
Модель здравоохранения 13. Добавление самой системы здравоохранения.
anaschu 22.05.2026
В предыдущем посте мы настроили болезни. Теперь добавим события, которые управляют здоровьем всего коллектива, а также настроим рабочий график и расчёт финансов.
В Main создаём четыре события. . . .
|
Модель здравоохранения 12. добавление болезней через ресурпул, как аварии
anaschu 22.05.2026
Болезни — это ключевая часть нашей модели. Нам нужно, чтобы работник периодически уходил на больничный, его задание при этом зависало, а после выздоровления работа возобновлялась. Реализуем это двумя. . .
|
Модель здравоохранения 11. Создаём классы Задание и Работник
anaschu 22.05.2026
В AnyLogic каждая заявка и каждый ресурс — это объект определённого класса. Нам нужно создать два класса: Задание (заявка) и Работник (ресурс).
Класс Задание
В дереве проекта нажимаем правой. . .
|
|
Модель здравоохранения 10. Новая модель, смотрим, как добавлять логические блоки, и что писать внутри
anaschu 22.05.2026
Открываем AnyLogic, создаём новый проект. В дереве проекта появляется класс Main — это главный агент, в котором будет жить вся наша логика.
Палитра блоков
Слева находится палитра. Нас интересует. . .
|
модель ЗдравоСохранения 9. Новая модель, разбираемся, как ее создавать
anaschu 22.05.2026
В этой серии постов мы построим модель небольшого рабочего коллектива. Сотрудники получают задания, выполняют их, иногда болеют — и мы хотим посчитать, сколько это стоит компании.
Метод. . .
|
[golang] Linked list
alhaos 22.05.2026
Связный список / Linked list
Связный список структура данных позволяющая хранить список значений, в отличии от массива в памяти хранится не сплошным куском, а отдельными частями которые ссылаются. . .
|
[golang] Двоичная куча, min-heap
alhaos 20.05.2026
Двоичная куча
Двоичная куча — структура данных, которая всегда держит самый важный элемент наготове.
Представьте очередь к хилеру в игре, и очередь из игроков в приоритете те у кого меньше. . .
|