Re[8]: Будущее C#
От: alexkro  
Дата: 01.07.03 09:49
Оценка:
Здравствуйте, DarkGray, Вы писали:

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


DG>Так ведь на C++ сейчас тоже писать нормально нельзя.


Интересно, а это к чему было сказано? Вопрос вкуса: мне можно, тебе нельзя...

DG>Как язык C++ хорош, но вот наследие прошлого....


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


Раздельная компиляция, понимаешь . Эх, сколько я сегодня времени на forward определения потратил. Определял-определял, определял-определял, душили-ду... к чему это я?!
Re[7]: Будущее C#
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 01.07.03 09:53
Оценка:
Здравствуйте, alexkro, Вы писали:

AVK>>Дженерики сделаны специально под дотнет. В них нет определенного функционала темплейтов, зато есть кое что, чего в темплейтах нет. Напиример темплейты в рантайме не видны, а дженерики видны.


A>Мне, вообщем-то, не очень интересны различия в runtime. А вот с точки зрения языков программирования, что есть в generics, чего в шаблонах нет?


Вот о том и речь что ты пытаешься мерять дотнет плюсовым аршином. В отличие от С++ рассматривать C# отдельно от его рантайма не имеет смысла, обычный язык почти без изысков.

AVK>>В общем каждому свое. Что такое policy-based programming я не знаю, если объяснишь что ты под этим подразумеваешь то народ подскажет как подобное реализуется в дотнете.


A>Вот хороший пример.


404

AVK>>И еще, писать на дотнете, так как ты это делал на С++ не стоит, ничего хорошего из этого не выдет. Другая идеология, другие паттерны.


A>Я думаю, ты имеешь в виду "на C# как на C++".


Нет, именно на дотнете.

A>Тогда согласен. Языки очень сильно различаются.


Языки как раз отличаются не очень сильно, сильно отличается рантайм.
... << RSDN@Home 1.1 beta 1 >>
AVK Blog
Re[14]: Будущее C#
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 01.07.03 09:53
Оценка:
Здравствуйте, WolfHound, Вы писали:

AVK>>А как его должны дооценивать?

WH>Короче пока вы с Владом не прочитаете Александреску я с вами на тему C++ vs C# разговаривать не буду ибо ваши знания о С++ очень поверхтносны.

Не хами. Я точно так же могу сказать что пока ты не напишешь проект размером больше 1М на шарпе я с тобой на тему C++ vs C# разговаривать не буду.
... << RSDN@Home 1.1 beta 1 >>
AVK Blog
Re[9]: Будущее C#
От: DarkGray Россия http://blog.metatech.ru/post/ogni-razrabotki.aspx
Дата: 01.07.03 09:54
Оценка:
Здравствуйте, alexkro, Вы писали:

DG>>Так ведь на C++ сейчас тоже писать нормально нельзя.


A>Интересно, а это к чему было сказано?


К тому, что C++ выбирать в качестве языка разработки не удобно(не выгодно и т.д.)

Одна из основных проблем, что C++ стал слишком тяжелым и слишком уж с тяжелым наследием прошлого.


зы
A> Вопрос вкуса: мне можно, тебе нельзя...

Попробуйте, пожалуйста, без личных наездов
Re[10]: Будущее C#
От: alexkro  
Дата: 01.07.03 10:02
Оценка:
Здравствуйте, DarkGray, Вы писали:

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


DG>>>Так ведь на C++ сейчас тоже писать нормально нельзя.


A>>Интересно, а это к чему было сказано?


DG>К тому, что C++ выбирать в качестве языка разработки не удобно(не выгодно и т.д.)


DG>Одна из основных проблем, что C++ стал слишком тяжелым и слишком уж с тяжелым наследием прошлого.


Это твое личное мнение.


DG>зы

A>> Вопрос вкуса: мне можно, тебе нельзя...

DG>Попробуйте, пожалуйста, без личных наездов


Не принимай близко к сердцу. Вопрос, действительно, вкуса.
Re[19]: Будущее C#
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 01.07.03 10:13
Оценка:
Здравствуйте, desperado_gmbh, Вы писали:

_>>>Делегат — замена указателю на функцию или член класса.

AVK>>Ты путаешь причину со следствием — указатель на функцию это уже следствие. Главная обязанность делегата — обеспечить типизированный колбек. Ровно то же можно сделать используя интерфейсы, что с успехом демонстрирует тот же свинг, да и в дотнете кое где встречается.

_>Про нетипизированные колбеки говорить вообще не будем, потому что они не используются даже в с++. То, что для обратного вызова можно использовать несколько механизмов — хорошо, но интерфейс в c# синтаксически аналогичен базовому классу с чисто виртуальными методами в c++,


Не совсем. Но с точки зрения колбеков и с учетом наличия в плюсах МН примерно похоже. Хотя есть конечно некоторые различия вроде explicit реализации интерфейсов. Или например метод интерфейса на дотнете можно реализовать подходящим по сигнатуре методом базового класса.

_> а делегат в c# — некоей конструкции на основе указателя на член, называемой signal.


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

AVK>>Просто интерфейсы не очень удобны, поскольку приходится описывать отдельный класс. Вот для упрощения и вводится указатель на член класса или делегат.


_>Указатели на члены беднее делегатов — они не multicast и не содержат внутри this для вызываемого метода.


Именно. Потому и говорю что делегат лучше рассматривать как интерфейс.

_> В билдере были нестандартные closure, но с приближением компиляторов к стандарту стал возможен и прямой путь — написать аналог делегата на стандартном c++, используя указатели на члены.


Все равно это как то через задний проход, опять же непонятки с тем как сделать указатель и на метод экземпляра и на метод класса (static в терминах дотнета). closure в борланде были все таки более честным решением и лучше было бы если бы их добавили в стандарт языка.

AVK>>С такой точки зрения бустовский signal выглядит несколько ущербно, не согласен?


_>Как он может выглядеть ущербно, если выполняет ту же задачу и даже имеет похожий синтаксис?


Ну знаешь, ту же задачу можно и на ассемблере выполнить. И синтаксис именно что похожий, но все таки более неудобный. Не говоря уж о том чтов рантайме вобще с шаблонами все печально.
... << RSDN@Home 1.1 beta 1 >>
AVK Blog
Re[8]: Будущее C#
От: alexkro  
Дата: 01.07.03 10:15
Оценка:
Здравствуйте, AndrewVK, Вы писали:

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


AVK>>>Дженерики сделаны специально под дотнет. В них нет определенного функционала темплейтов, зато есть кое что, чего в темплейтах нет. Напиример темплейты в рантайме не видны, а дженерики видны.


A>>Мне, вообщем-то, не очень интересны различия в runtime. А вот с точки зрения языков программирования, что есть в generics, чего в шаблонах нет?


AVK>Вот о том и речь что ты пытаешься мерять дотнет плюсовым аршином. В отличие от С++ рассматривать C# отдельно от его рантайма не имеет смысла, обычный язык почти без изысков.


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

AVK>>>В общем каждому свое. Что такое policy-based programming я не знаю, если объяснишь что ты под этим подразумеваешь то народ подскажет как подобное реализуется в дотнете.


A>>Вот хороший пример.


AVK>404


Нехороший сайт попался. Нужно поискать "policy basic_string" на www.cuj.com. Первая ссылка — это она и есть.

AVK>>>И еще, писать на дотнете, так как ты это делал на С++ не стоит, ничего хорошего из этого не выдет. Другая идеология, другие паттерны.


A>>Я думаю, ты имеешь в виду "на C# как на C++".


AVK>Нет, именно на дотнете.


A>>Тогда согласен. Языки очень сильно различаются.


AVK>Языки как раз отличаются не очень сильно, сильно отличается рантайм.


На C++ тоже можно для .NET программировать и при этом использовать большинство его (C++) идиом. Именно это я и делаю уже в течении некоторого времени. Кстати, этот подход (C++ для .NET) будет еще более сильно развит в следующей версии VC++.
Re[11]: Будущее C#
От: Plutonia Experiment Беларусь http://blogs.rsdn.org/ikemefula
Дата: 01.07.03 10:22
Оценка:
Здравствуйте, alexkro, Вы писали:

DG>>К тому, что C++ выбирать в качестве языка разработки не удобно(не выгодно и т.д.)

DG>>Одна из основных проблем, что C++ стал слишком тяжелым и слишком уж с тяжелым наследием прошлого.
A>Это твое личное мнение.

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

С одной стороны это хорошо — мощь потрясающая. С другой — изучать этот язык надо долго.
Новичку нельзя доверить суппорт проекта на С++ — дохлый номер.
Такие чудеса, что демонстрирует Александреску, нельзя, к сожалению, внедрять повсюду.
Re[9]: Будущее C#
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 01.07.03 10:33
Оценка: +1
Здравствуйте, alexkro, Вы писали:

AVK>>Вот о том и речь что ты пытаешься мерять дотнет плюсовым аршином. В отличие от С++ рассматривать C# отдельно от его рантайма не имеет смысла, обычный язык почти без изысков.


A>Да, я сравниваю языки программирования. Среда исполнения мне не особенно важна.


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

A>Нехороший сайт попался. Нужно поискать "policy basic_string" на www.cuj.com. Первая ссылка — это она и есть.


Чего то там много, нет времени все это читать. Объясни на пальцах что это такое и какие у него бенефиты.

AVK>>Языки как раз отличаются не очень сильно, сильно отличается рантайм.


A>На C++ тоже можно для .NET программировать


Ну и что? Если укладываться в рамки CLR то от С++ остануться рожки да ножки.

A>и при этом использовать большинство его (C++) идиом.


Большинство идиом в managed коде? Не получится.

A>Кстати, этот подход (C++ для .NET) будет еще более сильно развит в следующей версии VC++.


Откуда дровишки?
... << RSDN@Home 1.1 beta 1 >>
AVK Blog
Re[16]: Будущее C#
От: VladD2 Российская Империя www.nemerle.org
Дата: 01.07.03 15:18
Оценка:
Здравствуйте, Plutonia Experiment, Вы писали:

PE>В С++ другая парадигма. Для С++ нужен только компилятор.

PE>Для шарпа этого уже недостаточно.

Посмотри на МС++. Там есть и делегаты и рефлексия, и никаких проблем с самим С++ не возникло.

PE>Потому и нежен рефлекшн и тд. Поскольку язык сделан максимально безопастным, делегаты сделаны в нем нативными средсвами.


Рефлешон — это полноценная информация о типах. И то что ее нет в С++ всего лишь вина авторов языка.
... << RSDN@Home 1.1 alpha 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[15]: Будущее C#
От: WolfHound  
Дата: 01.07.03 15:25
Оценка:
Здравствуйте, Plutonia Experiment, Вы писали:

PE>Расскажи неучам, объясни на пальцах.

Я уже много раз говорил про книгу. Там написано очень подробно и куда длоходчевей чем я смогу расказать.
... << RSDN@Home 1.1 alpha 1 >>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[15]: Будущее C#
От: WolfHound  
Дата: 01.07.03 15:25
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Не хами.

Простите погорячился. Просто мне надоело что вы с Владом орете на каждом шагу о примитивности С++ при этом имея весьма отдаленные представления о нем.
AVK>Я точно так же могу сказать что пока ты не напишешь проект размером больше 1М на шарпе я с тобой на тему C++ vs C# разговаривать не буду.
Не боись напишу. Следующея версия системы над которой я сейчас работаю будет под .NET. И догадайся кто настоял не переходе.
... << RSDN@Home 1.1 alpha 1 >>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[17]: Будущее C#
От: Plutonia Experiment Беларусь http://blogs.rsdn.org/ikemefula
Дата: 01.07.03 15:28
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, Plutonia Experiment, Вы писали:


PE>>В С++ другая парадигма. Для С++ нужен только компилятор.

PE>>Для шарпа этого уже недостаточно.

VD>Посмотри на МС++. Там есть и делегаты и рефлексия, и никаких проблем с самим С++ не возникло.


Я про нативный имею ввиду.


PE>>Потому и нежен рефлекшн и тд. Поскольку язык сделан максимально безопастным, делегаты сделаны в нем нативными средсвами.

VD>Рефлешон — это полноценная информация о типах. И то что ее нет в С++ всего лишь вина авторов языка.

Сделать то можно. Но это же громозко. Проще обойти каким другим путем.
Re[16]: Будущее C#
От: Plutonia Experiment Беларусь http://blogs.rsdn.org/ikemefula
Дата: 01.07.03 15:30
Оценка: +1 -1
Здравствуйте, WolfHound, Вы писали:

PE>>Расскажи неучам, объясни на пальцах.

WH>Я уже много раз говорил про книгу. Там написано очень подробно и куда длоходчевей чем я смогу расказать.

Значит согласись, что у тебя лично нет аргументов или выскажи их по человечески.

Там подробнее == а мой папа лучше знает и тд и тд.
Это демагогия.
Re[17]: Будущее C#
От: WolfHound  
Дата: 01.07.03 16:12
Оценка:
Здравствуйте, Plutonia Experiment, Вы писали:

PE>Значит согласись, что у тебя лично нет аргументов или выскажи их по человечески.

По человечески это на 330 страниц в книге.
PE>Там подробнее == а мой папа лучше знает и тд и тд.
PE>Это демагогия.
Есть такое понятие RTFM дак вот "Современное проектирование на С++" Андрей Александреску это мануал. Зачем пересказывать мануал? Ты часто пересказываешь MSDN?
... << RSDN@Home 1.1 alpha 1 >>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[18]: Будущее C#
От: Plutonia Experiment Беларусь http://blogs.rsdn.org/ikemefula
Дата: 01.07.03 16:17
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>Есть такое понятие RTFM дак вот "Современное проектирование на С++" Андрей Александреску это мануал. Зачем пересказывать мануал? Ты часто пересказываешь MSDN?


Я часто цитирую оттуда всякую всячину и даю ссылки на конкретные примеры.

Значит у тебя аргумент — Александруску и своей головой думать не надо ?
Re[12]: Будущее C#
От: mihailik Украина  
Дата: 01.07.03 16:22
Оценка:
VD>Я честно говря вижу только проблему которую возможно помогут обойти шалоны. Это как не странно отсуствие множественного наследования (МН). Мне лично МН нужно только для подключения к классам готовых реализаций.

В принципе, решаемо с помощью Reflection.Emit.
... << RSDN@Home 1.1 beta 1 >>
Re[19]: Будущее C#
От: WolfHound  
Дата: 01.07.03 17:10
Оценка:
Здравствуйте, Plutonia Experiment, Вы писали:

PE>Значит у тебя аргумент — Александруску и своей головой думать не надо ?

Хочешь знать что можно сделать на шаблонах?
Без проблем попробуй разберись
Автор: WolfHound
Дата: 22.06.03
. Хотя для меня и тех кто освоил идеи Александреску проблем не составит.
Можно почитать эти ветки По мотивам SWL
Автор: WolfHound
Дата: 27.04.03
, Виртуальные конструкторы 2
Автор: WolfHound
Дата: 09.06.03
, Быстрое сохраниние/восстановление членов класса
Автор: Keeper_andrew
Дата: 15.04.03
.
Еще вопросы?
... << RSDN@Home 1.1 alpha 1 >>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[14]: Будущее C#
От: IT Россия linq2db.com
Дата: 01.07.03 20:20
Оценка: 12 (1) +1 -1 :))) :))
Здравствуйте, WolfHound, Вы писали:

WH>Короче пока вы с Владом не прочитаете Александреску я с вами на тему C++ vs C# разговаривать не буду ибо ваши знания о С++ очень поверхтносны.


Неужели один прочитанный учебник может сделать из вчерашнего студента закоренелого профи?
Определённо надо будет почитать Александреску... наверное и в резюме себе потом запишу — "Читал Александреску".
... << RSDN@Home 1.1 beta 1 >>
Если нам не помогут, то мы тоже никого не пощадим.
Re[2]: Будущее C#
От: ExtraLamer  
Дата: 01.07.03 22:59
Оценка:
Здравствуйте, Plutonia Experiment, Вы писали:

PE>Здравствуйте, Аноним, Вы писали:


PE>Можно в КПК засунуть .Net. Не в том виде конечно, как под виндой, но все же можно.

PE>Жаву же засунули в телефоны и КПК. .Net тож можно вкинуть.
PE>Вопрос времени.

Когда вы говорите КПК — то уточняйте что это PPC, а не Palm. Лапы Microsoft и до телефонов, и до телевизоров и до унитазов доползёт. Всё верно — это вопрос времени.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.