OberonCore https://forum.oberoncore.ru/ |
|
Про общеупотребимые компоненты. https://forum.oberoncore.ru/viewtopic.php?f=47&t=4403 |
Страница 4 из 5 |
Автор: | Иван Денисов [ Понедельник, 22 Июль, 2013 19:58 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Евгений Темиргалеев писал(а): Вам же если так не нравится, копируйте в какую-нибудь подсистему с большой буквы, и всё будет хорошо... Да скопирую в Omc... а вот с i21sys сложнее, у всех новых модулей идут ссылки с реализацией через него. Таким образом для Красноярской сборки придется делать свой Component Store. Даже имя присмотрел — compbox.com пока свободен |
Автор: | Евгений Темиргалеев [ Понедельник, 22 Июль, 2013 21:13 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Иван Денисов писал(а): Евгений Темиргалеев писал(а): Неужели Вы никогда не нарушали соглашений?... Евгений, рад что вы признали себя нарушителем признать вину — пол-пути к исправлению. Разумные соглашения стараюсь на нарушать, особенно те которые разрушают красоту и гармонию Системы. |
Автор: | Иван Кузьмицкий [ Понедельник, 22 Июль, 2013 21:24 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Пётр Кушнир писал(а): Это обычный вывод, компоненты как объект дистрибуции теряют свой смысл. Дистрибуция переводится как "распространение". Компонентное ПО иначе как в виде компонентов построено быть не может, тем более на Обероне. Стало быть, компоненты как объект дистрибуции никогда в принципе не могут потерять свой смысл. Поэтому данный вывод ложный.
|
Автор: | Пётр Кушнир [ Понедельник, 22 Июль, 2013 21:29 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Но в твоём примере мы имеем ПО как объект дистрибуции, а не компонент. Дистрибуция компонентов выглядит вот так http://oberoncore.ru/bbcc/subs/start |
Автор: | Пётр Кушнир [ Вторник, 23 Июль, 2013 19:24 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Набросал пару коллекций в Lists (ассоциативный массив (пока один-к-одному) на операциях и аналог SET для произвольных объектов), засёк время. В среднем выходит по 4 часа, чтобы написать модуль простой коллекции с нуля, без всяких оптимизаций, решением "в лоб". Плюс примеры, чтобы убедиться в первичной работоспособности. Одно облегчение было, использовал компонент ListsLinear, динамический массив (а в реализации - массив массивов, с блочным выделением ячеек), то есть, необходимости писать самое трудное не было. |
Автор: | Jordan [ Вторник, 23 Июль, 2013 21:21 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Реализацию можно взять из glib, не путать с glibc. Содержит, списки, хэши, деревья и т.д Скачать http://ftp.acc.umu.se/pub/gnome/sources/glib/2.37/ Документация на русском. http://www.opennet.ru/search.shtml?excl ... words=glib Всё же легче, переделать готовую реализацию. |
Автор: | Пётр Кушнир [ Вторник, 23 Июль, 2013 21:30 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
У вас 4 часа. Запускать таймер? Компонент должен быть рассчитан на работу в ББ со сборкой мусора и прочими плюшками. |
Автор: | Jordan [ Вторник, 23 Июль, 2013 21:55 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Я не для соревнования написал. Я лишь подумал, что кому то в данной теме, будет полезны исходники glib. Так как в них многое реализовано. |
Автор: | Jordan [ Вторник, 23 Июль, 2013 21:57 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Если уж совсем проще, сделать биндинг к glib + звернуть по вашему способу(приводить в реал тайме). |
Автор: | Пётр Кушнир [ Вторник, 23 Июль, 2013 22:03 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Многое реализовано в примерах к книге Вирта viewtopic.php?f=90&t=3373 |
Автор: | Иван Денисов [ Понедельник, 02 Сентябрь, 2013 17:36 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Вот решил в очередной задаче не писать с нуля Lists, в воспользоваться наработками Петра. Компилирую... ListsObxOp Rnd:=ypkMathRandom, неужели в примере нельзя обойтись стандартным генератором случайных чисел? И дальше DynStrings... Ваши наработки было бы удобнее использовать в проектах, если было бы меньше взаимных зависимостей на разные не базовые компоненты. Дальше некоторые размышления Компонентный подход предполагает значительные количества дублирования кода. То есть, существует некий баланс между повторным использованием и независимостью компонентов, у вас явный перекос в сторону интеграции всех разработанных подсистем... Цитата: качество дизайна определяется управлением связями, что, в частности, подразумевает под собой ослабление связей Wiki Хрупкий базовый класс |
Автор: | Пётр Кушнир [ Понедельник, 02 Сентябрь, 2013 17:44 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
А что, есть стандартный генератор? Вообще, для использования компонентов не нужны примеры использования, а в примерах я не ставил себе цели компонентной чистоты, а только наглядность. |
Автор: | Пётр Кушнир [ Понедельник, 02 Сентябрь, 2013 17:56 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Ну и смысла дублировать везде строки, которые лежат рядом в репозитории тоже не вижу. |
Автор: | Иван Денисов [ Понедельник, 02 Сентябрь, 2013 17:58 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Пётр Кушнир писал(а): А что, есть стандартный генератор? ObxRandom всегда идет в комплекте. Для большинства задач его хватает сполна.
|
Автор: | Иван Денисов [ Понедельник, 02 Сентябрь, 2013 18:01 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Пётр Кушнир писал(а): Ну и смысла дублировать везде строки, которые лежат рядом в репозитории тоже не вижу. Ну я же ставлю только Lists. Мне не нужен весь ypk.И весь репозиторий я уже пытался как-то скачать, очень хотел попробовать ваш генератор релизов, у нас была уже переписка про то, что он несобираемый так как там часть закрытых модулей так и мучаюсь своим непатриотичным питоновским скриптом для сборки релизов приложений |
Автор: | Иван Денисов [ Понедельник, 02 Сентябрь, 2013 18:06 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Иван Денисов писал(а): Пётр Кушнир писал(а): А что, есть стандартный генератор? ObxRandom всегда идет в комплекте. Для большинства задач его хватает сполна. |
Автор: | Пётр Кушнир [ Понедельник, 02 Сентябрь, 2013 18:19 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Я не готов импортировать Obx, уж извините. Всё равно что для переменной счётчика в цикле использовать Integers. Иван Денисов писал(а): И весь репозиторий я уже пытался как-то скачать, очень хотел попробовать ваш генератор релизов, у нас была уже переписка про то, что он несобираемый так как там часть закрытых модулей так и мучаюсь своим непатриотичным питоновским скриптом для сборки релизов приложений Иван, я стараюсь поддерживать актуальность копии подсистемы ypk в составе репозитория bbcc из соображений вежливости. Но я не могу всё время проверять её консистентность в рамках репозитория, возможно она слишком динамичная, не могу же я обсуждать с сообществом каждую правку, у меня просто не хватит времени на код. Самую последнюю версию можно найти в репозитории bb.open, я работаю в рамках этого репозитория. По техническим вопросам я готов отвечать в конкретных темах.
|
Автор: | Пётр Кушнир [ Понедельник, 02 Сентябрь, 2013 18:29 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Я почему и поднимаю раз за разом эту тему, надо уже что-то придумать, будут в ББ общеупотребимые подсистемы помимо стандартных из архива сборки или не будут? Пусть у них будет репозиторий, предельно строгие требования, куча ассертов внутри и строгий модератор. Всё же лучше, чем раз за разом копировать процедуры рандомизации или набившие оскомину преобразователи utf8 bytes <=> CHAR. Последние я уже скопировал в StringsUtf и дал себе обещание никогда больше не копировать, [эмоции]а иначе ад и холокост. Какой там DRY, жуть же творится.[/эмоции] |
Автор: | Пётр Кушнир [ Понедельник, 02 Сентябрь, 2013 18:42 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
В текущем состоянии сообщества, думаю, некому обсуждать реальное ТЗ на стандартную подсистему, а раз всем нормально и так, то наверное, правильно будет считать вопросы про невозможность компиляции моветоном. Все ж погромисты, должны понимать. |
Автор: | Иван Кузьмицкий [ Понедельник, 02 Сентябрь, 2013 19:15 ] |
Заголовок сообщения: | Re: Про общеупотребимые компоненты. |
Иван Денисов писал(а): очень хотел попробовать ваш генератор релизов, у нас была уже переписка про то, что он несобираемый так как там часть закрытых модулей так и мучаюсь своим непатриотичным питоновским скриптом для сборки релизов приложений Вот вам и здравствуйте, а что там закрытого-то? Так и пылятся компоненты зазря!
|
Страница 4 из 5 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |