|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|||||||||||
Изучение основ FreeBasic в сравнении с PowerBasic10.10.2022, 22:17. Показов 25131. Ответов 218
Метки freebasic;изучение основ (Все метки)
Всем добра и мира!
К сожалению, PowerBasic прекратил своё развитие вследствие смерти его создателя и главного (а скорее всего, единственного) разработчика Роберта Зейла в 2012-ом году. К настоящему времени последние надежды на его развитие окончательно угасли. В связи с этим я решил приступить к изучению основ FreeBasic'а. В этой ветке форума буду задавать вопросы, возникающие у меня в процессе ознакомления с этим ЯП. Как говорится, всё познаётся в сравнении. Ну вот и буду изучать FreeBasic, опираясь на определённый опыт ЛЮБИТЕЛЬСКОГО программирования на PowerBasic'е. Буду очень благодарен за любую помощь. Итак, первый возникший у меня вопрос. Каким образом в структурах FreeBasic'а появилась возможность использовать динамические строки? В PowerBasic'е это строго запрещено. Можно использовать только строки фиксированной длины. Вот 2 работающих (с одним и тем же результатом на консоли) кода для сравнения: FreeBasic
1
|
|||||||||||
| 10.10.2022, 22:17 | |
|
Ответы с готовыми решениями:
218
|
|
Модератор
|
||
| 15.11.2022, 17:41 | ||
|
2
|
||
|
|
|||
| 15.11.2022, 17:46 | |||
|
Для примера использование функции qsort из MSVCRT.dll Изучение основ FreeBasic в сравнении с PowerBasic
1
|
|||
| 15.11.2022, 17:57 | ||
|
0
|
||
|
|
||
| 16.11.2022, 12:20 | ||
|
И вот, что я хочу сказать и про PowerBasic и про Free Basic и др. подобные, в том числе Qbasic и более свежие версии от майкров, в том числе Net. Только не обижайтесь. Лично я считаю, и это мое чисто личное мнение, даже убеждение, что все эти бэйсики на самом деле вовсе не бэйсики! А что же они такое? Честно говоря - не знаю, по всей видимости клоны друг друга в той или иной степени. Они все практически похожи друг на друга по структуре, так что взглянешь на код - там все ясно. Можно переходить с одного языка на другой очень быстро потому что это все практически одно и тоже. А что же тогда такое настоящий бэйсик? Для меня лично это примерно первый дартмутский вариант о Куртца и Кемени. С числовыми метками строк, с почти полным отсутствием структуризации (ограниченным возможностями ключевого слова if). С неполноценными процедурами, которые запрещали рекурсию, зато позволяли иметь быстрый код. Вот это именно и есть то, что я лично называю basic! Всё остальное это уже ДАЛЕКО не basic! То есть не "Beginner’s All-purpose Symbolic Instruction Code" что в переводе - "Универсальный код символических инструкций для начинающих". Тут самое ключевое слово: "для начинающих". На него взглянешь: сразу понятно, что это basic! А мы сейчас предлагаем программировать начинающим на языках, которые были подогнаны к профессиональному уровню, к определенной парадигме. Что кстати, в значительной степени привело к негативным последствиям для быстроты работы кода. Да, FB позволяет как бы эмулировать к примеру числовые номера строк, но другие плюшки сразу же отвалятся, а сам компилятор останется тяжеловесным и напичканным разной "дурью".. И куда податься бедному вечно-начинающему?.. Либо писать свой компилятор, либо ждать, пока его кто-то напишет через 200 с небольшим лет..
1
|
||
|
COM‐пропагандист
|
|||||
| 16.11.2022, 13:17 | |||||
|
COM — это просто диспетчеризация вызовов по виртуальной таблице функций. COM есть везде, он неубиваем, потому что все мейнстримовые языки программирования создают VTABLE у объектов, а если не создают, как например си, так программист делает VTABLE руками. В линуксовом ядре постоянно применяются интерфейсы и наследование. Добавлено через 38 минут Во‐вторых, это было нужно для диалогового режима, и в 2022 году этот режим умер.
2
|
|||||
|
|
||||||
| 16.11.2022, 14:03 | ||||||
|
0
|
||||||
|
COM‐пропагандист
|
|
| 16.11.2022, 14:14 | |
|
0
|
|
|
|
|
| 16.11.2022, 14:34 | |
|
Повторюсь, таблица функций это не полнофункциональный COM. https://ru.wikipedia.org/wiki/... ject_Model
Изначально задача была в вызове x86 ActiveX DLL из x64 процесса. Чем таблица функций в этом поможет? Нужна поддержка со стороны ОС и как понимаете это гораздо больше чем VTABLE.
1
|
|
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
||||||||||||
| 16.11.2022, 15:52 [ТС] | ||||||||||||
|
Ну короче, пока печаль ![]() Не получается каменный цветок у Данилы-мастера ![]() Хотя, если следовать аллегории известного анекдота, то именно каменный цветок-то как раз и получается ![]() Файлы .DLL и .TLB вроде бы смастерил, но вот в другой программе получить ссылку (создать объектную переменную) на этот СОМ-сервер пока не могу ![]() Ну и следовательно, не понятно, работоспособный это компонент или нет. Создавал вот так: PowerBasic
Пока пробую обойтись без регистрации в реестре. Просто открываю файл .TLB в СОМ-браузере. Там автоматически пишется код. Ну а дальше (пока неудачно) пытаюсь получить ссылку на этот объект в объектную переменную. Вот так сейчас выглядит мой СОМ-клиент: PowerBasic
0
|
||||||||||||
|
COM‐пропагандист
|
||
| 16.11.2022, 16:03 | ||
|
1
|
||
|
COM‐пропагандист
|
||
| 16.11.2022, 17:16 | ||
|
1. Унаследоваться от IDispatch. 2. Иметь библиотеку типов. Всё остальное делается не на языке программирования, а средствами администрации ОС.
0
|
||
|
|
||
| 16.11.2022, 17:45 | ||
|
Весь все началось с сообщения Изучение основ FreeBasic в сравнении с PowerBasic Прочитайте внимательно что там написано.
0
|
||
|
COM‐пропагандист
|
||
| 16.11.2022, 19:32 | ||
|
0
|
||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|||||||
| 16.11.2022, 22:54 [ТС] | |||||||
|
СОМ-сервер у меня всё-таки получился. Пришлось зарегистрировать его в реестре, иначе сумел. Зарегистрировал с помощью консольной команды:
Как бы мне теперь этот СОМ-компонент ещё и во FreeBasic'е запустить? Вот итоговая связка (сервер-клиент), которая в PowerBasic'е реально работает.
0
|
|||||||
|
COM‐пропагандист
|
|||||||
| 17.11.2022, 00:18 | |||||||
Сообщение было отмечено Power_Basic как решение
Решение
1
|
|||||||
| 17.11.2022, 00:18 | |
|
Лабораторная работа на изучение основ работы с debug.exe Лабораторная работа(Изучение основ.Одномерный и двумерный массивы.Процессы) Проблема с Imagelist в PowerBasic 10 FreeBASIC Уйти с freebasic Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности.
Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|