С/С++ многоплатформенность на уровне исходников
От: manenkov  
Дата: 03.07.08 08:12
Оценка:
День добрый!

Знаком с С только поверхностно. Подскажите плз, возможно ли написание на С кода, работающего (после перекомпиляции) под win32 и под mac(os x)? Или что по этому поводу стоит прочитать? На уровне бинарном я так понимаю совместимости быть не может.

Спасибо.
Re: С/С++ многоплатформенность на уровне исходников
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 03.07.08 08:15
Оценка:
Здравствуйте, manenkov, Вы писали:

M>Знаком с С только поверхностно. Подскажите плз, возможно ли написание на С кода, работающего (после перекомпиляции) под win32 и под mac(os x)? Или что по этому поводу стоит прочитать? На уровне бинарном я так понимаю совместимости быть не может.


wxWidgets

Qt
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re: С/С++ многоплатформенность на уровне исходников
От: php-coder Чехия http://slava-semushin.blogspot.com
Дата: 03.07.08 08:16
Оценка:
Здравствуйте, manenkov, Вы писали:

M>День добрый!


M>Знаком с С только поверхностно. Подскажите плз, возможно ли написание на С кода, работающего (после перекомпиляции) под win32 и под mac(os x)? Или что по этому поводу стоит прочитать? На уровне бинарном я так понимаю совместимости быть не может.


Возможно. Читайте про кросплатформенный код. С помощью #ifdef'ов всё обычно решается.
Re: С/С++ многоплатформенность на уровне исходников
От: jazzer Россия Skype: enerjazzer
Дата: 03.07.08 08:18
Оценка: 1 (1)
Здравствуйте, manenkov, Вы писали:

M>День добрый!


M>Знаком с С только поверхностно. Подскажите плз, возможно ли написание на С кода, работающего (после перекомпиляции) под win32 и под mac(os x)? Или что по этому поводу стоит прочитать? На уровне бинарном я так понимаю совместимости быть не может.


M>Спасибо.


Почитай код любого кросс-платформенного проекта, ту часть, где разруливается зависимость от оси.
Там, скорее всего, много макросов будет.
Можешь посмотреть, как это сделано в бусте, например — они там еще и разные компиляторы обхаживают, не только разные оси.
файл boost/config.hpp
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[2]: С/С++ многоплатформенность на уровне исходников
От: Conr Россия  
Дата: 03.07.08 09:29
Оценка: 1 (1)
Здравствуйте, php-coder, Вы писали:

M>>Знаком с С только поверхностно. Подскажите плз, возможно ли написание на С кода, работающего (после перекомпиляции) под win32 и под mac(os x)? Или что по этому поводу стоит прочитать? На уровне бинарном я так понимаю совместимости быть не может.


PC>Возможно. Читайте про кросплатформенный код. С помощью #ifdef'ов всё обычно решается.

Ну совсем без #ifdef не обойтись, конечно, но их использование можно свести к минимуму:

в .hpp описывается обобщеный интерфейс, общий для всех платформ, и далее в зависимости от того, где идет компиляция подключаются разные .cpp
Re: С/С++ многоплатформенность на уровне исходников
От: Erop Россия  
Дата: 03.07.08 11:37
Оценка: 6 (4) +3 -1 :)
Здравствуйте, manenkov, Вы писали:

M>Знаком с С только поверхностно. Подскажите плз, возможно ли написание на С кода, работающего (после перекомпиляции) под win32 и под mac(os x)? Или что по этому поводу стоит прочитать? На уровне бинарном я так понимаю совместимости быть не может.


Это очень зависит от специфики задачи. Если задача в основном состоит из GUI, то это невозможно в принципе. Существуют всякие тулкиты, библиотеки и среды разработки, которые в каком-то приближении решают задачу разработки переносимого графического полтзовательского интерфейса. Но беда состоит в том, что "родное" виндовое приложение, "родное" приложение под висту и "родное" под мэкось выглядят и работают очень по-разному.
Если ты напишешь переносимый GUI на Qt, то он будет не первым, не вторым, не третьим, а будет специфическим Qt'ёвым интерфейсом. Если GUI в твоей программе вообще совсем совсем не главное, тоэто ещё как-то куда-то сойдёт, но если GUI всё-таки важная часть разработки, то запросто.

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


ИТОГО
Если мы пишем программу, где есть развитое GUI + у этого GUI есть развитая внутреннья логика + есть ещё какой-то engine, который с GUI никак не завязан, то нам потребуется структурировать наш код, так, чтобы внутреннья логика GUI была написанна кроссплатформенно, сам GUI (контролы, реакция на клаву-мышку, отображение на экран/принтенр и т. п.) были реализованы для каждой платформы родным для неё способом + фреймворк для инкапсуляции сервисов OS, таких как память, время, нити, файлы и т. д. + переносимый engine.

Как-то так...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[2]: С/С++ многоплатформенность на уровне исходников
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 03.07.08 14:49
Оценка:
Здравствуйте, Erop, Вы писали:

E>Если ты напишешь переносимый GUI на Qt, то он будет не первым, не вторым, не третьим, а будет специфическим Qt'ёвым интерфейсом.


AFAIR wxWidgets использует как раз native GUI на каждой поддерживаемой ей платформе.
[ posted via RSDN@Home 1.1.4 stable SR1 r568, accompanied by silence ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[3]: О GUI под разными OS...
От: Erop Россия  
Дата: 03.07.08 15:35
Оценка: 1 (1) +1 -1 :)
Здравствуйте, SchweinDeBurg, Вы писали:

SDB>AFAIR wxWidgets использует как раз native GUI на каждой поддерживаемой ей платформе.

Все используют native GUI. Проблема не в том, что кто-то какой-то не такой API использует, а в том, что оболочки надо по-разному писать.
Напрмер, сообщения об ошибках нужно по разному формулировать. В OS Windows, например, нудно писать такие сообщения, чтобы уложиться в MessageBox. То есть там предполагается набор ответов, например Yes, No, Cancel
А в MAC OS X принято писать алертбоксы с кнопками, на которых написано что делать дальше.

Ну типа в винде пишут такое типичное сообщение: "Документ ХХХ не сохранён, а вы хотите выйти из программы. Сохранить документ?" и кнопки YNC, а в MAC OS X пишут как-то так: "Документ ХХХ не сохранён, а вы хотите выйти из программы" и кнопки: "сохранить документ", "не сохранять документ", "не выходить из программы"

И как ты это хочешь реализовывать сразу на обе платфоормы?
И таких отличий море. Ну реально философия взаимодействия с пользователем под разными OS разная просто.
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[4]: О GUI под разными OS...
От: Sergey Россия  
Дата: 03.07.08 18:40
Оценка:
Erop пишет:

> Все используют native GUI.


Не, не все. Некоторые сами контролы/виджеты рисуют.

> Проблема не в том, что кто-то какой-то не

> такой API использует, а в том, что оболочки надо по-разному писать.
> Напрмер, сообщения об ошибках нужно по разному формулировать. В OS
> Windows, например, нудно писать такие сообщения, чтобы уложиться в
> MessageBox. То есть там предполагается набор ответов, например Yes, No,
> Cancel
> А в MAC OS X принято писать алертбоксы с кнопками, на которых написано
> что делать дальше.
>
> Ну типа в винде пишут такое типичное сообщение: "Документ ХХХ не
> сохранён, а вы хотите выйти из программы. Сохранить документ?" и кнопки
> YNC, а в MAC OS X пишут как-то так: "Документ ХХХ не сохранён, а вы
> хотите выйти из программы" и кнопки: "сохранить документ", "не сохранять
> документ", "не выходить из программы"
>
> И как ты это хочешь реализовывать сразу на обе платфоормы?

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

> И таких отличий море. Ну реально философия взаимодействия с

> пользователем под разными OS разная просто.

Ну не знаю как там под макосью, а вин/лин ГУИ вполне реален.
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[5]: О GUI под разными OS...
От: Erop Россия  
Дата: 03.07.08 18:56
Оценка: +1 -1 :)
Здравствуйте, Sergey, Вы писали:

S>Плохой пример. YNC пишут исключительно от лени, а не потому что так в

S>винде принято. Если какая программа будет показывать кнопки "сохранить
S>документ", "не сохранять документ", "не выходить из программы" — ни один
S> виндовый юзер на нее не обидится.

Ну не пишут так под винду. Можно обсуждать хорошо это или плохо, но это не принято. Такие диалоги с именованными кнопками в винде нестандарт. Особенно если они систем модал, например
И вовсе не от лени, кстати. А для того, чтобы оставаться привычными пользователю. Например в офисе давно уже нет никаких меседжбоксов, всё ручками написанно. При этом всё в версиях до висты косит под меседжбоксы, а вовсе не под мэковский подход...
Конечно ты можешь наплевать на "нативность" интерфейса на какой-то, или даже на всех платформах, но таки в прогах, с важным GUI так обычно не делают...

S>Ну не знаю как там под макосью, а вин/лин ГУИ вполне реален.

1) Ну мэкось тут тема
2) С лином тоже всё плохо. Для начала можешь подумать о третьих кнопках и клипбордах... Конечно простые случаи ты можешь заткнуть во фреймворке. Но вот сокраментальный вопрос виндового приложения "Вы положили в буфер обмена слишком большой объём данных. Хотите ли вы, чтобы он сохранился после завершения приложения?" в лине задавать вроде бы негде Про мэковские замороки с многими буферами я, опять же, скромно молчу...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[3]: С/С++ многоплатформенность на уровне исходников
От: Conr Россия  
Дата: 03.07.08 19:44
Оценка: +1
Здравствуйте, SchweinDeBurg, Вы писали:

E>>Если ты напишешь переносимый GUI на Qt, то он будет не первым, не вторым, не третьим, а будет специфическим Qt'ёвым интерфейсом.


SDB>AFAIR wxWidgets использует как раз native GUI на каждой поддерживаемой ей платформе.

Они стараются использовать родные контролы, но вот реализовать нативную логику работы обобщенно невозможно.
Re[5]: О GUI под разными OS...
От: Conr Россия  
Дата: 03.07.08 20:12
Оценка: +1
Здравствуйте, Sergey, Вы писали:

>> И таких отличий море. Ну реально философия взаимодействия с

>> пользователем под разными OS разная просто.

S>Ну не знаю как там под макосью, а вин/лин ГУИ вполне реален.

Да и Win\Linux\Mac реален. Просто он всегда будет чем-то отличаться от нативных приложений. Причем, что самое вредное, зачастую непонятно чем именно. Просто некомфортно и все.
Re[6]: О GUI под разными OS...
От: Sergey Россия  
Дата: 03.07.08 20:51
Оценка: -1 :)
Erop пишет:

> S>Плохой пример. YNC пишут исключительно от лени, а не потому что так в

> S>винде принято. Если какая программа будет показывать кнопки "сохранить
> S>документ", "не сохранять документ", "не выходить из программы" — ни один
> S> виндовый юзер на нее не обидится.
>
> Ну не пишут так под винду. Можно обсуждать хорошо это или плохо, но это
> не принято. Такие диалоги с именованными кнопками в винде нестандарт.

Просто запусти в студии какой-нибудь долгоиграющий макрос, и пока он
работает, ткни мышкой в код. Увидишь, что диалоги с именованными
кнопками в винде тоже бывают, причем в продуктах MS.

> Особенно если они систем модал, например


Последний раз систем модал мессадж бокс я видел лет 10 назад. Они что,
до сих пор существуют?

> И вовсе не от лени, кстати. А для того, чтобы оставаться привычными

> пользователю.

Важно еще оставаться понятными. Чему YNC не способствует.

> Например в офисе давно уже нет никаких меседжбоксов, всё

> ручками написанно. При этом всё в версиях до висты косит под
> меседжбоксы, а вовсе не под мэковский подход...

Че, там правда все так плохо? Я просто пару лет назад перешел на OO, а
до того использовал 97.


> Конечно ты можешь наплевать на "нативность" интерфейса на какой-то, или

> даже на всех платформах, но таки в прогах, с важным GUI так обычно не
> делают...

GIMP — прога с важным ГУИ? А Опера? SeaMonkey?

> S>Ну не знаю как там под макосью, а вин/лин ГУИ вполне реален.

> 1) Ну мэкось тут тема

Увы, я тут не в теме.

> 2) С лином тоже всё плохо. Для начала можешь подумать о третьих кнопках

> и клипбордах...

Многие люди вообще не замечают разницу между линуксом и виндой

> Конечно простые случаи ты можешь заткнуть во фреймворке.

> Но вот сокраментальный вопрос виндового приложения "Вы положили в буфер
> обмена слишком большой объём данных. Хотите ли вы, чтобы он сохранился
> после завершения приложения?" в лине задавать вроде бы негде

Я его и винде не задаю Дебильный, на мой взгляд вопрос.
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[7]: О GUI под разными OS...
От: Erop Россия  
Дата: 03.07.08 21:15
Оценка: +1 -1 :)
Здравствуйте, Sergey, Вы писали:

S>Важно еще оставаться понятными. Чему YNC не способствует.

Просто найми нормального интерфейс дизайнера...

S>GIMP — прога с важным ГУИ? А Опера? SeaMonkey?

Что такое третье я не знаю, как на винде выглядит GIMP тоже не в курсе, но, IMHO, он и не на винде качеством интерфейса не блещет, а Опера имеет виесьма нестандартный виндовый GUI...


>> 2) С лином тоже всё плохо. Для начала можешь подумать о третьих кнопках

>> и клипбордах...
S>Многие люди вообще не замечают разницу между линуксом и виндой
Они кнопочки на мышке считать не умеют что ли?

S>Я его и винде не задаю Дебильный, на мой взгляд вопрос.

Это всего лишь вопрос высоты планки, которую ты задаёшь для качества GUI твоих приложений. Я не знаю, что это за приложения, но и у MS, которая формировала и отчасти всё ещё формирует критерии качественного GUI под Windows и у Apple Computers, которая формировала и формирует критерии качетсвенного GUI для Мэк ОС, эта планка расположена выше. Увы и ах...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[8]: О GUI под разными OS...
От: Cyberax Марс  
Дата: 03.07.08 21:22
Оценка:
Здравствуйте, Erop, Вы писали:

E>Это всего лишь вопрос высоты планки, которую ты задаёшь для качества GUI твоих приложений. Я не знаю, что это за приложения, но и у MS, которая формировала и отчасти всё ещё формирует критерии качественного GUI под Windows и у Apple Computers, которая формировала и формирует критерии качетсвенного GUI для Мэк ОС, эта планка расположена выше.

Windows нифига "качественный GUI" не формирует, так как в приложениях самой MS он различается не меньше, чем GIMP и Photoshop. Сравни, например, MS Office, IE и Windows Media Player.
Sapienti sat!
Re[2]: С/С++ многоплатформенность на уровне исходников
От: Mr.Cat  
Дата: 03.07.08 21:36
Оценка:
Здравствуйте, Erop, Вы писали:
E>Как-то так...

В целом, я, конечно, с Вами согласен. Под любую платформу теоретически есть есть свои design guidelines, соблюдение которых является плюсом. Но на практике-то что мы видим? Существует много успешных приложений, которые, грубо говоря, кладут на это дело болт. Возьмите любое приложение с нестандартным интерфейсом: тот же Nero (окошко StartSmart, или как его), всякие плееры с фантастическими скинами и еще кучу всего. Да даже это не обязательно. В рамках любой платформы всегда существует целый зоопарк "почти нативного" софта с различными подходами к GUI: где-то MDI отдельными окошками, где-то вкладками, где-то стандартная панель инструментов (а они, кстати и по рамерам разные бывают), где-то новомодный ribbon, где-то еще чего-нить. А MS вообще в продуктах своих от версии к версии интерфейс хоть слегка, но визуально меняет. И ничего, пользуются люди, даже радуются иной раз, какой, мол интерфейс красивый. О какой нативности в таком зоопарке идет речь? Тут уж хоть qt, хоть swing (главное look&feel удачный подобрать, мне вот в оракловых продуктах нравится — голубенький такой) родным покажется. Вот Вы, наверное, работали в Eclipse или NetBeans — сильно неудобно было? Думаю не сильно. А они ни на всех платформах одинаковы. А взять тот же FF. Да, есть у них минорные различия между интерфейсом в версиях для разных ОС. Но в целом все одинаково. И три кнопки на диалоге подтверждения выхода в FF3: "Quit", "Save and quit" и "Cancel" — есть и в виндовой версии — что по Вашим словам дикое нарушение виндовых design guidelines. И ничего, пользует народ, не жалуется. ИМХО, стандартизованный интерфейс был бы необходим, если б можно было бы осваивать программы по аналогии: типа умеешь пользоваться одной — умеешь пользоваться и всеми. Но, ИМХО, в случае "профессионального", рабочего софта важнее функциональность интерфейса (все равно для производительной работы надо запоминать всякие сочетания клавиш и т.п.), а для простого — интуитивность интерфейса. Вот. Такое мое ИМХО.
Re[8]: О GUI под разными OS...
От: Sergey Россия  
Дата: 03.07.08 21:41
Оценка:
Erop пишет:

> S>Важно еще оставаться понятными. Чему YNC не способствует.

> Просто найми нормального интерфейс дизайнера...

Ну так что насчет студии? Вернее, комовского диалога ожидания? Или вот
IE сейчас спросил: "Хотите закрыть все эти вкладки?" И две кнопки —
"Закрыть вкладки" и "Отмена". Наверное, MS денег на нормального
дизайнера не хватило...

> S>GIMP — прога с важным ГУИ? А Опера? SeaMonkey?

> Что такое третье я не знаю,

мозилла сьют, релоадед...

> как на винде выглядит GIMP тоже не в курсе,

> но, IMHO, он и не на винде качеством интерфейса не блещет,

Ладно, возмем вместо гимпа фотошоп. У него очень стандартный виндовый
ГУИ, ага?

> а Опера имеет виесьма нестандартный виндовый GUI...


И что, Опере это таки сильно мешает?
Можно вспомнить еще адоб ридер — ему, наверное, нестандартность ГУИ тоже
не дает захватить весь мир...

>> > 2) С лином тоже всё плохо. Для начала можешь подумать о третьих кнопках

>> > и клипбордах...
> S>Многие люди вообще не замечают разницу между линуксом и виндой
> Они кнопочки на мышке считать не умеют что ли?

У меня на мышке количество кнопок превышает все разумные пределы и
независит от того, какая ОС загружена. Или где ты их предлагаешь считать?

> S>Я его и винде не задаю Дебильный, на мой взгляд вопрос.

> Это всего лишь вопрос высоты планки, которую ты задаёшь для качества GUI
> твоих приложений. Я не знаю, что это за приложения, но и у MS, которая
> формировала и отчасти всё ещё формирует критерии качественного GUI под
> Windows и у Apple Computers, которая формировала и формирует критерии
> качетсвенного GUI для Мэк ОС, эта планка расположена выше. Увы и ах...

Ну так у кого из них планка выше — у тех, кто вопрос задает или у тех,
кто не задает?
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[9]: О GUI под разными OS...
От: Erop Россия  
Дата: 03.07.08 22:09
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Windows нифига "качественный GUI" не формирует, так как в приложениях самой MS он различается не меньше, чем GIMP и Photoshop. Сравни, например, MS Office, IE и Windows Media Player.


Если речь идёт о версиях этих продуктов от одного года, то они вполне похожи. Просто при переходе к висте MS сменили вид ГУЯ...
При переходе от NT к чикаго, кстати, тоже сменили...
И Apple при переходе от классической системы к Ховой, тоже сменили...

Ты всё ещё думаешь, что не формируют?


Я конечно понимаю, что многим нравится Qt, но отрицать существования стандарта на нативное видовское, или мэковское приложене странно как-то.
Тем более что и тот и тот стиль описан производителями платформ в соответсвующих документах
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[9]: О GUI под разными OS...
От: Erop Россия  
Дата: 03.07.08 22:17
Оценка:
Здравствуйте, Sergey, Вы писали:

S>Ну так что насчет студии? Вернее, комовского диалога ожидания? Или вот

S>IE сейчас спросил: "Хотите закрыть все эти вкладки?" И две кнопки —
S>"Закрыть вкладки" и "Отмена". Наверное, MS денег на нормального
S>дизайнера не хватило...
Наверное это IE7, сделанный уже под висту?
Под висту сделалиновые гайдлайнс, между прочим...

S>мозилла сьют, релоадед...

Ну я всё равыно не знаю как это выглядит и обсуждать интерфейс не могу

S>Ладно, возмем вместо гимпа фотошоп. У него очень стандартный виндовый

S>ГУИ, ага?
У него очень стандартный МЭКЛВСКИЙ гуй, немного искажённый в сторону виндового MDI...
Но, возможно, ты в курсе, что шоп -- это МЭКОВСКОЕ приложение, которое перенесли под винду, немного переделав.
Тем не менее под виндой его интерфейс остался крайне уродским

S>И что, Опере это таки сильно мешает?

Я не знаю что именно мешает опере, но что-то таки мешает
S>Можно вспомнить еще адоб ридер — ему, наверное, нестандартность ГУИ тоже
S>не дает захватить весь мир...
А оно тоже не совсем виндовое приложение. Увы. Тоже мэковский порт. И тоже не особо удобно под виндой, кстати. Под мэк ос намного удобнее и органичнее

S>У меня на мышке количество кнопок превышает все разумные пределы и

S>независит от того, какая ОС загружена. Или где ты их предлагаешь считать?
Ты прикалываешься?

S>Ну так у кого из них планка выше — у тех, кто вопрос задает или у тех,

S>кто не задает?

У MS планка высокая довольно. У Яблочников ещё выше, IMHO. Какая планка у тебя я не в курсе. Когда создашь систему, или программу, которая превзойдёт по популярности хотя бы офис, или, хотя бы 5-й ворд -- поделишься опытом...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[10]: О GUI под разными OS...
От: Cyberax Марс  
Дата: 03.07.08 22:29
Оценка:
Здравствуйте, Erop, Вы писали:

E>Если речь идёт о версиях этих продуктов от одного года, то они вполне похожи. Просто при переходе к висте MS сменили вид ГУЯ...

Давай смотреть. Вот Windows XP:


Вот Office 2003:


Вот Windows Media Player:


И есть ещё IE7 с его идиотским убирающимся меню. Итак, где тут consistent user interface?

E>Я конечно понимаю, что многим нравится Qt, но отрицать существования стандарта на нативное видовское, или мэковское приложене странно как-то.

E>Тем более что и тот и тот стиль описан производителями платформ в соответсвующих документах
Нет, стандарты-то есть. Но сами MS (в особенности) и Apple (иногда) им не следуют. И в результате не следуют им и разработчики приложений, особенно в Windows.

В Линуксе и то больше единообразия из-за того, что GTK/QT предоставляют намного больше прикладных средств, чем WinAPI. Т.е. меньше остаётся простора для кастомизации.
Sapienti sat!
Re[10]: О GUI под разными OS...
От: Sergey Россия  
Дата: 03.07.08 22:32
Оценка:
Erop пишет:

> S>Ладно, возмем вместо гимпа фотошоп. У него очень стандартный виндовый

> S>ГУИ, ага?
> У него очень стандартный МЭКЛВСКИЙ гуй, немного искажённый в сторону
> виндового MDI...
> Но, возможно, ты в курсе, что шоп -- это МЭКОВСКОЕ приложение, которое
> перенесли под винду, немного переделав.

Я в курсе.

> Тем не менее под виндой его интерфейс остался крайне уродским


Лично мне его интерфейс уродским не кажется.


> S>И что, Опере это таки сильно мешает?

> Я не знаю что именно мешает опере, но что-то таки мешает

У Оперы — передовой интерфейс. Оттуда полезные интерфейсные фичи потом
перекочёвывают в эксплорер и прочие файерфоксы.

> S>Можно вспомнить еще адоб ридер — ему, наверное, нестандартность ГУИ тоже

> S>не дает захватить весь мир...
> А оно тоже не совсем виндовое приложение. Увы. Тоже мэковский порт. И
> тоже не особо удобно под виндой, кстати. Под мэк ос намного удобнее и
> органичнее

Лично меня — устраивает. Рука для таскания за любое место документа —
вообще верх юзабилити. Хоть и не стандартно-виндовая.

> S>У меня на мышке количество кнопок превышает все разумные пределы и

> S>независит от того, какая ОС загружена. Или где ты их предлагаешь считать?
> Ты прикалываешься?

Это касательно фразы "Они кнопочки на мышке считать не умеют что ли"
Всерьёз ее воспринимать невозможно...

> S>Ну так у кого из них планка выше — у тех, кто вопрос задает или у тех,

> S>кто не задает?
>
> У MS планка высокая довольно. У Яблочников ещё выше, IMHO. Какая планка
> у тебя я не в курсе. Когда создашь систему, или программу, которая
> превзойдёт по популярности хотя бы офис, или, хотя бы 5-й ворд --
> поделишься опытом...

Шож ты так сливаешься? Не, ты уж объясни — вопрос "Вы положили в буфер
обмена слишком большой объём данных. Хотите ли вы, чтобы он сохранился
после завершения приложения?" задавать — это высокая планка или никакая?
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[3]: С/С++ многоплатформенность на уровне исходников
От: Erop Россия  
Дата: 03.07.08 22:35
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

MC>В целом, я, конечно, с Вами согласен. Под любую платформу теоретически есть есть свои design guidelines,...Такое мое ИМХО.

Конечно на design guidelines можно забить, и есть программы, которым это ен помешало. Но точно не помогло. О всегда это такой софт, где гуй не самое главное и важное. Есть какая-то функциональность основная, которую даже неудачный илинетрадиционный гуй не сильно портит.
Вот, например, текстовые редакторы, для всех платформ свои остаются. А браузер -- это, до какой-то степени, "платформа в платформе", вот вольности и проходят. Но, опять же, родной браузер (IE, сафари) на каждой из платформ всё ещё лидирует
Опять же есть много софта, для которого идеология взаимодействия пользователя с системой вообще очень важна. Вагоны всяких мелких примочек, например. Да и не мелких, кстати, тоже. Вот, скажем, приложение, которое не умеет выделенный в себе кусок контента d&dропить на десктоп смотрится в мэкоси крайне странно и убого.
Ещё, например, многие "фоновые" программы, те же mp3-плееры, умеют куда-то складываться или как-то прятаться "в фон"
На винде это делают совершенно одним способом, а на Мэкоси другим.
Но в целом для пары винда/линь это противоречние не такое уж жёсткое. Потому, что у линукса вообще со единым стилем гуя не совсем всё хорошо, а у винды есть по крайней мере 4 ревизии всё ещё актуальные design guidelines: Win 3.11, Windows 95, Windows XP и Windows Vista + куча популярного софта, приехавшего из мэкоси. Кроме того линь всё время пытается стать "как винда, только ещё намного лучше"

А вот под Мэком блюдут чистоту design guidelines. И все довольно таки монолитненько. Да и интеграция приложений с системой и друг с другм получше будет, чем в лин/вин. И они всегда на это, как на сильную сторону своей платформы упирали.

И если вернуться таки к вопросу топикстартера, то на Qt удастся конечно написать приложение, которое на винде будет смотреться как несколько экстравогантный эксперимент над ГУЁм, или как неплохой, но немного чужеродный порт с линукса, а под мэкосью будет однозначно выглядеть, как ПЛОХОЙ порт, и довольно неудобный, к тому же. Либо прийдётся таки оболочку под Мэком существенно до/перерабатывать...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[11]: О GUI под разными OS...
От: Erop Россия  
Дата: 03.07.08 22:43
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Здравствуйте, Erop, Вы писали:


E>>Если речь идёт о версиях этих продуктов от одного года, то они вполне похожи. Просто при переходе к висте MS сменили вид ГУЯ...

C>Давай смотреть. Вот Windows XP:
Тебя не смущает, что XP -- это тиап 2001, а IE7 -- типа 2007, что ли, как и девятый плеер?

Ты таки на продукты ОДНОГО ГОДА посмотри?

Хотя я не знаю о чём ты споришь? О том, что есть общепринятый "виндовз ГУЙ"? Да тебе по фотке любой сразу скажут виндовз это или не виндовз.

А Qt на винде смотрится как хитрая смесь лина (если уж считать, что Qt -- этоодин из нативных вариантов для OS Linux) и винды.
А на Мэкос и того хуже смотрится.

Хотя, конечно, если ты считаешь, что Qt -- это единственный нормальныцй интерфейс, а OS Linux -- единственная нормальная ось, то я собственно спорить не буду. В КСВ на эту тему лежит уже 5 мегатем, кажется
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[11]: О GUI под разными OS...
От: Erop Россия  
Дата: 03.07.08 22:46
Оценка:
Здравствуйте, Sergey, Вы писали:

S>Шож ты так сливаешься? Не, ты уж объясни — вопрос "Вы положили в буфер

S>обмена слишком большой объём данных. Хотите ли вы, чтобы он сохранился
S>после завершения приложения?" задавать — это высокая планка или никакая?

А что ты делаешь в своих программах, вместо этого вопроса?
Всегда грохаешь данные? Или всегда засираешь место в темп. каталоге? Или ещё чего полезного делаешь?
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[12]: О GUI под разными OS...
От: Cyberax Марс  
Дата: 03.07.08 22:49
Оценка:
Здравствуйте, Erop, Вы писали:

E>Тебя не смущает, что XP -- это тиап 2001, а IE7 -- типа 2007, что ли, как и девятый плеер?

E>Ты таки на продукты ОДНОГО ГОДА посмотри?
А где они? Vista и Office 2007 вышли в разные годы. Media Player был уродливым в XP с рождения. Office 2003 вышел через полтора года после XP.

E>Хотя я не знаю о чём ты споришь? О том, что есть общепринятый "виндовз ГУЙ"? Да тебе по фотке любой сразу скажут виндовз это или не виндовз.

Я тоже.

E>А Qt на винде смотрится как хитрая смесь лина (если уж считать, что Qt -- этоодин из нативных вариантов для OS Linux) и винды.

QT на Windows как раз НЕ СИЛЬНО отличается от нативного GUI. По крайней мере, в тех же пределах, что и разница между разными виндовыми программами.

E>А на Мэкос и того хуже смотрится.

Да. На Макос вообще что-то кроме родного Cocoa смотрится плохо.
Sapienti sat!
Re[11]: Поговорим о фруктах?.. :)
От: Erop Россия  
Дата: 03.07.08 22:55
Оценка:
Здравствуйте, Sergey, Вы писали:

>> Тем не менее под виндой его интерфейс остался крайне уродским

S>Лично мне его интерфейс уродским не кажется.
Ну планки и уровни вские мы уже вроде осбудили... Ты, кстати, ко "многим, которые не замечают разницы винда/линукс" себя относишь?


S>Лично меня — устраивает. Рука для таскания за любое место документа —

S>вообще верх юзабилити. Хоть и не стандартно-виндовая.
И прыгающий между страницами скролер, наверное тоже?

S>Шож ты так сливаешься?

После того спама, который ты устроил из оценок говорить о "сливать" там или ещё о чём подобном как-то странно.
Вообще-то топикстартер спросил можно ли писать переносимо между OS Windows и MAc OS...
Ты, вроде как, в теме вообще не копенгаген, кнопки на мышке тоже сосчитать не можешь, бо больно много кнопок на твоей мышке, различия между работой с выделениями в линухе и клипбордой в винде не замечаешь и т. д.
И после всего этого цирка ты предлагаешь поговорить о сливах? Давай лучше о персиках. Они вкуснее
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[13]: О GUI под разными OS...
От: Erop Россия  
Дата: 03.07.08 22:58
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>QT на Windows как раз НЕ СИЛЬНО отличается от нативного GUI. По крайней мере, в тех же пределах, что и разница между разными виндовыми программами.

Ну всё-таки заметно отличается. Примерно как программы собранные на компиляторе борланда отличались в своё время, например.
Мне это переодически мешает, напирмер.

C>Да. На Макос вообще что-то кроме родного Cocoa смотрится плохо.

Ну о том-то и речь. Топикстартер-то интересовался парой винда-мэкось, а не линь-вынь. С линь-вынь всё понятно
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[14]: О GUI под разными OS...
От: Cyberax Марс  
Дата: 03.07.08 23:42
Оценка:
Здравствуйте, Erop, Вы писали:

C>>QT на Windows как раз НЕ СИЛЬНО отличается от нативного GUI. По крайней мере, в тех же пределах, что и разница между разными виндовыми программами.

E>Ну всё-таки заметно отличается. Примерно как программы собранные на компиляторе борланда отличались в своё время, например.
Это отличие вполне укладывается в пределы изменчивости. По крайней мере, пользователи не очень возражают.

E>Мне это переодически мешает, напирмер.

А мне нет...

C>>Да. На Макос вообще что-то кроме родного Cocoa смотрится плохо.

E>Ну о том-то и речь. Топикстартер-то интересовался парой винда-мэкось, а не линь-вынь. С линь-вынь всё понятно
Я вот тоже интересуюсь. Оказалось, что вообще таких нормальных фреймворков НЕТ. Максимально близкое — это wxWidgets. Но wxCarbon (который стабилен и работает) использует Carbon, который deprecated и ограничен. Есть wxCocoa, но там у неё своих проблем хватает.
Sapienti sat!
Re[15]: О GUI под разными OS...
От: Erop Россия  
Дата: 04.07.08 00:11
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Это отличие вполне укладывается в пределы изменчивости. По крайней мере, пользователи не очень возражают.

Ну, в целом, деваться просто некуда

E>>Мне это переодически мешает, напирмер.

C>А мне нет...
Ну ещё бы. Тебе и линукс сам по себе не чужд
Было бы странно, если бы тебе Qt'ишные интерфейсы жали

C>Я вот тоже интересуюсь. Оказалось, что вообще таких нормальных фреймворков НЕТ. Максимально близкое — это wxWidgets. Но wxCarbon (который стабилен и работает) использует Carbon, который deprecated и ограничен. Есть wxCocoa, но там у неё своих проблем хватает.

Ну так задача сложная очень. Вот и нет ничего вменяемо работающего. IMHO, это принципиально тупиковый путь. Только для очень простых приложений доступный. Ясно, что dialog-based приложение можно везде сделать, хотя в MAC OS X оно будет довольно уродски смотреться

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

Короче, IMHO, надо не так под win-mac писать. Надо брать кросплатформенный фреймворк для абстрагирования от файлов, памяти и т. п. а прогу жёстко делить на мотор и оболочку.
А оболочку тоже жестко делить на engine, который заправляе всей логикой, и системозависмую часть. Ну и часть писать на каждой из систем с нуля.
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[4]: С/С++ многоплатформенность на уровне исходников
От: jazzer Россия Skype: enerjazzer
Дата: 04.07.08 02:18
Оценка: +1
Здравствуйте, Erop, Вы писали:

E> Вот, скажем, приложение, которое не умеет выделенный в себе кусок контента d&dропить на десктоп смотрится в мэкоси крайне странно и убого.


Равно как и модальные диалоги с фиксированной геометрией под никсами, хотя для винды и то и другое — стандарт.

В никсах, кстати, был хороший проработанный стандарт — Motif.
Жаль, что помер

А уж про реализацию буфера обмена (в иксах выделенное нечто автоматически попадает в буфер без всяких Ctrl+C, но выделение одно на все приложения, так что даже и о буфере тут говорить не совсем корректно, скорее, это такой drag&drop, только без собственно drag) я вообще умолчу.
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[4]: С/С++ многоплатформенность на уровне исходников
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 04.07.08 05:50
Оценка:
Здравствуйте, Conr, Вы писали:

C>Они стараются использовать родные контролы, но вот реализовать нативную логику работы обобщенно невозможно.


Вит, а ты не мог бы немного расшифровать выделенное?
[ posted via RSDN@Home 1.1.4 stable SR1 r568, accompanied by silence ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re: Оффтопик :)
От: ArtDenis Россия  
Дата: 04.07.08 05:58
Оценка:
Я тут погляжу, все сразу бросились ГУИ под разные платформы обсуждать.
Но весь прикол в том, что про пользовательский интерфейс в вопросе не
было ни слова
Posted via RSDN NNTP Server 2.1 beta
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re[2]: Оффтопик :)
От: jazzer Россия Skype: enerjazzer
Дата: 04.07.08 05:59
Оценка:
Здравствуйте, ArtDenis, Вы писали:

AD>Я тут погляжу, все сразу бросились ГУИ под разные платформы обсуждать.

AD>Но весь прикол в том, что про пользовательский интерфейс в вопросе не
AD>было ни слова

Мы говорим: "Мак" — подразумеваем: "Гуй"!
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[3]: Оффтопик :)
От: ArtDenis Россия  
Дата: 04.07.08 06:03
Оценка:
jazzer wrote:
>
> Мы говорим: "Мак" — подразумеваем: "Гуй"!

Ну вообще-то да
Posted via RSDN NNTP Server 2.1 beta
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re[5]: С/С++ многоплатформенность на уровне исходников
От: Erop Россия  
Дата: 04.07.08 06:15
Оценка:
Здравствуйте, jazzer, Вы писали:

J>А уж про реализацию буфера обмена (в иксах выделенное нечто автоматически попадает в буфер без всяких Ctrl+C, но выделение одно на все приложения, так что даже и о буфере тут говорить не совсем корректно, скорее, это такой drag&drop, только без собственно drag) я вообще умолчу.


На самом деле всё ещё хуже. Таких отличий очень много. Они во всяких неожиданных местах рассованы, как мины. В результате получается какой-то интерфейс неудобный в неожиданных местах.

Можно, конечно, надеяться, что кто-нибудь, вроде Qt всех победит. Но на мэкос я бы ждал этого не скоро
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[2]: Оффтопик :)
От: Erop Россия  
Дата: 04.07.08 06:17
Оценка:
Здравствуйте, ArtDenis, Вы писали:

AD>Я тут погляжу, все сразу бросились ГУИ под разные платформы обсуждать.

AD>Но весь прикол в том, что про пользовательский интерфейс в вопросе не
AD>было ни слова
Вообще-то тут
Автор: Erop
Дата: 03.07.08
и про гуй и не про гуй написано. Но от чего-то всех именно про гуй поговорить пробило Видимо потому, что слово звучное
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[12]: Поговорим о фруктах?.. :)
От: Sergey Россия  
Дата: 04.07.08 06:21
Оценка:
Erop пишет:

>> > Тем не менее под виндой его интерфейс остался крайне уродским

> S>Лично мне его интерфейс уродским не кажется.
> Ну планки и уровни вские мы уже вроде осбудили...

Ну да, глупостей про "планки" ты написал изрядно.

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

Нет, разумеется.


> S>Лично меня — устраивает. Рука для таскания за любое место документа —

> S>вообще верх юзабилити. Хоть и не стандартно-виндовая.
> И прыгающий между страницами скролер, наверное тоже?

Ты явно что-то путаешь, как с систем модал.


> S>Шож ты так сливаешься?

> После того спама, который ты устроил из оценок говорить о "сливать" там
> или ещё о чём подобном как-то странно.
> Вообще-то топикстартер спросил можно ли писать переносимо между *OS
> Windows* и *MAc OS*...

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

> Ты, вроде как, в теме вообще не копенгаген, кнопки на мышке тоже

> сосчитать не можешь, бо больно много кнопок на твоей мышке,

Ха. Ответь на простой вопрос — сколько кнопок на мышке A4Tech X-750F?
Учитывая, что их там 5 обычных плюс 2, одна из которых переключает
чувствительность мыши, поэтому пользоваться ей для других целей не
возможно (хотя она программно доступна), другая — эмулирует тройное
нажатие левой кнопки и программно недоступна. Это сколько кнопок в сумме
получается, учитывая что я пользуюсь мышкой просто как трехкнопочной?

> различия

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

Ты ответь сначала — кто правильнее поступает, кто вопрос задает или кто
не задает?
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[13]: У тебя есть выбор...
От: Erop Россия  
Дата: 04.07.08 06:40
Оценка:
Здравствуйте, Sergey, Вы писали:

S>Ну да, глупостей про "планки" ты написал изрядно.

Это потому, что ты не согласен с моими утверждениями, они являются глупостями, или есть ещё какие-то причины?
Продемнстрируй их пожалуйста, напримере утвеждения: "Фирма Applke Computers формирует стандарт на GUI на платформе, при этом задаёт очень высокую планку качества разработки интерфейса"...

S>Ты явно что-то путаешь, как с систем модал.

1) Не путаю. Открой ридер в масштабе "страница по ширине помещается в окно" и скролируй его стрелкой вниз. Скрол будет неровным, а рывками. Рывки будут на границах страниц...
2) В чём проблемы с систем-модал сообщениями? Получал такое от системы не далее, как сегодня утром...

S>Ну так разные версии Windows между собой отличаются ничуть не меньше. И

S>ничего, никого это не пугает.
Про проблемы висты в том числе и из-за смены интерфейса месье ничего не слышал? Про аналогичные проблемы с ХР тоже?
Про проблемы нового офиса?..

>> Ты, вроде как, в теме вообще не копенгаген, кнопки на мышке тоже

>> сосчитать не можешь, бо больно много кнопок на твоей мышке,

S>Ха. Ответь на простой вопрос — сколько кнопок на мышке A4Tech X-750F?

S>Учитывая, что их там 5 обычных плюс 2, одна из которых переключает
S>чувствительность мыши, поэтому пользоваться ей для других целей не
S>возможно (хотя она программно доступна), другая — эмулирует тройное
S>нажатие левой кнопки и программно недоступна. Это сколько кнопок в сумме
S>получается, учитывая что я пользуюсь мышкой просто как трехкнопочной?

Ну я и не спорю, что посчитать кнопки на своей мышке ты не можешь. Потому что их слишком много.
Вот, например, на моей мышке две кнопки и колесо...
Но, возможно ты не понял что я сказал, так как я выразился слишком вольно.
IMHO, если человек не замечает, что таки надо сделать для Copy-Paste -- нажать Ctrl+C + Ctrl+V или выделить в одном месте и потом нажать среднюю кнопку/левую и правую одновременно в другом, то такому человеку абсолютно всё равно как устроен GUI. он его просто не замечает. И обсуждать тему переносимого написания GUI не может...
Ещё, ЕМНИП, ты утверждал, что про мэкось ты вообще не в курсах, так что по теме
Автор: manenkov
Дата: 03.07.08
ты вообще мало что можешь сказать вроде как...

S>Ты ответь сначала — кто правильнее поступает, кто вопрос задает или кто

S>не задает?
Если бы ты читал мои сообщения, то заметил бы, что я на этот вопрос уже ответил.
Под виндой вопрос задавать надо, под линуксом -- нет.


Собственно у тебя есть выбор -- либо вести обсуждение конструктивно и по теме, либо идти лесом, так как твои сливы не особо интеречны.
Только, пожалуйста, воздержись от спама в оценках. Это правда не умно и ни на что, кроме удобства пользования статистикой, не влияет...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[5]: С/С++ многоплатформенность на уровне исходников
От: Conr Россия  
Дата: 04.07.08 07:05
Оценка: 38 (3) +2
Здравствуйте, SchweinDeBurg, Вы писали:

C>>Они стараются использовать родные контролы, но вот реализовать нативную логику работы обобщенно невозможно.


SDB>Вит, а ты не мог бы немного расшифровать выделенное?

Ну смотри, к примеру, возьмем кнопки в заголовке окна. В Mac OS кнопка закрытия окна (крестик) — это именно закрытие окна, а не закрытие приложения, оно остается подгруженным в память и просто сворачивается в док. Кнопки Maximize вообще нет! Свитчеры обычно за нее принимают кнопку зуммирования. Кстати в винде аналога этой операции нет в принципе — как, спрашивается, ее писать кроссплатформенно? Про сообщения уже Erop написал. Это из мелочей

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

Кстати насчет шоткатов. В MacOS они совершенно другие. Как класса нет Alt-*, обход по Tab по умолчанию осуществляется только по полям ввода и комбобоксам — попасть на кнопку сложновато будет При этом, на самом деле, маковские шоткаты после привыкания много мощнее и, имхо, логичнее.

Дополнительная сложность в том, что GUI Windows ориентирован на использование инструментальных панелей (toolbars) — это, фактически стандарт. Логика работы MacOS предполагает использование служебных плавающих окон и палитр. Связано это, кстати, еще с одним различием — MDI приложениями. Под MacOS они от SDI отличаются только одним пунктом в меню и реально удобны, потому что при разворачивании дочернего окна не происходит перекрытия всей области родительского окна и палитры не оказываются над рабочим пространством. Вместо этого происходит зуммирование по свободной области, не занятой палитрами — как раз то самое, про которое выше написано. Одного этого пункта уже достаточно, в принципе

С поддержкой Drag&Drop тоже все грустно — ничего общего практически, надо писать по отдельности.

Организация самой программы на маках тоже необычна. То, что видится как отдельный исполняемый файл, это ни что иное как... папка Самая натуральная директория внутри которой лежат ресурсы: собственно приложение, файлы с картинками, файлы с текстами под разные переводы и тп. Причем, прошу заметить, что у каждого такого файла собственные права доступа, что надо учитывать при работе! Это примерно как если бы в Windows у каждого ресурса в exe были собственные права Какой уж тут обобщенный код?

Это из того, что сразу вспомнилось. Я, кстати, уже писал когда-то давно то же самое, что сейчас Erop подтвердил. GUI надо полностью отделять лигики и писать под каждую платформу отдельно. А вот все остальное (диск, память, сеть, IPC, etc ) очень хорошо обобщается, главное boost для этого не использовать
Re[14]: У тебя есть выбор...
От: jazzer Россия Skype: enerjazzer
Дата: 04.07.08 07:14
Оценка:
Здравствуйте, Erop, Вы писали:

E>1) Не путаю. Открой ридер в масштабе "страница по ширине помещается в окно" и скролируй его стрелкой вниз. Скрол будет неровным, а рывками. Рывки будут на границах страниц...


Там опция на этот счет есть
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[6]: С/С++ многоплатформенность на уровне исходников
От: Erop Россия  
Дата: 04.07.08 07:15
Оценка:
Здравствуйте, Conr, Вы писали:

C>Это из того, что сразу вспомнилось. Я, кстати, уже писал когда-то давно то же самое, что сейчас Erop подтвердил. GUI надо полностью отделять лигики и писать под каждую платформу отдельно. А вот все остальное (диск, память, сеть, IPC, etc ) очень хорошо обобщается, главное boost для этого не использовать


Абсолютно согласен со всем. Чувствуется практический опыт
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[15]: У тебя есть выбор...
От: Erop Россия  
Дата: 04.07.08 07:17
Оценка:
Здравствуйте, jazzer, Вы писали:

J>Там опция на этот счет есть

1) По умолчанию установлена не так, как удобно
2) У меня под вистой от чего-то опции ридера сбрасываются в дефолт при перезапуске
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[7]: С/С++ многоплатформенность на уровне исходников
От: Conr Россия  
Дата: 04.07.08 07:20
Оценка: +1 :)
Здравствуйте, Erop, Вы писали:

C>>Это из того, что сразу вспомнилось. Я, кстати, уже писал когда-то давно то же самое, что сейчас Erop подтвердил. GUI надо полностью отделять лигики и писать под каждую платформу отдельно. А вот все остальное (диск, память, сеть, IPC, etc ) очень хорошо обобщается, главное boost для этого не использовать


E>Абсолютно согласен со всем. Чувствуется практический опыт

Что, даже с выделеным? А я уж думал, что на меня сейчас за это набросятся — на святое же покусился
Re[16]: У тебя есть выбор...
От: jazzer Россия Skype: enerjazzer
Дата: 04.07.08 07:20
Оценка: +1
Здравствуйте, Erop, Вы писали:

E>Здравствуйте, jazzer, Вы писали:


J>>Там опция на этот счет есть

E>1) По умолчанию установлена не так, как удобно
Убей — не помню, как она по умолчанию.
К тому же очень зависит от того, что ты делаешь.
Если просто читаешь текст — рывки неудобны, а если проверяешь верстку — как раз то, что нужно.

E>2) У меня под вистой от чего-то опции ридера сбрасываются в дефолт при перезапуске

А, ну в этом смысле адобовские поделки вообще кривые почти все.


То, что меня больше всего достает в акробате — это букмарки, в которых записан зум. Это ж надо было додуматься...
Типа открыл файл, настроил, чтоб было видно так, как тебе надо, мацнул на линк — и опаньки, все обратно.
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[8]: С/С++ многоплатформенность на уровне исходников
От: jazzer Россия Skype: enerjazzer
Дата: 04.07.08 07:21
Оценка: :)
Здравствуйте, Conr, Вы писали:

C>Здравствуйте, Erop, Вы писали:


C>>>Это из того, что сразу вспомнилось. Я, кстати, уже писал когда-то давно то же самое, что сейчас Erop подтвердил. GUI надо полностью отделять лигики и писать под каждую платформу отдельно. А вот все остальное (диск, память, сеть, IPC, etc ) очень хорошо обобщается, главное boost для этого не использовать


E>>Абсолютно согласен со всем. Чувствуется практический опыт

C>Что, даже с выделеным? А я уж думал, что на меня сейчас за это набросятся — на святое же покусился
Не, у Егора святое как раз — это НЕ использовать буст.
Вот если б ты сказал, что его надо использовать — тогда бы покусился
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[6]: С/С++ многоплатформенность на уровне исходников
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 04.07.08 07:22
Оценка:
Здравствуйте, Conr, Вы писали:

C>Это из того, что сразу вспомнилось. Я, кстати, уже писал когда-то давно то же самое, что сейчас Erop подтвердил. GUI надо полностью отделять лигики и писать под каждую платформу отдельно.


Спасибо за объяснения, Вит, хотя удивил ты меня преизрядно — помню, между 1995-м и 2000-м мне в руки случайно попал этакий аналог Петцольда про программирование под Мак. Так вот те примеры гуевых приложений (простеньких, конечно) были как две капли воды похожи на виндовые, даже названия функций совпадали процентов на 80...
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[7]: С/С++ многоплатформенность на уровне исходников
От: Conr Россия  
Дата: 04.07.08 07:27
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:

SDB>Спасибо за объяснения, Вит, хотя удивил ты меня преизрядно — помню, между 1995-м и 2000-м мне в руки случайно попал этакий аналог Петцольда про программирование под Мак. Так вот те примеры гуевых приложений (простеньких, конечно) были как две капли воды похожи на виндовые, даже названия функций совпадали процентов на 80...

Хм... Не хочу наезжать на Петцольда, но у него слишком виндовый бакграунд
Re[14]: У тебя есть выбор...
От: Sergey Россия  
Дата: 04.07.08 07:30
Оценка:
Erop пишет:

> S>Ну да, глупостей про "планки" ты написал изрядно.

> Это потому, что ты не согласен с моими утверждениями, они являются
> глупостями, или есть ещё какие-то причины?
> Продемнстрируй их пожалуйста, напримере утвеждения: "Фирма Applke
> Computers формирует стандарт на GUI на платформе, при этом задаёт очень
> высокую планку качества разработки интерфейса"...

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

> S>Ты явно что-то путаешь, как с систем модал.

> 1) Не путаю. Открой ридер в масштабе "страница по ширине помещается в
> окно" и скролируй его стрелкой вниз. Скрол будет неровным, а рывками.
> Рывки будут на границах страниц...
> 2) В чём проблемы с систем-модал сообщениями? Получал такое от системы
> не далее, как сегодня утром...

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


> S>Ну так разные версии Windows между собой отличаются ничуть не меньше. И

> S>ничего, никого это не пугает.
> Про проблемы висты в том числе и из-за смены интерфейса месье ничего не
> слышал? Про аналогичные проблемы с ХР тоже?
> Про проблемы нового офиса?..

Проблемы с XP сводились к тому, что 10% пользователей ныли по форумам, а
90% сказали "вау, круть какая" и побежали отстегивать бабки за новый
продукт. Ну а Виста вообще особая статья, на нее жалуются в основном
из-за UAC да из-за того, что привычные вещи поубирали. Откуда,
спрашивается, пользователь должен догадаться, что меню в эксплорере
появится после назжатия F10? А вот на уменьшение количества YNC, как ни
странно, никто не жаловался.

> Но, возможно ты не понял что я сказал, так как я выразился слишком вольно.

> IMHO, если человек не замечает, что таки надо сделать для Copy-Paste --
> нажать Ctrl+C + Ctrl+V или выделить в одном месте и потом нажать среднюю
> кнопку/левую и правую одновременно в другом, то такому человеку
> абсолютно всё равно как устроен GUI. он его просто не замечает. И
> обсуждать тему переносимого написания GUI не может...

Видишь ли, в линуксе "из коробки" и всякие Ctrl+C/Ctrl+V/Ctrl+Ins и т.д.
замечательно работают.

> Ещё, ЕМНИП, ты утверждал, что про мэкось ты вообще не в курсах, так что

> по теме <http://rsdn.ru/forum/message/3010283.aspx&gt;
Автор: manenkov
Дата: 03.07.08
ты вообще мало что

> можешь сказать вроде как...

Если ты не заметил — изначально я возражал исключительно против
полезности YNC в винде. Которые являются неудачным решением
независимо ни от каких гайдлайнсов.


> S>Ты ответь сначала — кто правильнее поступает, кто вопрос задает или кто

> S>не задает?
> Если бы ты читал мои сообщения, то заметил бы, что я на этот вопрос уже
> ответил.
> Под виндой вопрос задавать надо, под линуксом -- нет.

Замечательно. Всего 3 сообщения, и ты ответил на вопрос Не на тот,
правда — вопрос был про винду и макось...


> Собственно у тебя есть выбор -- либо вести обсуждение конструктивно и по

> теме, либо идти лесом, так как твои сливы не особо интеречны.

Тебе твой неконструктив продемонстрировать? Или в своем глазу бревна не
видать?

> Только, пожалуйста, воздержись от спама в оценках. Это правда не умно и

> ни на что, кроме удобства пользования статистикой, не влияет...

Это не спам, это отношение к твоей позиции.
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[9]: С/С++ многоплатформенность на уровне исходников
От: Erop Россия  
Дата: 04.07.08 07:32
Оценка:
Здравствуйте, jazzer, Вы писали:

J>Не, у Егора святое как раз — это НЕ использовать буст.

Святое у меня другое, но буст действительно лучше не использовать, во всяком случае как кросплатформенный фреймворк...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[8]: С/С++ многоплатформенность на уровне исходников
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 04.07.08 07:33
Оценка:
Здравствуйте, Conr, Вы писали:

C>Хм... Не хочу наезжать на Петцольда, но у него слишком виндовый бакграунд


Ты меня не так понял. Автором был не Петцольд, просто по структуре и "целевой аудитории" аналог был почти полный.
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[4]: С/С++ многоплатформенность на уровне исходников
От: Mr.Cat  
Дата: 04.07.08 07:37
Оценка:
Здравствуйте, Erop, Вы писали:
E>И если вернуться таки к вопросу топикстартера, то на Qt удастся конечно написать приложение, которое на винде будет смотреться как несколько экстравогантный эксперимент над ГУЁм, или как неплохой, но немного чужеродный порт с линукса, а под мэкосью будет однозначно выглядеть, как ПЛОХОЙ порт, и довольно неудобный, к тому же. Либо прийдётся таки оболочку под Мэком существенно до/перерабатывать...

Вообще, я с маком в плане программирования под него слабо знаком, но тролли регулярно распинаются, мол, как клево приложения на Qt будут под маком смотреться. Надо будет как-нить проверить.
Re[15]: У тебя есть выбор...
От: Erop Россия  
Дата: 04.07.08 07:55
Оценка: -1
Здравствуйте, Sergey, Вы писали:

S>Видишь ли, в линуксе "из коробки" и всякие Ctrl+C/Ctrl+V/Ctrl+Ins и т.д.

S>замечательно работают.
Зато в винде не работает "третья кнопка"

S>Если ты не заметил — изначально я возражал исключительно против

S>полезности YNC в винде. Которые являются неудачным решением
S>независимо ни от каких гайдлайнсов.

Полезность или вредность YNC я вообще не обсуждал.
Я обсуждал наличие на платформах дизайн гайдлайнс и особенностей технологий. YNC -- это всего лишь пример. Их очень много.
Или ты таки отрицаешь, что на винде ПРИНЯТО использовать "YNC-подход"?

S>Замечательно. Всего 3 сообщения, и ты ответил на вопрос Не на тот,

S>правда — вопрос был про винду и макось...
Под MAC OS он не нужен.

S>Тебе твой неконструктив продемонстрировать? Или в своем глазу бревна не

S>видать?
Ну ты пока что так и не похвастался, что ты делаешь в своих Windows программах, вместо задавания этого вопроса?

S>Это не спам, это отношение к твоей позиции.

Да? Видимо это нервный смех? Сейчас же лето? Возможно осенью станет ещё хуже
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[5]: С/С++ многоплатформенность на уровне исходников
От: Erop Россия  
Дата: 04.07.08 07:57
Оценка: +1
Здравствуйте, Mr.Cat, Вы писали:

MC>Вообще, я с маком в плане программирования под него слабо знаком, но тролли регулярно распинаются, мол, как клево приложения на Qt будут под маком смотреться. Надо будет как-нить проверить.


Ну, просто, некоторые люди не считают полезным следовать традициям и гайдлайнс платформы. И им тогда Qt смотрится клёво везде. А обычные пользователи страдают.
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[16]: У тебя тоже есть выбор...
От: Sergey Россия  
Дата: 04.07.08 08:29
Оценка:
Erop пишет:

> S>Видишь ли, в линуксе "из коробки" и всякие Ctrl+C/Ctrl+V/Ctrl+Ins и т.д.

> S>замечательно работают.
> Зато в винде не работает "третья кнопка"

Что характерно — людям, пересевшим на линукс из под винды, это не мешает
и разницу они не замечают.

> S>Если ты не заметил — изначально я возражал исключительно против

> S>полезности YNC *в винде*. Которые являются неудачным решением
> S>независимо ни от каких гайдлайнсов.
>
> Полезность или вредность YNC я вообще не обсуждал.

Т.е., ты предлагаешь делать вредные вещи?

> Я обсуждал наличие на платформах дизайн гайдлайнс и особенностей

> технологий. YNC -- это всего лишь пример. Их очень много.
> Или ты таки отрицаешь, что на винде ПРИНЯТО использовать "YNC-подход"?

Я вроде бы вполне понятно написал — YNC на винде делают в основном из-за
лени. И я таки отрицаю, что это на винде общепринято. И нет ни одной
причины считать ЮИ ущербным, если вместо малопонятных Yes, No, Cancel он
пишет на кнопках названия действий.

> S>Замечательно. Всего 3 сообщения, и ты ответил на вопрос Не на тот,

> S>правда — вопрос был про винду и макось...
> Под MAC OS он не нужен.

Замечательно. Если под MAC OS он не нужен, под линуксом — не нужен,
нафига задавать его под виндой? Чиста юзера озадачить и позлить?

> S>Тебе твой неконструктив продемонстрировать? Или в своем глазу бревна не

> S>видать?
> Ну ты пока что так и не похвастался, что ты делаешь в своих Windows
> программах, вместо задавания этого вопроса?

Данные в приватных формате чищу, естественно. В общесистемных — оставляю.


> S>Это не спам, это отношение к твоей позиции.

> Да? Видимо это нервный смех? Сейчас же лето? Возможно осенью станет ещё
> хуже

Да, я просто боюсь себе представить, что же ты начнёшь писать к осени...
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[9]: С/С++ многоплатформенность на уровне исходников
От: Conr Россия  
Дата: 04.07.08 08:39
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:

C>>Хм... Не хочу наезжать на Петцольда, но у него слишком виндовый бакграунд


SDB>Ты меня не так понял. Автором был не Петцольд, просто по структуре и "целевой аудитории" аналог был почти полный.

слово аналог я как-то пропустил...
Re[2]: Оффтопик :)
От: jazzer Россия Skype: enerjazzer
Дата: 04.07.08 08:41
Оценка: :)
Здравствуйте, ArtDenis, Вы писали:

AD>Я тут погляжу, все сразу бросились ГУИ под разные платформы обсуждать.

AD>Но весь прикол в том, что про пользовательский интерфейс в вопросе не
AD>было ни слова

в моем посте про буст.конфиг тоже про гуй ни слова
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[17]: У тебя тоже есть выбор...
От: Erop Россия  
Дата: 04.07.08 08:44
Оценка:
Здравствуйте, Sergey, Вы писали:

S>Что характерно — людям, пересевшим на линукс из под винды, это не мешает

S>и разницу они не замечают.
Так я и не спорю, что естьлюди, которые вообще не замечают как устроено GUI. Почему их мнение в вопросе чистоты реализации интерфейса является важным?

S>Т.е., ты предлагаешь делать вредные вещи?

Я предлагаю следовать гайдлайнс платформы. А если уж их нарушать, то осмысленно...
В частности, программы, которые не выпендриваются и используют messageboxes нормально работают с другими версиями систем, со всякими расширителями винды, с автонажималками кнопок во всяких местах и т. д.
А те, кто "самый умный" пишут прекарсные программы, которые на всё это реагируют совершенно неадекватно.

>> Или ты таки отрицаешь, что на винде ПРИНЯТО использовать "YNC-подход"?


S>Я вроде бы вполне понятно написал — YNC на винде делают в основном из-за

S>лени.
Я не спорю, что ты это писал. Но утверждаю, что
1) Заявление про лень ничем пока не потивировано, кроме того, что лично тебе виндовые гайдлайнс нравятся в этом месте меньше, чем мэкосёвые... Но ты же пока станадарты на ГУЙ на платформе не устанавливаешь?
2) Когда говорят "в основном" не плохо бы приводить статистику, или какие-нибудь другие аргументы...
3) Это утверждение (про лень) вообще неверное. Пример с офисом я тебе уже приводил...
S>И я таки отрицаю, что это на винде общепринято. И нет ни одной
S>причины считать ЮИ ущербным, если вместо малопонятных Yes, No, Cancel он
S>пишет на кнопках названия действий.
1) То что тебе такие причины не известны, ещё не значит, что их нет
2) То, что YNC-подход на винде не принят -- просто враньё. Он не принят иногда, в редких случаях, и на некоторых, в основном портированных приложениях

S>Замечательно. Если под MAC OS он не нужен, под линуксом — не нужен,

S>нафига задавать его под виндой? Чиста юзера озадачить и позлить?
Потому что под виндой он нужен.
Собственно я тут про то и говорю, что под разными системами ГУЙ организуют ПОРАЗНОМУ!!!

S>Данные в приватных формате чищу, естественно. В общесистемных — оставляю.

Очень по доброму. Более непонятного для пользователя поведения придумать не удалось?
Ты в юзергайде как это поведение описываешь, например?
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[5]: С/С++ многоплатформенность на уровне исходников
От: Кодёнок  
Дата: 04.07.08 08:49
Оценка: +1
Здравствуйте, Mr.Cat, Вы писали:

MC>Вообще, я с маком в плане программирования под него слабо знаком, но тролли регулярно распинаются, мол, как клево приложения на Qt будут под маком смотреться. Надо будет как-нить проверить.


Так себе выглядит. Они скопировали скин и всё. Даже пропорции контролов в их собственных демках по умолчанию неродные.

Во взаимодействии с пользователем кроссплатформенность не нужна и вообще вредна.
Re[18]: У тебя тоже есть выбор...
От: Sergey Россия  
Дата: 04.07.08 09:21
Оценка: :)
Erop пишет:

> S>Что характерно — людям, пересевшим на линукс из под винды, это не мешает

> S>и разницу они не замечают.
> Так я и не спорю, что естьлюди, которые вообще не замечают как устроено
> GUI. Почему их мнение в вопросе чистоты реализации интерфейса является
> важным?

Потому что "вопрос чистоты реализации интерфейса" вообще мало кого
волнует. Важно, чтобы пользователю было удобно. А если не видно разницы
— зачем платить больше?

> S>Т.е., ты предлагаешь делать вредные вещи?

> Я предлагаю следовать гайдлайнс платформы. А если уж их нарушать, то
> осмысленно...

В каком конкретно гайдлайне написано, что надо пользоваться YNC и не
надо — именованными кнопками?

> В частности, программы, которые не выпендриваются и используют

> messageboxes нормально работают с другими версиями систем, со всякими
> расширителями винды, с автонажималками кнопок во всяких местах и т. д.

Программы, которые используют диалоги с именованными кнопками — работают
не хуже.

> А те, кто "самый умный" пишут прекарсные программы, которые на всё это

> реагируют совершенно неадекватно.

Пример не затруднит? В какой ситуации диалог с тремя кнопками, у которых
ID'ы все те же, что у YNC, но надписи — другие, понятные, будет работать
неправильно?

> Я не спорю, что ты это писал. Но утверждаю, что

> 1) Заявление про лень ничем пока не потивировано, кроме того, что лично
> тебе виндовые гайдлайнс нравятся в этом месте меньше, чем мэкосёвые...

Заявление про лень обусловлено прежде всего собственным опытом Для
показа YNC диалога достаточно одного вызова функции, для
кастомизированного — сам знаешь...

> Но ты же пока станадарты на ГУЙ на платформе не устанавливаешь?

> 2) Когда говорят "в основном" не плохо бы приводить статистику, или
> какие-нибудь другие аргументы...

Да, кстати, приведи-ка статистику или ссылку на стандарт...

> 3) Это утверждение (про лень) вообще неверное. Пример с офисом я тебе

> уже приводил...

Это ерунда, а не пример, поскольку реальные причины, по которым в офисе
было сделано именно так, а не иначе, не известны.

> S>И я таки отрицаю, что это на винде общепринято. И нет ни одной

> S>причины считать ЮИ ущербным, если вместо малопонятных Yes, No, Cancel он
> S>пишет на кнопках названия действий.
> 1) То что тебе такие причины не известны, ещё не значит, что их нет

Ну так перечисли их.

> 2) То, что YNC-подход на винде не принят -- просто враньё. Он не принят

> иногда, в редких случаях, и на некоторых, в основном портированных
> приложениях

Ладно, соглашусь — YNC не используется иногда, в редких случаях, когда
авторы программы достаточно заботятся о пользователе, чтобы написать
кастомизированный диалог.

> S>Замечательно. Если под MAC OS он не нужен, под линуксом — не нужен,

> S>нафига задавать его под виндой? Чиста юзера озадачить и позлить?
> Потому что под виндой он нужен.

Зачем?

> Собственно я тут про то и говорю, что под разными системами ГУЙ

> организуют ПОРАЗНОМУ!!!

Это я заметил, да В целом ГУЙ под разными системами действительно
организуют по разному, НО:
1) под виндой его в разных программах тоже организуют по разному, и мало
кого это шокирует.
2) плохие практики, как то использование YNC и задавание дурацких
вопросов пользователю — в топку


> S>Данные в приватных формате чищу, естественно. В общесистемных — оставляю.

> Очень по доброму. Более непонятного для пользователя поведения придумать
> не удалось?

Ну а что в такой ситуации делаешь ты?

> Ты в юзергайде как это поведение описываешь, например?


Никак не описываю, это вообще мало кого интересует. Текст/html для
вставки в другие программы остается, а приватный формат, как ни крути,
чистить положено.
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[19]: У тебя тоже есть выбор...
От: Conr Россия  
Дата: 04.07.08 09:37
Оценка:
Здравствуйте, Sergey, Вы писали:

>> Собственно я тут про то и говорю, что под разными системами ГУЙ

>> организуют ПОРАЗНОМУ!!!

S>Это я заметил, да В целом ГУЙ под разными системами действительно

S>организуют по разному, НО:
S>1) под виндой его в разных программах тоже организуют по разному, и мало
S>кого это шокирует.
Проблема в том, что под MacOS практически все программы организованы единообразно. Apple предоставляет исчерпывающий GUI guideline и достаточно внимательно следит за тем, чтобы ему следовали. У MS с другой стороны, GUI guideline относительно убогий, не говоря уж о том, что сама компания ему зачастую не следует. В итоге анархия полнейшая, лебедь, рак и щука.

S>2) плохие практики, как то использование YNC и задавание дурацких

S>вопросов пользователю — в топку
+1. В идеале вообще не спрашивать... только замучаешься придумывать как это сделать
Re[20]: У тебя тоже есть выбор...
От: Sergey Россия  
Дата: 04.07.08 10:10
Оценка: -1 :)
Conr пишет:

>> > Собственно я тут про то и говорю, что под разными системами ГУЙ

>> > организуют ПОРАЗНОМУ!!!
>
> S>Это я заметил, да В целом ГУЙ под разными системами действительно
> S>организуют по разному, НО:
> S>1) под виндой его в разных программах тоже организуют по разному, и мало
> S>кого это шокирует.
> Проблема в том, что под MacOS практически все программы организованы
> единообразно. Apple предоставляет исчерпывающий GUI guideline и
> достаточно внимательно следит за тем, чтобы ему следовали. У MS с другой
> стороны, GUI guideline относительно убогий, не говоря уж о том, что сама
> компания ему зачастую не следует. В итоге анархия полнейшая, лебедь, рак
> и щука.

Значит, ответ очевиден — если программа нужна под винды и макос, надо
писать ее под мак, а на винды — портировать. Виндовые пользователи к
такому привычны и слегка отличное от других поведение их бесить не будет.
Тулкитов вот только подходящих на горизонте не наблюдается, это да. Но
это уже техническая проблема, а не идеологическая.
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[21]: У тебя тоже есть выбор...
От: Conr Россия  
Дата: 04.07.08 10:25
Оценка: +1
Здравствуйте, Sergey, Вы писали:

S>Значит, ответ очевиден — если программа нужна под винды и макос, надо

S>писать ее под мак, а на винды — портировать. Виндовые пользователи к
S>такому привычны и слегка отличное от других поведение их бесить не будет.
S>Тулкитов вот только подходящих на горизонте не наблюдается, это да. Но
S>это уже техническая проблема, а не идеологическая.
Не очень хорошая идея на мой взгляд, но тот же Photoshop так и разрабатывается.
Re[10]: С/С++ многоплатформенность на уровне исходников
От: jazzer Россия Skype: enerjazzer
Дата: 04.07.08 10:58
Оценка:
Здравствуйте, Erop, Вы писали:

E>Здравствуйте, jazzer, Вы писали:


J>>Не, у Егора святое как раз — это НЕ использовать буст.

E>Святое у меня другое, но буст действительно лучше не использовать, во всяком случае как кросплатформенный фреймворк...

Дело в том, что вряд ли ты на разных платформах будешь компилировать одним и тем же компилятором.
Так вот у буста лучшая поддержка разных диалектов из всех, что я видел, и она вся инкапсулирована в буст.конфиг.
Так что если ты юзаешь его в полный рост — можешь не бояться, что на другом компиляторе у тебя не будет нечто из фич С++ работать.
Они поддерживают даже странности борланда и вц6.
Естественно, все на макросах.
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[11]: С/С++ многоплатформенность на уровне исходников
От: Conr Россия  
Дата: 04.07.08 11:33
Оценка:
Здравствуйте, jazzer, Вы писали:

J>Дело в том, что вряд ли ты на разных платформах будешь компилировать одним и тем же компилятором.

J>Так вот у буста лучшая поддержка разных диалектов из всех, что я видел, и она вся инкапсулирована в буст.конфиг.
J>Так что если ты юзаешь его в полный рост — можешь не бояться, что на другом компиляторе у тебя не будет нечто из фич С++ работать.
J>Они поддерживают даже странности борланда и вц6.
J>Естественно, все на макросах.
Я скорее предпочту выбрать более подходящий компилятор, чем бороться с трудноуловимыми глюками в коде, который я понять не могу (boost::thread в частности).

Но у всех своя специфика. Возможно кому-то действительно более важно поддерживать максимальное количество платформ и компиляторов. А мне для полного счастья хватает Mac\Win\Linux и Intel C++ Compiler
Re[12]: С/С++ многоплатформенность на уровне исходников
От: jazzer Россия Skype: enerjazzer
Дата: 04.07.08 11:39
Оценка:
Здравствуйте, Conr, Вы писали:

C>Здравствуйте, jazzer, Вы писали:


J>>Дело в том, что вряд ли ты на разных платформах будешь компилировать одним и тем же компилятором.

J>>Так вот у буста лучшая поддержка разных диалектов из всех, что я видел, и она вся инкапсулирована в буст.конфиг.
J>>Так что если ты юзаешь его в полный рост — можешь не бояться, что на другом компиляторе у тебя не будет нечто из фич С++ работать.
J>>Они поддерживают даже странности борланда и вц6.
J>>Естественно, все на макросах.
C>Я скорее предпочту выбрать более подходящий компилятор, чем бороться с трудноуловимыми глюками в коде, который я понять не могу (boost::thread в частности).

C>Но у всех своя специфика. Возможно кому-то действительно более важно поддерживать максимальное количество платформ и компиляторов. А мне для полного счастья хватает Mac\Win\Linux и Intel C++ Compiler


если тебя интелловский компилер устраивает на всех платформах — конечно, нет проблем

а вот если ты пишешь библиотечку, которая, предполагается, будет подключаться к разным проектам с разными компиляторами (все-таки, как ни крути, стандартом на линуксе является GCC, в винде — одна из версий студии, а на классическом маке, помнится, вообще CodeWarrior) — буст.конфиг в этом сильно поможет.
Заметь, про boost::thread я ни слова не сказал
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[13]: С/С++ многоплатформенность на уровне исходников
От: Кодёнок  
Дата: 04.07.08 11:49
Оценка: +1
Здравствуйте, jazzer, Вы писали:

J>а вот если ты пишешь библиотечку, которая, предполагается, будет подключаться к разным проектам с разными компиляторами (все-таки, как ни крути, стандартом на линуксе является GCC, в винде — одна из версий студии, а на классическом маке, помнится, вообще CodeWarrior) — буст.конфиг в этом сильно поможет.


На маке теперь тоже GCC
Re[14]: С/С++ многоплатформенность на уровне исходников
От: jazzer Россия Skype: enerjazzer
Дата: 04.07.08 11:49
Оценка:
Здравствуйте, Кодёнок, Вы писали:

Кё>Здравствуйте, jazzer, Вы писали:


J>>а вот если ты пишешь библиотечку, которая, предполагается, будет подключаться к разным проектам с разными компиляторами (все-таки, как ни крути, стандартом на линуксе является GCC, в винде — одна из версий студии, а на классическом маке, помнится, вообще CodeWarrior) — буст.конфиг в этом сильно поможет.


Кё>На маке теперь тоже GCC


ну, из того, что он есть, не следует, что он лучший
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[13]: С/С++ многоплатформенность на уровне исходников
От: Conr Россия  
Дата: 04.07.08 12:59
Оценка:
Здравствуйте, jazzer, Вы писали:

C>>Но у всех своя специфика. Возможно кому-то действительно более важно поддерживать максимальное количество платформ и компиляторов. А мне для полного счастья хватает Mac\Win\Linux и Intel C++ Compiler


J>если тебя интелловский компилер устраивает на всех платформах — конечно, нет проблем

Ок. Даже если оставить два основных: gcc и vc — различия между ними не настолько велики, что только из-за этого использовать буст. У меня все проекты, на самом деле, компилируется и на них. Интеловский выбран только потому, что он генерит более шустрый код, причем заметно.

J>а вот если ты пишешь библиотечку, которая, предполагается, будет подключаться к разным проектам с разными компиляторами (все-таки, как ни крути, стандартом на линуксе является GCC, в винде — одна из версий студии, а на классическом маке, помнится, вообще CodeWarrior) — буст.конфиг в этом сильно поможет.

CodeWarrior — это тихий ужас ну его нафиг. Apple сейчас gcc пользует по умолчанию, да и вообще всех насильно на objective-c перетаскивает. Куда более агрессивно, чем MS на .NET, кстати.

J>Заметь, про boost::thread я ни слова не сказал

Да я к бусту, в принципе, неплохо отношусь — прототип на нем наклепать для проверки идеи вполне можно
Re[10]: О GUI под разными OS...
От: Alex Alexandrov США  
Дата: 04.07.08 20:43
Оценка:
Здравствуйте, Erop, Вы писали:

E>При переходе от NT к чикаго, кстати, тоже сменили...


Непонятно, что такое переход от НТ к Чикаго, если Чикаго — кодовое название 95-й винды.

Две вообще параллельные ветки. Обе из них обиделись бы, если сказать, что одна из них — переход к другой. Robert Colwell (архитектор первого интеловского OOO процессора) в своей интересной книжке описывал, какие нелегкие отношения были между этими двумя ветками в Майкрософте.
It's kind of fun to do the impossible (Walt Disney)
Re[11]: О GUI под разными OS...
От: Erop Россия  
Дата: 04.07.08 21:10
Оценка:
Здравствуйте, Alex Alexandrov, Вы писали:

AA>Непонятно, что такое переход от НТ к Чикаго, если Чикаго — кодовое название 95-й винды.


Ok, просто при переходе к Чикаго. Вне связи с NT. Просто мне тогда 32-разрядная система была нужна, а Win32s достал
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re: С/С++ многоплатформенность на уровне исходников
От: Uzumaki Naruto Ниоткуда  
Дата: 05.07.08 09:22
Оценка: 4 (1) :)
С++ стандарт.

 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.