| Главная -> Программирование -> C++
Альтернативы Visual Studio NET (Borland C#Builder)
Одним из основных недостатков пакета Visual Studio Net, на мой взгляд, является его размер. Многие начинающие программисты, которые с удовольствием перешли бы на эту новую программную платформу, косо смотрят на необходимость покупки восьмидискового дистрибутива.
В этой статье я попытаюсь рассмотреть имеющиеся в Интернете альтернативы этой среды разработки. Безусловно, пакеты, о которых у нас дальше пойдет речь, далеко не дотягивают по своим возможностям до среды "Майкрософт". Вместе с тем, я не стану рассматривать в качестве альтернативы редакторы с подсветкой синтаксиса C#. Рассказывать я буду только о полноценных средах разработки. Первая из таких сред стала доступна через Интернет буквально на днях. Речь идет о долгожданном пакете Bor-land C#Builder.
Среда разработки Borland C# Builder
В очередной раз зачем-то посетив сайт www.borland.ru, я, больше по привычке, чем с какой-либо надеждой, ткнул мышкой в ссылку, озаглавленную "C#Builder". Проект этот существует довольно давно. Пару месяцев назад Borland даже выпустила пресс-релиз, гласящий о выпуске в свет первой версии этой новой среды разработки. Тем не менее, в разделе загрузки нужный файл так и не появился, а уличные лоточники только разводили руками на мою просьбу продать мне диск с этим пакетом.
На этот раз, к моему удивлению, на странице присутствовала возможность загрузки, помимо привычных четырех файлов с документацией, еще и неких Trial- и Demo-версий программы. Хмыкнув, я дал FlashGet инструкцию скачать пока эти четыре файла документации, мало ли чего там нового появилось, а сам щелкнул по ссылке "Trial Version". Cайт Borland на русском языке ознакомил меня с условиями, на которых эти программы поступят в мое распоряжение. Взамен новых версий своих программ они хотели получить с меня заполненную анкету и почтовый адрес. Адрес им нужен был, по их словам, для того, чтобы связаться со мной и выяснить, как мне понравилось работать с загруженными программами. Я счел эти условия довольно гуманными и приемлемыми. Щелчком мыши я выбрал слева ссылку, подтверждающую, что я собрался загружать именно Borland C#Builder. В результате я был переправлен на американский сайт фирмы Borland. Там я, наконец, был допущен к странице загрузки запрошенного мной программного обеспечения. Давайте посмотрим, что именно там предлагалось.
Во-первых, нам предлагают Enterprise Trial версию, предназначенную для платформы Windows (кто бы сомневался). Номер версии равнялся единице. Выпущен пакет был первого августа 2003 года. Размер этого пакета равен 124 мегабайтам.
Во-вторых, Personal download Edition. Дата выпуска 29 июля 2003 года, размер пакета 29 мегабайт. Интересная информация об этом пакете приводилась в поле “примечания”. Помимо того, что среда существует на четырех языках (русского языка, конечно, среди них не было), там было сказано, что данный пакет распространяется совершенно свободно при условии некоммерческого его использования. “О как!” — воскликнул я и бегло просмотрел другие ссылки на этой странице.
Больше ничего интересного там не было. Мне предлагалось получить лицензию на их продукты без выкачивания самих файлов на тот случай, если я раздобыл сами файлы окольным путем (читай у пиратов). Также для зарегистрированных пользователей имелась ссылка на каталог с обновлениями. Глянув на календарь, я решил, что обновления проверять пока не обязательно. Крайне маловероятно, что какие-либо обновления появились через неделю после выпуска релиза, поэтому я ткнул мышкой в ссылку, обещавшую выдать мне бесплатную персональную версию программы. Браузер долго шуршал разными ссылками в своей строке статуса, а потом вывел окошко, извещающее о том, что сейчас мы переходим на безопасное соединение. Благодаря этому механизму никто другой не сможет узнать то, о чем мы с Borland секретничали. Но я вам все равно об этом расскажу.
Загрузилась страница, на которой меня просили ввести свой логин и пароль зарегистрированного пользователя продуктов Borland. На тот случай, если я не являюсь таким пользователем, была предусмотрена кнопка "New User". Именно ее я и нажал.
В ответ сайт выдал мне большую простыню регистрационной формы. Необходимые к вводу поля были помечены красными кружочками. Форма совершенно дурацкая, заранее настройтесь на то, что перезаполнять вам ее придется раза два-три. То ей не нравится имя пользователя "1234", то требуется, чтобы я в поле провинции вписал "N/A", то она при каждой перезагрузке теряет пароль и его приходится вводить заново. Я хотел сделать копию экрана заполненной формы и приложить ее к статье, но потом подумал, что человеку, который не способен самостоятельно с ней разобраться, нечего делать в программировании. Считайте этот "квест" с регистрацией своим первым тестом на звание программиста.
Следом за формой регистрации выскочила еще более длинная "простыня". На ней мне предлагалось описать самого себя и род моих занятий. Отмечаете те галочки, какие сочтете нужными. Я указал, что я бедный студент из России, который зашел сюда в тестовых целях и просит за это извинения. Затем жмете кнопку "Submit". Эта форма оказалась демократичнее предыдущей и безропотно согласилась со всем, что я на ней отметил. Появившееся следом окно предупредило, что указанный мной Email адрес dev@null.com будет использован для передачи мне файла с лицензией, без которого я не смогу воспользоваться загруженной программой. Поэтому мне дается возможность одуматься и ввести нормальный email адрес. Текст ниже гласил, что если я им не верю, то могу, конечно, оставить все как есть. Впоследствии мне все равно придется изменить эту заглушку на правильный почтовый адрес. Короче говоря, мол, хватит баловаться давай реальный адрес. Ладно, говорю, и ввожу адрес специально созданного мной для таких регистраций почтового ящика. Он никак не участвует в моих обычных почтовых операциях. Когда мне нужно с него чего-либо получить, я захожу туда через web-интерфейс и каждый раз поражаюсь обилию скопившегося там "спама". Выбрав нужное мне письмо по заголовку, не глядя, стираю все оставшееся содержимое. Очень удобная практика, к слову, всячески ее вам рекомендую, а то развелось в последнее время в Интернете любителей информировать нас о новостях торговли. Так вот, указав этот свой "регистрационный" адрес, я нажал на кнопку продолжения. В результате я попал на страницу, содержащую прямые ссылки на нужные мне программы.
Первыми на этой странице перечислялись файлы, без которых работа Borland C#Builder считалась невозможной. К таким файлам относились:
Microsoft.NET Framework v1.1 Redistributable
Microsoft.NET SDK v1.1
Microsoft Internet Explorer 6 SP1
Microsoft SQL Server 2000 SP3
Все это богатство предлагалось скачать с сайта "Майкрософт". Помимо ссылок на "Майкрософт", рядом имелась ссылка на файл "Все в одном". В этом пакете все необходимые компоненты были собраны в один файл размером 206 Mb.
Все вышеперечисленное и так уже имелось в моей системе, поэтому я сразу перешел к той части страницы, где давались ссылки на сам нужный мне продукт. Нужный мне файл назывался "csb10_per_noncommercial.exe". Кроме него, рядышком предлагалось закачать еще и дополнительное программное обеспечение. К таковому относились Borland Star Team Personal Edition, насколько я понял это "омонстровевший" вариант былой небольшой программы Borland Team Source. Программа эта служит для поддержки разных версий ваших программ и облегчения работы группы разработчиков над одним проектом. "Омонстровевшей" я называю ее потому, что Team Source весила всего около одного мегабайта, а дистрибутив предлагаемого пакета имеет размер 116 Мегабайт. Я его сейчас, не торопясь, выкачиваю. Как закачаю — посмотрю, что там внутри, и расскажу вам.
Второй дополнительной программой, предлагаемой на этой странице, был движок баз данных Borland InterBase. Третья программа — опять-таки движок баз данных, на этот раз от фирмы "Майкрософт". Называется этот движок MSDE. По своей сути он является усеченной версией Microsoft SQL Server 2000, ориентированной на использование на одной локальной машине. Оттуда убрали весь интерфейс общения с пользователем, поддержку репликаций, и, таким образом, получилось нечто вроде широко известного пакета MySQL. "Майкрософт" позиционирует MSDE как замену морально устаревшему движку баз данных MDAC. На тот случай, если вы этого не знаете, MDAC встроен в любую современную версию Windows.
Оба этих движка баз данных у меня также уже имелись, поэтому, кроме самой среды разработки, я не стал что-либо закачивать с этой страницы. Вернувшись назад, я повторил всю операцию — к счастью, регистрироваться повторно не пришлось, — и поставил на закачку коммерческую Enterprise версию среды разработки.
Ну вот, в нашей работе возникла вынужденная пауза. Давайте пока откинемся на спинку кресла и изучим документацию. Она как раз к этому времени загрузилась из Интернета. Если вы помните, мы брали ее с главной страницы раздела Borland C# Builder. Давайте посмотрим, что же такого нам собирается предложить Borland.
Для начала требования к компьютеру, взял я их из документа, озаглавленного Borland C# Builder. System Requirements.
1) Intel Pentium II процессор с частотой 450 МГц (рекомендовано 900 МГц);
2) Microsoft Windows 2003, Microsoft Windows XP, Microsoft Windows 2000;
3) Оперативная память 128 Мбайт (рекомендовано 256 Мбайт);
4) 250 Мбайт на жестком диске в случае компактной установки и 700 Мб в качестве полной.
Как я вам могу это прокомментировать? Я не знаю, каким образом они умудрились насчитать столько места на диске. По всей видимости, "для кучи", посчитан объем всех сопутствующих компонентов Windows, если они еще заодно не посчитали и сам Windows. Забегая вперед, замечу, что персональная версия среды разработки занимает на диске около 70 Мбайт, а Enterprise — около 100 Мбайт. Откуда они взяли свои цифры, я просто не знаю. Требования к памяти мне тоже проанализировать сложно. На моей системе с 512 мегабайтами памяти все работает быстро и весело.
Покачав головой, я закрыл эту книгу сказок и открыл следующий документ, озаглавленный Borland C#Builder Technical Overview. Из этого документа я узнал, что с выходом данной среды разработки у программистов на платформе Net Framework наконец-то появился выбор IDE. Данная среда поддерживает полный цикл разработки программного проекта.
На русский язык это переводится так: То, что вы держите в руках, это не только компилятор плюс редактор, но и полноценная среда разработки. Среда имеет в своем составе интегрированный отладчик и, в духе последних веяний моды, встроенные средства проектирования будущего программного кода с помощью UML. Причем UML-проекты живут в ней не сами по себе, а интегрированы со средой выполнения самого C# Builder. Те из вас, кто имел дело с Borland Delphi 7, уже немного знакомы с этим механизмом. Помните, там еще закладка есть, на которой можно было рисовать блочные схемы? По всей видимости, это дальнейшее развитие этой технологии. Еще одним любопытным и оригинальным свойством этой среды разработки является поддержка платформы Java/J2EE и CORBA.
Помимо этого, среда интегрирована с широко известными серверами баз данных. В их число входят такие продукты, как Borland InterBase, Microsoft SQL Server, Oracle и IBM DB2. Для доступа к этим серверам программисты Borland, как я понял, написали собственные драйвера к ADO.NET. Хотя тут я, возможно, не прав, фраза в тексте позволяет себя толковать двояко.
Эта интеграция возможностей, в сумме, позволяет, не покидая пределов среды, пройти весь цикл создания программного обеспечения, от задумки идеи до ее воплощения. Кое-что ребята, правда, забыли — в составе их среды я не обнаружил какого-либо средства для создания инсталляторов конечного продукта. В Visual Studio он есть. Ну да ладно, не будем придираться, в конце концов, Wise Installer еще никто не отменял. Читаем дальше.
Дальше в документе приводилась сравнительная таблица возможностей входящих в те или иные разновидности их дистрибутивов. Всего таких разновидностей оказалось четыре штуки: Personal, Professional, Enterprise и Architect. Самой продвинутой редакцией является Architect, самой простой — бесплатный Personal. Разумеется, все возможности, присутствующие в более простой редакции, есть и в более продвинутых редакциях. Я вам расскажу сейчас об отличиях одной редакции от другой.
Редакция Architect отличается от всех остальных наличием возможности проектирования кода с помощью UML. В Enterprise- и Professional-редакциях имеется только механизм визуализации кода, называющийся Borland Together. Он позволяет посмотреть в любой момент времени UML-модель созданного вами кода. В персональной редакции и этой возможности нет.
Редакция Enterprise отличается от Professional наличием драйверов к вышеперечисленным серверам баз данных. Помимо этого, тем, кто ее купит, дается полная лицензия на разработку C# программ, интегрированных с уже имеющейся инфраструктурой CORBA и J2EE. Еще одна изюминка Enterprise — интеграция среды с широко распространенными системами контроля версий. В их число входит Borland Star Team, Microsoft Visual SourceSafe, Rational Clear Case и Concurrent Versions System (CVS).
Редакция Professional отличается от Personal наличием "улучшенных" ADO.NET драйверов для Borland InterBase и MSDE. Помимо этого, в нее также входит поддержка создания отчетов с помощью Crystal Report.
Ну вот, мы с вами плавно подошли и к самой простой, базовой редакции, называемой Personal Edition. Напомню, в такой комплектации пакет распространяется бесплатно, при условии того, что вы не будете создавать с его помощью коммерческие приложения. Давайте рассмотрим, что же именно нам предложит Borland "нахаляву".
1) Интегрированный компилятор C#.
Замечу, что возможность компиляции кода исходно присутствует в пакете Net Framework. Я не имею в виду возможность вызвать из командной строки компилятор. Само API компилятора является частью пространства имен Net Framework, и если вам зачем-то понадобилось откомпилировать в своей программе код C# или VB#, вы можете создать объект компилятора и дальше работать с его методами. По всей видимости, по этому пути и пошли разработчики Borland. А вот версии компилятора, работающей из командной строки, я в пакете не нашел.
2) Интегрированный отладчик.
До того момента, пока я не познакомился с приемами программирования, принятыми в среде Линукс, я считал наличие встроенного отладчика неотъемлемой частью любой современной среды разработки. По всей видимости, для менеджеров Borland во время их работы над средой Kylix стало открытием то, что в среде разработки может и не быть отладчика. Это открытие так на них повлияло, что они отметили в этом документе наличие отладчика как достоинство. А так — обычный, привычный по Delphi и Visual Studio отладчик, ничего особо нового я так, с ходу, не приметил. Вместе с тем не заметил, чтобы мне чего-либо не хватало.
3) Редактор с технологией Code Insight.
Эта технология предназначена для того, чтобы помогать вам создавать программный код. Она включает в себя подсказки имен классов и методов, после того как вы поставите точку после имени класса. Разные блоки кода можно сворачивать и разворачивать так, как это сделано в Visual Studio Net. Имеется в наличии подсветка парных скобок, подсказка параметров методов и дополнение кода. Имеется возможность создавать собственные "темплейты". Редактор поддерживает синтаксическую подсветку для разных языков программирования. Имеется возможность описывать собственные типы файлов и задавать им собственную подсветку.
4) Набор привычных по Delphi и Visual Studio "окошек".
В их число входит Project Manager, Object Inspector и Палитра компонентов. Выглядит последняя, правда, довольно своеобразно: по своему внешнему виду она ближе к Visual Studio, чем к Delphi, но разработчики Borland заменили стандартный вид, a la Outlook, на нечто цветастое и веселенькое — такие сворачивающиеся и разворачивающиеся закладки с широкими возможностями настройки. Их можно сделать вертикальными, горизонтальными, перекрасить в разные цвета и назначить иконки.
5) Среда интегрирована с пакетом NET Framework SDK.
Таким образом, C# Builder обладает всеми возможностями для построения XML веб-сервисов, Интернет-приложений Web-Forms, обычных приложений Windows Forms, а также консольных приложений, сервисов, утилит и компонентов. Это так в документе написано. От себя добавлю, что C#Builder еще и пользуется ее справочной системой. Любопытно, Visual Studio NET игнорирует справочный файл NET SDK и пользуется только MSDN. С#Builder игнорирует MSDN, но пользуется справочным файлом SDK. Нет гармонии в этом мире. Оба справочника ценны сами по себе, и мне лично хотелось бы иметь возможность работать с ними обоими.
6) Широкие возможности разработки веб-приложений ASP.NET.
В наличии HTML-редактор — "Что вижу, то и получу". Таскаете по формочке кнопочки — и получаете на выходе ASP.NET форму. Разумеется, никуда не делась возможность вручную править код, возможность тонко настраивать форматирование тэгов так, как вам хочется.
7) Поддерживается механизм ведения проектов. Причем есть возможность экспорта проекта Borland C#Builder в проект Visual Studio.
Что ж, на первый взгляд все неплохо. Давайте посмотрим, как все это богатство выглядит живьем. Ставить я решил версию Enterprise. Почему не Personal? Судя по описанию, возможности этого варианта среды мало востребованы широким кругом программистов. Вот я и решил поработать в Enterprise, пока trial-лицензия не закончится, а затем перейти на Personal. Почему-то мне кажется, особых отличий в работе я для себя не замечу. Так зачем связываться с более продвинутой версией и мучаться с ее регистрацией? Вот я и решил проверить это свое предположение. Что из этого получилось, читайте в следующей статье.
Ставим Borland C#Builder
Установка среды разработки проводилась на свежеустановленную операционную систему Windows XP Professional. Такой мой подход позволяет выявить зависимости устанавливаемого пакета от других приложений, уже установленных на моем компьютере.
С первой неочевидной проблемой при установке я столкнулся практически сразу. Винить в этом Borland, впрочем, не стоит — сам виноват. Заметив, что установщик (CSB1_ENT_TRIAL.EXE) первым делом развернул все свое содержимое в папку TEMP, я тут же прервал процесс установки. В дальнейшем мной планировалось записать дистрибутив пакета на компакт-диск. Поэтому, для того чтобы избежать в дальнейшем разворачивания файлов во временную папку, я решил записать дистрибутив на компакт-диск уже в распакованном виде.
Дистрибутив сравнительно небольшой: он без труда уместится на одной "болванке" вместе со всеми остальными файлами, доступными для загрузки на сайте Borland, даже в развернутом виде. Сказано — сделано.
Файл установщика развернулся в каталоге Temp в иерархию вложенных папок. Я переместил их все на другой диск, сохранив структуру каталогов. Говоря простым языком, просто взял и скопировал папку C:\Temp\Borland C#Builder 1.0 на диск E.
В корне этой папки обнаружился файл INSTALL.EXE. Недолго думая, я взял и запустил этот файл.
Выскочило красивое окно, в котором мне предлагалось выбрать нужное приложение для установки. Я выбрал Install Product. В следующем окне выбираю Borland C#Builder for Microsoft Net Framework и… появляется окошко, сообщающее мне, что пакетом не обнаружен некий файл "PREREQS.EXE", и мне необходимо вставить в CD-ROM следующий диск. Хм...
Я решил, что, по всей видимости, установщик не обнаружил необходимых для Borland C#Builder файлов .NET Framework. Ладно. Выхожу из установщика и устанавливаю самостоятельно следующие пакеты:
1) Microsoft .NET Framework version 1.1. (23 Мб).
2) Microsoft .NET Framework SDK version 1.1 (106 Мб).
3) Microsoft Visual J# Net Redistributable Package (7 Мб).
Все три пакета доступны к загрузке на сайте "Майкрософт". О том, что они потребуются для работы C#Builder, я выяснил еще на сайте Borland.
Запускаю install.exe опять… и опять получаю то же самое сообщение. Что-то здесь не так. Совершаю краткий вояж по вложенным папкам дистрибутива и в папке E:\Borland C#Builder 1.0\INSTALL натыкаюсь на искомый файл PREREQS.EXE. Причем рядышком с ним лежит файл, называющийся SETUP.EXE. Очень интересно. Запускаю его — и обнаруживаю второй вариант установщика. Этот установщик не такой шикарный, как предыдущий вариант, но, в отличие от него, свое дело делает исправно.
Несколько раз, нажав кнопку Next, я согласился с лицензией, выбрал Custom-установку и добрался до экрана выбора компонентов.
Подумав, выбрал все, что возможно. После этого пришлось соглашаться с лицензией на пакет Crystal Report и выбирать каталог установки. Следом выскакивает окошко с галочками, на котором вам предлагается выбрать дополнительные пакеты, не являющиеся частью среды разработки.
Enterprise-версия предлагает нам следующий выбор:
Пакет Component One Studio Enterprise for Borland C# Builder.
Набор из большого количества компонентов для Win Forms и ASP.NET. Под термином "компонент" я подразумеваю то, к чему мы все привыкли во времена Delphi. Этот набор компонентов, в основном, интерфейсных, размещается впоследствии на палитре в виде иконок. Вы их перетаскиваете на форму своего проекта и получаете готовую нужную вам функциональность. В комплект входят поля ввода, архиватор ZIP, проверка орфографии и тому подобные штуки. Есть довольно симпатичная таблица а-ля Excel (DataGrid), да и вообще много чего интересного.
Все бы хорошо, да одна незадача. Все это богатство, как и сама среда разработки, "триальное". Если вы используете их в своем проекте, то сразу после запуска скомпилированной вами программы выскакивает экран, сообщающий пользователю вашей программы о том, что вы использовали незарегистрированную версию пакета Component One по ознакомительной 30-дневной лицензии. Возможно, это еще не все сюрпризы, приготовленные нам разработчиками пакета компонентов. Я этого не проверял.
Воспользовавшись случаем, замечу, что на пиратских дисках мне уже попадался этот набор компонентов. Причем, если ничего не путаю, там еще и версия посвежее была. Так что кто ищет, тот всегда найдет. Сам я еще со времен Delphi стараюсь пользоваться только стандартным, входящим в IDE набором компонентов. Такой подход существенно облегчает мне переход на свежие версии среды разработки.
Wise OWL Demeanor Obfuscator
Утилита предназначена для защиты ваших скомпилированных программ от возможного взлома. Зашифровывает идентификаторы, убирает из кода ненужные для работы вашей программы метаданные и другими способами мешает злоумышленнику дизассемблировать и сломать вашу программу. "Ассемблер" (IL) в NET Framework — это достаточно высокоуровневый объектный язык. Поэтому для того, чтобы в нем разобраться, большого ума не надо — достаточно терпения. Да и документация по нему доступна любому желающему. Поэтому, если вы пишете на NET коммерческие программы и не желаете, чтобы кто-либо копался в их внутренностях, эта утилита может вам пригодиться.
Borland
Janewa
Насколько я понял документацию, это промежуточный слой (враппер) между средой NET Framework и приложениями J2EE и CORBA. Тут я вам не советчик, так как никогда не использовал в своем коде ни J2EE, ни CORBA.
Interbase Client
Тут все и так ясно. Клиент для доступа к родному для Borland движку баз данных. Если вы его не использовали раньше, то и не надо — в наличии есть SQL Server и MSDE. Если же вы приверженец Interbase, то и без меня знаете, что с этим клиентом делать.
CaliberRM IDE Plug-in
Средство для совместного ведения проектов. Облегчает, теоретически, совместную работу разработчиков программ, менеджеров и тестеров. Пока не смотрел, хотя заранее предчувствую, что это не та софтина, которая может понадобиться нашему разработчику программного обеспечения. По моим наблюдениям, все попытки различных организаций как-либо упорядочить процесс разработки программного обеспечения еще ни разу не заканчивались чем-то путным. Либо подобная задача становилась самоцелью, тормозящей сам процесс разработки, либо ее быстро забрасывали за полной никчемностью.
Ну да ладно, я опять отвлекся. Выбираете те пакеты, которые вас заинтересовали (меня лично ничто из вышеперечисленного не заинтересовало) и жмете Next. Каждый выбранный вами дополнительный пакет запускается из собственного установщика. Это натолкнуло меня на мысль поискать дистрибутивы этих пакетов внутри папок дистрибутива самого C#Builder. Мое предположение оказалось верным. Все вышеперечисленные пакеты не интегрированы внутрь дистрибутива, а лежат в отдельных папках. Вы можете при необходимости установить их отдельно на Personal-версию.
После того как отработают установщики всех выбранных вами пакетов, установка дистрибутива заканчивается. Настала пора регистрации. Если вы проходили регистрацию на сайте Borland (я вам рассказывал о ней в предыдущей статье — КГ №32), то должны были получить на свой e-mail-адрес письмо с прикрепленным к нему текстовым файлом. Копируете полученный по e-mail текстовый файл REG351.txt в папку C:\Documents and Setting\<ваша домашняя папка>. Говоря простыми словами — в корень вашей домашней папки Windows. После того как вы скопируете файл, вы можете запускать среду разработки, щелкнув по иконке C#Builder.
Первые впечатления
После того как программа запустится, вы оказываетесь в рабочей среде, очень похожей на привычную Visual Studio. Как нам и обещали в документации, в наличии имеются окна Project Manager, Object Inspector и Tool Palette. Даже в центральной части экрана при первом запуске оказывается знакомая Welcome Page.
Похоже, разработчики Borland приложили максимум усилий для того, чтобы сделать переход на новую среду программистов, привыкших к Visual Studio, наиболее легким и безболезненным. Если же вы приверженец Delphi, то можете одним кликом мыши превратить среду в практически полное ее подобие. Для этого необходимо в меню View -> Desktops указать, что вы предпочитаете стиль "Classic Undocked".
Из любопытства я посмотрел на отладочный вариант рабочей среды. Этот стиль можно включить в том же меню View -> Desktops. Этот вид адаптирован для отладки вашего кода, среда самостоятельно на него переключается в тот момент, когда вы начинаете отладку своего приложения. На экране появились знакомые окна Call stack, Watch List, Local Variables и Thread Status. Ну что ж, на первый взгляд, уже все неплохо. Мы явно имеем на руках полноценную среду разработки, а не очередной "редактор с подсветкой синтаксиса", которых много расплодилось в последнее время.
Меню создания нового проекта
Меню File -> New порадовало меня четырьмя типами проектов: ASP.Net Application, С# Application, С# Class Library и C# Component Library. Ниже располагаются пункты меню Other и Customize.
Первый пункт запускает хорошо знакомое всем пользователям Visual Studio окно выбора типа нового файла. Полазив по ним, я к своему огромному удивлению обнаружил в разделе Other Files такие типы, как VB.NET Application и прочие варианты проектов, связанных с языком Visual Basic NET. Разумеется, я тут же попробовал создать и скомпилировать VB.NET-приложение. Оно удачно создалось, скомпилировалось и запустилось. Так что эта версия C#Builder, помимо C#, поддерживает и проекты на VB.Net. Сюрприз!
Второй пункт меню Customize предназначен для подстройки под ваши нужды раздела меню выбора нового проекта. Вы можете добавить к уже имеющимся трем проектам еще и другие типы файлов, перечисленных в Other Files. Так, я сам добавил к типам проекта, доступным сразу после открытия File -> New, еще и вновь обнаруженный тип проекта VB.NET Application.
Редактор кода и дизайнер форм
Давайте попробуем создать приложение C#. Говорим, что хотим создать проект C# Application. Первое, что сразу меня удивило, — это очень высокая скорость работы C#Builder по сравнению с Visual Studio. Окна нового проекта прорисовались передо мной практически мгновенно. Дизайнер формы внешне очень сильно напоминает тот, который входит в состав Visual Studio. Исключение составляют лишь кнопки на специальной панели, предназначенные для выравнивания компонентов на форме и между собой. В Visual Studio таких кнопок нет. Внизу расположены две закладки. С их помощью вы можете переключаться между дизайнером и окном редактора кода. Мне лично этот подход показался более удобным, чем тот, который принят в Visual Studio. Напомню: в этой среде окна дизайнера форм и окна с кодом не связаны между собой.
Щелчок по брошенному на форму компоненту приводит к автоматической генерации кода процедуры обработки щелчка по этому компоненту. После того как процедура будет автоматически создана, вы переключаетесь в редактор кода для ее модификации. В этом функциональность C#Builder копирует поведение Visual Studio.
Да и вообще, создавая редактор кода, Borland постаралась создать максимальное подобие среды разработки от фирмы "Майкрософт". Редактор имеет возможность сворачивать и разворачивать блоки кода ("плюсики"). Точно так же, набрав название объекта (или пространства имен) и поставив точку, вы получаете возможность выбрать нужный метод или нужное свойство из выпадающего списка. Основное отличие, сразу бросившееся в глаза, — это отсутствие обилия всевозможных мастеров, встроенных в Visual Studio. К примеру, нет мастера, автоматически создающего конструктор для нового класса. Зато в C#Builder палитра компонентов при переходе в режим редактирования кода самостоятельно заменяет свое содержимое на окно, называемое Code Snippets. Так в Borland обозвали заготовки кусков кода, которые вы можете перетащить с палитры прямо в редактор с помощью мыши. После того как вы это сделаете, в ваш код добавится текст этой заготовки. Я долго пытал среду, пытаясь отредактировать эти "Snippets", но штатного способа так и не обнаружил. С другой стороны, все их содержимое хранится в XML-файле, который вы легко можете отредактировать по своему вкусу. Находится он в каталоге C:\Program Files\ Borland\ BDS\ 1.0\Objrepos и называется CodeSnippets.xml.
Палитра компонентов
Палитра компонентов смотрится довольно-таки своеобразно. Общая идеология расположения элементов взята от Visual Studio, но оформлена палитра совершенно по-другому. Закладки — контейнеры компонентов покрашены в веселенькие цвета, каждая в свой собственный. Вы можете их сворачивать в одну строку для экономии места или разворачивать так, чтобы было доступно их содержимое.
С помощью выпадающего списка, расположенного сверху закладок, можно быстро переместиться на ту, которая вам необходима. Помимо этого списка, предусмотрено поле быстрого поиска нужного вам компонента. По мере того, как вы набираете его название, закладки внизу фильтруются по тем буквам, которые вы уже успели набрать. Так, для примера, если вы набрали в этом поле "Li", то на единственной закладке останутся только Link Label, List Box и List View. Все остальные компоненты будут спрятаны. За счет этого механизма вы сможете быстро найти нужный элемент, даже в том случае, если точно не помните, как он полностью называется.
Панель имеет контекстное меню, вызываемое правой кнопкой мыши. С его помощью вы можете изменить внешний вид как всех закладок в целом, так и каждой по отдельности. С помощью этого меню можно также добавить на закладку или убрать с нее новые компоненты. Для того чтобы скрыть неугодный вам компонент, достаточно выбрать его с помощью первой кнопки мыши, а затем выбрать в контекстном меню Hide <имя того, что вы удаляете>. Помимо удаления отдельных компонентов, можно удалять или создавать целые закладки. Для этого в меню есть соответствующие пункты.
Для того, чтобы добавить компонент в палитру, обратитесь к пункту контекстного меню Installed .NET Component. После того как вы вызовете этот пункт меню (он также доступен в главном меню Component -> Installed .NET Component) перед вами появится всплывающее окно, поделенное на три закладки. На первой перечислены все сборки NET Framework, установленные на вашем компьютере. Если нужная вам сборка в этом списке отсутствует (например, вы создали ее сами и не стали помещать в глобальный кэш), вы можете добавить ее на панель с помощью кнопки Select Assembly, расположенной под списком имеющихся сборок. Вам будет предложено указать файл DLL, в котором хранится нужный вам компонент. После этого ваш компонент будет добавлен к общему списку, и вы, поставив напротив него галочку, сможете поместить его в палитру компонентов. К слову, в этом же окне можно удалить с палитры ненужные вам компоненты. Достаточно просто снять с него галочку.
На второй закладке перечислены все ActiveX-компоненты, зарегистрированные в вашей системе. Теоретически вы точно так же сможете их поместить на палитру компонентов, но мне это так и не удалось. Точнее, на палитру-то они помещаются без какого-либо труда, а вот при попытке перенести их с палитры на форму среда выдает окно с ошибкой. Мол, этот ActiveX-элемент неправильно зарегистрирован в системе. Вероятнее всего, я просто что-то делаю не так, или же я наступил на первый глюк.
Среда Visual Studio добавляет на свой Toolbox эти же самые ActiveX-компоненты без каких-либо проблем. Надо будет потом документацию почитать. Я как истинный программист занимаюсь этим в самую последнюю очередь, если уж совсем ничего не помогло.
Третья закладка предназначена для того, чтобы вы могли с ее помощью задать пути к вашим или системным сборкам.
Окно Project Manager ничем особенно не отличается от подобного окна в Visual Studio NET. Так же, как и там, оно предназначено для манипуляции файлами, входящими в ваш проект. Вы видите в виде дерева, какие файлы задействованы в вашем проекте, и можете удалить ненужные или, напротив, добавить необходимые.
Окно Data Explorer также немногим отличается от аналогичного окна Visual Studio. С его помощью можно манипулировать данными, хранящимися как на локальных, так и на удаленных серверах баз данных. Список поддерживаемых серверов я приводил в первой части статьи.
Окно Model View повергло меня в легкое недоумение. В этом окне приводится в виде дерева список всех компонентов, расположенных на вашей форме. Если вы щелкаете мышкой по разным "веткам" этого дерева, окно редактора устанавливается на выбранный вами элемент. Также с его помощью можно построить диаграмму всех элементов вашего кода. Впрочем, "диаграмма" — это неправильный термин. Под ним Borland подразумевает просто разложенные по категориям элементы. Зачем все это нужно, я так с места не понял. Наверно, это хорошо, но, вместе с тем, глубокого смысла в этом режиме я так и не уловил.
Следующее рассматриваемое окно называется Object Explorer. Предназначено оно для отображения свойств и событий компонентов, которые установлены на вашу форму. Окно умеет сортироваться как по категориям — к примеру, все, что отвечает за внешний вид компонента, объединено в один блок, открываемый и закрываемый "плюсиком", — так и просто по алфавиту. Окно состоит из двух закладок: на первой перечислены все свойства компонента, а на второй — связанные с ним события. Подобное окно имеется как в Delphi, так и в Visual Studio, причем выглядит оно и там, и там примерно одинаково.
Вот мы с вами, галопом, и пробежались по внешнему виду и возможностям этой новой среды разработки. Как я и предполагал, для большинства программистов будет вполне достаточно и бесплатной "персональной" версии пакета. Среда Borland C#Builder проигрывает по удобству работы Visual Studio, но далеко обходит ее по скорости работы и объему места, требующегося для установки. Безусловно, она найдет своих преданных поклонников в среде программистов, пишущих на C#. Начинающему же программисту я бы все-таки посоветовал использовать Visual Studio. В ней лучше реализован справочник (MSDN) и больше мастеров, облегчающих на первых порах работу с языком программирования, который вы еще недостаточно хорошо знаете.
Герман Иванов "Компьютерная газета"
|