Фактическая температура воздуха в Находке on-line. Прогноз погоды в Находке  

Visual Studio 2008 beta2

Обмен опытом ИТ-специалистов в различных областях

Модератор: Aroch

Visual Studio 2008 beta2

Сообщение Char0Day » Вс июл 29, 2007 9:37 am

Выпущена очередная версия (пока бета) известного макрософтовского продукта для разработчиков.
Как и в 2005 студии, есть бесплатная версия express.
Кого заинтересовало, скачиваем.
Также можно почитать описание. Судя по нему, проблем с импортом проектов из VS2005 быть не должно.
в VS2008 используется net framework 3.5.
Замечу, что в VS2005 используется Net 2.0, а в Windows Vista включен Net Framework 3.0.
То есть для проектов, написанных на VS2005 не придется таскать Net 2.0 runtime применительно к висте. Хотя в любом случае для XP таскать все равно придется.

Сам сейчас пишу один прикладной проект на C# 2005 express.
До этого долго сидел на С++ Builder 5/6/(и успел на 2006)
Конечно, приходится осваивать и синтаксис C#( хорошо, что на Java похож :) ) и .Net и новую среду разработки. Но скажу честно - очень недурственно с точки зрения удобства и скорости разработки.
Естественно надо учитывать и область применения. Не будете же вы на C# и .Net разрабатывать драйверы и системные утилиты :-)
Char0Day
Горожанин
 
Сообщения: 500
Зарегистрирован: Пн июл 24, 2006 1:34 pm
Откуда: г. Находка

Сообщение Орхи » Ср авг 01, 2007 11:16 am

Char0Day, не могли бы вы заодно рассказать немножко о Net Framework? Я в этом полный чайник, но названье такое встречала неоднократно. :)
Аватара пользователя
Орхи
Приезжий
 
Сообщения: 28
Зарегистрирован: Вс июл 15, 2007 4:09 pm

Сообщение Char0Day » Чт авг 02, 2007 1:58 am

Орхи,

ТАк, чего бы начать, чтобы понятнее было.

Кратко пробегусь по эволюции языков программирования:

50-60-е годы XX века.
Программирование прямым вводом машинных команд и ассемблер.
Программисты писали несложные программы на слабых машинах путем прямого ввода процессорных команд.
Недостатки - сложность писания и понимания кода программы. Сложные программы выглядели монстрообразно.
примерно так:
00110110 01001010
команда оператор
Все в двоичной арифметике - так как коротко, то не буду касаться еще и этого вопроса :-)
Команда и оператор даны от балды, как то не хочется идти искать старые конспекты лекций и вспоминать команды PDP11 :-)
Помнится, чтобы нарисовать в консоли на экране рамку из звездочек, на лабах прилагались титанические усилия :-)
И код занимал, помнится, никак не меньше пары листов формата A4 10-м шрифтом.

70-е годы XX века.
Появились языки программирования (ЯП) высокого уровня.
Например С (произносится Си).
Синтаксис языка стал более прост и понятен человеку. Упростилось сопровождение. А переработкой программы в машинные коды стал заниматься автомат - компилятор.
Теперь рисование рамочки на экране укладывалось в пару-тройку строк программного кода.
За упрощение программирования пришлось заплатить (ничего не бывает просто так :-)) замедлением скорости выполнения программы и повышением потребления памяти.

Если сравнить процесс программирования со строительством дома, то
программирование в машинных командах выглядит так:
Достаете глину, лепите кирпичи, прокаляете их, делаете раствор, производите кладку кирпича.
На ЯП высокого уровня:
Кипичи уже есть, вы делаете раствор и производите кладку кирпича.

Но эволюция ИТ шла быстрыми темпами, программы все усложнялись, и наступил критический момент, когда потребовался новый подход к разработке ПО (программного обеспечения).


80-е годы XX века.
Объектно ориентированные (ОО) языки программирования (ЯП) высокого уровня. С++ (произносится Си пплюс плюс).
Новая парадигма программирования - программирование происходит в терминах объектов реального мира. Появляются понятия моделированя и проектирования программ (дополнительные фичи вроде UML и т.д)
Программы становятся еще более понятными и легкими в сопровождении (относительно аналогичных, написанных на не ОО ЯП, конечно же :-)), упрощается написание сложного кода, хорошие возможности по повторному использованию однажды написанного кода, появляются стандартные библиотеки часто используемых кодов.
По аналогии со строительством:
Постройка идет из больших стандартных панелей (в них уже прорублены стандартные окна и двери и т.д), вы стыкуете панели между собой получая необходимую конструкцию.
За такую унификацию разработки пришлось платить падением производительности и прожорливостью требований по памяти. Но других альтернатив нет - программы уровня сложности пакета MS Office писать на ассемблере было бы самоубийством. Ну думаю, лет за сорок, с одной версией уровня Office97, может быть, справилась бы большая команда профессионалов :-). Зато по системным требованиям такой офис летал бы со скоростью света и работал бы на 4 Мб оперативки.

Однако, программы все больше усложнялись, стали повсеместными ошибки в работе с памятью и последующая их отладка (память выделялась и освобождалась вручную разработчиком, а так как программный код был объемным - поиск ошибок в нем также требовал не меньших, а то и больших усилий, чем написание самого кода).
Назревала необходимость нового витка в эволюции ЯП. Она возникла в результате бурного развития гетерогенных компьютерных сетей ( В частности - Интернет). Когда в одну сеть объединялись совершенно разные и часто несовместимые компьютеры с разными ОС и типами процессоров. Возникла идея упростить разработку платформонезависимых программ, ну и по пути разобраться с проблемами утечки памяти. Этим и заналясь фирма Sun и 15 лет назад появился язык Java.



90-е годы XX века по настоящее время (если я еще не отстал от жизни :-) )
Платформонезависимые Объектно-ориентированные ЯП высокого уровня. Java (15 лет назад ) С# (около 7-8 лет назад)
Если в предыдущих языках (С, С++) компилятор занимался переработкой исходных кодов программы напрямую в машинные коды, то на данном этапе развития исходный код программы сперва перерабатывается в платформо(процессоро)независимый байткод, который потом с помощью Виртуальной машины Java (JVM) в случае с Java, или с помошью компилятора платформы .Net(в случае с С#) Преобразуется уже в процессорные команды.

Добавление такого промежуточного звена позволило разрабатывать и запускать программы на разных Операционных системах (ОС) и разных архитектурах (ведь не одной IBM PC архитектурой жива ИТ-индустрия :-)).
ТО есть программу на Java можно запустить не только под ОС Windows, но и под Linux, MacOs, Solaris.
Запуск программы на Java на определенной ОС определяется наличием реализации Вирт. машины Java для данной платформы.
Аналогичное можно сказать и про C# и .Net ( но вспомним, что Microsoft заинтересованы в гегемонии Windows на рынке, отсюда и слабые шаги по переносу платформы .Net на другие ОС. Пока есть версия .Net для Linux (Зовется Mono))

Что получили на данном этапе?
Плюсы кроссплатформенности и автоматическое управление выделяемой для программ памятью, а также огромный набор библиотек кода "строительных панелей", встроенный в платформу.
Чем заплатили?
Правильно замедлением работы программ и еще более высоким требованиям к памяти.

Что же такое .Net Framework?
Это в первую очередь технология, призванная облегчить труд программистов, которую Microsoft пирарит, где только можно, что даже не программисты слышат о ней на каждом шагу. :-) (Судя по всему, Microsoft испугались Sun с JVM и боятся потерять свою долю рынка ИТ)
ТО есть совремменные реалии программирования для ОС Windows связаны с платформой .Net - своего рода виртуальной машиной для преобразования кода программ в машинные команды, автоматическим управлением памятью и общирным набором библиотек кода "строительных панелей" на все случаи жизни для ускорения разработок и облегчения жизни программистам.

Ну вот, коротко пробежался по врхушкам :-).

P.S.
Кстати, ассемблер, Си, С++ не умерли, просто сузилась область их применения.
Например, ядро ОС Linux как писалось на С/С++ так и продолжает писаться.
Драйверы устройств преимушественно пишутся на ассемблер и Си.
Уверен, что и некоторые части библиотек "строительных панелей" :-) платформы .Net, где критична скорость выполнения и потребление памяти, написаны на Ассемблере или С.
Char0Day
Горожанин
 
Сообщения: 500
Зарегистрирован: Пн июл 24, 2006 1:34 pm
Откуда: г. Находка

Сообщение Орхи » Сб авг 04, 2007 12:15 pm

Char0Day, спасибо за экскурс :)
Аватара пользователя
Орхи
Приезжий
 
Сообщения: 28
Зарегистрирован: Вс июл 15, 2007 4:09 pm


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron