:: Доска объявлений
Ищу коллег
Vlad

Сообщений: 850
Откуда: Запорожье
Дата регистрации: 28.09.2000
Группа для совместной работы в сфере Visual Foxpro.

1. Цель
Создание каркаса для быстрой разработки надежных файл-серверных
приложений на основе существующих библиотек классов, функций, ...
Имеется несколько каркасов (FrameWork).
Первый дал Майкрософт с 6-ой версией. В принципе весь FFC можно считать
каркасом. Однако он плохо документирован, ряд вопросов в нем не решен,
и прочее.
Остальные framework`и у нас малоизвестны.
У "них" наиболее популярными являются:
Visual Fox Express
Visual Promatrix
Visual Maxframe
Codebook for Mere Mortals
Я ни один не видел. Знаю, что кое-какие из них написаны на ФоксПро.
Codebook, вроде, public domain. Остальные много стоят.


2. Стартовый "капитал"
За основу берутся библиотеки Дугласа Хеннига (D.Hennig фирма StoneField).
Они опубликованы в журналах FoxTalk английского и русского изданий.
На сегодня имеется более 20 различных штук.
Хеннигy Майкpософт дал титyл MVP (most valuable professional).
С использованием своих классов Дуг написал
Stonefield Database Toolkit (SDT), которая:
Winner, 2000 Developer's Choice Award for "Best Utility" ,
Winner, 2001 Universal Thread Members Choice Award for "Best Desktop Tool".
Используется, также, и FFC.


3. Инструменты
Visual Foxpro 6.0 , 7.0
Visual Source Safe 6.0 (по желанию)
Multi-Edit 8.0 , 9.0 (по желанию)


4. Состояние проекта на сегодняшний день
Сделана библиотека для первого слоя базовых классов VFP.
BASE_.PRG - 844 кб, 23 класса, 38 методов.
Она, в общем, является аналогом SfCtrls.VCX , входящей в SDT.
О необходимости подобной библиотеки можно прочитать в книге
М.Базияна на стр. 522, 610 и ниже (других авторов)...
"Первое, что стоит сделать, так это создать библиотеку, куда положить
классы, субклассированные от всех (опять же с понятными исключениями)
встроенных классов VFP. Второе, что следует сделать, это забыть о
существовании встроенных классов и пользоваться только этими "первыми"
субклассами и их производными."
"A lot of people do the following when setting up their class library:
1) Subclass all of the native VFP classes that can
be subclassed into your own "base class layer."
2) Subclass all of your "base class" classes one
more time to make your "working class layer."
Then do most, if not all, of your base modifications starting
at the working class layer. This gives you a "clean" layer
of classes in your "base class layer".
You can usually get away with just the base class layer
of subclasses, but there are times when it is very handy
to have that extra layer of classes between you and the
native VFP classes."

Для BASE_.PRG сделано:
MENU_.PRG - класс меню на правую кнопку мыши.
Это почти аналог _ShortCutMenu.VCX из FFC
MENU_X.PRG - существенно улучшенный MENU_.PRG 18 кб, 1 класс, 10 методов
MESSAGE.PRG - класс MessageMgr для создания окон с сообщениями
22 кб, 3 класса, 10 методов
UTILITY.PRG - класс Utility_ с утилитами для приложения.
класс CommonDialog_
110 кб, 2 класса, 52 метода

Библиотека для обработки ошибок в программе.
ErrorMgr.PRG - 138 кб, 4 класса, 42 метод.
Она лучше _Error.VCX из FFC и серьезно повышает надежность
работы приложений.
Используется в событиях Error библиотеки BASE_ для реализации идеи
Дуга Хеннига "цепь ответственности".

Сделано также
Applic.PRG - Управление формами, создание меню приложения...
25 кб, 1 класс, 10 методов
MainForm.PRG - Data entry form class
56 кб, 1 класс, 26 процедур
Button_.PRG -
Environ.PRG - Сохраняет SET`ы при старте программы и
восстанавливает их в конце работы.
Registry.PRG - Handle the Windows 95/NT Registry. Походит на
Registry.VCX из FFC
FoxTools.PRG - Оболочка FoxTools.FLL для демонстрации
"цепи ответственности" и использования ErrorMgr.PRG
29 кб, 1 класс, 29 процедур
FClass.PRG - A wrapper for low-level file functions.
Для демонстрации работы команды ERROR с ErrorMgr.PRG
18 кб, 1 класс, 10 процедур
Err_Rus.PRG - Перевод на русский язык ряда сообщений об ошибке
41 кб.
InGrid.PRG - Поиск с уточнением в гриде (incremental search).
Модернизированный модуль Scott`а Mackay
16 кб.

с 17.01.2003 по 05.03.2003 :
- Для библиотеки ErrorMgr сделана таблица Messages.DBF (806 кб) с
описанием ошибок на русском языке. Данные взяты из русского хелпа к VFP 3.0
- Написан алгоритм проверки полноты задачи при ее загрузке.
Утилита prg4wk_1.PRG (4 кб), к нему, создает процедуру, содержащую перечень
файлов любых программ, для использования в блоке проверки полноты задачи.
Утилита prg4wk_2.PRG (10 кб) создает функцию для восстановления отсутствующих
свободных таблиц. Сгенерированная функция может быть вызвана при загрузке
программы и из класса обработки ошибок.


5. Производительность труда
Я довел до рабочего состояния утилиту Тома Реттига (T.Rettig) PrgToVcx.PRG
Она позволяет уменьшить дистанцию между PRG-кодированием и VCX-кодированием.
Все упомянутые выше библиотеки есть в двух вариантах (PRG и VCX).
Т.е. вполне доступна следyющая технология:
1) Все, что можно пишем как .PRG. Это позволяет взять пользу от пpиличных
програмистских pедактоpов, Visual Source Safe, ...
2) .PRG -> PrgToVcx.PRG -> .VCX
3) Для наглядного констpyиpования использyем .VCX аналоги
4) По концy п.3 вносим изменения в код п.1, хранящийся в VSS.
5) В рабочие приложения включаем .PRG


6. Затраты и выгоды
На изучение имеющегося материала конечно надо потратить время.
Однако этот код позволяет делать надежные и функциональные системы.
Все имеющиеся библиотеки рабочие... и предоставляются членам группы
в виде исходных текстов.
Судя по нижнему, Д.Хенниг не против использования его кода.
"This scheme has been successfully used in several applications, although
we continue to refine it. I hope you find it useful in your applications."

7. Среда для общения
yahoo-group (http://groups.yahoo.com/group/v_f_p)
и, возможно, (fido7.)su.dbms.foxpro
На сайте группы имеется архив писем и файлов.
На 05.03.2003 зарегистрировано 16 человек.
Средний стаж FoxPro в т.ч. VFP
8.8 3.4 лет


8. Управление группой
Посредством модератора.


9. Анкета от желающих работать
Фамилия
Имя
Отчество (по желанию)
Фамилия английскими буквами
Имя английскими буквами
Резервный адрес по емэйлу (если несколько, то через запятую)
Резервный адрес по фидо (если несколько, то через запятую)
Населенный пункт проживания
Опыт работы с ФоксПро (число лет)
Опыт работы с Визьюэл (число лет)


10. Подписка на яху-группу v_f_p()yahoogroups.com
Делается письмом в адрес v_f_p-subscribe()yahoogroups.com
Новый человек попадает в группу только после того, как модератор
подтвердит подписку с данного адреса.
Посему, одновременно с запросом на v_f_p-subscribe, надо прислать мне
данные по п.9 в адрес v_f_p-owner()yahoogroups.com
Заполнение анкеты является обязательным условием.
Можете также подробнее осветить свой профессиональный опыт в ФоксПро и
написать ваши предложения, но это по желанию.
(В адресах вместо двух скобок надо поставить @)
Ratings: 0 negative/0 positive
RE: Ищу коллег
Denis
Автор

Сообщений: 56
Дата регистрации: 05.01.2001
Hi Vlad

Это всё красиво и интересно. Но в чём собственно результат совместной работы? Если это работа, то в чём заключается вознаграждение или по крайней мере перспектива? Или это ... просто так ?

Денис
Ratings: 0 negative/0 positive


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

On-line: 2 (Гостей: 2)

© 2000-2024 Fox Club 
Яндекс.Метрика