Здравствуйте, igna, Вы писали:
I>Здравствуйте, samius, Вы писали:
S>>Отрицается сама техническая возможность, или речь об отсутствии такой фичи в BCL?
I>Второе конечно. Java-то может.
Тема называется "что не сделать на C#", а не "чего нет в BCL .net"
S>Что с фундаментальной точки зрения не сделать на C#, что сделаешь на C++.
из принципиально невозможных разве что
-системы реального времени
-кроссплатформенность
-жизнь в ядре
-выская производительность (впрочем это наверное не навсегда)
из очень сложных — все что требует ручного управления памятью
-скажем шаред кэш каких-то сложных структур данных, разделяемый между несколькими процессами
-шаред-мемори провайдер к БД
-оптимизация размещения в памяти (см http://research.scee.net/files/presentations/gcapaustralia09/Pitfalls_of_Object_Oriented_Programming_GCAP_09.pdf)
Здравствуйте, rm822, Вы писали: R>из очень сложных — все что требует ручного управления памятью R>-скажем шаред кэш каких-то сложных структур данных, разделяемый между несколькими процессами R>-шаред-мемори провайдер к БД
В C# есть unsafe и можно работать с любыми WINAPI вызовами, я знаю человека кому удобнее это всё реализовывать на C#
Здравствуйте, snaphold, Вы писали:
S>Коли тут зашла речь про сравнение этих языков. Стало мне интересно. S>Что с фундаментальной точки зрения не сделать на C#, что сделаешь на C++.
На обоих языках можно реализовать машину Тьюринга (одинаково отвлекаясь от конечности памяти). Для традиционных компьютеров нет ничего более фундаментального.
Практически это означает, впрочем, что в такой постановке вопрос не подразумевает содержательного ответа.
Здравствуйте, rm822, Вы писали:
R>из очень сложных — все что требует ручного управления памятью R>-скажем шаред кэш каких-то сложных структур данных, разделяемый между несколькими процессами
Интересно, а как подобное делается в том же С++?
Здравствуйте, MxMsk, Вы писали:
R>>-скажем шаред кэш каких-то сложных структур данных, разделяемый между несколькими процессами MM>Интересно, а как подобное делается в том же С++?
Делается DLL, в ней выделяется общий для всех процессов сегмент памяти с помощью #pragma data_seg
Здравствуйте, adontz, Вы писали:
A>Делается DLL, в ней выделяется общий для всех процессов сегмент памяти с помощью #pragma data_seg
Угу, ясно. Я так понял, MS не особо рекомендует этот способ, а Memory Mapped Files теперь поддерживаются и в BCL.
Microsoft из-за своей ревности к другим ОС резко ограничило распространение языка.
На это, уже сегодня, накладывается ограничение в распространении Windows как пользовательской ОС:
еще 5 лет назад, в руках у неумелой блондинки Linux мог оказаться только по недосмотру, а теперь пожалуйста -- Android.
Не за горами тот день, когда Гугл сделает свою ось для PC с блэкджеком и шлюхами.
Здравствуйте, vladimir_i, Вы писали:
_>subj _>И нечего сравнивать его C++
_>Microsoft из-за своей ревности к другим ОС резко ограничило распространение языка. _>На это, уже сегодня, накладывается ограничение в распространении Windows как пользовательской ОС: _>еще 5 лет назад, в руках у неумелой блондинки Linux мог оказаться только по недосмотру, а теперь пожалуйста -- Android. http://www.mono-project.com/Main_Page http://mono-android.net/ http://monotouch.net/
Здравствуйте, gandjustas, Вы писали:
G>Здравствуйте, vladimir_i, Вы писали:
_>>subj _>>И нечего сравнивать его C++
_>>Microsoft из-за своей ревности к другим ОС резко ограничило распространение языка. _>>На это, уже сегодня, накладывается ограничение в распространении Windows как пользовательской ОС: _>>еще 5 лет назад, в руках у неумелой блондинки Linux мог оказаться только по недосмотру, а теперь пожалуйста -- Android. G>http://www.mono-project.com/Main_Page G>http://mono-android.net/ G>http://monotouch.net/
А вот цитатка из википедии:
После заключения Microsoft договорённости с компанией Novell, платформа Mono была официально признана реализацией .NET на Unix-подобных операционных системах (Linux, Mac OS X и других). Однако договорённость касается только Novell и клиентов Novell; также технологии ASP.NET, ADO.NET и Windows.Forms не были стандартизированы ECMA/ISO, и использование их в Mono находится под угрозой юридических претензий со стороны Microsoft (претензии возможны только в странах, где существуют патенты на программное обеспечение). Mono предоставляет реализацию ASP.NET, ADO.NET и Windows.Forms, но в то же время рекомендует не использовать эти API.
Принятая в проекте лицензия на компилятор и другие программы — GNU GPL. Лицензия на среду исполнения и другие библиотеки — GNU LGPL. Лицензия на библиотеки классов — X11 License. Патенты на C#/CLI принадлежат Microsoft, и ведутся споры насчёт риска и допустимости роста зависимости от Mono или C#.
То есть с моно не все так гладко. Вы можете до умопомрачения прокачивать навыки в C#, но если однажды MS решит завязывать .net, то завяжут все и вы Mono. А если дела у Android пойдут в гору, то MS подаст в суд на Novell, чтобы закрыть разработчикам .net рынок любых других смартфонных ОС-ей кроме православной.
After Novell acquisition by Attachmate on April 2011, Attachmate announced hundreds of layoffs for the Novell worksforce[26], putting in questions the future of Mono
Здравствуйте, vladimir_i, Вы писали:
_>Здравствуйте, gandjustas, Вы писали:
G>>Здравствуйте, vladimir_i, Вы писали:
_>>>subj _>>>И нечего сравнивать его C++
_>>>Microsoft из-за своей ревности к другим ОС резко ограничило распространение языка. _>>>На это, уже сегодня, накладывается ограничение в распространении Windows как пользовательской ОС: _>>>еще 5 лет назад, в руках у неумелой блондинки Linux мог оказаться только по недосмотру, а теперь пожалуйста -- Android. G>>http://www.mono-project.com/Main_Page G>>http://mono-android.net/ G>>http://monotouch.net/
_>А вот цитатка из википедии:
_>
_>После заключения Microsoft договорённости с компанией Novell, платформа Mono была официально признана реализацией .NET на Unix-подобных операционных системах (Linux, Mac OS X и других). Однако договорённость касается только Novell и клиентов Novell; также технологии ASP.NET, ADO.NET и Windows.Forms не были стандартизированы ECMA/ISO, и использование их в Mono находится под угрозой юридических претензий со стороны Microsoft (претензии возможны только в странах, где существуют патенты на программное обеспечение). Mono предоставляет реализацию ASP.NET, ADO.NET и Windows.Forms, но в то же время рекомендует не использовать эти API.
_>Принятая в проекте лицензия на компилятор и другие программы — GNU GPL. Лицензия на среду исполнения и другие библиотеки — GNU LGPL. Лицензия на библиотеки классов — X11 License. Патенты на C#/CLI принадлежат Microsoft, и ведутся споры насчёт риска и допустимости роста зависимости от Mono или C#.
_>То есть с моно не все так гладко. Вы можете до умопомрачения прокачивать навыки в C#, но если однажды MS решит завязывать .net, то завяжут все и вы Mono. А если дела у Android пойдут в гору, то MS подаст в суд на Novell, чтобы закрыть разработчикам .net рынок любых других смартфонных ОС-ей кроме православной.
Бред ты говоришь. Во-первых речь идет не про язык C# или виртуальную машину (они кстати стандартизированы в Ecma, так что какие патенты на C# — еще вопрос), а про конкретные библиотеки. Но на Android (и на iPhone, и на iPad) не было и никогда не будет ни ASP.NET, ADO.NET и Windows.Forms, так что нечего переживать.
Кстати в английской версией статьи нет второго параграфа, что ты процитировал, зато есть ссылка на Ecma-334 и Ecma-335.
Реально единственное где Microsoft может перекрыть кислород — не-Windows серверная разработка. Но и сейчас довольно мало выбирают *nix в качестве серверов для .NET приложений.
Здравствуйте, gandjustas, Вы писали:
G>Бред ты говоришь. Во-первых речь идет не про язык C# или виртуальную машину (они кстати стандартизированы в Ecma, так что какие патенты на C# — еще вопрос), а про конкретные библиотеки. Но на Android (и на iPhone, и на iPad) не было и никогда не будет ни ASP.NET, ADO.NET и Windows.Forms, так что нечего переживать. G>Кстати в английской версией статьи нет второго параграфа, что ты процитировал, зато есть ссылка на Ecma-334 и Ecma-335.
А это ничего, что для C# версий 3 и 4 ECMA/ISO нет?
Этому есть только одно объяснение — они планируют оформить GPL.
G>Реально единственное где Microsoft может перекрыть кислород — не-Windows серверная разработка. Но и сейчас довольно мало выбирают *nix в качестве серверов для .NET приложений.
Они могут перекрыть кислород в любом месте когда захотят. Однажды, во всех Windows, начиная с версии 1X не будет фрэимворка.
Здравствуйте, vladimir_i, Вы писали:
_>Здравствуйте, gandjustas, Вы писали:
G>>Бред ты говоришь. Во-первых речь идет не про язык C# или виртуальную машину (они кстати стандартизированы в Ecma, так что какие патенты на C# — еще вопрос), а про конкретные библиотеки. Но на Android (и на iPhone, и на iPad) не было и никогда не будет ни ASP.NET, ADO.NET и Windows.Forms, так что нечего переживать. G>>Кстати в английской версией статьи нет второго параграфа, что ты процитировал, зато есть ссылка на Ecma-334 и Ecma-335.
_>А это ничего, что для C# версий 3 и 4 ECMA/ISO нет?
Ничего. А что страшного? Для С++ вообще ничего нет ECMA/ISO.
_>Этому есть только одно объяснение — они планируют оформить GPL.
G>>Реально единственное где Microsoft может перекрыть кислород — не-Windows серверная разработка. Но и сейчас довольно мало выбирают *nix в качестве серверов для .NET приложений.
_>Они могут перекрыть кислород в любом месте когда захотят. Однажды, во всех Windows, начиная с версии 1X не будет фрэимворка.
А зачем? Какой им с этого профит?
Здравствуйте, gandjustas, Вы писали:
G>Здравствуйте, vladimir_i, Вы писали:
_>>Здравствуйте, gandjustas, Вы писали:
G>>>Бред ты говоришь. Во-первых речь идет не про язык C# или виртуальную машину (они кстати стандартизированы в Ecma, так что какие патенты на C# — еще вопрос), а про конкретные библиотеки. Но на Android (и на iPhone, и на iPad) не было и никогда не будет ни ASP.NET, ADO.NET и Windows.Forms, так что нечего переживать. G>>>Кстати в английской версией статьи нет второго параграфа, что ты процитировал, зато есть ссылка на Ecma-334 и Ecma-335.
_>>А это ничего, что для C# версий 3 и 4 ECMA/ISO нет? G>Ничего. А что страшного? Для С++ вообще ничего нет ECMA/ISO.
_>>Этому есть только одно объяснение — они планируют оформить GPL. G>
Это сарказм
Да, кстати, Oracle ведь подал в суд на Google за Java в андроиде. Если захотеть, то ECMA можно и отозвать =)
G>>>Реально единственное где Microsoft может перекрыть кислород — не-Windows серверная разработка. Но и сейчас довольно мало выбирают *nix в качестве серверов для .NET приложений.
_>>Они могут перекрыть кислород в любом месте когда захотят. Однажды, во всех Windows, начиная с версии 1X не будет фрэимворка. G>А зачем? Какой им с этого профит?
Будет новая технология. Нужно ведь как-то продавать новые версии Windows. А для этого нужно вводить что-то новое и убирать поддержку страрого.
А то дай юзерам волю -- будут сидеть под XP еще 10 лет.
Здравствуйте, igna, Вы писали:
I>Здравствуйте, gandjustas, Вы писали:
G>>Ничего. А что страшного? Для С++ вообще ничего нет ECMA/ISO.
I>Для C++ есть ANSI/ISO стандарт, а для C# версий 3 и 4 стандарта нет.
ага, древний стандарт, который и сейчас не всеми выполняется. а уж расширения языка в компилятором вообще не стандартизовано.
Здравствуйте, vladimir_i, Вы писали:
_>Будет новая технология. Нужно ведь как-то продавать новые версии Windows. А для этого нужно вводить что-то новое и убирать поддержку страрого. _>А то дай юзерам волю -- будут сидеть под XP еще 10 лет.