Что это такое? :)

  • Автор темы Jkar
  • Дата начала
Статус
Закрыто для дальнейших ответов.
J

Jkar

Гость
#1
Расскажит мне, а что это вобще за .NET? Что такое C#? Похоже ли оно на C? Что хорошего в .NET? Что плохого? Зачем оно нужно?..
 

admin

Well-Known Member
08.08.2003
2 754
1
#2
Jkar
платформа такая, которую создала MS для облегчения жизни программистам.
как я понимаю суть её, так это просто полная интеграция проектов, написаных на разных языках, поддерживаемых в рамках .NET. Сам никогда не работал на ней и не знаю что и как, но суть похожа на Ms Office для приложений, но в сторону программирования.
 
D

Dr.Gigabit

Гость
#3
2 Серёга

Гораздо шире на самом деле.
Если силы останутся, к вечеру(скорее к ночи:) напишу .NET Review
 
D

Dr.Gigabit

Гость
#4
.NET Review Part 1

Сначала следует отметить, что сама по себе инициатива Microsoft .NET – попытка Microsoft отойти от традиционных способов разработки ПО, и привнести в область программной индустрии новые идеи(естественно, со своими продуктами, построенными на данной технологии). С ростом популярности Интернета, крупные корпорации, такие как IBM, Sun, а теперь и Microsoft, фактически признали, что будущее программной индустрии – распределенные приложения. Это подтверждает и значительно возросшая в последнее время популярность языка Java.

Естественно, Microsoft не могла оказаться на обочине прогресса, что в результате и вылилось в новую платформу разработки Microsoft .NET Framework.

Microsoft .NET Framework (далее, для краткости будем называть просто .NET, хотя, по большому счету, это не одно и то же, как было сказано выше) – платформа для разработки и исполнения приложений, основными составными частями которой являются общеязыковая среда исполнения (CLR) и библиотека классов (FCL). CLR служит средой для исполнения управляемых приложений. Любой код, написанный для работы под управлением CLR называется управляемым, в отличие от неуправляемого (машинного) кода, который исполняется без помощи CLR. При компиляции программы, предназначенной для CLR, она компилируется в так называемый промежуточный код. Теперь программа содержит инструкции на промежуточном языке(common intermediate language, CIL). Далее команды CIL компилируются в обычные ассемблерные команды по запросу JIT – компилятора. (JIT – Just-In-Time: программа компилируется в период исполнения. Причем части кода компилируется по мере необходимости. CLR берет часть кода и компилирует его в “родной” машинный язык ассемблера. Каждый метод компилируется один раз, при первом вызове и результат кэшируется в памяти).

Во время исполнения программы CLR следит за использованием памяти, периодически вызывая сборщик мусора, благодаря чему, в приложениях, написанных только на управляемом коде, не бывает утечек памяти).

To be continued…..
Сори, крыша едет уже в 4 часа утра. Допишу в другой раз… Пока – вопросы, комментарии?
 
D

Dr.Gigabit

Гость
#5
В архиве небольшая диаграмма, из MSDN выдрал, может нагляднее будет.
 

Вложения

  • 9.4 КБ Просмотры: 144
D

Dr.Gigabit

Гость
#6
Если кому еще интересно
.NET Review Part 2

Вся динамически запрашиваемая память находится в куче. Сборщик мусора отслеживает ссылки на объекты, проверяя тем самым, какие объекты все еще используются в программе. Объекты, на корорые ссылок больше не существует, уничтожаются. При очевидных достоинствах такого подхода недостатком является то, что при сборке мусора все остальное в процессе временно приостанавливается.

Приложения в среде CLR могут быть написаны с использованием следующих языков программирования:
C#, C++, J#, VB, JScript, хотя существуют и компиляторы для других языков(слышал про Perl, но реального использования не видел)

"Родным" языком для .NET является C#. Есть мнения, что в будущем C# станет "основным" языком программирования для новой платформы. Пока Microsoft не дает поводов столь категорично так говорить, да и количество разработчиков на VB .NET достаточно велико.

Что касается сравнения C# и С++, то сравнивать C# с неуправляемым С++ немного некорректно, т.к. они призваны решать разные задачи.
С#, к примеру, вносит концепции ООП в Web, и позволяет решать многие нетривиальные задачи из области веб-программирования с меньшими усилиями. Работа с XML реализована на кардинально ином уровне. Все это и многое другое в итоге дает огромный выигрыш во времени разработки web-приложений.

Вот так в общих чертах мои соображения. Для более глубокого ознакомления сюда
 
J

Jkar

Гость
#8
Слушай.... А C# там синтаксис какой? Такой же как и в C?
 
J

Jkar

Гость
#9
А вот ещё... Вы так абстрактно говорите _платформа_. Это что? Платформа это просто набор программ?
 
D

Dr.Gigabit

Гость
#10
А вот ещё... Вы так абстрактно говорите _платформа_. Это что? Платформа это просто набор программ?
CLR - среда исполнения, что-то типа ядра. Вообще идеи .NET своими корнями уходят в другую технологию Microsoft - COM.
Если брать в целом .NET Framework - это платформа для разработки и исполнения приложений. По сути да, набор программ. Но основа всего CLR.

Слушай.... А C# там синтаксис какой? Такой же как и в C?
Да, такой же. Есть конечно новые конструкции, но основные остались те же.
 
J

Jkar

Гость
#11
Остаёться только сказать спасибо Dr.Gigabit'у :)

2Dr.Gigabit: СПАСИБО ;)
 
G

Guest

Гость
#14
.Net не только за MS.... http://www.mono-project.com/
Приятно, что есть и opensource-реализации этой платформы.

Mono is a comprehensive open source development platform based on the .NET framework that allows developers to build Linux and cross-platform applications with unprecedented productivity. Mono's .NET implementation is based on the ECMA standards for C# and the Common Language Infrastructure.
 
A

Anal Blast

Гость
#15
Посоветуйте книги по С# для начинающих?
Не требующие знания С или С++.
 
D

Dr.Gigabit

Гость
#16
Троелсен "C# и платформа .NET".

Есть еще "С# для профессионалов", несмотря на название, если есть желание разбираться, можно и начинающим читать. Хотя стиль достаточно тяжелый.

Вообщем-то это 2 книги, достойные внимания, имхо. Ну а потом - Рихтер:)
Хотя, честно говоря, сложно учить С# не зная концепций ООП.
 

Гость
#17
а что скажете про j#. какое это имеет отношение к java?

я хочу изучить java. мне это пригодиться в .net?
 
D

Dr.Gigabit

Гость
#18
<!--QuoteBegin-лаша+22:08:2005, 13:39 -->
<span class="vbquote">(лаша @ 22:08:2005, 13:39 )</span><!--QuoteEBegin-->а что скажете про j#. какое это имеет отношение к java?

я хочу изучить java. мне это пригодиться в .net?
[snapback]23850" rel="nofollow" target="_blank[/snapback]​
[/quote]

Если у вас есть желание заниматься Java-технологиями, так может ими стоит и заниматься :)

J# "официально" никакого отношения к Java не имеет, хотя этот язык и был реализован во многом для того, чтобы Java-разработчики быстрее переходили на .NET
Хотя, имхо, с серьезными скилами в Java EE перейти на C# и .NET-технологии не составит большого труда. Так что если у вас есть желание заниматься .NET'ом - я бы не рекомендовал j# как язык, который стоит изучать для этого. А знания Java либо C++, конечно, пригодятся. Хотя в некоторых моментах откровенно мешают, особенно на первых порах.
 

Гость
#19
не подскажите русские ресурсы C#?
возможна установка msdn на свой комп?
 
Статус
Закрыто для дальнейших ответов.