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

Поиск:

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


В экстазе
***


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

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



Здравствуйте! Который день (если не месяц) периодически задаюсь себе вопросом, примерно такого характера: .NET - преимущества и недостатки? Заранее извиняюсь, если такая тема уже существует, но через поиск найти нечто подобное мне не удалось. Думаю, эта тема поможет сделать осознанный выбор не только мне, но и многим новичкам в этой области.

Я уточню некоторые аспекты, дабы в меня сразу не полетели помидоры и прочее добро! smile  В программировании я давно не новичок, но программировал я всю свою сознательную жизнь некоторые не совсем компьютерные приборы, например, штрих-сканеры. В виду чего, такое понятие как "FrameWork" долгое время для меня долгое звучало дико.

И вот, я уже несколько лет наблюдаю такое понятие как .NET (помню я его ещё со времен Windows Millenium кажется, видимо тогда была версия .net 1.0). Долгое время проводя в поисках достоверной информации, зачем и почему нужен .net - я выснил следующее:
1) .net - это по сути своей - интерпретатор
2) он(а) встроенна в Windows Vista и выше (какая именно версия в какой виндовс встроенна - я ответить затрудняюсь)
3) без особых усилий ставиться на Windows XP

Преимущества которые я вижу:
(дальше будет описано сугубо лично мнение)
1) Достаточно лаконичный язык программирования (C#)
2) Качественная среда разработки (RAD), как от Microsoft, так и сторонних производителей (SharpDevelop)
3) Большое кол-во готовых решений, классов и прочих "прелестей", т.е. есть почти всё, что нужно! Ну или как минимум - 90% того, что требуется в повседневной работе
4) Действительно быстрая скорость разработки небольших и средней сложности программ

Недостатки (опять же, ИМХО!):
1) Если учесть тот факт, что очень много пользователей и по сей день сидит на Windows XP - это солидный хвост к программе, в не 1 десяток мегабай (инсталлятор .net)
2) Всё-таки интерпретируемый код "ломается" намного проще бинарного
3) Про скорость работы я думаю тут говорить не стоит, но всё же она немного ниже готовых бинарников (*этот пункт я думаю можно опустить)
4) Чисто теоретически, .net - кроссплатформенная среда, но как-то я не заметил этой кроссплатформенности в полной мере.

О стенки черепной коробки начинают биться примерно следующие вопросы:  smile 
1. В каких случаях актуально использование .net? Почему автор самой платформы (Microsoft) не сделал Office 2010 именно на ней?
2. Почему большинство встречающихся мне программ, никак не связаны с .net?
3. Масса других вопросов...

В общем, хотелось бы услышать Ваше мнение, все за и против. Всё, что Вы думаете по этому поводу и так далее!


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
diadiavova
Дата 15.9.2010, 19:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

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



Цитата(WolfAlone @  15.9.2010,  19:48 Найти цитируемый пост)
 .net - это по сути своей - интерпретатор

 smile Программа компилируется сначала в некое промежуточное представление, а непосредственно перед вызовом во время исполнения в машинный код. Интерпретатором там и не пахнет.

Цитата(WolfAlone @  15.9.2010,  19:48 Найти цитируемый пост)
 Всё-таки интерпретируемый код "ломается" намного проще бинарного

Промежуточное представление - тоже бинарный код, просто это не код целевой машины, а против простоты взлома есть обфускаторы. 
Цитата(WolfAlone @  15.9.2010,  19:48 Найти цитируемый пост)
Про скорость работы я думаю тут говорить не стоит, но всё же она немного ниже готовых бинарников

Немного и не всегда. На современном железе как правило вообще не критично.

Цитата(WolfAlone @  15.9.2010,  19:48 Найти цитируемый пост)
Чисто теоретически, .net - кроссплатформенная среда, но как-то я не заметил этой кроссплатформенности в полной мере.

.Net - вообще не кроссплатформенная среда, она существует только под винду, но благодаря тому, CLI имеет открытую спецификацию, существуют и другие реализации(как правило кроссплатформенные), только это уже не .Net и в них совсем не обязательно будут реализованы те же библиотеки.
Наиболее известные реализации это: Mono, dotGNU, Rotor. Если писать под них, будет вполне кроссплатформенно, но в них реализовано не все.
Цитата(WolfAlone @  15.9.2010,  19:48 Найти цитируемый пост)
Почему автор самой платформы (Microsoft) не сделал Office 2010 именно на ней?

А куда девать сотни мегабайт, написанных ранее? Фтопку?  smile 


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
WolfAlone
Дата 15.9.2010, 21:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


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

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



Это конечно не совсем в тему, но всё же...
Цитата(diadiavova @  15.9.2010,  19:55 Найти цитируемый пост)
А куда девать сотни мегабайт, написанных ранее? Фтопку?  smile  

Как это ни странно звучит, но в новой Windows "8" обещали переписать ядро с чистого листа (по нашему - с нуля), интересно, куда они девают код предыдущих ядер? smile 
P.S. С другой стороны, это конечно их личные проблемы...

И так, основываясь на выше сказанном, уважаемым diadiavova, я понял, что: .net-платформа это чисто windows-поделка, и была разработана изначально именно для этой ОС и для кросс-платформенной разработки не была предназначена в принципе. Но какие-то добрые дядьки из Nowell сделали Mono, который частично поддерживает реализацию .net платформы под Linux и другие ОС (MacOS, Windows, etc.).

У меня остался вопрос только о том, как этот самый Mono или любая другая аналогичная реализация .net-платформы поведет себя с внешними Windows-DLL подключенными к программе? Взять ту же SQLite3.dll (о которой мы сегодня говорили). [Почему именно её? Эта библиотека не использует никакие WinAPI и т.п.]

Добавлено через 32 секунды
Цитата(diadiavova @  15.9.2010,  19:55 Найти цитируемый пост)
Фтопку?
 Кстати, дельная мысль!  smile 



--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
azesmcar
Дата 15.9.2010, 21:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 2
Всего: 211



Цитата(WolfAlone @  15.9.2010,  18:48 Найти цитируемый пост)
1) .net - это по сути своей - интерпретатор

.NET это вообще фреймворк, ты про CLR говоришь и это НЕ интерпретатор.

Цитата(WolfAlone @  15.9.2010,  18:48 Найти цитируемый пост)
1) Если учесть тот факт, что очень много пользователей и по сей день сидит на Windows XP - это солидный хвост к программе, в не 1 десяток мегабай (инсталлятор .net)

а эти пользователя XP свою систему не обновляют? хотя в любом случае этот "недостаток" скоро исчезнет.

Цитата(WolfAlone @  15.9.2010,  18:48 Найти цитируемый пост)
2) Всё-таки интерпретируемый код "ломается" намного проще бинарного

есть обфускаторы, но все равно взломают smile 

Цитата(WolfAlone @  15.9.2010,  18:48 Найти цитируемый пост)
3) Про скорость работы я думаю тут говорить не стоит, но всё же она немного ниже готовых бинарников (*этот пункт я думаю можно опустить)

Спорно, довольно спорно. CLR может произвести такие оптимизации runtime, который ни один компилятор в compile-time не сможет.

Цитата(WolfAlone @  15.9.2010,  18:48 Найти цитируемый пост)
4) Чисто теоретически, .net - кроссплатформенная среда, но как-то я не заметил этой кроссплатформенности в полной мере.

Ну...более менее..

Цитата(WolfAlone @  15.9.2010,  18:48 Найти цитируемый пост)
2. Почему большинство встречающихся мне программ, никак не связаны с .net?

.NET существует относительно недавно, а программы пишутся на протяжении нескольких десятилетий. Логично? Нельзя сразу взять и переписать все, притом что смысла в этом не все видят. Если продукт работает и продается то какой смысл его переписывать с нуля?

Цитата(WolfAlone @  15.9.2010,  21:10 Найти цитируемый пост)
Как это ни странно звучит, но в новой Windows "8" обещали переписать ядро с чистого листа (по нашему - с нуля), интересно, куда они девают код предыдущих ядер? smile 

может и офис когда нибудь перепишут..кто знает?

в конечном итоге язык и технологию выбирают исходя из задачи.
PM   Вверх
WolfAlone
Дата 15.9.2010, 21:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


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

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



Цитата(azesmcar @  15.9.2010,  21:21 Найти цитируемый пост)
.NET это вообще фреймворк, ты про CLR говоришь и это НЕ интерпретатор.
 благодарю за поправку, я в этом деле ещё "дубовый" smile



--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
azesmcar
Дата 15.9.2010, 21:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 2
Всего: 211



Цитата(WolfAlone @  15.9.2010,  21:10 Найти цитируемый пост)
 Кстати, дельная мысль!  smile 

Да ладно, хоть на офис не надо наезжать smile хороший ведь софт..

Добавлено через 1 минуту и 19 секунд
Цитата(WolfAlone @  15.9.2010,  21:10 Найти цитируемый пост)
Как это ни странно звучит, но в новой Windows "8" обещали переписать ядро с чистого листа (по нашему - с нуля), интересно, куда они девают код предыдущих ядер? smile 

главное не проделанная работа а отчет о проделанной работе smile 

PM   Вверх
WolfAlone
Дата 15.9.2010, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


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

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



Цитата(azesmcar @  15.9.2010,  21:28 Найти цитируемый пост)
главное не проделанная работа а отчет о проделанной работе smile 

Это видимо опять желтая пресса виновата, видимо майкрософт хотел сказать: "Windows 8 - будет новое ведро!", а не "У windows 8 будет новое ядро!".  smile  smile  smile 



--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
diadiavova
Дата 15.9.2010, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

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



Цитата(WolfAlone @  15.9.2010,  22:10 Найти цитируемый пост)
.net-платформа это чисто windows-поделка, и была разработана изначально именно для этой ОС и для кросс-платформенной разработки не была предназначена в принципе.

Конкретно .Net - да, но к примеру тот же ротор - тоже создан в MS и если говорить о моно, то на сколько мне известно, у новелл с майкрософт есть договор на счет моно. То есть кроссплаформенность для CLI замышлялась изначально, но .Net - это чистая винда.
Цитата(WolfAlone @  15.9.2010,  22:10 Найти цитируемый пост)
Но какие-то добрые дядьки из Nowell сделали Mono, который частично поддерживает реализацию .net платформы под Linux и другие ОС (MacOS, Windows, etc.).

Не платформу .Net они поддерживают, а просто там реализован ряд библиотек, позволяющих запускать нет-приложения(не все ессно).
Цитата(WolfAlone @  15.9.2010,  22:10 Найти цитируемый пост)
 меня остался вопрос только о том, как этот самый Mono или любая другая аналогичная реализация .net-платформы поведет себя с внешними Windows-DLL подключенными к программе?

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


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
WolfAlone
Дата 15.9.2010, 21:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


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

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



Цитата(diadiavova @  15.9.2010,  21:34 Найти цитируемый пост)
но... 
 именно это меня и пугает...

Добавлено @ 21:39
Но если нужна внешняя DLL - лучше сразу делать не под .net а "классику", один хрен Wine ставить придется, а так хоть от необходимости установки того же Mono можно избавиться  smile 

Это сообщение отредактировал(а) WolfAlone - 15.9.2010, 21:39


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
diadiavova
Дата 16.9.2010, 09:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

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



Цитата(WolfAlone @  15.9.2010,  22:10 Найти цитируемый пост)
Как это ни странно звучит, но в новой Windows "8" обещали переписать ядро с чистого листа (по нашему - с нуля), интересно, куда они девают код предыдущих ядер? 

Дело не в том куда девать код, это как раз не проблема. В разработку офиса вбухана куча бабок и все прекрасно работает, а ты предлагаешь все переделать с нуля и ради чего, чтобы это все было реализовано под дотнет? 
Цитата(WolfAlone @  15.9.2010,  22:37 Найти цитируемый пост)
именно это меня и пугает...

Я просто не занимался этим вопросом, поэтому не знаю. 
Цитата(WolfAlone @  15.9.2010,  22:37 Найти цитируемый пост)
Но если нужна внешняя DLL - лучше сразу делать не под .net а "классику"

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


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
ДобренькийПапаша
Дата 16.9.2010, 23:13 (ссылка) |  (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Я вот всё время слышу: кроссплатформенность! кроссплатформенность!
Доля НеВинды примерно равна 5-8%. Да какал я на эту часть аудитории. Бугага.


--------------------
Меня зовут Себастьян Парейра, торговец чёрным деревом.
PM MAIL   Вверх
CYBERDREAM
Дата 17.9.2010, 09:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I think, there4 I am
***


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

Репутация: 8
Всего: 28



Цитата(ДобренькийПапаша @ 16.9.2010,  23:13)
Я вот всё время слышу: кроссплатформенность! кроссплатформенность!
Доля НеВинды примерно равна 5-8%. Да какал я на эту часть аудитории. Бугага.

какать стоит если софт серьезный - а таких мало, так что можно какать смело в большинстве проектов

Это сообщение отредактировал(а) CYBERDREAM - 17.9.2010, 09:25


--------------------
Ищем .Net, Java, Javascript разработчиков, Кипр, Лимассол. (знание английского необязательно)
Telegram, skype: kuchuk.artiom
PM MAIL WWW   Вверх
mrbrooks
Дата 17.9.2010, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


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

Репутация: 17
Всего: 306



Цитата(ДобренькийПапаша @  17.9.2010,  00:13 Найти цитируемый пост)
Я вот всё время слышу: кроссплатформенность! кроссплатформенность!
Доля НеВинды примерно равна 5-8%. Да какал я на эту часть аудитории. Бугага. 

ну так сразу я бы фикалии метать не стал. smile 
PM MAIL   Вверх
CYBERDREAM
Дата 17.9.2010, 09:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I think, there4 I am
***


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

Репутация: 8
Всего: 28



у человека может потребность


--------------------
Ищем .Net, Java, Javascript разработчиков, Кипр, Лимассол. (знание английского необязательно)
Telegram, skype: kuchuk.artiom
PM MAIL WWW   Вверх
mrbrooks
Дата 17.9.2010, 09:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


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

Репутация: 17
Всего: 306



метко бросить?

PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

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


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

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


 




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


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

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