Міністерство освіти і науки Російської Федерації
Південно-Уральський державний університет
Кафедра Інформатики
Пояснювальна записка по курсовому проекту
з курсу В«Високорівневі методи інформатики та програмуванняВ»
В«Повчальна програма - перекладач текстуВ» ГО ПЗ
Керівник
доц. каф. інформатики Конова Е.А.
«» ________2007г. <В
Автор проекту
студент групи
ЕіУ-264
Лаврова Катерина
В«10В» грудня 2007р. <В
Проект захищений з оцінкою
__________
«» ________2007г. br/>
Челябінськ
2007
Зміст
1 1
2 Постановка 2
3 Структура 3
4 4
5 Структурна схема відносин у специфікації класів ............................... 6
6 7
7 Алгоритми 8
8 Сценарій роботи проекту ................................................. ............................ 10
9 Реалізація 11
10 Документація проекту ................................................. ................................ 17
11 18
12 Джерела інформації ................................................. ............................. 19
20
1 Введення
Ця курсова робота велася на основі об'єктно-орієнтованого програмування. Суть об'єктно-орієнтованого програмування полягає в тому, що завдання можна розкласти на складові частини, кожна з яких стає самостійним об'єктом. Кожна складова містить свої власні дані і методи їх обробки, також, можливо, методи відносин з іншими об'єктами. У підсумку отримуємо певну сукупність відносно незалежних об'єктів у їх взаємозв'язку, не жорсткою, але заснованої певних концепціях (без яких втрачається суть ООП) - інкапсуляції, поліморфізмі та спадкуванні. p> Тому для того, щоб максимально повно розкрити всі можливості розробляється програми, і використовувалося об'єктно-орієнтоване програмування.
2 Постановка завдання
Темою проекту є складання програми - перекладача тексту (по типу Lingvo).
Так як дана задача відноситься до розділу навчальних програм, то, окрім власне перекладача, в програму була включена додаткова функція - Tutor (В«УчительВ»), що дозволяє перевірити словниковий запас користувача і по можливості його розширити.
Для реалізації поставленого завдання було потрібно забезпечити наступну функціональність:
В· Можливість перекладу окремих слів;
В· Можливість перекладу пропозицій (текстів);
В· Виняток з переказу не алфавітних знаків (знаків пунктуації, чисел і пр.);
В· Можливість відкриття файлу для перекладу;
В· Можливість збереження отриманого перекладу;
В· Можливість роздруківки перекладу;
В· Система Tutor - "Учитель" - для перевірки знань користувача;
В· Наявність необхідної довідкової системи;
В· Забезпечити додаток стандартним інтерфейсом: основним меню, гарячими клавішами, панелями інструментів.
3 Структура програми
Для реалізації завдання були сформовані наступні класи:
В· class TWord, призначений для зберігання пар слово-переклад;
В· class TWords, клас-контейнер, даними якого є вектор класів TWord, також містить методи роботи з вектором.
Ці класи описані у файлі Lexicon.h, реалізація - у файлі Lexicon.cpp.
Файли даних - En-Ru.csv і Ru-En.csv. Файли проекту - EasyTranslator.cpp, EasyTranslator.h, EasyTranslator.bpr (установки опцій проекту), EasyTranslator.res (ресурси проекту), EasyTranslator.tds (файл таблиці символів - для налагодження). p> Інтерфейс програми представлений формами:
В· TBody, що представляє собою тіло перекладача (реалізовано меню з гарячими клавішами, панелі інструментів ...), заголовний файл - Bodys.h, реалізація - Bodys.cpp, файл форми - Bodys.dfm; Bodys.ddp;
В· TETHlp - допомога і TTAbout - про програму. Відповідно файли: Hlp.cpp, Hlp.h, Hlp.ddp, Hlp.dfm (файл форми); ETAbout.cpp, ETAbout.h, ETAbout.ddp, ETAbout.dfm;
В· TTutor, для перевірки та поповнення словникового запасу користувача. Файли: ETutor.cpp, ETutor.h, ETutor. Ddp, ETutor.dfm;
Файл довідки - Help.rtf.
Виконуваний файл програми - EasyTranslator.exe.
4 Специфікація
Розроблено об'єкти TWord і TWords:
В· class TWord - клас, який зберігає тільки дані В«слово-перекладВ».
Параметри класу:
AnsiString One, Two;
One містить В«вводитьсяВ» слово, Two - можливі варіанти перекладу слова O...