Переключение на Главную Страницу Страницы: [1] 2 3 ... 6 ОтправитьПечать
Очень популярная тема (более 25 ответов) icpp: Подготовка релиза (число прочтений - 32041 )
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
icpp: Подготовка релиза
22. Августа 2008 :: 16:17
Печать  
artbear

Есть предложение - завершить текущий цикл разработки и выпустить релиз.
В соответствии с этим:

1. trunk (ствол) icpp объявляем консервативным
2. в соответствии с п.1 запрещаются любые коммиты, не связанные с минорными правками мелких багов
3. останавливается добавление нового функционала, кроме независимых незначительных правок

Акцентируемся на тестах и документации.

Период стабилизации - примерно две недели.
Думаю, хватит.

Если есть какие-либо возражения или комментарии, готов, конечно, обсуждать.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


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

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: icpp: Подготовка релиза
Ответ #1 - 25. Августа 2008 :: 03:42
Печать  
Как раз работаю над одной новой фичей - добавление произвольных свойств к контексту.
http://www.1cpp.ru/forum/YaBB.pl?num=1219216486/18#18
Кстати, что скажешь? Там ниже более новый вариант, его посмотри.

Больше никаких новинок нет.
Согласен на подобную подготовку.
  

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


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: icpp: Подготовка релиза
Ответ #2 - 25. Августа 2008 :: 07:52
Печать  
Ну смотри: почему я хочу выпустить релиз сейчас?
Потому, что фактически мы активно тестируем и документируем уже месяц.
Не хотелось бы чего-то сейчас жахнуть так, чтобы снова этот месяц потерять.

По твоему предложению:
Ну, в принципе, это в духе Перехватчика; наверное совместно использовать будет вполне удобно.
Но вот TurboBL - это краеугольный камень.
Плюс, допустим, мне (или кому-то еще) не нужно такое расширение контекста.
Т.е. это должен быть опциональный механизм, запускаемый пользователем.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: icpp: Подготовка релиза
Ответ #3 - 25. Августа 2008 :: 07:55
Печать  
artbear

Кстати, у меня есть подозрение, что подобную добавку реализовать (полностью корректно) непросто.

Может быть, ветку в CVS пока сделаешь?
Я мог бы посмотреть на код и проверить свои опасения.
Прежде, чем окончательно публиковать.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


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

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: icpp: Подготовка релиза
Ответ #4 - 25. Августа 2008 :: 08:32
Печать  
kms писал(а) 25. Августа 2008 :: 07:55:
artbear

Кстати, у меня есть подозрение, что подобную добавку реализовать (полностью корректно) непросто.

Может быть, ветку в CVS пока сделаешь?
Я мог бы посмотреть на код и проверить свои опасения.
Прежде, чем окончательно публиковать.

Пожалуйста, ветка TurboBL_AddProps

Я пока лично увидел только один баг - при вызове CGroupContext::Accept содержимое коллекции будет удалено. Думаю над этим.
Остальное вроде в норме, логика есть Улыбка
  

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


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: icpp: Подготовка релиза
Ответ #5 - 25. Августа 2008 :: 08:53
Печать  
artbear писал(а) 25. Августа 2008 :: 08:32:
Пожалуйста, ветка TurboBL_AddProps

Я пока лично увидел только один баг - при вызове CGroupContext::Accept содержимое коллекции будет удалено. Думаю над этим.
Остальное вроде в норме, логика есть Улыбка

Может, сделать чуть другую схему:
- Добавить метод ко всем контекстам, типа "__ДобавитьСвойствоКонтекста(__имя)"
- Дать возможность множественного вызова этого метода (т.е. можно добавлять несколько свойств)

Тогда и никаких векторов не надо - пользователь сам определяет тип значения.
Плюс нет привнесенной зависимости TurboBL от коллекций.

И пользователь сам решает, как именовать свойства, и добавлять ли их вообще.

А Accept у нас уже отрабатывается в TurbоBL - можно что-то придумать.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


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

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: icpp: Подготовка релиза
Ответ #6 - 25. Августа 2008 :: 09:10
Печать  
kms писал(а) 25. Августа 2008 :: 08:53:
artbear писал(а) 25. Августа 2008 :: 08:32:
Пожалуйста, ветка TurboBL_AddProps

Я пока лично увидел только один баг - при вызове CGroupContext::Accept содержимое коллекции будет удалено. Думаю над этим.
Остальное вроде в норме, логика есть Улыбка

Может, сделать чуть другую схему:
- Добавить метод ко всем контекстам, типа "__ДобавитьСвойствоКонтекста(__имя)"
- Дать возможность множественного вызова этого метода (т.е. можно добавлять несколько свойств)

Тогда и никаких векторов не надо - пользователь сам определяет тип значения.
Плюс нет привнесенной зависимости TurboBL от коллекций.

И пользователь сам решает, как именовать свойства, и добавлять ли их вообще.

А Accept у нас уже отрабатывается в TurbоBL - можно что-то придумать.

Не вижу ничего плохохо в наличии подобного постоянного свойства.
Как раз его постоянное наличие позволит просто реализовывать некоторые алгоритмы работы с контекстами, т.е. те, реализация которых сейчас довольно неудобна, на мой взгляд.

ИМХО Как раз решение с коллекциями позволяет пользователю довольно просто работать со своими данными, в т.ч. и управлять набором различных свойств.
Понимаешь, хочется некоторой стандартизации свойств, как, например, у ТП Улыбка

В привязке ТурбоБЛ к коллекциям не вижу ничего страшного - он же входит в состав 1С++, и в нем уже немало дописок из 1С++ Улыбка

А я как раз вижу коллекции как некие цементирующие кирпичики, без которых никак нельзя обойтись в 1С++ Улыбка
Поэтому и тема поиска возникла и т.д

ЗЫ По Ассерту само собой сделаю, я отписался, чтобы не забыть, пока нет теста Улыбка
  

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: icpp: Подготовка релиза
Ответ #7 - 25. Августа 2008 :: 09:11
Печать  
kms писал(а) 25. Августа 2008 :: 08:53:
Тогда и никаких векторов не надо - пользователь сам определяет тип значения.

Так у нас и в коллекции АссоциативныйВектор может храниться любое значение, чем я и воспользовался в данном случае Улыбка
  

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


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: icpp: Подготовка релиза
Ответ #8 - 25. Августа 2008 :: 09:31
Печать  
Ну, ты, конечно, думай.
Я - так за более изолированный дизайн, с меньшим количеством связей.

Кстати, а что будет, если в моем ГК уже есть свойство "_ДопСвойства".
Элемент формы, например? Или банальная переменная?

--

Про поиск: reverse, rotate или replace еще не захотелось? Подмигивание
Мне очень, очень нужны быстрые предикаты...

--

Да.
А про свойства контекста - такая мысль посетила.

Что есть групповой контекст? - это просто набор контекстов.
Что тогда мешает вместо добавления свойств в ГК добавлять контекст целиком?

В этом случае вообще достигается гибкость неимоверная, т.к. ты можешь расширять функциональность ГК не только свойствами, но и методами.
При этом добавляя любое количество свойств и методов.

Другое дело, что это не совсем ООП; скорее, это вариант реализации АОД, или концепция примесей, или концепция стратегий (типа шаблонных стратегий в C++).
В зависимости от использования.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


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

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: icpp: Подготовка релиза
Ответ #9 - 25. Августа 2008 :: 11:07
Печать  
kms писал(а) 25. Августа 2008 :: 09:31:
Ну, ты, конечно, думай.
Я - так за более изолированный дизайн, с меньшим количеством связей.

Внутренний дизайн будет изолирован, зато во внешнем интерфейсе будет бардак Печаль
В данном случае мне нравится именно концепция доп.свойств как коллекции этих свойств.

kms писал(а) 25. Августа 2008 :: 09:31:
Кстати, а что будет, если в моем ГК уже есть свойство "_ДопСвойства".
Элемент формы, например? Или банальная переменная?

ИМХО рантайм-ошибка. Нужно тест написать Улыбка

kms писал(а) 25. Августа 2008 :: 09:31:
Про поиск: reverse, rotate или replace еще не захотелось? Подмигивание
Мне очень, очень нужны быстрые предикаты...

Да, конечно, нужны. Я вообще жду тебя, ты же обещал подумать Улыбка
Давай уже реализовывай, мне они также нужны.

kms писал(а) 25. Августа 2008 :: 09:31:
А про свойства контекста - такая мысль посетила.

Что есть групповой контекст? - это просто набор контекстов.
Что тогда мешает вместо добавления свойств в ГК добавлять контекст целиком?

В этом случае вообще достигается гибкость неимоверная, т.к. ты можешь расширять функциональность ГК не только свойствами, но и методами.
При этом добавляя любое количество свойств и методов.

Я размышлял об этом, но пока не выработал решения, тут как раз много подводных камней и пересечений методов/свойств.
Мы и с Trad-ом о подобном давно размышляли Улыбка

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

Кстати, в нормальной 1С когда вызывается CGroupContext::Accept ?
У тебя и меня внутри кода по добавлению атрибутов на форму, а 1С когда вызывает? Что-то я не припомню Печаль
  

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


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: icpp: Подготовка релиза
Ответ #10 - 25. Августа 2008 :: 14:46
Печать  
artbear писал(а) 25. Августа 2008 :: 11:07:
Внутренний дизайн будет изолирован, зато во внешнем интерфейсе будет бардак Печаль

Почему?

Цитата:
kms писал(а) 25. Августа 2008 :: 09:31:
Кстати, а что будет, если в моем ГК уже есть свойство "_ДопСвойства".
Элемент формы, например? Или банальная переменная?

ИМХО рантайм-ошибка. Нужно тест написать Улыбка

Так мне непонятно.
Вот у меня есть множество форм, которые работают годами.
И вдруг при установке новой версии icpp появится ошибка?

Цитата:
Мы и с Trad-ом о подобном давно размышляли Улыбка

Ну да, Дима - эксперт в этой области.

Цитата:
Предложенный мной вариант я рассматриваю как один из вариантов приближения к этой задаче, позволяющий решить множество нужных практических задач по хранению/передаче данных, связанных с контекстом формы.

Артур, ты понимаешь, что здесь нет "варианта приближения".
Если ты в таком виде запускаешь функционал, он остается навечно.
Ибо его начнут использовать и изменить что-то у тебя не будет шансов.

Я считаю, что здесь есть, над чем подумать.
Мне не нравится
- добавление зависимости TurboBL от коллекций (сейчас TurboBL самодостаточна)
- ограничение в одно свойство (почему я не могу добавить 38 попугаев?)
- фиксированное имя свойства (см выше)
- фиксированный тип свойства
- отсутствие управления включением этих свойств ("навязанная услуга")
- усложнение дизайна TurboBL

Давай сделаем так: ты пока эту тему обдумывай, ну там прорабатывай и т.д.
Если тебе еще удастся обсудить это с Димой, я думаю, будет очень полезно.

А вот в плане включения в icpp, я бы предложил отложить до "после релиза".
Может быть, за это время, ты придешь к какому-то другому дизайну.
Ну, по крайней, мере, я точно вижу, что нужно время, чтобы рассмотреть остальные возможности.

Цитата:
Кстати, в нормальной 1С когда вызывается CGroupContext::Accept ?
У тебя и меня внутри кода по добавлению атрибутов на форму, а 1С когда вызывает? Что-то я не припомню Печаль

В разных местах.
После завершения конструирования ГК (т.е. добавления всех контекстов-участников).
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: icpp: Подготовка релиза
Ответ #11 - 25. Августа 2008 :: 14:52
Печать  
kms писал(а) 25. Августа 2008 :: 08:53:
- Добавить метод ко всем контекстам, типа "__ДобавитьСвойствоКонтекста(__имя)"


Я правильно понимаю, что в таком случае я смогу обратиться к свойству через НекийКонтекст.ИмяМоегоСвойства?
А в случае с Артуром, конструкция будет НекийКонтекст._ДопСвойства.ИмяМоегоСвойства?
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: icpp: Подготовка релиза
Ответ #12 - 25. Августа 2008 :: 15:02
Печать  
Arta писал(а) 25. Августа 2008 :: 14:52:
Я правильно понимаю, что в таком случае я смогу обратиться к свойству через НекийКонтекст.ИмяМоегоСвойства?
А в случае с Артуром, конструкция будет НекийКонтекст._ДопСвойства.ИмяМоегоСвойства?

(задумчиво выливая бутылку вина в кастрюлю с целью последующей варки): ну даа Улыбка
  

De quelle planète es-tu?
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: icpp: Подготовка релиза
Ответ #13 - 25. Августа 2008 :: 15:21
Печать  
Arta писал(а) 25. Августа 2008 :: 14:52:
Я правильно понимаю, что в таком случае я смогу обратиться к свойству через НекийКонтекст.ИмяМоегоСвойства?
А в случае с Артуром, конструкция будет НекийКонтекст._ДопСвойства.ИмяМоегоСвойства?

Характерно, кстати, то, что второй вариант - это частный случай первого.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: icpp: Подготовка релиза
Ответ #14 - 25. Августа 2008 :: 16:06
Печать  
kms писал(а) 25. Августа 2008 :: 15:21:
Характерно, кстати, то, что второй вариант - это частный случай первого.

Это я и хотел сказать  Смех
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 3 ... 6
ОтправитьПечать