Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Преимущество управляемого кода перед неуправляемым 
:(
    Опции темы
DenWPF
Дата 21.4.2011, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



прошу приводить более менее тезисно.
PM MAIL   Вверх
wester
Дата 21.4.2011, 23:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



DenWPF
http://tinyurl.com/3d2qtzf

и вообще откуда такая аллергия искать самому ответ на свой вопрос ?

Это сообщение отредактировал(а) wester - 21.4.2011, 23:17
PM MAIL   Вверх
Voyager
Дата 21.4.2011, 23:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 532
Регистрация: 8.2.2005

Репутация: 3
Всего: 18



То что им можно управлять smile
PM   Вверх
DenWPF
Дата 21.4.2011, 23:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



не хотите как хотите..
PM MAIL   Вверх
Экскалупатор
Дата 22.4.2011, 01:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 5
Всего: 24



DenWPF, при чем тут хотите или не хотите, это просто холивар. мне, к примеру, просто C# нравится больше чем си/си++. нравиться хотя бы тем что в шарпе я не могу обратиться к несуществующему элементу массива, CLR не позволит, а в си это сделать запросто можно и сложить при этом все что угодно в памяти. но это детали, и больше относится к совести программиста...
PM MAIL ICQ   Вверх
DenWPF
Дата 22.4.2011, 09:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



Экскалупатор, не хочу холивара, хочу конкретных фактов. вот как ты сказал 


Цитата

в шарпе я не могу обратиться к несуществующему элементу массива


а это говорит, что управляемый код это безопасный код.

Хотя и есть возможность писать не безопасный код.

Это сообщение отредактировал(а) DenWPF - 22.4.2011, 09:32
PM MAIL   Вверх
likegift
Дата 22.4.2011, 09:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 14.10.2008

Репутация: нет
Всего: 3



управляемый безопасней.
PM MAIL   Вверх
Экскалупатор
Дата 22.4.2011, 12:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 5
Всего: 24



likegift, угу, мы это уже выяснили постом выше, что то новое будет?
PM MAIL ICQ   Вверх
wester
Дата 22.4.2011, 14:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



DenWPF
я же дал ссылку.... ты почитал что там написано ?
PM MAIL   Вверх
DenWPF
Дата 22.4.2011, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



Цитата(wester @ 22.4.2011,  14:08)
DenWPF
я же дал ссылку.... ты почитал что там написано ?

я потом написал 
Цитата

не хотите как хотите..

пойми на любой мой вопрос можно найти ответ в интеренете...ттогда вопрос зачем этот форум?
PM MAIL   Вверх
wester
Дата 22.4.2011, 16:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



DenWPF
от того что будешь сам искать ответ на свой вопрос немного повысится твой уровень как разработчика
PM MAIL   Вверх
Экскалупатор
Дата 22.4.2011, 16:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 5
Всего: 24



wester, угу, я думаю ты, конечно же, пришел на этот форум только для того что бы давать советы другим, и никогда ни о чем не спрашивал(следуя своему собственному совету). но бывает что люди хотят получить ответ от других людей.
PM MAIL ICQ   Вверх
gambit
Дата 22.4.2011, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 3
Всего: 40



Да сборка ж мусора, ребята.
PM MAIL ICQ Skype   Вверх
wester
Дата 22.4.2011, 17:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



Экскалупатор
да но есть два случая 
1) ребят, мне надо написать парсер для языка YX, дайте готовый класс!
2) ребят, пишу парсер для языка YX, написал основу но при парсинге он почему то падает со NullRefenceException. Вот код парсера, где может быть ошибка ?

тут первый случай
PM MAIL   Вверх
DenWPF
Дата 22.4.2011, 19:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



ну да...

меня интересует личный опыт участников. так как теория не всегда совпадает с практикой.
PM MAIL   Вверх
snav
Дата 7.5.2011, 08:43 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 8.9.2007

Репутация: нет
Всего: 4



Цитата(DenWPF @ 22.4.2011,  19:22)
ну да...

меня интересует личный опыт участников. так как теория не всегда совпадает с практикой.

Имхо, никаких фундаментальных преимуществ управляемый код не дает. Просто Microsoft из конъюнктурных соображений прекратило развивать неуправляемые средства, и программистам пришлось переходить на .NET. Старые средства уже давно не позволяют разрабатывать приложения современного уровня, а новые средства - управляемые.

Утверждения насчет безопасности .NET очень спорное. С одной стороны, сборка мусора достаточно удобна. С другой стороны, из-за крайне непродуманной и неудачной архитектуры самой .NET и языка C# сборка мусора не защищает от утечки памяти, а сами программы на C# чреваты бОльшим количеством ошибок, чем аналогичные программы на неуправляемом C++.

Это сообщение отредактировал(а) snav - 7.5.2011, 08:49
PM   Вверх
-Mikle-
Дата 7.5.2011, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

Репутация: 4
Всего: 59



Цитата(snav @  7.5.2011,  11:43 Найти цитируемый пост)
Утверждения насчет безопасности .NET очень спорное

Ну тут не только безопасность на уровне памяти, но и безопасность в смысле "секьюрити".

Цитата(snav @  7.5.2011,  11:43 Найти цитируемый пост)
сборка мусора не защищает от утечки памяти

Все верно, это не панацея. Правильное проектирование и прямые руки программистов никто не отменял. Да и чаще всего утечка памяти происходит при неверном событийном управлении. Введут завтра новый тип WeekDelegate и новую конструкцию языка weekdelegate void Handler() и эти вопросы будут решены. Только пользоваться лично я им буду в крайне редких случаях, так как предпочитаю чистить за собой.

Цитата(snav @  7.5.2011,  11:43 Найти цитируемый пост)
а сами программы на C# чреваты бОльшим количеством ошибок, чем аналогичные программы на неуправляемом C++.

Интересное утверждение, готов поспорить.


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
snav
Дата 7.5.2011, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 8.9.2007

Репутация: нет
Всего: 4



-Mikle-
Проблема в том, что большинство учебников по C# говорит о сборке мусора именно как о панацее, создавая у новичков ложное представление, будто сборка мусора автоматически решает все проблемы управления памятью. На самом деле, правильное управление памятью в .NET - это нетривиальная задача, требующая от программиста внимательности, глубокого понимания механизмов работы .NET и достаточно большого опыта. Для новичков это почти нереально (имхо). Многие просто не подозревают о подводных камнях.

Насчет вероятности ошибок в языках C++ и С#, я написал свое личное мнение, основанное на моем опыте. Хотя, по заверениям Microsoft, язык С# разрабатывался с упором на снижение вероятности ошибок, на мой взгляд, конструкции C# содержат большее количество потенциальных ловушек, чем C++. Например:
1. Модель освобождения ресурсов IDispose - один из самых кривых и неудачных элементов .NET, чреватый серьезными ошибками и проблемами (испытал на себе).
2. Риск утечки памяти при сохранении скрытых (незамеченных) ссылок на объекты.
3. Очень путанная схема работы операторов и методов сравнения объектов, с трудно предсказуемыми результатами.
4. Отсутствие единообразия в использование ключевых слов. Например, по непонятным причинам члены интерфейса запрещено объявлять как public и требуется описывать их подобно приватным членам.
5. Отсутствие константных методов и невозможность передачи методу константных объектов.
6. Различие между структурными и ссылочными типами - при одинаковом синтаксисе они ведут себя по-разному, что является потенциальным источником путаницы.
Список можно продолжить.

Это всё потенциальные ловушки языка C#, которые невозможно устранить с помощью "правильного" стиля программирования. Поэтому утверждения, что C# якобы снижает риск программных ошибок, на мой взгляд, не соответствуют действительности и являются просто рекламным разводом.

P.S.
Справедливости ради, надо отметить, что перечисленные ловушки - это не проблемы управляемого кода вообще. Это просто неудачные решения разработчиков .NET.


Это сообщение отредактировал(а) snav - 8.5.2011, 08:47
PM   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0891 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.