diff options
Diffstat (limited to 'tde-i18n-ru/docs/tdevelop/tdevelop/applicationwizard.docbook')
-rw-r--r-- | tde-i18n-ru/docs/tdevelop/tdevelop/applicationwizard.docbook | 1320 |
1 files changed, 1320 insertions, 0 deletions
diff --git a/tde-i18n-ru/docs/tdevelop/tdevelop/applicationwizard.docbook b/tde-i18n-ru/docs/tdevelop/tdevelop/applicationwizard.docbook new file mode 100644 index 00000000000..f311842384e --- /dev/null +++ b/tde-i18n-ru/docs/tdevelop/tdevelop/applicationwizard.docbook @@ -0,0 +1,1320 @@ +<chapter id="applicationwizard"> + +<chapterinfo> + <authorgroup> + <author +><firstname +>Bernd</firstname +><surname +>Pol</surname +></author> + <!-- ROLES_OF_TRANSLATORS --> + </authorgroup> +</chapterinfo> + +<title +>Начало работы — создание проекта</title> +<!-- FIXME (bp, 2006-06-18) This is a misnomer. It should be something like --> +<!-- Working With Projects --> +<!-- featuring the application manager as part of the New Projects section. --> + +<indexterm zone="applicationwizard"> + <primary +>Создание проекта</primary +></indexterm> + +<para +>В &tdevelop; разработка программного обеспечения организована в рамках <emphasis +>проектов</emphasis +>. Проект содержит всё, что относится к данному задаче программирования: файлы исходного кода, файлы данных, средства управления, в том числе система сборки, доступ ко всем компонентам и к любым дополнительным инструментам. Словом всё, что нужно для получения реально работающей программы. </para> +<para +>Такая организация позволяет легко переключаться между независимыми задачами. Это очень удобно, если вы работаете над несколькими приложениями одновременно, что бывает очень часто. Откройте проект в &tdevelop; и вы сразу сможете продолжить работу над ним с того места, где остановились в прошлый раз. </para> + +<sect1 id="new-projects"> +<title +>Новые проекты</title> + +<!-- TODO (bp, 2006-06-18) This whole section must be completely rewritten. --> +<!-- There is no need for a tutorial habit anymore. --> + +<indexterm zone="new-projects"> + <primary +>проект</primary> + <secondary +>новый</secondary +></indexterm> + +<para +>При создании нового проекта нужно выполнить множество формальных процедур: указать структуру папок проекта, создать базовые заголовочные файлы и файлы реализации, осуществить первоначальную настройку сборочной системы и так далее. </para> +<para +>&tdevelop; обеспечивает простой способ создания нового проекта — <emphasis +>Мастер создания нового проекта</emphasis +>. Его можно запустить из меню <menuchoice +><guimenu +>Проект</guimenu +><guimenuitem +>Создать проект</guimenuitem +></menuchoice +>. </para> +<para +>Мастер проекта значительно упрощает и автоматизирует создание нового проекта: </para> +<orderedlist> + <listitem +><para +>На первом этапе вы можете использовать один из предлагаемых шаблонов проектов. </para +></listitem> + <listitem +><para +>Там же необходимо указать некоторую <link linkend="new-projects-start-general" +> общую информацию</link +> по проекту: названия приложения, его размещения и так далее. </para +></listitem> + <listitem +><para +>На следующем шаге решите, будете ли вы использовать <link linkend="new-projects-start-cvs" +>систему контроля версий</link +>, такую, как например, CVS, и, если будете, укажите необходимые данные. </para +></listitem> + <listitem +><para +>Выберите шаблоны для <link linkend="new-projects-start-templates" +>заголовочных файлов и файлов реализации</link +> (если есть). </para +></listitem> + <listitem +><para +>Теперь осталось <link linkend="new-projects-start-build" +>сгенерировать начальные файлы</link +>, структуру папок, начальные заголовочные файлы, файлы реализации и служебные файлы для управления проектом, например каркас для make. </para +></listitem> +</orderedlist> +<para +>И это всё! Теперь у вас есть база для начала продуктивной работы. </para> +<para +>А теперь рассмотрим это более подробно... </para> + +<sect2 id="new-projects-start"> +<title +>Начальные шаги</title> + +<indexterm zone="new-projects-start"> + <primary +>диалог</primary> + <secondary +>Новый проект</secondary +></indexterm> +<indexterm zone="new-projects-start"> + <primary +>проект</primary> + <secondary +>Новый проект</secondary> + <tertiary +>диалог</tertiary +></indexterm> +<indexterm zone="new-projects-start"> + <primary +>проект</primary> + <secondary +>шаблоны</secondary +></indexterm> +<indexterm zone="new-projects-start"> + <primary +>шаблоны</primary> + <secondary +>проект</secondary +></indexterm> + +<para +>Чтобы создать новый проект, выберите пункт <guimenuitem +>Создать проект</guimenuitem +> из меню <guimenu +>Проект</guimenu +>: </para> + +<screenshot id="screenshot-newprojectwizard"> + <mediaobject> + <imageobject> + <imagedata fileref="create-new-project.png" format="PNG"/> + </imageobject> + <caption +><para +>Начало создания проекта </para +></caption> + </mediaobject> +</screenshot> + +<para +>Диалог разделён на две части. В верхней вы можете выбрать язык программирования, который будет использоваться для написания программы, нижняя служит для ввода некоторой общей информации. </para> + +<sect3 id="new-projects-start-type"> +<title +>Выбор языка программирования и типа приложения</title> + +<indexterm zone="new-projects-start-type"> + <primary +>проект</primary> + <secondary +>тип приложения</secondary +></indexterm> +<indexterm zone="new-projects-start-type"> + <primary +>проект</primary> + <secondary +>язык программирования</secondary +></indexterm> +<indexterm zone="new-projects-start-type"> + <primary +>проект</primary> + <secondary +>язык</secondary +></indexterm> +<indexterm zone="new-projects-start-type"> + <primary +>язык</primary +></indexterm> +<indexterm zone="new-projects-start-type"> + <primary +>язык программирования</primary +></indexterm> +<indexterm zone="new-projects-start-type"> + <primary +>приложение</primary> + <secondary +>тип</secondary +></indexterm> + +<para +>Слева вверху находится список доступных языков программирования, например: </para> + +<itemizedlist> + <listitem +><para +>C++ <indexterm> + <primary +>C++</primary> + <secondary +>новый проект</secondary +></indexterm> + </para +></listitem> + <listitem +><para +>C <indexterm> + <primary +>C</primary> + <secondary +>новый проект</secondary +></indexterm> + </para +></listitem> + <listitem +><para +>C++ <indexterm> + <primary +>C++</primary> + <secondary +>новый проект</secondary +></indexterm> + </para +></listitem> + <listitem +><para +>База данных (проекты на SQL) <indexterm> + <primary +>SQL</primary> + <secondary +>новый проект</secondary +></indexterm> + <indexterm> + <primary +>База данных</primary> + <secondary +>новый проект</secondary +></indexterm> + </para +></listitem> + <listitem +><para +>Fortran <indexterm> + <primary +>Fortran</primary> + <secondary +>новый проект</secondary +></indexterm> + </para +></listitem> + <listitem +><para +>Haskell <indexterm> + <primary +>Haskell</primary> + <secondary +>новый проект</secondary +></indexterm> + </para +></listitem> + <listitem +><para +>Java <indexterm> + <primary +>Java</primary> + <secondary +>новый проект</secondary +></indexterm> + </para +></listitem> + <listitem +><para +>PHP <indexterm> + <primary +>PHP</primary> + <secondary +>новый проект</secondary +></indexterm> + </para +></listitem> + <listitem +><para +>Pascal <indexterm> + <primary +>Pascal</primary> + <secondary +>новый проект</secondary +></indexterm> + </para +></listitem> + <listitem +><para +>Perl <indexterm> + <primary +>Perl</primary> + <secondary +>новый проект</secondary +></indexterm> + </para +></listitem> + <listitem +><para +>Python <indexterm> + <primary +>Python</primary> + <secondary +>новый проект</secondary +></indexterm> + </para +></listitem> + <listitem +><para +>Ruby <indexterm> + <primary +>Ruby</primary> + <secondary +>новый проект</secondary +></indexterm> + </para +></listitem> + <listitem +><para +>Оболочка (скрипты на Bash) <indexterm> + <primary +>Bash</primary> + <secondary +>новый проект</secondary +></indexterm> + <indexterm> + <primary +>оболочка</primary> + <secondary +>новый проект</secondary +></indexterm> + </para +></listitem> +</itemizedlist> + +<para +>Эти папки не содержат собственно средств языка, в них располагаются только <emphasis +>шаблоны</emphasis +> новых проектов, то есть отправная точка для начала разработки на том или другом языке. Если вы раскроете все папки, то увидите множество отдельных шаблонов в зависимости от типа поставленной задачи и сферы применения. </para> +<para +>При выборе шаблона в правой части окна показывается его <emphasis +>краткое описание</emphasis +> и <emphasis +>снимок экрана</emphasis +> главного окна приложения, основанного на выбранном шаблоне. </para> +<para +>Выберите шаблон, наиболее точно отвечающий вашим целям. Затем введите общую информацию, как описано ниже. </para> + +<formalpara> +<title +>Выбор системы управления проектом</title> +<para +>Каждый шаблон привязан к определённой <link linkend="makesystems" +>системе управления проектом</link +>. </para> +</formalpara> + +</sect3 +> <!-- new-projects-start-type --> + +<sect3 id="new-projects-start-general"> +<title +>Указание общей информации</title> + +<indexterm zone="new-projects-start-general"> + <primary +>проект</primary> + <secondary +>свойства</secondary +></indexterm> +<indexterm zone="new-projects-start-general"> + <primary +>свойства</primary +></indexterm> +<indexterm zone="new-projects-start-general"> + <primary +>приложение</primary> + <secondary +>имя</secondary +></indexterm> +<indexterm zone="new-projects-start-general"> + <primary +>имя</primary> + <secondary +>приложение</secondary +></indexterm> +<indexterm zone="new-projects-start-general"> + <primary +>проект</primary> + <secondary +>папка</secondary +></indexterm> +<indexterm zone="new-projects-start-general"> + <primary +>папка</primary> + <secondary +>проект</secondary +></indexterm> +<indexterm zone="new-projects-start-general"> + <primary +>Расположение</primary> + <secondary +>новый проект</secondary +></indexterm> +<indexterm zone="new-projects-start-general"> + <primary +>проект</primary> + <secondary +>автор</secondary +></indexterm> +<indexterm zone="new-projects-start-general"> + <primary +>проект</primary> + <secondary +>электронная почта</secondary +></indexterm> +<indexterm zone="new-projects-start-general"> + <primary +>автор</primary +></indexterm> +<indexterm zone="new-projects-start-general"> + <primary +>электронная почта</primary +></indexterm> +<indexterm zone="new-projects-start-general"> + <primary +>проект</primary> + <secondary +>main.cpp</secondary +></indexterm> +<indexterm zone="new-projects-start-general"> + <primary +>main.cpp</primary +></indexterm> +<indexterm zone="new-projects-start-general"> + <primary +>проект</primary> + <secondary +>лицензия</secondary +></indexterm> +<indexterm zone="new-projects-start-general"> + <primary +>лицензия</primary +></indexterm> + +<para +>В нижнем разделе <guilabel +>Свойства</guilabel +> диалога <guilabel +>Новый проект</guilabel +> можно указать его <guilabel +>свойства</guilabel +> — данные для построения структуры проекта. </para> +<formalpara> +<title +>Имя приложения</title> +<para +>Введите его в верхнее поле <guilabel +>свойств</guilabel +> с соответствующим названием. В нашем примере это <quote +>MyApp</quote +>. </para> +</formalpara> +<para +>Обратите внимание, что в имени разрешается использовать только такие символы: <itemizedlist> + <listitem +><para +>английские буквы в нижнем и верхнем регистрах</para +></listitem> + <listitem +><para +>цифры</para +></listitem> + <listitem +><para +>символ подчёркивания</para +></listitem> +</itemizedlist> +</para> +<para +>Эти ограничения установлены в связи с тем, что указанное имя будет использовано для <emphasis +>именования некоторых классов</emphasis +> в создаваемом проекте. Поэтому ограничения на имя приложения отражают ограничения на именование переменных в языках программирования. </para> +<formalpara> +<title +>Конечное расположение</title> +<para +>Также имя приложения будет использовано при формировании <guilabel +>конечного расположения</guilabel +> создаваемого проекта. </para> +</formalpara> +<para +>Имя приложения переводится в нижний регистр и добавляется к указанному расположению. </para> +<para +>Если сформированный по имени приложения путь уже существует, кнопка <guibutton +>Далее ></guibutton +> будет неактивна (серого цвета) и мастер известит вас об этом ещё и сообщением. </para> + +<formalpara> +<title +>Конечное расположение</title> +<para +>Есть два способа выбрать другой каталог для вашего приложения — указать другое имя или изменить расположение проектов. </para> +</formalpara> +<para +>Второй вариант можно осуществить во втором поле <guilabel +>свойств</guilabel +> с названием <guilabel +>Расположение</guilabel +>. Здесь вы должны ввести <emphasis +>путь к каталогу</emphasis +>, в котором будет создан подкаталог с именем проекта (в котором, в свою очередь, будут созданы другие подкаталоги разработки). Полный путь к проекту будет показан в поле <guilabel +>Конечное расположение</guilabel +>. </para> +<para +>При открытии диалога поле <guilabel +>Расположение</guilabel +> заполняется автоматически. Значение для него берётся из поля <guilabel +>Каталог проектов по умолчанию:</guilabel +> в <link linkend="setup-general" +>главном разделе диалога настройки KDevelop</link +>. В нашем случае в качестве основного пути для новых проектов используется каталог <filename class="directory" +>/home/devel/projects/</filename +>. </para> +<para +>Убедитесь что каталог проекта, указанный в поле <guilabel +>Конечное расположение</guilabel +> не существует в вашей файловой системе. </para> +<!--TODO add tab description Project Options --> +<note +><para +>Однако путь, указанный в поле <guilabel +>Расположение</guilabel +> должен существовать. Если это не так, мастер создания проекта сообщит об этом добавлением <quote +>(неверно)</quote +> в строку <guilabel +>Конечное расположение</guilabel +>. </para +></note> + +<screenshot id="screenshot-createnewprojectoptions"> + <mediaobject> + <imageobject> + <imagedata fileref="createnewprojectoptions.png" format="PNG"/> + </imageobject> + <caption +><para +>Настройка CVS для создаваемого проекта </para +></caption> + </mediaobject> +</screenshot> + +<formalpara> +<title +>Параметры проекта</title> +<para +>Данные, которые показываются на втором шаге, не являются критичными для проекта. Просто укажите ваше имя (то есть имя автора программы, к которому можно будет обращаться по поводу её работы и развития) в поле <guilabel +>Автор</guilabel +> и правильный адрес электронной почты в поле <guilabel +>Электронная почта</guilabel +> чтобы пользователи программы могли поддерживать с вами связь. </para> +</formalpara> + +<note> +<orderedlist> + <listitem +><para +>Мастер постарается заполнить их значениями, взятыми из соответствующих разделов Центра управления KDE. </para +></listitem> + <listitem +><para +>Эта информация будет встроена в шаблоны программных файлов. Например, для программ &kde; C++ вы сможете найти её в начале файла <filename +>main.cpp</filename +>. </para +></listitem> + <listitem +><para +>Из всех полей, <emphasis +>необязательным</emphasis +> является <guilabel +>Электронная почта</guilabel +>, так как не все разработчики могут иметь доступ в Интернет. </para +></listitem> +</orderedlist> +</note> + +<formalpara> +<title +>Версия и лицензия</title> +<para +>Введите номер версии, с которого нужно начать, и лицензию, в соответствии с которой вы хотите распространять ваше приложение. </para> +</formalpara> + +<para +>Если вы выбрали тип приложения (например, C или C++), к которому существуют шаблоны программных файлов, на следующих этапах вы можете увидеть уведомление о лицензии в (см. раздел «<link linkend="new-projects-start-templates" +>Шаблоны программных файлов</link +>»). </para> +<para +>Если вы выбрали <quote +>другую</quote +> <guilabel +>лицензию</guilabel +>, вам нужно будет ввести её текст самостоятельно. </para> + +<note +><para +>Информация о версии и используемой лицензии также будет встроена в шаблоны программных файлов, в форме, удобной для изменения. </para +></note> + +<para +>Нажмите кнопку <guibutton +>Далее ></guibutton +>. </para> +</sect3 +> <!-- new-projects-start-general --> + +</sect2 +> <!-- new-projects-start --> + +<sect2 id="new-projects-start-cvs"> +<title +>Система управления версиями</title> + +<indexterm zone="new-projects-start-cvs"> + <primary +>CVS</primary> + <secondary +>новый проект</secondary +></indexterm> +<indexterm zone="new-projects-start-cvs"> + <primary +>проект</primary> + <secondary +>CVS</secondary +></indexterm> +<indexterm zone="new-projects-start-cvs"> + <primary +>база данных</primary> + <secondary +>CVS</secondary +></indexterm> +<indexterm zone="new-projects-start-cvs"> + <primary +>версия</primary> + <secondary +>база данных</secondary +></indexterm> +<indexterm zone="new-projects-start-cvs"> + <primary +>версия</primary> + <secondary +>CVS</secondary +></indexterm> + +<para +>Здесь вы можете выбрать <guilabel +>систему контроля версий</guilabel +>. </para> + +<note +><para +>Здесь всё зависит от проекта, подробности о &CVS; вы можете найти в главе <link linkend="cvs" +>Использование &CVS;</link +>. </para +></note> + +<formalpara> +<title +>Система контроля версий не нужна</title> +<para +>По умолчанию <guilabel +>Система контроля версий</guilabel +> для проекта <guilabel +>Не используется</guilabel +>. Если вы не хотите использовать эту функцию, просто нажмите <guibutton +>Далее ></guibutton +>. </para> +</formalpara> + +<formalpara> +<title +>Использование &CVS;</title> +<para +>В нашем примере мы используем <quote +>&CVS;</quote +>. Если вы выберете эту систему контроля версий, будут показаны поля, которые нужно заполнить. </para> +</formalpara> + +<screenshot id="screenshot-newproject-cvs"> + <mediaobject> + <imageobject> + <imagedata fileref="create-new-project-cvs.png" format="PNG"/> + </imageobject> + <caption +><para +>Настройка CVS для создаваемого проекта </para +></caption> + </mediaobject> +</screenshot> + +<para +>Система контроля версий, такая как &CVS; (<quote +>Concurrent Versions System</quote +>, система конкурирующих версий) записывает копии файлов проекта в некоторое подобие базы данных. В &CVS; вы можете передать файлы (<quote +>commit</quote +>) в репозиторий или загрузить их обратно (<quote +>checkout</quote +>или <quote +>update</quote +>). Особенностью системы контроля версий является структурный метод хранения файлов, который всегда позволяет вернуться к более раннему состоянию разработки, если вы допустили неисправимые ошибки. &CVS; также позволяет сотрудничать нескольким разработчикам в большом проекте (как &tdevelop;), не вмешиваясь в работу друг друга. </para> + +<indexterm zone="new-projects-start-cvs-root"> + <primary +>CVS</primary> + <secondary +>репозиторий</secondary +></indexterm> +<indexterm zone="new-projects-start-cvs-root"> + <primary +>репозиторий</primary> + <secondary +>CVS</secondary +></indexterm> +<indexterm zone="new-projects-start-cvs-root"> + <primary +>CVS</primary> + <secondary +>локальный</secondary +></indexterm> +<indexterm zone="new-projects-start-cvs-root"> + <primary +>CVS</primary> + <secondary +>удалённый</secondary +></indexterm> +<indexterm zone="new-projects-start-cvs-root"> + <primary +>локальный репозиторий CVS</primary +></indexterm> +<indexterm zone="new-projects-start-cvs-root"> + <primary +>:local:</primary +></indexterm> +<indexterm zone="new-projects-start-cvs-root"> + <primary +>CVS</primary> + <secondary +>:local:</secondary +></indexterm> + +<formalpara id="new-projects-start-cvs-root"> +<title +>Локальный репозиторий &CVS;</title> +<para +>&CVS; ведёт собственную базу данных версий файлов, которая хранится в так называемом <emphasis +>корне &CVS;</emphasis +>. Вам нужно будет указать путь к корню &CVS;, если вы хотите использовать эту систему управления версиями. </para> +</formalpara> + +<para +><emphasis +>Расположение локального &CVS;.</emphasis +> Если вы разрабатываете программу самостоятельно, использование &CVS; локально пригодится как удобная система резервного копирования. Обычно она располагается в вашем домашнем каталоге под именем <filename +>cvsroot</filename +>: </para> +<para +><userinput +><filename class="directory" +>/home/devel/cvsroot</filename +></userinput +> (где <filename +>devel</filename +> — имя пользователя в системе) </para> + +<note +><para +>Это краткая форма — на самом деле, перед ней должна быть приставка <computeroutput +>:local:</computeroutput +>. Использование краткой формы разрешено только если она начинается со слэша (<computeroutput +>/</computeroutput +>). То есть полный адрес корня локального &CVS; будет выглядеть так: <filename class="directory" +>:local:/home/devel/cvsroot</filename +>. </para +></note> + +<para +>Введите путь к корню &CVS;. </para> +<para +><emphasis +>Создание локального корня &CVS;.</emphasis +> Если локальный корень &CVS; не существует, &tdevelop; может изменить это с помощью команды &CVS;. Для этого нажмите кнопку <guibutton +>Создать локальный репозиторий</guibutton +>. </para> +<note +><para +>&tdevelop; только <emphasis +>передаёт команды</emphasis +> системе &CVS; на создание репозитория, не делая ничего самостоятельно. К счастью, &CVS; продуман достаточно хорошо, и, перед созданием нового репозитория &CVS; в указанном вами каталоге, проверяет наличие в нём уже существующего корня &CVS; в нём. </para +></note> + +<para +><emphasis +>Удалённый &CVS;.</emphasis +>Возможно вы захотите расположить репозиторий на удалённом сервере, особенно если над проектом работает несколько разработчиков. Тогда введите <acronym +>URL</acronym +> репозитория &CVS; в поле <guilabel +>Репозиторий</guilabel +>. Например, чтобы подключиться к серверу &CVS; &kde;: </para> +<para +><userinput +><filename class="directory" +>:pserver:<replaceable +>mylogin</replaceable +>@cvs.kde.org:/home/kde</filename +></userinput +>, где <replaceable +>mylogin</replaceable +> соответствует имени регистрации вашей учётной записи &CVS; в репозитории &kde;. </para> + +<indexterm zone="new-projects-start-cvs-remote"> + <primary +>удалённый репозиторий</primary +></indexterm> +<indexterm zone="new-projects-start-cvs-remote"> + <primary +>:pserver:</primary +></indexterm> +<indexterm zone="new-projects-start-cvs-remote"> + <primary +>:ext:</primary +></indexterm> +<indexterm zone="new-projects-start-cvs-remote"> + <primary +>CVS</primary> + <secondary +>:local:</secondary +></indexterm> +<indexterm zone="new-projects-start-cvs-remote"> + <primary +>CVS</primary> + <secondary +>:pserver:</secondary +></indexterm> +<indexterm zone="new-projects-start-cvs-remote"> + <primary +>CVS</primary> + <secondary +>:ext:</secondary +></indexterm> + +<formalpara id="new-projects-start-cvs-remote"> +<title +>Виды удалённых серверов &CVS;</title> +<para +>Есть два типа удалённых серверов &CVS;: это <emphasis +>pserver</emphasis +>, использующий авторизацию без шифрования, и <emphasis +>ext</emphasis +>, в котором доступно шифрование <acronym +>rsh</acronym +> или <acronym +>ssh</acronym +>. Они различаются по приставке в <acronym +>URL</acronym +>: </para> +</formalpara> +<para> +<filename +>:pserver:</filename> +</para> +<para +>для <quote +>password protected server</quote +> (сервера, защищённого паролем) без шифрования и </para> +<para> +<filename +>:ext:</filename> +</para> +<para +>для сервера, поддерживающего шифрование <acronym +>rsh</acronym +> или <acronym +>ssh</acronym +>. Например: </para> +<para> +<userinput +><filename class="directory" +>:ext:<replaceable +>mylogin</replaceable +>@cvs.cervisia.sourceforge.net:/cvsroot/cervisia</filename +></userinput> +</para> +<para +>позволит получить доступ к исходному коду <application +>Cervisia</application +>, программы работы с &CVS;, на сервере SourceForge. </para> +<para +>Если вы хотите получить доступ к серверу &CVS; с шифрованием <acronym +>rsh</acronym +> или <acronym +>ssh</acronym +>, укажите протокол шифрования. Для этого необходимо установить значение переменной среды окружения <envar +>CVS_RSH</envar +> как <userinput +>rsh</userinput +> или <userinput +>ssh</userinput +>. </para> + +<note +><para +>Если вы собираетесь использовать шифрование для &CVS;, прочитайте главу <link linkend="cvs" +>Использование &CVS;</link +>. </para +></note> + +<indexterm zone="new-projects-start-cvs-repository"> + <primary +>CVS</primary> + <secondary +>репозиторий</secondary +></indexterm> +<indexterm zone="new-projects-start-cvs-repository"> + <primary +>репозиторий</primary> + <secondary +>CVS</secondary +></indexterm> + +<formalpara id="new-projects-start-cvs-repository"> +<title +>Репозиторий &CVS;</title> +<para +>Теперь нужно указать где следует сохранять файлы проекта в &CVS;. Это место называется <emphasis +>репозиторием</emphasis +>. </para> +</formalpara> +<para +>В принципе, вы можете выбрать любое имя для репозитория &CVS;, учитывая лишь ограничения на имена файлов, но большинство разработчиков просто указывают название программы. Репозиторий с указанным вами именем будет создан в корне &CVS;. </para> +<para +>Укажите имя репозитория, которое вы хотите использовать, вместе с корнем CVS в поле <guilabel +>Репозиторий</guilabel +> диалога <guilabel +>Новый проект</guilabel +> в разделе <guilabel +>Система управления версиями</guilabel +>. </para> + +<warning +><para +><emphasis +>Обратите внимание, на то, что нельзя использовать уже существующий репозиторий!</emphasis +> Система &CVS; не предупреждает о дублирующихся файлах, поэтому вы можете их потерять. </para +></warning> + +<formalpara> +<title +>Оставшиеся поля</title> +<para +>Осталось совсем немного. Остальные поля заполнены за вас автоматически: </para> +</formalpara> +<para +>Поле <guilabel +>Метка производителя</guilabel +> используется только для совместимости. Вы можете оставить значение по умолчанию. </para> +<para +>Поле <guilabel +>Комментарий</guilabel +> содержит комментарий, который будет добавлен к первой версии файлов в хранилище &CVS;. </para> +<para +>Поле <guilabel +>Метка выпуска</guilabel +> содержит метку &CVS; первоначального состояния проекта. С помощью <emphasis +>метки</emphasis +> вы всегда сможете вернуться к состоянию разработки на данный момент. Подробная информация находится в главе <link linkend="cvs" +>Использование &CVS;</link +>. </para> +<para +>По умолчанию предлагается метка <quote +>start</quote +>. </para> + +<note> +<para +>Если какая-либо информация введена неправильно, это не выяснится на этапе создания проекта. Поэтому следите за <guilabel +>сообщениями</guilabel +>во время работы с репозиторием из основного окна программы. Если произошли ошибки &CVS;, вы увидите что-то на подобие этого: </para> + +<screen +><computeroutput> +* cd '/home/devel/test' && cvs -d '/home/devel/mycvsroot' \ + import -m 'new project' '' 'vendor' 'start' &&\ + sh /opt/kde3/share/apps/kdevcvs/buildcvs.sh . '' \ + '/home/devel/mycvsroot' +* cvs [import aborted]: /home/devel/mycvsroot/CVSROOT: No such file or + directory +* *** Exited with status: 1 *** +</computeroutput +></screen> + +<para +>Если это произошло, инициализируйте &CVS; самостоятельно или удалите каталог проекта и начните процесс создания проекта сначала. </para> +</note> + +<para +>После ввода всех данных &CVS; нажмите <guibutton +>Далее ></guibutton +>. </para> + +<note +><para +>Чтобы исправить ошибку на предыдущем шаге, нажмите кнопку <guibutton +>< Назад</guibutton +>. </para +></note> + +</sect2 +> <!-- new-projects-start-cvs --> + +<sect2 id="new-projects-start-templates"> +<title +>Шаблоны программных файлов</title> + +<para +>На следующих шагах мастера вы сможете установить общую информацию о вашем проекте, которая будет включаться во все его файлы. </para> +<para +>Вам будут предложены отдельные шаблоны заголовочных файлов и файлов реализации для проектов на C и C++. Для некоторых других языков есть только шаблоны файлов исходного кода. Для остальных языков программирования всё ещё нет готовых шаблонов. </para> +<para +>Если для проекта есть возможность использования шаблонов, в начале файлов проекта с исходным кодом будет добавлен комментарий о лицензии, например для программ на C++ он будет выглядеть так: </para> + +<screen +><computeroutput +><literal> +/*************************************************************************** + * Copyright (C) 2003 by Your Name * + * you@you.com * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + ***************************************************************************/ +</literal +></computeroutput +></screen> + +<para +>Другие шаблоны будут иметь подобную информацию в соответствующим языку формате. </para> +<para +>Шаблоны файлов исходного кода будут также содержать информацию на основе данных, указанных ранее в мастере <guilabel +>создания проектов</guilabel +>, а именно содержимом полей <guilabel +>Автор</guilabel +>, <guilabel +>Электронная почта</guilabel +> и <guilabel +>Лицензия</guilabel +>. </para> + +<sect3 id="new-projects-start-templates-edit"> +<title +>Изменение шаблонов</title> + +<indexterm zone="new-projects-start-templates-edit"> + <primary +>шаблоны</primary> + <secondary +>проект</secondary> + <tertiary +>изменение</tertiary +></indexterm> +<indexterm zone="new-projects-start-templates-edit"> + <primary +>проект</primary> + <secondary +>шаблоны</secondary> + <tertiary +>изменение</tertiary +></indexterm> + +<para +>Шаблоны, которые вы редактируете в диалоге <guilabel +>Новый проект</guilabel +> будут использованы при создании нового заголовочного файла или файла реализации в проекте. В начале каждого файла будет расположена некоторая информация, зависящая от шаблона. </para> +<para +>Вы не ограничены вставкой обычного текста, &tdevelop; распознаёт несколько переменных, которые будут заменены на содержимое заданных полей. Это может быть информация об <guilabel +>авторе</guilabel +>, <guilabel +>электронной почте</guilabel +> или <guilabel +>лицензии</guilabel +>. </para> + +<variablelist> +<varlistentry> +<term +>Включение информации для &doxygen;</term> +<listitem> +<para +>Если, к примеру, вы хотите чтобы документация по &API;, генерируемая программой &doxygen;, содержала также дополнительное краткое описание файла, включите в шаблон такой код: </para> +<screen +><computeroutput> +/** + * \file $MODULE$.cpp + * \brief (здесь нужно поставить краткое описание файла). + **/ +</computeroutput +></screen> +<para +>Каждый раз, когда вы будете создавать новый файл исходного кода, &tdevelop; заменит <varname +>$MODULE$</varname +> именем создаваемого файла. Например, если вы создали новый класс C++ с именем <classname +>ASimpleTest</classname +>, в начале файла <filename +>asimpletest.cpp</filename +> будет такой текст: </para> +<screen +><computeroutput> +/** + * \file asimpletest.cpp + * \brief (здесь нужно поставить краткое описание файла). + **/ +</computeroutput +></screen> +<para +>И теперь останется ввести краткое описание файла после слова <quote +>\brief</quote +>, не оставляя служебного, каждый раз одинакового, кода. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>Файл с лицензией</term> +<listitem> +<para +>Также вы можете включить информацию о лицензии. Для этого используется переменная <varname +>$LICENSEFILE$</varname +>: </para> + +<screen +><computeroutput> +// Файл $LICENSEFILE$ содержит полный текст лицензии. +</computeroutput +></screen> +<para +>Мастер приложений заменит <varname +>$LICENSEFILE$</varname +> на имя файла, содержащего лицензию, например: </para> +<screen +><computeroutput> +// Файл COPYING содержит полный текст лицензии. +</computeroutput +></screen> +<para +>для лицензии <acronym +>GPL</acronym +>, или </para> +<screen +><computeroutput> +// Файл LICENSE.BSD содержит полный текст лицензии. +</computeroutput +></screen> +<para +>если вы решили распространять свою программу под лицензией <acronym +>BSD</acronym +>. </para> +<para +>&tdevelop; поддерживает большое количество переменных. Подробно это изложено в разделе <link linkend="newfiles-edittemplates" +>Изменение шаблонов</link +> главы <link linkend="editing" +>Средства редактирования</link +>. </para> +</listitem> +</varlistentry> +</variablelist> + +<note +><para +>Шаблоны, которые вы установили здесь, будут задействованы после создания проекта. Информация, выбранная вами, будет находится в начале каждого созданного в рамках проекта файла исходного кода. Вы можете изменить текст шаблонов вручную после создания проекта. </para +></note> + +</sect3 +> <!-- new-projects-start-templates-edit --> +</sect2 +> <!-- new-projects-start-templates --> + +<sect2 id="new-projects-start-build"> +<title +>Построение начальных файлов проекта</title> + +<indexterm zone="new-projects-start-build"> + <primary +>проект</primary> + <secondary +>новый</secondary> + <tertiary +>построение</tertiary +></indexterm> +<indexterm zone="new-projects-start-build"> + <primary +>проект</primary> + <secondary +>начальное построение</secondary +></indexterm> + +<para +>Теперь почти всё сделано. На последнем шаге кнопка <guibutton +>Далее ></guibutton +> сменяется на <guibutton +>Готово</guibutton +>. </para> +<para +><emphasis +>Подумайте дважды перед её нажатием!</emphasis +> Вы пока ещё имеете возможность вернуться <guibutton +>< Назад</guibutton +> и изменить введённые данные. Если вы используете &CVS; локально, проверьте ещё раз имя <emphasis +>репозитория</emphasis +> (указанного подкаталога не должно существовать). </para> +<para +>Чтобы отменить создание проекта, нажмите соответствующую кнопку, иначе нажмите <guibutton +>Готово</guibutton +>, при этом в окне <guilabel +>Сообщения</guilabel +> будут выводится подробные действия, выполняемые мастером создания проекта. </para> +<para +>Если вы выбрали использование &CVS;, после создания дерева каталогов проекта, будет запущена программа &CVS;, очищающая предыдущее содержимое окна <guilabel +>сообщений</guilabel +> и выводящая собственные сообщения. </para> + +<note +><para +>В большинстве случаев после завершения создания &tdevelop; автоматически откроет важные файлы проекта (это зависит от выбранного шаблона проекта). </para +></note> + +<para +>Не забудьте проверить предлагаемые по умолчанию значения. Например, вы можете изменить комментарии, добавляемые в начало файлов исходного кода. Шаблоны файлов находятся в подкаталоге <filename class="directory" +>templates</filename +> базового каталога вашего проекта. </para> +<para +>Мы рекомендуем вас перед тем, как набивать собственный код, <emphasis +>собрать новый проект</emphasis +>. В большинстве случаев при этом не должно возникнуть никаких проблем. Чтобы начать всё сначала, удалите каталог проекта и его хранилище в корне &CVS; (если таковой имеется) и начните создание нового проекта заново. </para> + +<warning id="defaultbuild-warning" +> <!-- ### remove this when "default" works again --> + + <indexterm zone="defaultbuild-warning"> + <primary +>сборочная конфигурация по умолчанию</primary> + <secondary +>предупреждение</secondary +></indexterm> + <indexterm zone="defaultbuild-warning"> + <primary +>конфигурации сборки</primary> + <secondary +>предупреждение сборки по умолчанию</secondary +></indexterm> + <indexterm zone="defaultbuild-warning"> + <primary +>предупреждение</primary> + <secondary +>конфигурация сборки по умолчанию</secondary +></indexterm> + + <para +>Перед сборкой вашего проекта в первый раз, откройте <menuchoice +><guimenu +>Проект</guimenu +> <guimenuitem +>Конфигурация сборки</guimenuitem +></menuchoice +>. Там будет три профиля сборки: <guimenuitem +>default</guimenuitem +>, <guimenuitem +>optimized</guimenuitem +> и <guimenuitem +>debug</guimenuitem +>. </para> + <para +>Из-за некоторых ограничений в autoconf/automake, не используйте конфигурацию <guimenuitem +>default</guimenuitem +>. это приведёт к повреждению внутренней структуры каталогов, и вы не сможете использовать конфигурации <guimenuitem +>optimized</guimenuitem +> и <guimenuitem +>debug</guimenuitem +>. </para> + <para +>Если тип приложения, которое вы выбрали, предлагает только <guimenuitem +>default</guimenuitem +>, естественно, используйте его. </para> +</warning> + +</sect2 +> <!-- new-projects-start-build --> + +</sect1 +> <!-- new-projects --> + +<sect1 id="projects-configure"> +<title +>Настройка проектов</title> + +<para +>(.. в процессе написания ..)</para> + +</sect1> + +</chapter +> <!-- applicationwizard --> |