Conr пишет:
>> > Собственно я тут про то и говорю, что под разными системами ГУЙ >> > организуют ПОРАЗНОМУ!!! > > S>Это я заметил, да В целом ГУЙ под разными системами действительно > S>организуют по разному, НО: > S>1) под виндой его в разных программах тоже организуют по разному, и мало > S>кого это шокирует. > Проблема в том, что под MacOS практически все программы организованы > единообразно. Apple предоставляет исчерпывающий GUI guideline и > достаточно внимательно следит за тем, чтобы ему следовали. У MS с другой > стороны, GUI guideline относительно убогий, не говоря уж о том, что сама > компания ему зачастую не следует. В итоге анархия полнейшая, лебедь, рак > и щука.
Значит, ответ очевиден — если программа нужна под винды и макос, надо
писать ее под мак, а на винды — портировать. Виндовые пользователи к
такому привычны и слегка отличное от других поведение их бесить не будет.
Тулкитов вот только подходящих на горизонте не наблюдается, это да. Но
это уже техническая проблема, а не идеологическая.
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Здравствуйте, Sergey, Вы писали:
S>Значит, ответ очевиден — если программа нужна под винды и макос, надо S>писать ее под мак, а на винды — портировать. Виндовые пользователи к S>такому привычны и слегка отличное от других поведение их бесить не будет. S>Тулкитов вот только подходящих на горизонте не наблюдается, это да. Но S>это уже техническая проблема, а не идеологическая.
Не очень хорошая идея на мой взгляд, но тот же Photoshop так и разрабатывается.
Re[10]: С/С++ многоплатформенность на уровне исходников
Здравствуйте, Erop, Вы писали:
E>Здравствуйте, jazzer, Вы писали:
J>>Не, у Егора святое как раз — это НЕ использовать буст. E>Святое у меня другое, но буст действительно лучше не использовать, во всяком случае как кросплатформенный фреймворк...
Дело в том, что вряд ли ты на разных платформах будешь компилировать одним и тем же компилятором.
Так вот у буста лучшая поддержка разных диалектов из всех, что я видел, и она вся инкапсулирована в буст.конфиг.
Так что если ты юзаешь его в полный рост — можешь не бояться, что на другом компиляторе у тебя не будет нечто из фич С++ работать.
Они поддерживают даже странности борланда и вц6.
Естественно, все на макросах.
Здравствуйте, jazzer, Вы писали:
J>Дело в том, что вряд ли ты на разных платформах будешь компилировать одним и тем же компилятором. J>Так вот у буста лучшая поддержка разных диалектов из всех, что я видел, и она вся инкапсулирована в буст.конфиг. J>Так что если ты юзаешь его в полный рост — можешь не бояться, что на другом компиляторе у тебя не будет нечто из фич С++ работать. J>Они поддерживают даже странности борланда и вц6. J>Естественно, все на макросах.
Я скорее предпочту выбрать более подходящий компилятор, чем бороться с трудноуловимыми глюками в коде, который я понять не могу (boost::thread в частности).
Но у всех своя специфика. Возможно кому-то действительно более важно поддерживать максимальное количество платформ и компиляторов. А мне для полного счастья хватает Mac\Win\Linux и Intel C++ Compiler
Re[12]: С/С++ многоплатформенность на уровне исходников
Здравствуйте, Conr, Вы писали:
C>Здравствуйте, jazzer, Вы писали:
J>>Дело в том, что вряд ли ты на разных платформах будешь компилировать одним и тем же компилятором. J>>Так вот у буста лучшая поддержка разных диалектов из всех, что я видел, и она вся инкапсулирована в буст.конфиг. J>>Так что если ты юзаешь его в полный рост — можешь не бояться, что на другом компиляторе у тебя не будет нечто из фич С++ работать. J>>Они поддерживают даже странности борланда и вц6. J>>Естественно, все на макросах. C>Я скорее предпочту выбрать более подходящий компилятор, чем бороться с трудноуловимыми глюками в коде, который я понять не могу (boost::thread в частности).
C>Но у всех своя специфика. Возможно кому-то действительно более важно поддерживать максимальное количество платформ и компиляторов. А мне для полного счастья хватает Mac\Win\Linux и Intel C++ Compiler
если тебя интелловский компилер устраивает на всех платформах — конечно, нет проблем
а вот если ты пишешь библиотечку, которая, предполагается, будет подключаться к разным проектам с разными компиляторами (все-таки, как ни крути, стандартом на линуксе является GCC, в винде — одна из версий студии, а на классическом маке, помнится, вообще CodeWarrior) — буст.конфиг в этом сильно поможет.
Заметь, про boost::thread я ни слова не сказал
Здравствуйте, jazzer, Вы писали:
J>а вот если ты пишешь библиотечку, которая, предполагается, будет подключаться к разным проектам с разными компиляторами (все-таки, как ни крути, стандартом на линуксе является GCC, в винде — одна из версий студии, а на классическом маке, помнится, вообще CodeWarrior) — буст.конфиг в этом сильно поможет.
На маке теперь тоже GCC
Re[14]: С/С++ многоплатформенность на уровне исходников
Здравствуйте, Кодёнок, Вы писали:
Кё>Здравствуйте, jazzer, Вы писали:
J>>а вот если ты пишешь библиотечку, которая, предполагается, будет подключаться к разным проектам с разными компиляторами (все-таки, как ни крути, стандартом на линуксе является GCC, в винде — одна из версий студии, а на классическом маке, помнится, вообще CodeWarrior) — буст.конфиг в этом сильно поможет.
Кё>На маке теперь тоже GCC
ну, из того, что он есть, не следует, что он лучший
Здравствуйте, jazzer, Вы писали:
C>>Но у всех своя специфика. Возможно кому-то действительно более важно поддерживать максимальное количество платформ и компиляторов. А мне для полного счастья хватает Mac\Win\Linux и Intel C++ Compiler
J>если тебя интелловский компилер устраивает на всех платформах — конечно, нет проблем
Ок. Даже если оставить два основных: gcc и vc — различия между ними не настолько велики, что только из-за этого использовать буст. У меня все проекты, на самом деле, компилируется и на них. Интеловский выбран только потому, что он генерит более шустрый код, причем заметно.
J>а вот если ты пишешь библиотечку, которая, предполагается, будет подключаться к разным проектам с разными компиляторами (все-таки, как ни крути, стандартом на линуксе является GCC, в винде — одна из версий студии, а на классическом маке, помнится, вообще CodeWarrior) — буст.конфиг в этом сильно поможет.
CodeWarrior — это тихий ужас ну его нафиг. Apple сейчас gcc пользует по умолчанию, да и вообще всех насильно на objective-c перетаскивает. Куда более агрессивно, чем MS на .NET, кстати.
J>Заметь, про boost::thread я ни слова не сказал
Да я к бусту, в принципе, неплохо отношусь — прототип на нем наклепать для проверки идеи вполне можно
Две вообще параллельные ветки. Обе из них обиделись бы, если сказать, что одна из них — переход к другой. Robert Colwell (архитектор первого интеловского OOO процессора) в своей интересной книжке описывал, какие нелегкие отношения были между этими двумя ветками в Майкрософте.
It's kind of fun to do the impossible (Walt Disney)
Здравствуйте, Alex Alexandrov, Вы писали:
AA>Непонятно, что такое переход от НТ к Чикаго, если Чикаго — кодовое название 95-й винды.
Ok, просто при переходе к Чикаго. Вне связи с NT. Просто мне тогда 32-разрядная система была нужна, а Win32s достал
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re: С/С++ многоплатформенность на уровне исходников