OberonCore
https://forum.oberoncore.ru/

Про общеупотребимые компоненты.
https://forum.oberoncore.ru/viewtopic.php?f=47&t=4403
Страница 3 из 5

Автор:  Иван Кузьмицкий [ Понедельник, 22 Июль, 2013 15:34 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Пётр Кушнир писал(а):
Иван Кузьмицкий писал(а):
При этом, я не могу сказать, что регэкспы мне "не нужны". Нужны, ещё и как.
Недостаточно сильно нужны :)
Бинарность "нужен\не нужен" только замутняет суть, я же говорю. Обычный прагматизм говорит мне, что делать свои регэкспы дорого, осваивать цинновский долго и мутно с непонятным результатом, поэтому вот так. Есть ещё один путь - взять гарантированно работающую внешнюю авторитетную библиотеку и привязать её к ББ. Это тоже затратно, но это гарантирует результат. Вопрос лишь в выборе пути.

Пётр Кушнир писал(а):
Иван Кузьмицкий писал(а):
Выставлять заведомо сырой компонент и радостно махать руками - мол, если чо, поправим? Хе-хе :)
Суть в том, что есть очевидные признаки работающего компонента - ну там, пример использования, или тесты какие.
У автора тоже может быть неслабый confirmation bias. Вроде бы работает и ладно, можно выставлять. А как только компонент попадает в непросчитанные условия (а просчитывать их лениво, капитализм же), тут же бамц! и ловите тряпы.

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

Автор:  Пётр Кушнир [ Понедельник, 22 Июль, 2013 15:40 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

У пользователя тоже может быть неслабый confirmation bias (эта дверь открывается в обе стороны) в плане видения простоты использования и требований (на каких основаниях, хыхы) к авторам.
Я же указал начальные условия - изобилия нет. Изобилие только на тёмной стороне.
Иван Кузьмицкий писал(а):
Бинарность "нужен\не нужен" только замутняет суть, я же говорю.

Нужен это "нужен", необходим. Подразумевается, что необходим набор функций. Без которого никуда. Если регэксп можно заменить одной процедурой, значит регэксп не особенно и нужен, но "хочется".

Автор:  Пётр Кушнир [ Понедельник, 22 Июль, 2013 15:45 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Иван Кузьмицкий писал(а):
Пётр Кушнир писал(а):
Если у потенциального пользователя данного компонента есть преимущество в мозговых способностях по обходу багов и по написанию неглючных компонент, так это ведь прекрасно, но почему этот человек не применит свои способности ещё в одном направлении?
То есть, пользователю нельзя просто взять и начать использовать компонент, без дополнительного напряжения своих мозговых способностей? Типа, если не осилил, то не очень то это тебе и нужно. Ну что же, это вопрос к уже автору разработки, для чего он так затруднил использование своего компонента :)
Ничем не обоснованный императив про необходимость любую информацию приводить к уровню понимания пятиклассника. Но вообще, мой комментарий был про способность обнаруживать баги и писать безглючно и применение этой способности к процессу развития компонента.

Автор:  Иван Кузьмицкий [ Понедельник, 22 Июль, 2013 15:54 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Пётр Кушнир писал(а):
Нужен это "нужен", необходим. Подразумевается, что необходим набор функций. Без которого никуда. Если регэксп можно заменить одной процедурой, значит регэксп не особенно и нужен, но "хочется".
Регэксп нужен, это факт. Безо всяких "вроде бы не особенно, то ли нужен, то ли нет". С ним многие задачи по обработке текстов решаются гораздо проще, это известный факт. Без регэкспов приходится тратить больше усилий.
Если нормального компонента в оберонкоре нет, это не значит, что он "не нужен", вот что я хочу сказать.
Если я не использую муторный цинновский регэксп, это не значит, что регэкспы мне не нужны.

Пётр Кушнир писал(а):
Никем не доказанный императив про необходимость любую информацию приводить к уровню понимания пятиклассника.
Речь не про пятиклассника, а про тезис о мозговых способностях потенциального пользователя. Компонент для своего освоения не должен быть сложнее, чем нужно. Точно так же должны быть доступны все справочные и методические материалы. Это идеальный вариант, конечно.

Пётр Кушнир писал(а):
Но вообще, мой комментарий был про способность обнаруживать баги и писать безглючно и применение этой способности к процессу развития компонента.
О чём я и говорю - это означает выставить недоделанный компонент и требовать дополнительно над ним поразмыслить, принять участие в развитии - и только для того, чтобы его использовать! Это слишком дорогая цена.

Автор:  Пётр Кушнир [ Понедельник, 22 Июль, 2013 16:00 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Всё базируется на принципе свободы участия в этом процессе. Ведь уже понятно, что прикладные программисты в оберон-сообществе занимаются этим всем частично за свой счёт.
Цитата:
Свобода запускать программу в любых целях (свобода 0).
Свобода изучения работы программы и адаптация её к вашим нуждам (свобода 1). Доступ к исходным текстам является необходимым условием.
Свобода распространять копии, так что вы можете помочь вашему товарищу (свобода 2).
Свобода улучшать программу и публиковать ваши улучшения, так что всё общество выиграет от этого (свобода 3). Доступ к исходным текстам является необходимым условием.

Автор:  Иван Кузьмицкий [ Понедельник, 22 Июль, 2013 16:06 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Нет смысла публиковать недоработанный компонент с целью привлечения дополнительных сил. Для привлечения сил обычно создаётся проект и объявляется цель, к которой надо прийти. Иначе будет только запутывание сообщества.

Автор:  Пётр Кушнир [ Понедельник, 22 Июль, 2013 16:09 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Иван Кузьмицкий писал(а):
Компонент для своего освоения не должен быть сложнее, чем нужно.

А сколько нужно?
Иван Кузьмицкий писал(а):
О чём я и говорю - это означает выставить недоделанный компонент и требовать дополнительно над ним поразмыслить, принять участие в развитии - и только для того, чтобы его использовать! Это слишком дорогая цена.
А какой - доделанный?
Перфекционизм какой-то не инженерный. Судя по рассуждениям, область допустимых значений доделанности и сложности уже известна и достаточно объективна, осталось только описать и выставлять требования. Ну там, не больше трёх методов, не больше одного аргумента, ANYPTR не более двух раз, документация не меньше трёх страниц, а время понимания работы не больше трёх минут.

Автор:  Пётр Кушнир [ Понедельник, 22 Июль, 2013 16:12 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Иван Кузьмицкий писал(а):
Нет смысла публиковать недоработанный компонент с целью привлечения дополнительных сил.
Опять количественные оценки метафизических параметров. Ну и такую ориентировку никто не озвучивал. Это перевёрнутый тезис о том, что если вдруг баг, то не нужно сливать, желательно сообщить, а можно и помочь. Свобода действий. От каждого по способностям, каждому по потребностям, производительные силы на тысячапервые итераторы не растрачивая.

Автор:  Пётр Кушнир [ Понедельник, 22 Июль, 2013 16:19 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Не используют, потому, что могут быть баги, а баги, потому что не используют => нет фидбэка.

Автор:  Иван Кузьмицкий [ Понедельник, 22 Июль, 2013 16:27 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Речь шла о том, что точка зрения на то, что люди по странным и необъяснимым причинам тяготеют к готовым компонентам и гуглу вместо того чтобы подключиться к недоделанным и "расточительно" помочь доделать, является, на мой взгляд, ошибочной.

Если мне нужна функциональность, и опубликованный компонент эту функциональность объявляет как собственную специализацию, то я вправе ожидать от компонента работы, а не глюков. По-моему, тут нет никакой метафизики. Если выставлен компонент сортировки, то сортировка должна работать, как объявлено. Точка.

Не надо кивать на метафизичную притягательность гугла. Всё гораздо проще.

P.S. Ещё раз повторю - если для использования компонента надо потратиться на копания в чужом коде, а тем более принять участие в его доработке, то это сырой проект, не доведённый до конца, будем называть вещи своими именами.

Автор:  Пётр Кушнир [ Понедельник, 22 Июль, 2013 17:24 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

причины неиспользования я перечислил, там нет ничего необъяснимого. и привлекательность гугла не метафизична, это уже совсем вольное жонглирование цитатами.

и не стоит подменять возможность недоработок на необходимость сразу ковырять код.

хотя позиция ожидания совершенства самая рациональная.

Автор:  Иван Кузьмицкий [ Понедельник, 22 Июль, 2013 17:38 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Меня зацепило вот это - "Все это понимают, но справиться с собой не могут". В этих словах "метафизическое довление" гугла выражено достаточно явно. При этом, на самом деле, ситуация обратная - если компонент доказал свою работоспособность и функциональность, то его будут использовать вне зависимости от того - гугл ли его делал или безвестная третья фирма. Вот и всё. И нет никаких странных выводов типа
Цитата:
Никому не нужны чужие компоненты, даже самые базовые. Ну и получается, что компоненты не нужны вовсе.

Автор:  Иван Денисов [ Понедельник, 22 Июль, 2013 18:03 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

По моему мнению, чтобы компоненты стали употребляемыми нужно:
- существование потребителей;
- доступность компонента (включает его анонс на форуме, подсказка потенциальным потребителям о его существовании);
- вера потребителей в качестве или вера в возможность диалога по улучшению (включает следование лучшим традициям разработки на выбранном языке);
- документация (на худой конец видеоурок);
- разумное количество зависимостей от других компонентов;
+ cool factor = красота или минимализм реализации, необычный функционал, полная реализация стандарта, использование к крутом проекте...

Цитата:
Тогда должно было быть OMC (если создавать аббревиатуру One Module Component).

Подсистема OLE называется Ole. Нет никакой свободы в назывании папок, есть регламент: названия модулей с большой буквы, дальше маленькие, первая часть модуля по названию папки, поэтому, если папка с маленькой буквы, нарушается соглашение по называнию модулей.
См. документ: «Об оформлении программ», раздел 8.
«Имя модуля всегда начинается с большой буквы».
Поэтому модули omc, i21sys — дерзко нарушают это правило. Вот я про что говорил выше.

Автор:  Пётр Кушнир [ Понедельник, 22 Июль, 2013 18:59 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Среда никак это не контролирует и не регулирует, что позволяет считать, что имя модуля в данном случае является аналогом имени файла модуля (которое действительно обрабатывается при компиляции по определённым правилам), а не общего имени модуля вместе с префиксом подсистемы. Законы не работают, короче.
Иван Денисов писал(а):
Подсистема OLE называется Ole.
Это на совести авторов

Автор:  Пётр Кушнир [ Понедельник, 22 Июль, 2013 19:17 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Иван Кузьмицкий писал(а):
Меня зацепило вот это - "Все это понимают, но справиться с собой не могут"
Это про авторитетность, ресурсы и общий кредит доверия, которая влияет на выбор. Ну и тренд, конечно.
Иван Кузьмицкий писал(а):
При этом, на самом деле, ситуация обратная - если компонент доказал свою работоспособность и функциональность, то его будут использовать вне зависимости от того - гугл ли его делал или безвестная третья фирма.
Кому и когда он докажет свою работоспособность, если люди выбирают гугл? Много комментариев именно этот момент и обсуждается. Тем более, в оберон-сообществе. Что-то мало кто выбирает оберон, даже и не знаю, почему. У тебя вот был негативный опыт с CpcRegul, но ты не сообщил автору, и теперь ещё сотня людей так же напорется. Ну ок, мы проучили автора, так ему, нубу.
Иван Кузьмицкий писал(а):
И нет никаких странных выводов типа
Это обычный вывод, компоненты как объект дистрибуции теряют свой смысл.

Автор:  Пётр Кушнир [ Понедельник, 22 Июль, 2013 19:18 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Иван Денисов писал(а):
По моему мнению, чтобы компоненты стали употребляемыми нужно:
- существование потребителей;
- доступность компонента (включает его анонс на форуме, подсказка потенциальным потребителям о его существовании);
- вера потребителей в качестве или вера в возможность диалога по улучшению (включает следование лучшим традициям разработки на выбранном языке);
- документация (на худой конец видеоурок);
- разумное количество зависимостей от других компонентов;
+ cool factor = красота или минимализм реализации, необычный функционал, полная реализация стандарта, использование к крутом проекте...
Ну вот я этот тредик создал, чтобы выявить тенденции, и в целом, оно оказалось ожидаемым, люди юзают своё собственное.

Автор:  Евгений Темиргалеев [ Понедельник, 22 Июль, 2013 19:21 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Иван Денисов писал(а):
См. документ: «Об оформлении программ», раздел 8.
«Имя модуля всегда начинается с большой буквы».
Поэтому модули omc, i21sys — дерзко нарушают это правило. Вот я про что говорил выше.
Это не модули. Это подсистемы.

Хотя и про них сказано:
3 BlackBox Design Practices писал(а):
Modules whose names have the form SubMod, e.g., TextModels, FormViews, or StdCmds, are stored in their respective subsystems given by their name prefixes, e.g., Text, Form, or Std. The subsystem prefix starts with an uppercase letter and may be followed by several other uppercase letters and then by several lowercase letters or digits. The first uppercase letter afterwards denotes the particular module in the subsystem.
То, что отсюда нельзя сократить, это как раз имя модуля с большой буквы.

А соглашения, Иван, бывают всякие. Неужели Вы никогда не нарушали соглашений?...

P.S. Меня поначалу тоже заботило название i21sys. Но где-то у ТФВ было про энто дело записано в док-ции или высказано на форуме, и свое мнение по прошествии времени переменил. Вам же если так не нравится, копируйте в какую-нибудь подсистему с большой буквы, и всё будет хорошо...

Автор:  Евгений Темиргалеев [ Понедельник, 22 Июль, 2013 19:32 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Пётр Кушнир писал(а):
Но модули из omc не предполагается использовать напрямую, насколько я понял. Их надо копировать себе в подсистему.
Пётр, откуда Вы это взяли? http://oberoncore.ru/bbcc/subs/omc/
Цитата:
(Аналог подсистемы Cpc для коллекции OberonCore.)
Не помню, чтобы подобную мысль где-нибудь видел касательно Cpc.

Хотя, если смотреть вообще и отвлечённо (от omc в данном случае), любой компонент перед использованием у себя стоит скопировать. Вы, Пётр, насколько это видно, сие правило явно или неявно, но применяете. :)

Автор:  Пётр Кушнир [ Понедельник, 22 Июль, 2013 19:46 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Вы будете смеяться, но я со времени создания подсистемы omc трактовал эту
Цитата:
подсистема для аккумуляции компонентов размером в один модуль, не требующих отдельной подсистемы и могущих быть полезными широкой аудитории.
фразу как указание на то, что подсистема omc аккумулирует (хранит в себе) компоненты-модули, и не должна (ну или нежелательно) использоваться напрямую.
Евгений Темиргалеев писал(а):
Хотя, если смотреть вообще и отвлечённо (от omc в данном случае), любой компонент перед использованием у себя стоит скопировать.
вот модуль ypkBus я взял из omc.

Автор:  Иван Денисов [ Понедельник, 22 Июль, 2013 19:53 ]
Заголовок сообщения:  Re: Про общеупотребимые компоненты.

Пётр Кушнир писал(а):
Среда никак это не контролирует и не регулирует
Связанно только с тем, что не имеет права контролировать, так как в виндовозе папки по умолчанию регистронезависимые. А про названия модулей, ведь это Соглашения, а не технические ограничения. Речь при соблюдении регламента только в уважении к другим участникам процесса. Поэтому мы и обсуждаем эти вещи в этой ветке про общеупотребительные компонентны.

Евгений Темиргалеев писал(а):
Неужели Вы никогда не нарушали соглашений?...

Евгений, рад что вы признали себя нарушителем :) признать вину — пол-пути к исправлению. Разумные соглашения стараюсь на нарушать, особенно те которые разрушают красоту и гармонию Системы. Если что-то такое происходило, то по невежеству, и вам лично благодарен за моменты, когда вы меня поправляли.

Страница 3 из 5 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/