Приветствую!
Стало интересно, а действительно ли дотнет в реальных проектах покрывает все требования программистов, ибо
НС> H>Пример местного форума -- Qt'шный Avalon, работает под Win/Lin/Mac. Возвращайся, когда Янус заработает под Mono...
НС> Янус содержит некроссплатформенный код, написанный на С++ и кучу обращений к WinAPI напрямую. При чем тут кроссплатформенность дотнета?
Здравствуйте, Sheridan, Вы писали:
S>Приветствую! S>Стало интересно, а действительно ли дотнет в реальных проектах покрывает все требования программистов, ибо S>
НС>> H>Пример местного форума -- Qt'шный Avalon, работает под Win/Lin/Mac. Возвращайся, когда Янус заработает под Mono...
НС>> Янус содержит некроссплатформенный код, написанный на С++ и кучу обращений к WinAPI напрямую. При чем тут кроссплатформенность дотнета?
Здравствуйте, Sheridan, Вы писали:
S>Стало интересно, а действительно ли дотнет в реальных проектах покрывает все требования программистов, ибо S>
НС>> H>Пример местного форума -- Qt'шный Avalon, работает под Win/Lin/Mac. Возвращайся, когда Янус заработает под Mono...
НС>> Янус содержит некроссплатформенный код, написанный на С++ и кучу обращений к WinAPI напрямую. При чем тут кроссплатформенность дотнета?
Здравствуйте, Sheridan, Вы писали:
S>Приветствую! S>Стало интересно, а действительно ли дотнет в реальных проектах покрывает все требования программистов, ибо S>
НС>> H>Пример местного форума -- Qt'шный Avalon, работает под Win/Lin/Mac. Возвращайся, когда Янус заработает под Mono...
НС>> Янус содержит некроссплатформенный код, написанный на С++ и кучу обращений к WinAPI напрямую. При чем тут кроссплатформенность дотнета?
Каждый пишет на том, на чем ему удобнее.В моем текущем проекте(WPF+WCF+EF) dotnet покрывает 100% потребностей, предоставляя возможности для создания UI, которые qt и не снились.Но, допустим, какой-нить сетевой фильтр надо писать на плюсах, также как и криптопровайдер, скажем,также как и кроссплатформенный код(не UI, а какая-нить низкоуровневая обработка сетевых пакетов, допустим). А вот морду подо все эти вещи удобнее писать на .net.
"Разруха не в сортирах, а в головах"(с) профессор Преображенский.
Приветствую, kochetkov.vladimir, вы писали:
k> НС>> Янус содержит некроссплатформенный код, написанный на С++ и кучу обращений к WinAPI напрямую.?
k> Это, мягко говоря, не соответствует действительности
Приветствую, Codechanger, вы писали:
C>предоставляя возможности для создания UI, которые qt и не снились.
Например?
C>Но, допустим, какой-нить сетевой фильтр надо писать на плюсах, также как и криптопровайдер, скажем,также как и кроссплатформенный код(не UI, а какая-нить низкоуровневая обработка сетевых пакетов, допустим). А вот морду подо все эти вещи удобнее писать на .net.
Тоесть дотнет покрывает только потребности в написании интерфейса?
Здравствуйте, Sheridan, Вы писали:
C>>Но, допустим, какой-нить сетевой фильтр надо писать на плюсах, также как и криптопровайдер, скажем,также как и кроссплатформенный код(не UI, а какая-нить низкоуровневая обработка сетевых пакетов, допустим). А вот морду подо все эти вещи удобнее писать на .net. S>Тоесть дотнет покрывает только потребности в написании интерфейса?
Напши свой список, чего там дотнет не покрывает.
Только постарайся что бы список более менее полный был.
А то у тебя мягко говоря, черезчур однобокий взгляд.
Здравствуйте, Sheridan, Вы писали:
S>Приветствую, Codechanger, вы писали:
C>>предоставляя возможности для создания UI, которые qt и не снились. S>Например?
C>>Но, допустим, какой-нить сетевой фильтр надо писать на плюсах, также как и криптопровайдер, скажем,также как и кроссплатформенный код(не UI, а какая-нить низкоуровневая обработка сетевых пакетов, допустим). А вот морду подо все эти вещи удобнее писать на .net. S>Тоесть дотнет покрывает только потребности в написании интерфейса?
покрывает интерфейс и бизнес логику.
Дотнет язык для бизнеса (бизнес приложений) в основном.
Здравствуйте, Sheridan, Вы писали:
S>Приветствую! S>Стало интересно, а действительно ли дотнет в реальных проектах покрывает все требования программистов, ибо S>
НС>> H>Пример местного форума -- Qt'шный Avalon, работает под Win/Lin/Mac. Возвращайся, когда Янус заработает под Mono...
НС>> Янус содержит некроссплатформенный код, написанный на С++ и кучу обращений к WinAPI напрямую. При чем тут кроссплатформенность дотнета?
Янус вообще начинали писать в 2002-ом что ли. Еще на 1.0. Так что я бы уточнил — ты про какой именно дотнет? Многие вещи там можно спокойно переделать — и сделать лучше, — если использовать всякие новомодные примочки вроде того же WPF. Просто некому.
Ну и наконец "куча обращений" там может быть была еще в самом начале, когда тот же ТриГрид Влада был написан еще, кажется, на МС++ — но сейчас-то это не так. Но используется так, скажем, сцинтилла. И что? Тебе знаком фреймворк, предлагающий редактор того же уровня "из коробки"?
Приветствую, Ikemefula, вы писали:
I> Напши свой список, чего там дотнет не покрывает.
Чтобы его написать — мне придется сделать ой как много телодвижений включая плотное программирование на дотнете хотябы год.
I> Только постарайся что бы список более менее полный был. I> А то у тебя мягко говоря, черезчур однобокий взгляд.
Еще раз: мопед не мой, я только уточняющие вопросы задаю.
Здравствуйте, Sheridan, Вы писали:
I>> Напши свой список, чего там дотнет не покрывает. S>Чтобы его написать — мне придется сделать ой как много телодвижений включая плотное программирование на дотнете хотябы год.
Здравствуйте, Sheridan, Вы писали:
S>Приветствую, Ikemefula, вы писали:
I>> Напши свой список, чего там дотнет не покрывает. S>Чтобы его написать — мне придется сделать ой как много телодвижений включая плотное программирование на дотнете хотябы год.
Минимум года два-три, я бы сказал.
Теперь про высказывание тов. Шеридана про то, что дотнет предназначен для интерфейсов. В текущей ситуации, когда ядром Windows является все-таки WinApi , таки да. Когда настанет светлый день, что ядро будет нативно поддерживать .net, тогда можно и замахнуться на большее. Иначе получается очень большой оверхед с использованием интеропа и т.д. Опять же, на текущий момент во многих случаях может пострадать быстродействие(в силу особенностей .net). Могу сказать, что точно нельзя написать на дотнете: драйвер устройства. Ежели подумать и покопаться, можно еще примеры привести. Так что я бы на проблему более широко смотрел. Применимость или неприменимость языка/платформы для тех или иных задач во многом определяется тем, а как написано ядро ОС, на чем написано, и что поддерживает искаропки, тык скыть. Скажу честно, сомневаюсь, что куски ядра Линукса, допустим, написаны на Питоне.
I>> Напши свой список, чего там дотнет не покрывает. S>Чтобы его написать — мне придется сделать ой как много телодвижений включая плотное программирование на дотнете хотябы год.
Для того, чтобы рассуждать о вкусах устриц, надо их попробовать. В случае с программированием программы уровня hello world пробованием не считаются
Здравствуйте, Codechanger, Вы писали:
C>Здравствуйте, Sheridan, Вы писали:
S>>Приветствую! S>>Стало интересно, а действительно ли дотнет в реальных проектах покрывает все требования программистов, ибо S>>
НС>>> H>Пример местного форума -- Qt'шный Avalon, работает под Win/Lin/Mac. Возвращайся, когда Янус заработает под Mono...
НС>>> Янус содержит некроссплатформенный код, написанный на С++ и кучу обращений к WinAPI напрямую. При чем тут кроссплатформенность дотнета?
C>Каждый пишет на том, на чем ему удобнее.В моем текущем проекте(WPF+WCF+EF) dotnet покрывает 100% потребностей, предоставляя возможности для создания UI, которые qt и не снились.
Можно поподробнее? Что именно предоставляет дотНет такого, что Qt и не снилось? Вот тут в соседнем топике обсуждается это —
Здравствуйте, kochetkov.vladimir, Вы писали:
KV>Это, мягко говоря, не соответствует действительности
Соответствует. На C++ там писана Сцинтилла, которая конечно в какой то мере кроссплатформенна, но под каждую платформу ее нужно собирать отдельно. Что же касается WinAPI, то там довольно много кода в UI, и еще named pipes. Большая часть этого кода, как я понимаю, писана еще во времена самого первого фреймворка, но поскольку никто целью кроссплатформенность януса не ставил, никто особо ситуацию исправлять и не будет.
Ну и еще — винформс в моно реализован плохо. Если ставить целью именно кроссплатформенность, то использовать следует GTK#, или, привет Шеридану, Киото, ХЗ в каком он сейчас состоянии. MonoDevelop тому примером, если что.
D>Можно поподробнее? Что именно предоставляет дотНет такого, что Qt и не снилось? Вот тут в соседнем топике обсуждается это -
D>http://www.youtube.com/watch?v=MXS3xKV-UM0
D>Насколько проще написать такое на дотНете?
Для начала надо знать, насколько сложно подобное написать на Qt. Мне не очень верится, что этот лабиринт нарисован средствами qt. Окна на стенах — да, qt, готов в это поверить, ибо в WPF есть схожий функционал.
Вы мне, уважаемый, расскажите, сколько надо кода на qt написать, чтобы получить подобные эффекты: Кодепроджект.
Ну, про написание кастомных визуальных эффектов на шейдерах спрашивать не буду, ибо к вопросу это отношения особо не имеет. Так вот. За какое время подобное поведение и внешний вид, изображенный на картинках по ссылке, можно реализовать на qt, а потом, допустим, прикрутить туда анимацию прозрачности, чтобы нижнее изображение то исчезало, то появлялось? На WPF подобное займет пару часов максимум, к примеру.
C>Для начала надо знать, насколько сложно подобное написать на Qt. Мне не очень верится, что этот лабиринт нарисован средствами qt. Окна на стенах — да, qt, готов в это поверить, ибо в WPF есть схожий функционал.
Я вообще не специалист в графике на Qt или .Net, и я особо не спорю.. Просто спрашиваю. Меня просто смущает — когда кто-то приходит и начинает опускать какой-либо фреймворк, словами типа Ему это и не снилось и т.д. А вы хорошо знакомы с Qt? Если вы эксперт в Qt и .NET, годами использовали оба, и утверждаете что QT что-то не снилось — ок, верю. Иначе лучше помалкивать... Qt известен своей мощью, не зря KDE и Опера на ней писаны. Фирма где я работаю, тоже использует Qt. Я правда работаю уровнем (архитектурным) ниже, и Qt непосредственно не использую. Но что пишут коллеги (UI) — впечатляет. Короче т.к. я не эксперт в данной области — от данной дискуссии удаляюсь, может быть эксперты что конкретное скажут.
C>Вы мне, уважаемый, расскажите, сколько надо кода на qt написать, чтобы получить подобные эффекты: C>Кодепроджект.
Без понятия..
C>Ну, про написание кастомных визуальных эффектов на шейдерах спрашивать не буду, ибо к вопросу это отношения особо не имеет. Так вот. За какое время подобное поведение и внешний вид, изображенный на картинках по ссылке, можно реализовать на qt, а потом, допустим, прикрутить туда анимацию прозрачности, чтобы нижнее изображение то исчезало, то появлялось? На WPF подобное займет пару часов максимум, к примеру.
Без понятия.. Я проект не скачивал.. На картинке — фигня какая-то. Всякие градиенты и прозрачности Qt замечательно поддерживает, насколько мне известно.
Приветствую, Codechanger, вы писали:
C> Ну, про написание кастомных визуальных эффектов на шейдерах спрашивать не буду, ибо к вопросу это отношения особо не имеет. Так вот. За какое время подобное поведение и внешний вид, изображенный на картинках по ссылке, можно реализовать на qt, а потом, допустим, прикрутить туда анимацию прозрачности, чтобы нижнее изображение то исчезало, то появлялось? На WPF подобное займет пару часов максимум, к примеру.
Анимировать прозрачность любого виджета?
Грубо:
Берем нужный виджет, ложим его на потомка QGraphicsWidget (qgwchild), который в свою очередь втыкаем с сцену QGraphicsView.
Добаляем виджету qgwchild проперти opacity, добавляем QPropertyAnimation anim, нацеливаем его на opacity, создаем метод animateOpacity(int op) , где пишем {anim.setEnd(op); anim.start();}. Бинго.
Это самый тупой и прямолинейный метод. Реализация — не больше получаса.