Translation by Artem Sereda with my minor changes
[kde-ru.git] / docs / kdesdk / umbrello / code_import_and_generation.docbook
blob40f2382780b7eb623e8bd03c1f0a289c69b33551
1 <chapter id="code-import-generation">
2 <title
3 >Импорт и генерация кода</title>
4 <para
5 >&umbrello; является средством &UML;-моделирования, и его главной целью является помощь в <emphasis
6 >анализе и проектировании</emphasis
7 > ваших систем. Тем не менее, для перехода от вашего проекта к его <emphasis
8 >реализации</emphasis
9 >, &umbrello; позволяет вам сгенерировать исходный код для различных языков программирования . Если вам понадобится использовать &UML; для существующего проекта на C++, &umbrello; может помочь в создании модели вашей системы на основе исходного кода, с помощью его анализа и импорта обнаруженных классов. </para>
10 <sect1 id="code-generation">
11 <title
12 >Генерация кода</title>
13 <para
14 >&umbrello; может генерировать исходный код для различных языков программирования на основе вашей модели &UML;, помогая вам начать реализацию вашего проекта. Сгенерированный код состоит из объявлений классов с их методами и атрибутами, вам остаётся только <quote
15 >заполнить пустые места</quote
16 > для реализации функциональности вашего класса. </para>
17 <para
18 >&umbrello; 1.2 поставляется с поддержкой генерации кода для ActionScript, Ada, C++, CORBA IDL, &Java;, JavaScript, <acronym
19 >PHP</acronym
20 >, Perl, Python, SQL и XMLSchema. </para>
21 <sect2 id="generate-code">
22 <title
23 >Генерация кода</title>
24 <para
25 >Для генерации кода с помощью &umbrello; вам сперва необходимо создать или загрузить модель, содержащую хотя бы один класс. При необходимости работы с исходным кодом выберите элемент <guimenuitem
26 >Мастер генерации кода</guimenuitem
27 > меню <guimenuitem
28 >Код</guimenuitem
29 > для запуска мастера, который проведёт вас через процесс генерации кода. </para>
30 <para
31 >Первым шагом будет указание классов, для которых требуется сгенерировать код. По умолчанию выбираются все классы вашей модели, вы имеете возможность убрать выделение с ненужных классов, перемещая их на левую сторону списка. </para>
32 <para
33 >Следующим шагом будет модификация параметров генератора кода. Доступны следующие опции: </para>
34 <para>
35 <screenshot>
36 <screeninfo
37 >Опции генерации кода</screeninfo>
38         <mediaobject>
39           <imageobject>
40             <imagedata fileref="generation-options.png" format="PNG"/>
41           </imageobject>
42           <textobject>
43             <phrase
44 >Опции для генерации кода в &umbrello;</phrase>
45           </textobject>
46           <caption>
47             <para
48 >Опции для генерации кода в &umbrello; </para>
49           </caption>
50         </mediaobject>
51 </screenshot>
52 </para>
53 <sect3 id="generation-options">
54 <title
55 >Опции генерации</title>
56 <!-- LW; to rearrange -->
58 <sect4>
59 <title
60 >Автокомментирование кода</title>
61 <para
62 >В режиме <guilabel
63 >Записывать пустые комментарии</guilabel
64 > генератор кода будет писать комментарии вида /** тра-ля-ля */, даже если комментируемые блоки пустые. Если вы добавите документацию в классы, методы или атрибуты вашей модели, генератор кода запишет эти комментарии как документацию для <application
65 >Doxygen</application
66 > независимо от этой опции. Но если вы включили данную опцию, &umbrello; запишет блоки комментариев для всех классов, методов и атрибутов, даже если никакой документации в модели не было. В этом случае вам следует задокументировать ваши классы позднее прямо в исходном коде. </para>
67 <para
68 >Опция <guilabel
69 >Записывать комментарии для пустых секций</guilabel
70 > указывает &umbrello; записывать комментарии в исходный код для разграничения различных секций класса. Например, <quote
71 >public methods</quote
72 > или <quote
73 >Attributes</quote
74 > перед соответствующими секциями. Если вы включите данную опцию, &umbrello; будет записывать комментарии для всех секций класса, даже если некоторые из них будут пустыми. Например, будет записан комментарий <quote
75 >protected methods</quote
76 >, даже если в вашем классе нет методов, объявленных как <quote
77 >protected</quote
78 >. </para>
79 </sect4>
80 <sect4>
81 <title
82 >Каталоги</title>
83 <para
84 >Опция <guilabel
85 >Сохранять сгенерированные файлы в каталог</guilabel
86 >. Здесь вам следует указать каталог, куда &umbrello; поместит сгенерированный исходный код. </para>
87 <para
88 >Опция <guilabel
89 >Подключать заголовочные файлы из каталога</guilabel
90 > позволяет вам вставить заголовки в начало каждого сгенерированного файла. Заголовочные файлы могут содержать сведения об авторских правах или лицензии, а также переменные, вычисляемые во время генерации кода. Вы можете ознакомиться с заголовочными файлами, поставляемыми с &umbrello;, чтобы понять, как использовать эти переменные для указания вашего имени или текущей даты во время генерации кода. </para>
91 </sect4>
92 <sect4>
93 <title
94 >Правила перезаписи</title>
95 <!-- FIXME update for Umbrello 1.2's new C++ and Java code generators -->
96 <para
97 >Данная опция указывает Umbrello, что следует делать, если создаваемый файл уже существует. Umbrello <emphasis
98 >не может изменять существующие исходные файлы</emphasis
99 >, таким образом, вы должны выбрать между перезаписью существующего файла, отменой генерации конкретного файла или позволить Umbrello выбрать другое имя файла. Если вы предпочли выбрать другое имя файла, Umbrello добавит суффикс к текущему имени файла. </para>
100 </sect4>
101 <sect4>
102 <title
103 >Язык</title>
104 <para
105 >По умолчанию &umbrello; будет генерировать код на языке, который вы указали в качестве активного языка, но мастер генерации кода позволяет указать другой язык. </para>
106 </sect4>
107 </sect3
108 ><!--generation-options-->
109 <sect3 id="generation-wizard-generation">
110 <title
111 >Мастер генерации</title>
112 <para
113 >Третий и последний шаг помощника показывает состояние процесса генерации кода. Вам надо только нажать на кнопку Сгенерировать, чтобы получить ваши классы в виде исходного кода. </para>
114 <para
115 >Следует отметить, что опции, которые вы выбрали в мастере генерации кода, верны только для текущего момента. При следующем запуске мастера вам потребуется заново указать все опции (каталог с заголовочными файлами, правила перезаписи и так далее). Можно настроить значения по умолчанию в разделе <guilabel
116 >Генерация кода</guilabel
117 > настроек Umbrello, доступной через <menuchoice
118 ><guimenu
119 >Настройка</guimenu
120 > <guimenuitem
121 >Настроить Umbrello...</guimenuitem
122 ></menuchoice
123 > </para>
124 <para
125 >Если вы настроили опции генерации кода и хотите сгенерировать код без использования помощника, можете выбрать <guimenuitem
126 >Генерировать весь код</guimenuitem
127 > из меню Код. При этом сгенерируется код для всех классов вашей модели с использованием текущих настроек (включая каталог назначения и правила перезаписи, так что будьте осторожны). </para>
128 </sect3>
129 </sect2
130 ><!--generate-code-->
131 </sect1
132 > <!--code-generation-->
133 <sect1 id="code-import">
134 <title
135 >Импорт кода</title>
136 <para
137 >Umbrello может импортировать исходный код ваших существующих проектов для помощи в построении моделей для ваших систем. &umbrello; 1.2 поддерживает исходный код на языке C++ , но поддержка других будет добавлена в будущих версиях. </para>
138 <para
139 >Для импортирования классов в вашу модель выберите <guimenuitem
140 >Импортировать классы...</guimenuitem
141 > из меню <guimenu
142 >Код</guimenu
143 >. В диалоге выбора файлов укажите файлы, содержащие объявления классов C++, и нажмите OK. Классы будут импортированы и появятся в виде элементов модели в дереве модели. Следует отметить, что Umbrello не создаёт никакой диаграммы для отображения ваших классов, они просто импортируются в модель, и вы можете их использовать при построении любых диаграмм. </para>
144 <para>
145 <screenshot>
146 <screeninfo
147 >Импорт кода</screeninfo>
148         <mediaobject>
149           <imageobject>
150             <imagedata fileref="code-import.png" format="PNG"/>
151           </imageobject>
152           <textobject>
153             <phrase
154 >Меню для импорта исходного кода в Umbrello</phrase>
155           </textobject>
156           <caption>
157             <para
158 >Меню для импорта исходного кода в Umbrello </para>
159           </caption>
160         </mediaobject>
161 </screenshot>
162 </para>
163 </sect1>
164 </chapter
165 > <!--code-import-generation-->