Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > А что такое .NET ?


Автор: Paradox 27.2.2003, 15:31
Я вот что-то никак не пойму что такое .NET. Пара книжек у меня есть но там не про .NET, а про Визуал в основном. Мож кто знает где можно прочитать про идеологию всего этого дела. Или .NET и С# это синонимы.
Простите, если вопрос дурацкий...

Автор: stab 27.2.2003, 19:10
Цитата
Мож кто знает где можно прочитать про идеологию всего этого дела.


Я купил самую тупую книгу: учебный курс C#, книга ужасная (много досадных ошибок), но в первых главах про .NET все описанно нормально, наверно перевод из Microsoft Press smile.gif

Цитата
Или .NET и С# это синонимы.


нет не синонимы:

.NET, правильнее будет .NET Framework-- это CLR + набор классов, где CLR (Common Language Runtime) -- это система которая и обеспечивает выполнение программ на языке MSIL (Microsft Intermidiate Language), проше говоря тот же машинный код только более высокого уровня. Лет через пять, наверно, появится проц, который будет поддерживать все иструкции MSIL, что нить типа "AMD Athlon Quant .NET 100GHz +/- 20GHz" smile.gif Так вот, CLR как раз и обеспечивает перевод MSIL в машинный код конкретного процессора при помощи JIT-компилятора (Just In Time -- в нужный момент)

C# -- это язык для использования набора классов .NET Framework. Программы написанные на C#, VB.NET, ... компилируются в MSIL т.е. разные по синтаксису языки в конечном счете дают совершенно одинаковый MSIL код, который теоритически может выполнятся на любом проце под любой операционкой, если конечно программеры чего нить не перемудрят. smile.gif

Автор: AntonSaburov 27.2.2003, 19:45
NET - это новая концепция Майксрософт. Очень много маркетинга, который скрывает суть.

Гигант наконец разродился тем, чем должен был smile.gif
MS увидела, что VisualBasic резко сдает позиции по сравнению с другими языками - простенький слишком язык, постоянно надо что-то под него переделывать. Неудобно. Разработчики ищут что-то более пристойное. А так как их становится все больше и потребность в них есть, то этот рынок МС упускать не хочет.

NET включает в себя два основных понятия:
- Среда разработки и выполнения (Framework)
- Набор классов (библиотек)

Framework - это во-первых, IDE, которая наконец стала более менее удобным инструментом. Правда жрет она памяти тоже прилично. Меньше 256 метров - работа превращается в кошмар. Лучше 512 и выше. Ну и во-вторых, система интерпретации байт-кода формата MS (MSIL).
Т.е. весь код транслируется в промежуточное состояние, которое будет при запуске интерпретироваться. За счет этого код может уже быть проверяемым, безопасным и прочая (политика безопасности, которая предложена в JAVA уже несколкьо лет назад).
А на чем ты напишешь - это уже твое дело. МС предлагает три языка - BAsic, C#, MC++.
Хотя упор делается на C#. Который вобрал в себя многое от JAVA и от других языков.

Кроме этого можно писать на обычном C++ с использованием MFC/ATL/WTL, но это уже будет обычный VC++, который мы видим уже не один год.

Кроме этого МС предлагает спецификацию, с помощью которой можно написать свой язык, который также будет транлироваться в MSIL. Насколько мне известно таких вариантов уже создано достаточно много. Причем в своем коде можно использовать классы, которые могут быть созданы на разных языках (лишь бы они не перемешивались в одном файле)

Таким образом МС позволяет писать на разных языках один проект и использовать классы уже не на уровне DLL или COM. Теперь уровень интеграции еще выше - можно использовать сразу классы без каких-либо проблем.

Автор: Paradox 28.2.2003, 03:07
AntonSaburov хотелось бы узнать где можно обо всем этом прочитать подробнее. Сайты, книжки - на русском, английском confused.gif Спасибо

Автор: AntonSaburov 28.2.2003, 20:06
1. MSDN, который содержит достаточно большое количество информации. Либо ходить прямо на msdn.microsoft.com, либо покупать диски и читать, читать, читать.

2. Очень неплохая книжка по C# Джесса Либерти "Программирование на C#"
Сейчас появилась на www.books.ru уже на русском.

3. Форумы, где люди общаются. В частности http://forum.vingrad.ru biggrin.gif

Автор: Paradox 1.3.2003, 00:24
Глянул в MSDN - глаза разбежались от обилия ссылок. Подскажи с чего лучше начать.

Автор: AntonSaburov 1.3.2003, 01:49
У меня весь MSDN не стоит - я поставил только то, что идет вместе с .NET.

И там в разделе Getting Started прямо такой текст

==================================
For an accelerated introduction to the .NET Framework, follow these steps in sequence:

1. Read the Overview of the .NET Framework topic.

2. Scan the Tutorials, beginning with the Introduction to Developing with the .NET Framework tutorial.

3. Review the QuickStarts, a series of brief, illustrated samples that demonstrate key .NET Framework technologies.

4. Scan the descriptions of the Samples, identify the samples that are relevant to your development needs, and install the samples from <FrameworkSDK>\Samples. Use the samples as a foundation for developing your own .NET Framework applications.

5. As you begin to develop your applications, continue to use the .NET Framework documentation as a primary source of information. The documentation is compiled into an easy-to-use Help file that is displayed in the Microsoft Document Explorer viewer. The viewer includes features such as an index keyword search, a full-text search, and filtering mechanisms that enable you to customize how the information is displayed.

==================================


Вообщем это действительно неплохой вариант, можно использовать.

А дальше - лично я просто пытаюсь читать "Programming with the .NET Framework"
По возможности. С постоянным подглядыванием в Reference на счет изучения всяких классов. Ну и пробы, примеры, задачки.
С каждым новым куском - ставим задачку, пытаемся решить. Лучше всего, если есть реальный проект, который можно попытаться перетащить на .NET

У меня просто сейчас в окружении такие есть - потому и продвигаемся biggrin.gif

Автор: simanyay 1.3.2003, 03:47
Цитата
У меня весь MSDN не стоит - я поставил только то, что идет вместе с .NET.

А это, по моему и есть - весь MSDN для .NET Framework

Автор: desyatnik 1.3.2003, 21:42
Цитата(AntonSaburov @ 27.2.2003, 19:45)
Framework - это во-первых, IDE, которая наконец стала более менее удобным инструментом. Правда жрет она памяти тоже прилично. Меньше 256 метров - работа превращается в кошмар. Лучше 512 и выше. Ну и во-вторых, система интерпретации байт-кода формата MS (MSIL).
Т.е. весь код транслируется в промежуточное состояние, которое будет при запуске интерпретироваться. За счет этого код может уже быть проверяемым, безопасным и прочая (политика безопасности, которая предложена в JAVA уже несколкьо лет назад).

Несколько существенных замечаний.

Во-1, .NET Framework - ни в коем случае не IDE. Это рантайм, т.е. библиотеки, сопутствующие программы, собственно JIT-компилятор. Для разработки программ используется .NET Framework SDK (сам по себе либо в комплекте VS.NET).

Во-2, MSIL хотя и можно интерпретировать, изначально создавался с прицелом на компиляцию, т.е. неэффективности удаётся по большей части избежать. Более того, JIT-компиляция может происходить не при запуске программы, а при её установке в систему (правда, как это делается, я просто не разбирался).

Автор: desyatnik 1.3.2003, 21:44
И в 3-х чуть не забыл! smile.gif 256 метров для работы вполне хватает, 128 метров удручают тормозами, но работать вполне можно. Это - VS.NET. У "голого" фреймворк-сдк требования меньше, так что если мало памяти, старый добрый ViM/Emacs нам поможет smile.gif

Автор: $tatic 2.7.2006, 10:52
ИМХО можно освоить .NET таким способом:
1. Установить .NET Framework и .NET Framework SDK (правда они не модемного размера, но некоторые журналы (Хакер) выкладывают иногда)
2. Установить SharpDevelop (www.icsharpcode.net) - бесплатная и быстрая ИДЕ
3. Найти учебник по C#
.NET очень большая система, поэтому универсальные книжки типа ".NET и C#" подходят только на начальном этапе. Мне кажется, что лучше всего экспериментировать, заглядывая в MSDN, тем более что инструменты типа Object Explorer (спасибо VB) очень удобны для знакомства с классами. Я исключаю ASP.NET, поскольку это отдельная сложная подсистема.
Кстати у меня изучение языков проходило так: Basic -> Visual Basic -> Visual Basic .NET (совершенно случайно наткнулся) -> C# -> Java (поскольку очень похожи) 

Автор: unicuum 2.7.2006, 17:33
Цитата(AntonSaburov @  27.2.2003,  19:45 Найти цитируемый пост)
МС предлагает три языка - BAsic, C#, MC++.

Я бы ещё добавил сюда Java, хотя теперь это не важно, ведь Visual Studio.NET позволяет добавлять новые собственные языки программирования. 

Автор: Exception 2.7.2006, 20:54
Тьфу, чего вы трёхлетние темы поднимаете smile 

Автор: mr.DUDA 3.7.2006, 01:51
Гуру-медитаторы, млллин... Вот закрою тему и всё smile...  

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)