Несколько общих вопросов

  • Автор темы Автор темы pOkEmOn
  • Дата начала Дата начала
P

pOkEmOn

Решил вот C# освоить (когда то кодил на Делфи, но в данный момент C# и .net более востребованы и перспективны)

несколько вопросов:
1. Какую IDE используют в основном? (поcтавил C# Builder, от борланда привычнее)
2. некоторая непонятка с фреймворками. стоят с 1-го по 3-й, а компоненты показываются только от 1.1. Когда-то качал SDK 1.1. Перерыл весь microsoft.com, даже его теперь найти не могу. не то что более новый.
3. под другими платформами, кроме винды, Фреймфорк есть вообще? а то что-то где-то читал...
4. и еще такой глупый вопрос, поскольку настоящая копмиляция происходит в момент запуска приложения, для крупных приложений наверняка этот процесс занимает длительное время, или нет?
и пишуться ли действительно серьезный проекты под .net, или всетаки это прерогатива unmanaged?

вот собственно что хотел спросить.
 
1. Рулит Visual Studio 2005. Билдер можешь сразу выбросить, он тупиковая ветвь эволюции.

2. VS 2005-я поддерживает 2-й фрэймворк. и 3-й (через спец-примочки).
Если подробно, то есть 5 версий framework: 1.0, 1.1, 2.0, 3.0, 3.5.
1.0/1.1 поддерживаются 2003-й студией. Морально устарели.
2.0 - Хорошо переработанный 1.1. Поддерживается 2005-й и бетой 2007.
3.0 - Три крупных библиотеки (Presentation/Workflow/Communication Foundations). Как основу использует 2.0. Поддерживается дополнениями 2005-й (не полностью) и бетой 2007-й.
3.5 - Будет в начале следующего года. Полностью поддерживается бетой 2007.


3. Есть, Mono называется.

4. Компиляция происходит один раз, причем при первом обращении к классу/методу. Поэтому вряд ли ты сможешь вообще процесс компиляции заметить. Но если очень надо, можно откомпилировать заранее, утилиткой ngen.

5. Серьезные проекты - это прерогатива managed :(, и уже довольно давно. Добро пожаловать в 21-й век :)
 
Для: pOkEmOn
и еще такой глупый вопрос, поскольку настоящая копмиляция происходит в момент запуска приложения, для крупных приложений наверняка этот процесс занимает длительное время, или нет?

Что значит не настоящая компиляция и настоящая копмиляция?
Первый раз исходный код транслируется в IL(Intermediate Language), например, нажатием клавиши F5 в Visual Studio.
Второй раз(при первом обращении к классу/методу) IL транслируется в в машинные коды целевого процессора JIT-компилятором(just in time, компиляция на лету).
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!