LINUX.ORG.RU

Oracle уволила лидера проекта GNOME Accessibility

 , , ,


0

0

Joanmarie Diggs опубликовала открытое письмо Oracle, в котором сообщает, что Oracle уволила двух членов Sun's Accessibility Project Office (проекта, предназначенного для людей с ограниченными возможносями). Среди них — Willie Walker, одновременно являвшийся лидером проекта GNOME Accessibility и лидером разработки Orca — программы для чтения с экрана (скрин ридера) с открытым исходным кодом.

Joanmarie Diggs сообщает, что еще до этого увольнения из Sun's Accessibility Project Office часть персонала была уволена, и в своем открытом письме высказывает надежду, что этот недосмотр со стороны Oracle будет скоро исправлен. В противном случае, если ни Oracle, ни какая-либо другая компания не продолжит работу над программами по Accessibility, то по её мнению окружение рабочего стола GNOME придет в упадок.

>>> Обсуждение на lwn.net

★★★★★

Проверено: svu ()
Последнее исправление: www_linux_org_ru (всего исправлений: 1)

Ответ на: комментарий от r

>Ничего подобного я не утверждал. Просто структура с указателями на функции - один из способов организовать «extreme late-binding of all things»

и подобие «messaging» (C) д-р. Алан Кей.

Подобие!= равенство

Это ручная работа там где например в С++ это делает компилятор. Но делают они одно и тоже. И с одной и той же целью.

Да, но это подобие. И если в C++ это не доставляет трудностей, то в GTK отвернулся и тю-тю.

Для примера поглядите как сделаны интерфейсы в Python. Их ввели и они такие-же какбудто были частью языка.

demmsnt
()
Ответ на: комментарий от golodranez

>ты неизлечим. Путаешь ОО-язык и ООП вообще. Если вообще понимаешь что это такое.

Ты либо китаец, либо нет. ООП это Инкапсуляция+Полиморфизм+Наследование. Убери чтонибудь и это не ООП. Будь это хоть тысячу раз похоже.

Можно имитировать ООП. Например препроцессором.

Я просто смотрю тут для большенства ООП это плюс. Я считаю, что ООП это не плюч и не минус. Если я рассчитываю квадратные уравнения это минус.

demmsnt
()
Ответ на: комментарий от RR

>читать до просветления http://cs-netlab-01.lynchburg.edu/courses/Assemb/OOPAssem.html

Да ради бога - ходит как утка, крякает как утка.... Но это Гусь.

в 90-х годах ООП было модным словом. Народ это применял еще до появления термина. А тут у нас прям все стало ООП. Грамотно организовали структуру в GTK, сразу стало ООП. Чего они не сделали динамическую структуру и не запихали функции конструкторы в связанный список которыеб устанавливали поля в структуре, получили-бы наследование.

Да потому,что не надо. Не нужен был GTK ООП как идол. Сделали ровно настолько насколько удобно. Те-же операции с файлами появились до того, как народ ООП осилил. Но и в RT11SJ я писал f=open('xyz'); write(f,'zzz'); и f это была ссылка на структуру. Похоже на ООП? И не надо тут про синтаксис и прочее.

demmsnt
()
Ответ на: комментарий от demmsnt

Как хорошо что Вы не читали Александреску =)

RR
()
Ответ на: комментарий от demmsnt

> Но вы подразумеваете gtk+ - Не надо.

Еще раз для тех кто в танке. Библиотека называется GTK+, вот пруф: http://www.gtk.org/

В FILE ничего не завернуто - это вообще INT это порядковый номер в таблице файлов.

Ну конечно, кое-кто получается и Си не знает, хотя на нем «пишет».

Reset ★★★★★
()
Ответ на: комментарий от r

>Ты когда нибудь хоть одну GTKшную структуру видел? Ты знаешь что там хранится?

в ООП именно для этого и есть интерфейсы. Я не буду заглядывать внутрь. И тут и там структуры и функции

demmsnt
()
Ответ на: комментарий от r

>Из-за этого и «инкапсулируют» объекты методом добавления сеттеров. А понятия внешнего протокола aka интерфейса при этом ни у кого нет.

Да и именно поэтому большие системы приходят к тому, что у объекта 1 метот handleEvent. А он получает 1 структуру в которой написано что надо выполнить и с какими параметрами и какой (кому) мессидж отправить в ответ. Тут нормальная логика.

demmsnt
()
Ответ на: комментарий от demmsnt

> ООП это Инкапсуляция+Полиморфизм+Наследование.

тогда получается, что gtk это ООП, ибо тут все это есть

Reset ★★★★★
()
Ответ на: комментарий от demmsnt

Опять противоречишь сам себе и сам же отвечаешь на вопрос зачем нужен gtkmm:

И если в C++ это не доставляет трудностей, то в GTK отвернулся и тю-тю.
Использовал GTK, ужасов там нет.

Reset ★★★★★
()
Ответ на: комментарий от Reset

>Еще раз для тех кто в танке. Библиотека называется GTK+, вот пруф: http://www.gtk.org/

Да хоть ++, gtkmm не зря создан. Китайский Ролекс и останется китайским. Если ты купил акваланг и маску ты рыбой не стал. Выбор C для GTK врядли случаен. C++ уже был. Тут http://otvety.google.ru/otvety/thread?tid=32963cc1bb10c5f7 вот вам ответ от создателя GStreamer, они так и сказали - нам нужен был ООП, мы его сделали. Где не нужен не используем.

Высказывание, что Lisp функциональный язык сразу вызывает выступления, что он многопарадигменный. А если GTK тут применяет инкапсуляцию, а там даже интроспекцию которой у C++ даже нет еще не ставит на него печать ООП. Надо, бери gtkmm и используй как ООП. А надо вызывай из чистого C и не думай даже как там структуры устроены.

demmsnt
()
Ответ на: комментарий от demmsnt

В GTK использованы все основные принципы ООП, поэтому если я его использую из Си, то от этого он не перестает быть ООП, язык тут вообще не при чем.

Reset ★★★★★
()

Мне кстати тем и нравится GTK, что в отличае от WxWidgets я не обязан каждый раз имитировать «правильную» структуру приложения. Хочу напишу свой GTKApplications. Могу написать свои Actions которые зажигаются от пунктов меню и кнопок на тулбаре, а хочу вешаю коллбэки и не создаю новых сущностей.

Тоесть GTK можно использовать и так и эдак. Это набор функций и структур.

demmsnt
()
Ответ на: комментарий от demmsnt

Ох мля, ты действительно так туп или просто троллишь? «GTKApplications» в gtk уже есть и похоже он прибит там гвоздями, в отличие от Qt, где от QApplication'а можно отнаследоваться и переопределить нужные методы.

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

Тоже мне невидаль.

Reset ★★★★★
()
Ответ на: комментарий от Reset

>Ох мля, ты действительно так туп или просто троллишь? «GTKApplications» в gtk уже есть и похоже он прибит там гвоздями, в отличие от Qt, где от QApplication'а можно отнаследоваться и переопределить нужные методы.

Вот и наследуйся в TCL или в C. Ты gtk.main() прибил гвоздями?

В чем задача QApplication а?

demmsnt
()
Ответ на: комментарий от demmsnt

> Ты gtk.main() прибил гвоздями?

gtk'шный event-loop можно без gtk_main() запустить?

В чем задача QApplication а?

Поток событий + настройки.

Reset ★★★★★
()
Ответ на: комментарий от Reset

>В GTK использованы все основные принципы ООП,

В HyperSQL тоже сплошной ООП внутри, но это не объектная БД, а реляционная.

demmsnt
()
Ответ на: комментарий от Reset

>Поток событий + настройки.

Объект был необходим? Настройки структура. Поток событий процесс. Определи диспетчер событий и все. Как функцию хотя-бы

demmsnt
()
Ответ на: комментарий от Reset

>gtk'шный event-loop можно без gtk_main() запустить?

Кстати а зачем? Надо вытащи исходник и запусти. Вероятно потому и не выделили эвентлуп из gtk.main() ибо там только эвентлуп. Побежал, развесил свои колбеки и все, дергает за ниточки. У меня кстати Qt гуру клянется, что Qt эвентлуп раза в три быстрее инициализируется

demmsnt
()
Ответ на: комментарий от Reset

>Опять ты путаешь теплое с мягким. Закончи институт наконец, уши уже вянут от твоей бредятины.

Не нравится не читай. Я удовольствие получаю от диспутирования с умными людьми которые рассказывают как ООП весь из себя внутри GTK и что главное это интерфейс и сокрытие, противореча себе ибо интерфейс GTK это структуры и функции.

demmsnt
()
Ответ на: комментарий от Reset

>Ну вот, мордой тыкнули и получили в ответ классическое «а зачем».

Да зачем? Зачем в .NET sin это не функция? Ах тут нет больше функций, ах индусы путаются? Теперь они используют ПО НАСТОЯЩЕМУ ООП фреймворк и вызывают статический метод класса Math. Зато ООП.

demmsnt
()
Ответ на: комментарий от demmsnt

>Положем я туп. Ткните носом. А пока я не вижу разницы между GTK (не GTK+) и Xlib. - набор структур и функций, не более того

Организация GTK такова что эти структуры и функции как раз нужны для того же для чего и классы С++: лейт биндинга (виртуальности) сокрытия стейт-процесса и т.д.

Вот тебе вырезка из gtklabel

[code]

//наследование

struct _GtkLabelClass
{
GtkMiscClass parent_class;
...
}

//виртуальность и объектный ad-hoc полиморфизм

static void
gtk_label_class_init (GtkLabelClass *class)
{
...........
gobject_class->set_property = gtk_label_set_property;
gobject_class->get_property = gtk_label_get_property;
gobject_class->finalize = gtk_label_finalize;

object_class->destroy = gtk_label_destroy;
............
[/code]

Да все это сделано в ручную - тем не менее цель этого и получаемые характеристики удовлетворяют цели и характеристикам ООП.

В xlib ты такого не найдешь.

r ★★★★★
()
Ответ на: комментарий от demmsnt

>Подобие!= равенство

Ну дык в С++, жабе и прочем С# тоже его подобие. Наиболее близко к ООПшной идее месседжинга подошли смолтолк и его друзья. Так что в лужу.

Да, но это подобие.


Это ООП. Если это плавает как утка, ходит как утка и крякает как утка - это и есть утка.





r ★★★★★
()
Ответ на: комментарий от demmsnt

>ООП это Инкапсуляция+Полиморфизм+Наследование

Во первых это не так, во вторых все это есть в ГТК.

Я считаю, что ООП это не плюч и не минус.


Ты вообще пока не понимаешь что это.

r ★★★★★
()
Ответ на: комментарий от demmsnt

>Грамотно организовали структуру в GTK, сразу стало ООП.

ООП оно стало потому что выполняет цели и задачи как они сформулированы в определении ООП. А не потому что в языке появилось слово «класс».

r ★★★★★
()
Ответ на: комментарий от demmsnt

>Да и именно поэтому большие системы приходят к тому, что у объекта 1 метот handleEvent.

Полный бред.

PS: не надо увлекаться паскалем.

r ★★★★★
()
Ответ на: комментарий от demmsnt

>Теперь они используют ПО НАСТОЯЩЕМУ ООП фреймворк и вызывают статический метод класса Math. Зато ООП.

Вот это как раз нихрена не ООП. Несмотря на то что это метод класса. Ты таки путаешь точки и ярлыки с понятиями и концепциями.

r ★★★★★
()
Ответ на: комментарий от r

>ООП оно стало потому что выполняет цели и задачи как они сформулированы в определении ООП. А не потому что в языке появилось слово «класс».

Нет. Используй наследование хоть 1000 раз. Но это все внутренние дела GTK. Для меня как для пользователя это просто набор функций и структур.

Шевроле Нива это не Шевроле. так и тут. 1) Зачемто выбран C. 2) Потом воспроизведен подход похожий на тот который применяют в ООП ЯП.

Подход ООП, я вообще сказал это давно. Но снаружи это набор функций и структур.

demmsnt
()
Ответ на: комментарий от r

>Вот это как раз нихрена не ООП. Несмотря на то что это метод класса. Ты таки путаешь точки и ярлыки с понятиями и концепциями.

Вот-вот. Взяли класс. Использовали фичу не по назначению.

Я ничего не путаю. я называю своими именами. А ярлычки не навешиваю.

Кнопочка это окно. Былоб глупо не учитывать это. И это отражено в GTK. Создатели GTK не гнались за тем чтоб сделать ООП библиотеку, а там где надо делали то, что надо. Поэтому называть GTK ООП библиотекой всеравно, что называть человека птицей без перьев.

demmsnt
()
Ответ на: комментарий от demmsnt

>Или Гусь

Утка. ООП определяется через реализуемые концепции. Как и все в этом мире. Получаемую прибыль дают объективные характеристики заложенных концепций а не «полиморфизм». Всякие полиморфизмы и прочие наследования - это лишь _вариант реализации_- то есть метод. А не причина или суть.

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

r ★★★★★
()
Ответ на: комментарий от demmsnt

>Но это все внутренние дела GTK.

А мы говорим о ГТК. Объектность ГТК - это его внутренее свойство.

Но снаружи это набор функций и структур.


Никакого оснаружи нет. Уже одно то что ты употребляешь слово снаружи говорит о твоем ограниченном опыте. Что - ни одного контрола в жизни не реализовывал?

r ★★★★★
()
Ответ на: комментарий от demmsnt

>А ярлычки не навешиваю.

Инкапсуляция, наследование и полиморфизм - это ярлычки.

Поэтому называть GTK ООП библиотекой всеравно, что называть человека птицей без перьев.


Ты не знаешь что такое ООП и не хочешь понимать что такое ООП. И даже дело не в ООП - ты по молодости и не опытности пока не научился различать понятия и названия. Очень плохо.

r ★★★★★
()
Ответ на: комментарий от r

>Потому что суть автомобиля это не в двигателе - а в его объективных свойствах - автоматическое мобильное средство передвижения.

Или сегвэй. По описанию подходит.

ООП это ярлык. Вот это и надо понять.

demmsnt
()
Ответ на: комментарий от r

>Никакого оснаружи нет. Уже одно то что ты употребляешь слово снаружи говорит о твоем ограниченном опыте. Что - ни одного контрола в жизни не реализовывал?

Почему-же? Писал TUI библиотеку на Perl. Ради интереса писал и на паскале какраз реализуя структурами и передавая «методам» self. Вот потому и смешно когда народ гворит - библиотека А крута по сравнению с Б ибо она ООП. И не стоит удивляться, что авторы GTK реализовали DSL для предметной области состоящей из объектов (Кнопки это окна и так далее....) Но тут и заключается разница между названием и концепцией. Я не навесил ярлычок ООП. А ты да

demmsnt
()
Ответ на: комментарий от demmsnt

>ООП это ярлык.

Точно. Делаешь небольшие успехи. Это ярлык. И ярлык этот висит на данном определении:

OOP ... means only messaging, local retention and protection and hiding of state-process, and extreme late-binding of all things.

 — dr. Alan Kay

Можешь почитать вообще источник понятия ООП и откуда взялись всякие полиморфизмы, которые ты сейчас ставишь на первое место: http://userpage.fu-berlin.de/~ram/pub/pub_jf47ht81Ht/doc_kay_oop_en

r ★★★★★
()
Ответ на: комментарий от demmsnt

>Почему-же? Писал TUI библиотеку на Perl.

Для GTK.

Вот потому и смешно когда народ гворит - библиотека А крута по сравнению с Б ибо она ООП.


ООП имеет объективные свойства. Эти свойства могут быть очень важны для определенного класса задач. GUI тулкит как раз подходит под этот класс задач. Если и будет найдена модель которая подходит лучше - то это уж точно не структуры и процедуры.

r ★★★★★
()

Гномеры такие паникерщики. Столман сказал «нехер в планете гнома рекламировать проприетарщину» гномеры тут-же подняли вой, что их притесняют, избивают и не кормят. Поэтому они выйдут из ГНУ. Теперь вот уволили двух челов из компании, которые занимались непонятно чем и попутно типа пилили орка. Гномеры поднимают вой «сейчас все рухнет, давайте быстро нас на работу на фултайм, где мы могли бы получать деньги за левую работу».

Мне теперь понятно, почему гном такой стабильный - разработчики просто боятся нововведений как судного дня - вдруг что-то сломается?

Биндинги у гтк хорошие и их много? Так их число от версии к версии сокращается. Метасити на ровном месте может обглючиться. Обновление гнома может привести к тому, что тихой сапой потеряются половину апплетов. Хотя да, в гноме есть ряд вещей, которых мне хотелось бы видеть и в КДЕ.

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

P.S. Я кдешник, который проводит месячник гнома :)

alex-w ★★★★★
()
Ответ на: комментарий от demmsnt

>Можно имитировать ООП. Например препроцессором.

АААААААА!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! У меня ещё рабочий день впереди, а ты мне нервы с утра расшатываешь. Не стыдно? :)

golodranez ★★★★
()
Ответ на: комментарий от demmsnt

>Зачем в .NET sin это не функция? Ах тут нет больше функций, ах индусы путаются? Теперь они используют ПО НАСТОЯЩЕМУ ООП фреймворк и вызывают статический метод класса Math. Зато ООП.

namespace зло? :))

golodranez ★★★★
()
Ответ на: комментарий от demmsnt

> противореча себе ибо интерфейс GTK это структуры и функции.

Идиотишко, ООП это концепция, а структуры и функции это синтаксис. Сокрытие в gtk-структурах есть, ибо никто не знает что там внутри, для этого сделали интерфейс в виде функций.

Reset ★★★★★
()
Ответ на: комментарий от demmsnt

> Подход ООП, я вообще сказал это давно.

Тогда о чем ты тут споришь я не понимаю? Троллишь и развлекаешь местную публику своей клоунадой ?

Reset ★★★★★
()
Ответ на: комментарий от demmsnt

>Создатели GTK не гнались за тем чтоб сделать ООП библиотеку

Ты видать знаешь лучше создателей GTK? Ссылку выше читай.

golodranez ★★★★
()
Ответ на: комментарий от Reset

>Тогда о чем ты тут споришь я не понимаю? Троллишь и развлекаешь местную публику своей клоунадой ?

О том, что Lisp не функциональный язык, а многопарадигменный. А GTK может быть и ООП, для того, для кого нужен, а может и не быть. А вы доказываете, что он ООП и хоть ты тресни.

demmsnt
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.