Без темы
<<  Автоматизированная система тестирования компьютерной грамотности (АСТ) (методологическая основа построения) Автор-составитель презентации Мазитова Надежда Владимировна, учитель информатики МОУ СОШ № 2 города Белогорска Амурской области  >>
Процесс генерации исходного кода
Процесс генерации исходного кода
Интеграция с MS Visual Studio 2003
Интеграция с MS Visual Studio 2003
Картинки из презентации «Автоматическая генерация кода программ с явным выделением состояний» к уроку информатики на тему «Без темы»

Автор: Oksana. Чтобы познакомиться с картинкой полного размера, нажмите на её эскиз. Чтобы можно было использовать все картинки для урока информатики, скачайте бесплатно презентацию «Автоматическая генерация кода программ с явным выделением состояний.ppt» со всеми картинками в zip-архиве размером 292 КБ.

Автоматическая генерация кода программ с явным выделением состояний

содержание презентации «Автоматическая генерация кода программ с явным выделением состояний.ppt»
Сл Текст Сл Текст
1Автоматическая генерация кода программ 14data-type="text" />
с явным выделением состояний. Канжелев </xsl:apply-templates> } }
С.Ю. магистрант СПбГУ ИТМО Шалыто А.А. <xsl:variable
доктор технических наук профессор СПбГУ name="stateMachineName"
ИТМО. select="@name"/>
2О чем доклад? Как описать сложную <xsl:apply-templates
логику работы приложения. Как select="//actionNode [generate-id(.)
преобразовать это описание в код = generate-id(key('distinctActions',
максимально удобным способом. @name)
Инструментальное средство MetaAuto. [ancestor::stateMachine/@name=$stateMachin
3Мотивация. Существует разрыв между Name])]"
фазами проектирования и реализации. В mode="FUNCTION_DEFINITIONS">
большинстве случаев моделируют статическую <xsl:sort select="@type"/>
часть программы с помощью диаграммы <xsl:sort select="@name"/>
классов. Сложную логику невозможно </xsl:apply-templates>
описать. Диаграммы взаимодействия и <xsl:apply-templates
последовательности бесполезны. Диаграммы select="//conditionNode
состояний использовать сложно. [generate-id(.) =
4Что нам нужно? Необходимо научиться generate-id(key('distinctConditions',
описывать сложную логику. Необходимо @name)
инструментальное средство для [ancestor::stateMachine/@name=$stateMachin
преобразования этого описания в исходный Name])]"
код программы. mode="FUNCTION_DEFINITIONS">
5Как описывать сложную логику работы <xsl:sort select="@type"/>
программы. Программирование с явным <xsl:sort select="@name"/>
выделением состояний. </xsl:apply-templates> }
6Программа с явным выделением </xsl:template> <!--End Automata
состояний. Явное выделение состояний: processing--> <?xml
Вместо набора флагов – выделенное version='1.0'?> <xsl:stylesheet
состояние. Непредвиденные переходы version="1.0"
исключаются. Ускорение тестирования. xmlns:xsl="http://www.w3.org/1999/XSL
7Описание программы с явным выделением Transform"> <xsl:output
состояний. Диаграммы состояний UML или method='text' indent="no"/>
аналогичные (графы переходов автоматов). <xsl:key
Требуется автоматическая генерация кода name="distinctConditions"
или исполнение программы по графам match="//conditionNode"
переходов. use="@name"/> <xsl:key
8Преимущества программ с явным name="distinctActions"
выделением состояний. Облегчение match="//actionNode"
проектирования Облегчение документирования use="@name"/>
Ускорение процесса тестирования. <xsl:template
9Аналоги. Для многих языков match="/model"> //--- this
программирования не созданы file is machine generated --- //Model:
соответствующие инструментальные средства. <xsl:value-of
Существующие инструментальные средства не select="@name"/> namespace
позволяют настраивать получаемый исходный Automatas { public class BaseAutomata { }
код. <xsl:apply-templates
10Процесс генерации исходного кода. select="stateMachine"></xs
11Генерация кода. подстановки (templates :apply-templates> }
C++); подстановки с исполнением кода </xsl:template>
(ASP); обработчики данных регулярной 15Пример. Шаг 4. Код программы. ///
структуры (XSLT). Наличие групп состояний. <summary> /// Syntactical analyzer
Наличие групповых переходов. Наличие /// </summary> public abstract class
логических выражений. A1 : BaseAutomata { protected string y =
12Пример. Шаг 1. Visio file. "s0"; public void A(int e) {
13Пример. Шаг 2. XML file. <?xml switch (y) { case "s0": if
version="1.0" (true) {z200(); Call_A2(0); y =
encoding="Windows-1251"?> … "s1";} break; case
<state name="Top" "s1": if (x206()) { y =
description=""> <state "s4";} else if (x201()){z201();
name="s1" z301(); y = "s1";} else if
description="Stack analysis" (x202()){ y = "s2";} else if
/> <state name="s0" (x203()){z203(); y = "s3";}
description="Start" /> break; case "s2": if (x205()) {
<state name="s3" y = "s0";} else if (x204())
description="Nonterminal" /> {z202(); Call_A2(1); y = "s1";}
<state name="s2" else if (true) { y = "s4";}
description="Terminal" /> break; case "s3": if (x207())
<state name="s4" {z204(); y = "s1";} else if
description="Error" /> (true) { y = "s4";} break; case
</state> <transition "s4": if (true) {z205(); y =
sourceRef="s1" "s0";} break; } } ///
targetRef="s4" <summary> /// Command in the top of
priority="1"> the stack /// </summary> ///
<condition> <conditionNode <returns>Is condition
name="206" correct</returns> protected abstract
type="INPUT_VARIABLE" /> bool x201(); /*Часть входных переменных и
</condition> </transition> действий пропущено*/ } }. //--- this file
<transition sourceRef="s1" is machine generated --- //Model:
targetRef="s2"> ModelName namespace Automatas { public
<condition> <conditionNode class BaseAutomata { } /// <summary>
name="202" /// Lexical analyzer /// </summary>
type="INPUT_VARIABLE" /> public abstract class A2 : BaseAutomata {
</condition> </transition> protected string y = "s0";
<transition sourceRef="s1" public void A(int e) { switch (y) { case
targetRef="s3"> "s0": if (e == 0) {z401(); y =
<condition> <conditionNode "s1";} break; case
name="203" "s1": if (e == 1) {z200(); y =
type="INPUT_VARIABLE" /> "s1";} else if (e == 0) {z401();
</condition> … … y = "s1";} break; } } ///
14Пример. Шаг 3. Xslt-шаблон. <summary> /// /// </summary>
<!--Automata processing--> protected abstract void z200(); ///
<xsl:template <summary> /// Initialize and return
match="stateMachine"> /// the first match /// </summary>
&lt;summary&gt; /// protected abstract void z401(); }.
<xsl:value-of 16Интеграция с MS Visual Studio 2003.
select="@description" /> /// 17Применения. При создании самого
&lt;/summary&gt; public abstract инструментального средства Созданы шаблоны
class <xsl:value-of для языков C#, C++, Assembler
select="@name"/> : Предполагается использовать для встроенных
BaseAutomata { protected string y = систем настраиваемость простота
"s0"; public void A(int e) { использования.
switch (y) { <xsl:apply-templates 18Вопросы?
select="state//state[count(state) = 19Спасибо за внимание. Дополнительная
0]" mode="SWITCH_BLOCK"> информация: http://is.ifmo.ru
<xsl:sort select="@name" kanzhser@rain.ifmo.ru.
Автоматическая генерация кода программ с явным выделением состояний.ppt
http://900igr.net/kartinka/informatika/avtomaticheskaja-generatsija-koda-programm-s-javnym-vydeleniem-sostojanij-121112.html
cсылка на страницу

Автоматическая генерация кода программ с явным выделением состояний

другие презентации на тему «Автоматическая генерация кода программ с явным выделением состояний»

«Выделение» - Выполните команду Выделить / Снять выделение. Выделение прямоугольником, овалом или прямой линией. Теперь создайте новый файл. Создайте новый файл и вставьте туда скопированное изображение. Выполните команду Редактирование / Скопировать. Выберите инструмент волшебная палочка и выделите цветной квадрат.

«Биология Выделение» - Этапы обмена веществ. Величина почки – с кулак человека. Объясните приведенные факты. Мочевыделительная система. Сравните анализ мочи здорового и больного человека. Мочеточники - трубочки длиной 30 см, 4-7 мм в диаметре. Выделение веществ за сутки из организма человека (по Старлингу и др.). Ответьте на вопросы: На каких этапах и почему возникли сложности?

«Выделение у животных» - Кольчатые черви. Членистоногие. Плоские черви. «Строение выделительной системы животных». Особенности выделения в организме беспозвоночных животных. Губки и кишечнополостные. Выделительная система позвоночных животных. тема урока: «Выделение у животных».

«Органы выделения» - Мальпигиевы сосуды расположены в полости тела. Органы выделения человека. 4 – почка (2), 18 – мочеточник (2), 8 – мочевой пузырь, мочеиспускательный канал. Насекомые. Простейшие. 4 - почка. Тема урока : Значение процессов выделения в животном организме. Инфузория – туфелька. 1.Сократительная вакуоль – орган выделения.

«Специальные возможности Windows» - Специальные возможности ОС MAC OS X. Увеличение размера курсора. Уменьшение скорости движения курсора. Управление мышью с клавиатуры. Настройка динамика на ведущее ухо. Залипание кнопки мыши для перетаскивания объекта. Залипание клавиш. Увеличение экрана в области просмотра. Увеличение чувствительности микрофона.

«Презентация PowerPoint» - 11 класс общественно-гуманитарный цикл. 2 шаг: Макет - Пустой слайд. В версиях MS Office 98-2000. Группы инструментов среды PowerPoint. Дидактический материал. Форма проведения: объяснение нового материала с использованием элемента практики. В версиях MS Office 2003-2007. Воспитывать эстетическое восприятие в создании презентации.

Без темы

778 презентаций
Урок

Информатика

130 тем
Картинки
900igr.net > Презентации по информатике > Без темы > Автоматическая генерация кода программ с явным выделением состояний