metaclass: (Default)
[personal profile] metaclass
Что-то в примерах и документации нигде не вижу как обрабатываются ошибки, типа "в функцию передали кривой параметр", "вызов нижележащей ОС сдох, потому что ее сгрызли черви", итд.
Функции типа qWarning,qFatal, итд, вижу, есть. Вроде и обработка исключений какая-то есть, класс вроде Exception. Но вроде ж try-catch религия не позволяет в C++ юзать или я чего-то уже путаю?

Т.е. вообще, как принято обрабатывать ошибки в Qt?

Date: 2009-02-16 05:22 am (UTC)
From: [identity profile] vp.livejournal.com
Именно юниксвей тут причем.
Есть священная корова - GCC, которую тронуть никак нельзя, потому бедные QTшкини пошли по привычному пути - решение проблем надстройками, макросами, препроцессорами и т.п. херью, когда тут слону понятно, что задача настолько глубока, что нужно мочить эту священную корову и делать все на другом уровне.
Кстати, мысль эта целиком неприемлима юникс-сообществом :)
Заповедь номер1: Линус Торвальдс свят
Заповедь номер2: GCC незыблимо
Заповедь номер3: все вещи нужно реализовывать конвеерной обработкой на основе имеющихся вещей

Все, сразу же упираемся в теоретический предел.

Date: 2009-02-16 06:00 am (UTC)
From: [identity profile] zamotivator.livejournal.com
когда тут слону понятно, что задача настолько глубока, что нужно мочить эту священную корову и делать все на другом уровне.
Мне непонятно. Ни разу. boost.signals пример решения в рамках текущих инструментов.

Date: 2009-02-16 06:01 am (UTC)
From: [identity profile] zamotivator.livejournal.com
И тут вообще какой-то бред написан.
Особенно на тему конвейеров.
Это н еюникс-вей, это какое-то жестокое его извращение.

Date: 2009-02-16 06:56 am (UTC)
From: [identity profile] vp.livejournal.com
Именно тот путь по которому пошли создателю QT и есть отражение идеологии юниксвея
1. ничего не писать если возможно
Да, взяли готовый GCC
2. использовать конвеерную обработку (идеологию)
Да, пройдемся 30 раз разными препроцессорами/конверторами и приведем все к тому, чтоб не трогать GCC

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

Date: 2009-02-16 07:17 am (UTC)
From: [identity profile] kiryl.livejournal.com
Писать свой компилятор? Вы представляете объём работ? У них бы не осталось времени на Qt.

Date: 2009-02-16 08:11 am (UTC)
From: [identity profile] zamotivator.livejournal.com
О чём и речь.

Date: 2009-02-16 08:44 am (UTC)
From: [identity profile] vp.livejournal.com
Тут тоже постулат, у каждого свой. Или делаем хорошо - или не делаем никак.

Date: 2009-02-16 08:51 am (UTC)
From: [identity profile] featalion.livejournal.com
пи..ть в ЖЖ каждый горазд. ребе, едьте в нокию и пишите компилятор!

Date: 2009-02-16 08:57 am (UTC)
From: [identity profile] vp.livejournal.com
Вот и вопрос в том, что когда сейчас это дошло до Нокии, может они и будут вкладываться в разработку, и там дело и до компилятора дойдет.
Резюме - не всегда на подходе "сидеть по вечерам за деньги родителей" чисто технически получится нормальный продукт. Финансовые ограничения - это очень серьезно. А я тут кроме финансовых ограничений пока ничего не узрел :)

Date: 2009-02-16 09:00 am (UTC)
From: [identity profile] max-posedon.livejournal.com
Вы простите, ебанулись? (ничего личного)

Вы представляете, что такое заопарк embedded архитектур, и какую роль в нём играет gcc? То чем они *могут* заниматься, это улучшать инструменты. Но убивать таргет аудиторию никто не собирается.

Date: 2009-02-16 09:09 am (UTC)
From: [identity profile] vp.livejournal.com
развивать gcc какая-то религия не дает?

(no subject)

From: [identity profile] max-posedon.livejournal.com - Date: 2009-02-16 09:12 am (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2009-02-16 09:34 am (UTC) - Expand

Date: 2009-02-16 08:07 am (UTC)
From: [identity profile] zamotivator.livejournal.com
Препроцессоров два - moc и uic.
И я ещё не видел другого настолько продуманного и бесшовного решения.
Интегрируется в любую систему сборки, не требует навороченной IDE чтобы это всё рулить...

Date: 2009-02-16 08:47 am (UTC)
From: [identity profile] vp.livejournal.com
Вот оно и бьет сзади по голове, жажда чего-то во что-то вечно всовывать и интегрировать. Не нужно ничего интегрировать, продукт такого уровня ОБЯЗАН был быть stand alone и писанный с нуля.

Date: 2009-02-16 08:50 am (UTC)
From: [identity profile] kiryl.livejournal.com
Опять вы со своими виндовыми тараканами. Зачем вам инструмент, который делает всё и абы как? ИМХО лучше несколько узкоспециализированных инструментов, хорошо выполняющих свои задачи.

Date: 2009-02-16 08:57 am (UTC)
From: [identity profile] vp.livejournal.com
Ребе!!!!
В этой связке все зашибись. Я не против узкоспециализированных инструментов!
Я за то, чтоб вызов gcc за менить на qtcc
ВСЁ.

Date: 2009-02-16 09:01 am (UTC)
From: [identity profile] max-posedon.livejournal.com
И послать нахуй 80% текущего рынка???!

Date: 2009-02-16 09:02 am (UTC)
From: [identity profile] max-posedon.livejournal.com
сломать совсместимость с icc, msvc, и тд и тп? (например Qt+ActiveX работает ТОКА на msvc)

(no subject)

From: [identity profile] featalion.livejournal.com - Date: 2009-02-16 09:31 am (UTC) - Expand

(no subject)

From: [identity profile] max-posedon.livejournal.com - Date: 2009-02-16 09:33 am (UTC) - Expand

Date: 2009-02-16 09:05 am (UTC)
From: [identity profile] kiryl.livejournal.com
Единственный реальный вариант получить qtcc и не убить целевую аудиторию -- это написать фронт-енд для gcc реализующий ещё один язык.

Date: 2009-02-16 09:06 am (UTC)
From: [identity profile] max-posedon.livejournal.com
Он убивает 90% Windows аудитории (msvc, icc). Во многих проектах есть чёткая привязка к msvc, из-за сторонних dll-ек.

Date: 2009-02-16 08:54 am (UTC)
From: [identity profile] zamotivator.livejournal.com
Какой бред.
Много Вы проектов написали? Крупных, продаваемых?

Date: 2009-02-16 09:02 am (UTC)
From: [identity profile] vp.livejournal.com
порядка 30 проектотов, из них штук 20 как постановщик задачи, архитектура + ведущий программист
Активно продаваемых на сегодняшний момент 7 штук.

Date: 2009-02-16 09:03 am (UTC)
From: [identity profile] zamotivator.livejournal.com
Тем более странно слышать ТАКОЕ.
В общем, вернёмся в конструктивное русло.

Вы можете привести несколько аргументов в пользу написания компилятора с нуля?

Date: 2009-02-16 09:05 am (UTC)
From: [identity profile] max-posedon.livejournal.com
Или хотябы не с нуля, а нового языка к gcc. (Это таки много более реальная задача).

Языков которые кастятся в gcc много, из старых - java, из новых - vala.

(no subject)

From: [identity profile] vp.livejournal.com - Date: 2009-02-16 09:10 am (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2009-02-16 09:26 am (UTC) - Expand

(no subject)

From: [identity profile] max-posedon.livejournal.com - Date: 2009-02-16 09:29 am (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2009-02-16 09:38 am (UTC) - Expand

(no subject)

From: [identity profile] zamotivator.livejournal.com - Date: 2009-02-16 09:29 am (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2009-02-16 09:42 am (UTC) - Expand

(no subject)

From: [identity profile] zamotivator.livejournal.com - Date: 2009-02-16 10:12 am (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2009-02-16 10:15 am (UTC) - Expand

(no subject)

From: [identity profile] zamotivator.livejournal.com - Date: 2009-02-16 10:14 am (UTC) - Expand

Date: 2009-02-16 08:08 am (UTC)
From: [identity profile] zamotivator.livejournal.com
Я ж говорю, тут слону понятно, что с ихними задумками сразу должно было стать очевидным, что нужно писать новый компилятор, другой, отдельный. Сам масштаб задачи таков.
Может я тупой, но мне это непонятно. И кажется, что наоборот, путь trolltech & qt - меньшее зло.

З.Ы. Вы пробовали писать свой компилятор? Или транслятор? Простенький какой-нибудь. М?

Date: 2009-02-16 06:33 am (UTC)
From: [identity profile] kiryl.livejournal.com
Кстати, Линус довольно высказывается, что GCC -- говно. ;)

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 25th, 2025 05:21 pm
Powered by Dreamwidth Studios