Готов взяться за написание собственного "public domain" клона...
Пишем свой xBase
Moderator: Shaos
-
Shaos
- Admin
- Posts: 24485
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Пишем свой xBase
xBase - это обобщённое наименование языка клонов dBASE (dBASE III PLUS, dBASE IV, FoxBASE+, Clipper, FoxPro).
Готов взяться за написание собственного "public domain" клона...
Готов взяться за написание собственного "public domain" клона...
-
MC68k
- Retired
- Posts: 1328
- Joined: 25 Jul 2011 00:14
- Location: WWW
-
Shaos
- Admin
- Posts: 24485
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
BROWSE вроде можно на самом языке dBASE написать - не вопрос
Какие-то существующие индексы подтягивать - фиг знает, по-моему проще свой индекс изобрести т.к. переиндексировать DBF-файл не является особой проблемой и то как индексы сделаны в существующих xBase мне НЕ нравится - ошибся в USE или поредактировал DBF отдельно от программы и привет - индекс разбежался с файлом, потом обратной связи из индекса в файл нет (индексный файл не содержит никаких ссылок на файл данных).
P.S. Описание форматов файлов xBase: http://www.clicketyclick.dk/databases/xbase/format/
P.P.S. Что точно могу поддержать - PRG (файл с программой на языке dBASE), DBF (файл таблицы базы данных), DBT (файл с мемо-полями для DBF файла с тем же именем).
P.P.P.S. Свои собственные индексы можно спрятать в DBT (расширив таким образом формат DBT).
Какие-то существующие индексы подтягивать - фиг знает, по-моему проще свой индекс изобрести т.к. переиндексировать DBF-файл не является особой проблемой и то как индексы сделаны в существующих xBase мне НЕ нравится - ошибся в USE или поредактировал DBF отдельно от программы и привет - индекс разбежался с файлом, потом обратной связи из индекса в файл нет (индексный файл не содержит никаких ссылок на файл данных).
P.S. Описание форматов файлов xBase: http://www.clicketyclick.dk/databases/xbase/format/
P.P.S. Что точно могу поддержать - PRG (файл с программой на языке dBASE), DBF (файл таблицы базы данных), DBT (файл с мемо-полями для DBF файла с тем же именем).
P.P.P.S. Свои собственные индексы можно спрятать в DBT (расширив таким образом формат DBT).
-
MC68k
- Retired
- Posts: 1328
- Joined: 25 Jul 2011 00:14
- Location: WWW
-
Lavr
- Supreme God
- Posts: 16803
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: Пишем свой xBase
С вот таким же результатом на выходе?Shaos wrote:Готов взяться за написание собственного "public domain" клона...
iLavr
-
Shaos
- Admin
- Posts: 24485
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Пишем свой xBase
Всё будет, но не сразуLavr wrote:С вот таким же результатом на выходе?Shaos wrote:Готов взяться за написание собственного "public domain" клона...
-
Shaos
- Admin
- Posts: 24485
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Вот ещё такой старенький LGPL прожэкт есть на SourceForge:
http://sourceforge.net/projects/xdb/
Это C++ классы для манипулирования DBF/DBT+индексы и возможность интерпретации отдельных DBASE выражений (неполная поддержка функций DBASE III). Можно использовать как основу, правда результат придётся лицензировать под той же LGPL...
P.S. Эта либа (правда версии 2, а не 3) входит в состав дебиян-линукса и судя по хедерам, начала разрабатываться ещё в 1997 году
P.P.S. Чего-то сильно кучеряво написано, хоть и на старом C++ аля прошлый век - некрасиво, так что буду своё городить, красивое...
http://sourceforge.net/projects/xdb/
Это C++ классы для манипулирования DBF/DBT+индексы и возможность интерпретации отдельных DBASE выражений (неполная поддержка функций DBASE III). Можно использовать как основу, правда результат придётся лицензировать под той же LGPL...
P.S. Эта либа (правда версии 2, а не 3) входит в состав дебиян-линукса и судя по хедерам, начала разрабатываться ещё в 1997 году
P.P.S. Чего-то сильно кучеряво написано, хоть и на старом C++ аля прошлый век - некрасиво, так что буду своё городить, красивое...
-
Error404
- Maniac
- Posts: 269
- Joined: 05 Oct 2006 04:45
- Location: Moscow
Писать xBase для PC это как-то неспортивно. Вот для Z80 - это было было бы интересно: впихнуть невпихуемое.
Я так скажу: из классической dBaseII можно было бы структурно выкинуть половину, оптимизировать (Z80 же, + асм), добавить примитивнейший SQL (уровня как в FoxBase было) и что самое главное - сделать чтобы "это" можно было модульно загружать в другие приложения (по типу либ). Т.е. что-то типа бейсика, но вместо математики - работа с таблицами.
Тогда из такого можно было сделать CGI и к уже имеющемуся на Z80 WEB-серверу прикрутить еще и динамические запросы к БД.
Картинка: форум nedopc, хостящийся на Орионе.
Я так скажу: из классической dBaseII можно было бы структурно выкинуть половину, оптимизировать (Z80 же, + асм), добавить примитивнейший SQL (уровня как в FoxBase было) и что самое главное - сделать чтобы "это" можно было модульно загружать в другие приложения (по типу либ). Т.е. что-то типа бейсика, но вместо математики - работа с таблицами.
Тогда из такого можно было сделать CGI и к уже имеющемуся на Z80 WEB-серверу прикрутить еще и динамические запросы к БД.
Картинка: форум nedopc, хостящийся на Орионе.
Всем добра!
-
jdigreze
- God
- Posts: 1388
- Joined: 02 Jan 2006 02:28
- Location: Abakan
-
Error404
- Maniac
- Posts: 269
- Joined: 05 Oct 2006 04:45
- Location: Moscow
