OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Понедельник, 19 Август, 2019 14:50

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Необход-ть KOL для ББ, альтернативы
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 17:30 
Аватара пользователя

Зарегистрирован: Суббота, 15 Март, 2008 20:00
Сообщения: 297
Откуда: Київ, Україна
Хорошая новость!
Но все таки может не КОЛ?
Уж очень онь "заточен", есть другой кандидат ACL.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 17:48 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2599
Откуда: Россия, Ярославль
кому некуда девать энергию, предлагаю мирную цель: OpenGL гуй...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 17:50 
Аватара пользователя

Зарегистрирован: Вторник, 28 Август, 2007 00:55
Сообщения: 300
Откуда: Украина, Днепропетровская обл.
bohdant писал(а):
есть другой кандидат ACL.

Не слышал о таком ни разу... Вы имеете ввиду http://ru.wikipedia.org/wiki/ACL? Если нет, ссылка приветствуется.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 17:53 
Аватара пользователя

Зарегистрирован: Вторник, 28 Август, 2007 00:55
Сообщения: 300
Откуда: Украина, Днепропетровская обл.
Так и знал: Оберон-сообщество спросит "Почему KOL?", а Дельфи-сообщество "Почему Оберон?" :) Новых задач по отрисовке интерфейсов на GL не ищу, тихонько делаю то, что мне нужно, результатов не зажимаю, ищу помощников...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 17:55 
Аватара пользователя

Зарегистрирован: Суббота, 15 Март, 2008 20:00
Сообщения: 297
Откуда: Київ, Україна
Oleg N. Cher писал(а):
bohdant писал(а):
есть другой кандидат ACL.

Не слышал о таком ни разу... Вы имеете ввиду http://ru.wikipedia.org/wiki/ACL? Если нет, ссылка приветствуется.

Нет имелось в виду другое

Кстати ссылочка есть на сайте KOL http://kolmck.net/rindex.htm

ACL - API Controls Library. Библиотека примерно того же плана, что и KOL (не настолько велика). Основана на классах. Дает код немного больше, чем KOL. Аналога MCK для визуальной разработки нет.
Автор: Боковиков А.


Но ссылка битая, домой прийду - могу выложить.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 17:56 
Аватара пользователя

Зарегистрирован: Суббота, 15 Март, 2008 20:00
Сообщения: 297
Откуда: Київ, Україна
Oleg N. Cher писал(а):
Так и знал: Оберон-сообщество спросит "Почему KOL?", а Дельфи-сообщество "Почему Оберон?" :) Новых задач по отрисовке интерфейсов на GL не ищу, тихонько делаю то, что мне нужно, результатов не зажимаю, ищу помощников...


Оберон-сообщество разное есть:) я двумя руками за!
Давно сам собирался заняться, но времени не хватает :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 18:03 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2599
Откуда: Россия, Ярославль
бессмысленное и беспощадное занятие, имхо. в ББ можно с теми же затратами времени рисовать свои эксклюзивные контролы.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 18:18 
Аватара пользователя

Зарегистрирован: Вторник, 28 Август, 2007 00:55
Сообщения: 300
Откуда: Украина, Днепропетровская обл.
Сподручнее разрабатывать на WinApi, или на BlackBox API, или на GL — каждый решает сам. Если кому-то что-то не нужно, то другому может быть нужно. Чисто впротивовес. Часть задач (и довольно большая) не имеет смысла делать портабельными. А разработка на WinApi муторна. А на KOL/MCK удобна. А ACL я не пробовал, но, оказывается, Владимир Кладов давно о ней в курсе, что не мешает ему трудиться над KOL. Можно попытаться сделать KOL и портабельной. Но и Wine ещё никто не отменил. Я хотел бы перевести дискуссию из плоскости "а нафига мне и тебе это надо" в более конструктивное для начатой мною темы русло.
Выдержка из книги о KOL:

Цитата:
0.2. Первые выводы. Необходимость уменьшения кода: кому это нужно?

Тема написания минимальных (по размеру) приложений на Delphi раскрыта достаточно широко. Любой новичок может легко найти информацию о том, как сделать свое приложение маленьким. Практически любой источник утверждает, что нужно отказаться от VCL и писать на чистом API (Application Programming Interface Интерфейс Программирования Приложений). Довольно часто упоминается и возможность использовать вместо VCL другие библиотеки - ACL и KOL. Я же являюсь убежденным сторонником того, что на чистом API писать не нужно, кроме тех случаев, когда по-другому выполнить работу просто невозможно.

Объясню, почему. API-функции обычно достаточно универсальны, и число и типы параметров, которые используются в функциях API, располагают к появлению изрядного числа ошибок. (Например, вместо целого в некоторых случаях может на том же месте передаваться указатель на строку типа PChar). Код с использованием прямого вызова этих функций выглядит громоздким, неудобен для чтения и модификации. А, например, рисование на так называемом DC (Device Context) путем прямого обращения к методам GDI (Graphic Device Interface) - это искусство более чем нетривиальное. Лучше все-таки во многих случаях использовать инкапсуляции в объектах или классах, пусть даже более простых, чем VCL.

Впрочем, я никого не принуждаю использовать Key Objects Library. Но опыт показывает, что создание и сопровождение приложений на KOL нисколько не сложнее, чем на VCL (нужна лишь некоторая практика, так же как и для начала работы на VCL). В то же время, размеры KOL-программ - вполне сопоставимы с тем, что возможно получить ручной работой через API.

Теперь к вопросу о том, зачем вообще уменьшать код приложения. Зачем - это каждый решает сам. Или он хочет сэкономить свой трафик и трафик пользователей при загрузке своего приложения на интернет. Или он пишет ActiveX - приложение, которое загружается с сервера на клиентскую сторону (и время загрузки так же желательно сократить). Или же он пишет CGI-приложение, и желает разгрузить сервер, которому придется выполнять сотни и тысячи таких CGI-приложений в секунду. Разумеется, большая программа размером с 400 Кбайт тоже может считаться CGI-приложением, вот только на его запуск у системы наверняка уйдет в несколько раз больше ресурсов и времени. Да, писатели вирусов и Троянов - это еще одна категория "программистов" (так сказать), которым нужно писать маленькие программы. Но пусть уж лучше они тоже делают свои грязные поделки поменьше размером, чем принимать письма с троянскими вложениями на полмегабайта.

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 19:51 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2599
Откуда: Россия, Ярославль
КОЛ был полезен, когда я использовал fpc а теперь - нет, ведь есть ББ.
Если вас не затруднит, опишите проект, в котором непременно будет использоваться BB-Kol?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 21:07 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
На сколько я это себе представляю, КОЛ знаменита тем, что написана специфическим образом так, что Дельфийский компилятор во время компиляции берёт только то, что реально используется, поэтому исполняемые файлы маленькие. Но в модульных расширяемых системах (а-ля Оберон) аналогичный фокус компилятору проделывать запрещено так как в них модули загружаются и выгружаются динамически. Кроме того, доступ к экспортируемым модулем объектам может быть получен через метапрограммирование (рефлекшн) то есть ничего выбросить из модуля "лишнего" компилятор не имеет права. В связи с этим, если написать КОЛ на Обероне, то она напрочь потеряет своё главное достоинство - маленький размер бинарника.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 21:20 
Аватара пользователя

Зарегистрирован: Вторник, 28 Август, 2007 00:55
Сообщения: 300
Откуда: Украина, Днепропетровская обл.
Меня BlackBox интересует в первую очередь как компилятор удобного ЯВУ со многими достоинствами для разработки программ для Windows, а не как метасистема с кучей собственных особеностей. Линкер ББ умеет компоновать целевые программы, работающие без системы ББ, и генерирует достаточно компактные exe-файлы. Энергично выбрасывать (smart linking) неиспользуемый в программах код (dead code) он не умеет, но эта задача, в принципе, решаема. Так что основные достоинства библиотеки KOL могут показать свою мощь и на Оберон-языках. Повторюсь: меня очень мало интересуют Оберон-системы, сколь бы мощными достоинствами ни обладали. А вот Оберон-языки интересуют, но нужно больше инструментов для решения возникающих повседневно задач, коим и является KOL. И есть ещё совсем немаленькое сообщество KOL, для которого мой порт может стать поводом заинтересоваться Оберонами. Кроме того, я вовсе не собираюсь выполнять весь объём работ по портированию один, просто делюсь с вами тем, что сделал в свободное время.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 21:29 
Аватара пользователя

Зарегистрирован: Вторник, 28 Август, 2007 00:55
Сообщения: 300
Откуда: Украина, Днепропетровская обл.
Пётр Кушнир писал(а):
Если вас не затруднит, опишите проект, в котором непременно будет использоваться BB-Kol?

Не затруднит. Это небольшая программа для сохранения/восстановления настроек Windows.

Пётр, Вы наверное понимаете, что ни один программист не обязан делать то, что интересно Вам, притом именно таким способом, который приемлем именно для Вас, а вовсе даже заинтересован в своих идеях и деятельности. Мировоззрение и видение задач у каждого своё. Что для Вас потеря времени, для меня — увеличение опыта и дополнительная возможность пообщаться с таким интересным человеком как Владимир Кладов. И мотивацию каждый находит свою сам. Поэтому если Вас интересует разработка GUI под GL, то ради бога, разрабатывайте, кто ж запрещает. Но не надо душить своими речами в зародыше то, что хоть кем-то делается на Оберонах, ладно?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 21:37 

Зарегистрирован: Понедельник, 05 Июнь, 2006 09:49
Сообщения: 327
Откуда: Ленинград, Емельянов Алексей Николаевич
А не логичнее ли прикрутить KOL к XDS?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 21:42 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2599
Откуда: Россия, Ярославль
Oleg N. Cher писал(а):
Но не надо душить своими речами в зародыше то, что хоть кем-то делается на Оберонах, ладно?
Как сказал О. Хайям
Цитата:
Ты лучше голодай, чем что попало есть,

И лучше будь один, чем вместе с кем попало.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 21:45 
Аватара пользователя

Зарегистрирован: Вторник, 28 Август, 2007 00:55
Сообщения: 300
Откуда: Украина, Днепропетровская обл.
Axcel писал(а):
А не логичнее ли прикрутить KOL к XDS?

Да, я об этом подумываю :D


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 21:50 
Аватара пользователя

Зарегистрирован: Вторник, 28 Август, 2007 00:55
Сообщения: 300
Откуда: Украина, Днепропетровская обл.
Пётр Кушнир писал(а):
Как сказал О. Хайям
Цитата:
Ты лучше голодай, чем что попало есть,
И лучше будь один, чем вместе с кем попало.

"Если не можешь сказать ничего хорошего, лучше молчи" (Приписывается вроде Будде?)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 22:02 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2599
Откуда: Россия, Ярославль
Польза от этого всего - чисто маркетинговая, показать КОЛовцам что есть такая штука, как ББ.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Сентябрь, 2010 22:04 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2931
Откуда: г. Ярославль
Ну и хорошо.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 10 Сентябрь, 2010 06:05 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2599
Откуда: Россия, Ярославль
Oleg N. Cher писал(а):
Может Пётр Кушнир мне посоветует на чём лучше написать сохранялку виндового реестра?
fpc+KOL :) чтобы не захламлять репозиторий ББ подобными, кхм, инструментами...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 10 Сентябрь, 2010 11:33 
Аватара пользователя

Зарегистрирован: Вторник, 28 Август, 2007 00:55
Сообщения: 300
Откуда: Украина, Днепропетровская обл.
Благодарю bohdant'а, Ивана Кузьмицкого и Александра Ильина за моральную поддержку. :) Не зря значит я в сообщество вышел. Приятно.

2Пётр. Не, не катит, мне динамическая модульность нужна. На dll уже плагины изобретал, это не то. И вообще, неинтересно Вам — кыш с поля.
Вы, видимо, великий борец за чистоту и неприкосновенность Оберон-технологий, защитник их строгой академичности и, дай Вам волю, Вы бы наверное отстреливали всех программистов, чья низкая деятельность, порочащая Обероны совершенно неуместной привязкой к Windows, Вам не нравится. КАК? Кто-то посмел решать свои низменные и безсмысленные задачи, и ещё и безсовестно выставлять свой галимый код на всеобщее светлейшее обозрение?! А, между тем, толпы истосковавшихся по Оберону КОЛовцев, услышав лишь намёк на существование KolBB, хлынули бы толпами в Оберон-сообщество, осознав всю глубину своего падения, рыдая и каясь, и вопрошая, куда бы, ну куда бы направить своё безлимитное время и неуёмный энтузиазм, а Вы стали бы их утешать и наставлять: что им делать нужно, а чего, напротив, не следует... :)

Господа, не нужно рассматривать KOL только как решение для GUI и альтернативу GTK/Qt, только непереносимую. Нет. Это в первую очередь удобный инструмент для решения практических задач под Windows. Сравнимый по удобству и скорости разработки с VCL. А по размеру и оптимальности получаемого кода с WinApi. Это средство сделать работу с WinApi более безопасной. В его огромной массе объектов и процедур есть и вполне портабельные, есть и не связанные с GUI вообще. Мой опыт подсказывает, что для конечного пользователя неважно какие там задействованы решения — GTK, Qt или KOL, ему важно чтобы были красивые кнопочки и удобный интерфейс. И линукс-пользователю большей частью по барабану какие у него пакеты установлены — GTK, Qt или Wine.


Последний раз редактировалось Oleg N. Cher Пятница, 10 Сентябрь, 2010 20:07, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2019, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB