Переключение на Главную Страницу Страницы: [1] 2 3 4 ОтправитьПечать
Очень популярная тема (более 25 ответов) v8 классы (число прочтений - 15378 )
noprogrammer
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 465
Зарегистрирован: 16. Июня 2006
v8 классы
21. Апреля 2008 :: 06:25
Печать  
Добрый день всем.

Может кто подскажешь (ссылку какую даст) где почитать как сделать в 8ке подобие классов 1С++ т.е.  хочется иметь возможность создав ТП на форме  описывать все его процедуры в неком классе дабы не делать этого в каждой форме данного ТП


Р.S. Понимаю что форум мягко говоря не по 8ке но спросить больше негде... вроде весь инет перерыл - чегото ничего не нашел - хотя может плохо искал как обычно..
  
Наверх
wwwICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: v8 классы
Ответ #1 - 21. Апреля 2008 :: 06:32
Печать  
Делай во внешней обработке, просто объявляешь  её методы как Экспорт и всё
Только с наследованием никак.
Есть идея разбирать эти обработки V8Unpack и на основе файла описания собирать из родителей и наследников итоговые классы...
  
Наверх
ICQ  
IP записан
 
lustin
1c++ power user
Отсутствует


1C *.*, ROR, Java - на
этом остановимся

Сообщений: 907
Местоположение: Москва
Зарегистрирован: 20. Октября 2006
Пол: Мужской
Re: v8 классы
Ответ #2 - 21. Апреля 2008 :: 06:33
Печать  
глянь вот тут http://infostart.ru/profile/9621/projects/1640/

может пригодится  Подмигивание
  

бизнес-процесс как техническое задание прекрасно, только у бизнеса нет процессов; у бизнеса есть желание выжить
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8 классы
Ответ #3 - 21. Апреля 2008 :: 06:37
Печать  
Да, я что-то подобное делал по вышеуказанной ссылке.
Но очень коряво, т.к. наследования нет Печаль
Идея с разбором текстов интересная, но ИМХО сложная в реализации Улыбка и не совсем понятны достигаемые результаты Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
noprogrammer
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 465
Зарегистрирован: 16. Июня 2006
Re: v8 классы
Ответ #4 - 21. Апреля 2008 :: 06:41
Печать  
Nick писал(а) 21. Апреля 2008 :: 06:32:
Делай во внешней обработке, просто объявляешь  её методы как Экспорт и всё
Только с наследованием никак.
Есть идея разбирать эти обработки V8Unpack и на основе файла описания собирать из родителей и наследников итоговые классы...


интересует именно наследовании, т.е. хочется как то избавится от одного и того же кода во всех объектах где используется определенное ТП, т.е. хочется при открытии некой формы на котором расположено тпКонтактнаяИнформация - один раз прописать "тпКонтактнаяинформация.Инициализация()" и все... а все методы уже бы выполнялись в классе...
  
Наверх
wwwICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: v8 классы
Ответ #5 - 21. Апреля 2008 :: 06:49
Печать  
Цитата:
Идея с разбором текстов интересная, но ИМХО сложная в реализации  и не совсем понятны достигаемые результаты

На счет сложная не думаю, что всё уж так сложно, после разбора текст модуля обработки получается просто в одном текстовом файле, если экспортируемые свойства реализовывать ввиде переменных, то короме этих файлов обрабатывать ничего не надо. Главное продумать схему наследования, исходники V8Upack есть. Главное чтоб нашелся человек знающий с++ которому были бы нужны классы в 8.
Ну и наследование от встроенных объектов врядли удастся реализовать
  
Наверх
ICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8 классы
Ответ #6 - 21. Апреля 2008 :: 06:53
Печать  
noprogrammer писал(а) 21. Апреля 2008 :: 06:41:
интересует именно наследовании, т.е. хочется как то избавится от одного и того же кода во всех объектах где используется определенное ТП, т.е. хочется при открытии некой формы на котором расположено тпКонтактнаяИнформация - один раз прописать "тпКонтактнаяинформация.Инициализация()" и все... а все методы уже бы выполнялись в классе...

Фактически здесь наследование не нужно, будет просто универсальный класс, которому передается ссылка на ТП, и затем класс в своих методах будет использовать это ТП.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8 классы
Ответ #7 - 21. Апреля 2008 :: 06:58
Печать  
Nick писал(а) 21. Апреля 2008 :: 06:49:
Цитата:
Идея с разбором текстов интересная, но ИМХО сложная в реализации  и не совсем понятны достигаемые результаты

На счет сложная не думаю, что всё уж так сложно, после разбора текст модуля обработки получается просто в одном текстовом файле, если экспортируемые свойства реализовывать ввиде переменных, то короме этих файлов обрабатывать ничего не надо. Главное продумать схему наследования, исходники V8Upack есть. Главное чтоб нашелся человек знающий с++ которому были бы нужны классы в 8.
Ну и наследование от встроенных объектов врядли удастся реализовать

Как ты предполагаешь разруливать виртуальные функции, без них нет смысла.
т.е. и у предка, и у потомка будут методы с одинаковым наименованием, потомок может вызывать метод предка.
Как это разрулить?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
noprogrammer
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 465
Зарегистрирован: 16. Июня 2006
Re: v8 классы
Ответ #8 - 21. Апреля 2008 :: 06:58
Печать  
artbear писал(а) 21. Апреля 2008 :: 06:53:
noprogrammer писал(а) 21. Апреля 2008 :: 06:41:
интересует именно наследовании, т.е. хочется как то избавится от одного и того же кода во всех объектах где используется определенное ТП, т.е. хочется при открытии некой формы на котором расположено тпКонтактнаяИнформация - один раз прописать "тпКонтактнаяинформация.Инициализация()" и все... а все методы уже бы выполнялись в классе...

Фактически здесь наследование не нужно, будет просто универсальный класс, которому передается ссылка на ТП, и затем класс в своих методах будет использовать это ТП.


Пусть так - но как это сделать?! т.е. как сделать так что бы данный класс \обработка могла бы перехватить все события обработчиков ТП ?
  
Наверх
wwwICQ  
IP записан
 
noprogrammer
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 465
Зарегистрирован: 16. Июня 2006
Re: v8 классы
Ответ #9 - 21. Апреля 2008 :: 06:59
Печать  
Возможно ответ где то на поверхности лежит и я его не вижу по причине незнания 8ки..потому и спрашиваю..
  
Наверх
wwwICQ  
IP записан
 
DmitrO
1c++ power user
Отсутствует


ex developer

Сообщений: 579
Местоположение: г. Киров
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: v8 классы
Ответ #10 - 21. Апреля 2008 :: 07:03
Печать  
хм.. наткнулся вот на вашу тему.. интересная ситуация получается..
1. мне хорошо знакома проблема описанная noprogrammer как тема ветки.
2. я в принципе заинтересован в "подобии классов на 8ке"
3. я вобщем-то знаю с++..

хм.. что же делать?.. надо подумать Улыбка
  
Наверх
ICQ  
IP записан
 
noprogrammer
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 465
Зарегистрирован: 16. Июня 2006
Re: v8 классы
Ответ #11 - 21. Апреля 2008 :: 07:05
Печать  
DmitrO писал(а) 21. Апреля 2008 :: 07:03:
хм.. наткнулся вот на вашу тему.. интересная ситуация получается..
1. мне хорошо знакома проблема описанная noprogrammer как тема ветки.
2. я в принципе заинтересован в "подобии классов на 8ке"
3. я вобщем-то знаю с++..

хм.. что же делать?.. надо подумать Улыбка


Досрочный ответ: написать 1С++ для 8ки  Смех
  
Наверх
wwwICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: v8 классы
Ответ #12 - 21. Апреля 2008 :: 07:14
Печать  
Цитата:
Как ты предполагаешь разруливать виртуальные функции, без них нет смысла.
т.е. и у предка, и у потомка будут методы с одинаковым наименованием, потомок может вызывать метод предка.
Как это разрулить?

В итоговую обработку включаются все используемые методы предка с префиксом, и их вызов соответственно переписывается на вызов с префиксом
  
Наверх
ICQ  
IP записан
 
DmitrO
1c++ power user
Отсутствует


ex developer

Сообщений: 579
Местоположение: г. Киров
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: v8 классы
Ответ #13 - 21. Апреля 2008 :: 07:15
Печать  
вопрос к Nick: я не понял общую идею реализации механизма классов, можно кратко описать в чем суть предлагаемой реализации, именно механизм?
  
Наверх
ICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: v8 классы
Ответ #14 - 21. Апреля 2008 :: 07:22
Печать  
DmitrO писал(а) 21. Апреля 2008 :: 07:15:
вопрос к Nick: я не понял общую идею реализации механизма классов, можно кратко описать в чем суть предлагаемой реализации, именно механизм?


1. Предки и наследники - внешние обработки
2. Есть текстовый файл типа defcls.prm - описывает структуру наследования
3. Есть Метод в общем модуле типа СоздатьЭкземплярКласса(<сИмяКласса>)
-------------------------------------------------------------
4. Есть механизм который на основе файла описания (2) и файлов классов (1) собирает итоговые обработки - файлы реализации классов
(как вариант вообще внешниее приложение)
  
Наверх
ICQ  
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 3 4
ОтправитьПечать