- •Що виносяться на державний іспит в 2014 р. (спеціалісти спеціальності «інформатика»)
- •1. Програмування, системне програмування
- •Системнепрограмування
- •1. Мови програмування та їх класифiкацiя.
- •2. Системнепрограмування
- •2. Типи даних, скалярні та структурованi типи. Оператори; оператор присвоєння, структурнi оператори. Засоби вводу-виводу.
- •3. Структуризація програм та даних. Підпрограми, функцiї.
- •4. Динамічні структури даних. Списки, стеки, черги. Дерева, бінарні дерева. Дерева пошуку.
- •5. Поняття про функцiональне програмування, структурне програмування, об'єктно-орiєнтоване програмування.
- •6. Інструментальні засоби розробки інформаційних технологій, case-технології
- •2. Системнепрограмування
- •7. Cучасні технології програмування та тенденції їх розвитку.
- •2. Системнепрограмування
- •8. Об’єктно-орієнтоване програмування. Мова Java.
- •2. Системнепрограмування
- •9. Поняття мовного процесора. Типи мовних процесорів. Основні фази мовного процесора.
- •2. Системнепрограмування
- •10. Скінченні автомати. Методика побудови лексичного аналізатора на основі скінченного автомата.
- •2. Системнепрограмування
- •11. Синтаксичний аналіз та породжувальні граматики. Виведення в граматиці, дерево виведення. Лівостороння та правостороння стратегії виведення.
- •2. Системнепрограмування
- •12. Ll(k)-граматики. Перевірка ll(1)-умови. Побудова ll(1)-таблиці для управління синтаксичним ll(1)-аналізатором.
- •2. Системнепрограмування
- •13. Методи денотацiйної та операційної семантики. Метод семантичних підпрограм. Атрибутний метод визначення семантики програм. Семантичний терм програми.
- •2. Системнепрограмування
- •14. Машинно-орієнтовані мови програмування. Асемблери. Структура асемблера, перегляди тексту програми та відповідні бази даних.
- •2. Інформаційні технології
- •1. Уніфікована мова моделювання uml. Діаграми прецедентів
- •2. Використання діаграм послідовностей та діаграм класів при проектуванні програмних систем.
- •3. Патерни проектування
- •Класифікації патернів:
- •4. Платформа .Net Framework.
- •5. Сервісно-орієнтована архітектура
- •6. Огляд технологій j2ee. Технологія Java rmi.
- •8. Патерн Model-View-Controller у Web-проектах.
- •9. Патерн (принцип) ioc&di та його підтримка у фреймворку Spring
- •10. Проблема валідації даних у Web-проектах. Підтримка ajax.
- •3. Інформаційні мережі
- •1. Інформаційна глобальна мережа internet (написано много, выбрать главное)
- •Internet надає такі основні види послуг:
- •2. Система доменних імен глобальної мережі internet.
- •3. Система електронної пошти глобальної мережі internet.
- •4. Системи інтерактивних комунікацій глобальноїмережі internet (на прикладі Skype, icq).
- •5. Системи електронних спільнот глобальної мережі internet (на прикладі Facebook, Twiter).
- •6. Поняття універсального вказівника ресурсу. Основні типи ресурсів.
- •7. Мережі tcp/ip.Стек протоколів tcp/ip: топологічні особливості, функції рівнів.
- •8. Поняття раутінгу в мережах tcp/ip. (аккуратно, перевод через гугл транслейт!!!)
- •9. Технології, що забезпечують відмовостійкість мереж tcp/ip. (ответ не очень)
- •10.Класифікація комп’ютерних мереж.
- •11. Системи захисту інформації в глобальній мережі internet (на прикладі pgp).
- •4. Математична логіка та теорія алгоритмів, теорія програмування
- •9. Основні поняття програмування, відношення між ними. Основні програмні поняття Розвиток основних понять програмування
- •Композиції
- •11. Методи подання синтаксису мов програмування.
- •4.8.1. Нормальні форми Бекуса–Наура
- •4.8.2. Модифіковані нормальні форми Бекуса–Наура
- •4.8.3. Синтаксичні діаграми
- •Визначення основних понять формальних мов
- •4.3. Операції над формальними мовами
- •13. Неперервні відображення.Теореми про найменшу нерухому точку (Кнастер-Тарський-Кліні); теорема про неперервність оператора нерухомої точки.
- •14. Методи формальної семантики мов програмування (композиційна, натуральна, денотаційна, аксіоматична).
- •5. Штучний інтелект
6. Інструментальні засоби розробки інформаційних технологій, case-технології
Тенденції розвитку сучасних інформаційних технологій ведуть до постійного зростання складностi розроблюваних інформаційних систем (ІС), що використовуються в різноманітних напрямках економіки та управління. Сучасні проекти ІС характеризуються, як правило, такими особливостями:
складність опису (досить велика кількість функцій, процесів, даних і складні взаємозв'язки між ними ), що вимагають ретельного моделювання та аналізу даних і процесів їх обробки;
наявність сукупності тісно пов'язаних компонентів (підсистем), кожна з яких має свої локальні задачі та методи функціонування (наприклад, прикладні системи, що пов'язані з обробкою запитів користувачів та виконанням регламентних завдань, автоматизовані системи аналітичної обробки даних для підтримки прийняття рішень);
відсутність прямих аналогів, що обмежує можливість використання накопичених в попередніх розробках типових проектних рішень і прикладних підсистем;
необхідність інтеграції існуючих і нових підсистем;
функціонування в неоднорідному середовищі на різних апаратних та операційних платформах;
розрізненість окремих розробників за їх спеціалізацією та використовуваними інструментальними засобами;
істотна протяжність проекту в часі, що зумовлена обмеженими можливостями колективу розробників і організації-замовника ІС.
Для успішної реалізації проекту ІС повинна бути адекватно описана, мають бути побудовані повні і несуперечливі функціональні і інформаційні моделі ІС. Накопичений до цього часу досвід проектування ІС показує, що це логічно складна, трудомістка і тривала в часі робота, що вимагає високої кваліфікації учасників розробки. Проте до недавнього часу проектування ІС виконувалося в основному на інтуїтивному рівні із застосуванням неформалізованих засобів, що засновані на мистецтві, практичному досвіді, експертних оцінках і дорогих експериментальних перевірках якості функціонування ІС. Крім того, у процесі створення і функціонування ІС інформаційні потреби користувачів можуть змінюватися або уточнюватися, що додатково ускладнює опрацювання і супровід таких систем і породжує наступні проблеми:
неадекватна специфікація вимог;
нездатність виявляти помилки в проектних рішеннях;
низька якість документації, що знижує її експлуатаційні якості;
затяжний цикл розробки і незадовільні результати тестування.
Перелічені чинники сприяли появі програмно-технологічних засобів спеціального класу - Case-засобів, що реалізують Case-технологію створення і супроводу ІС. Термін Case (ComputerAidedSoftwareEngineering ) використовують в цей час в надто широкому розумінні. Початкове значення терміну Case, обмежене питаннями автоматизації опрацювання тільки лише програмного забезпечення (ПЗ ), зараз придбало новий зміст, що охоплює процес опрацювання складних ІС в цілому. Тепер під терміном Case-засобу мають на увазі програмні засоби, що підтримують процеси утворення і супроводу ІС, включаючи аналіз та формулювання вимог, проектування прикладного ПЗ (додатків ) і баз даних, генерацію коду, тестування, документування, забезпечення якості, конфігураційне управління і управління проектом, а також інші процеси. Case-засоби разом із системним ПЗ і технічними засобами утворюють повне середовище опрацювання ІС.
Програмування перейняло риси системного підходу з опрацюванням і впровадженням мов високого рівня, засобів структурного і модульного програмування, мов проектування і засобів їх підтримки, формальних і неформальних мов опису системних вимог і специфікацій та ін. Крім того, появі Case-технології сприяли і такі чинники, як: підготовка аналітиків і програмістів, що сприймають концепції модульного і структурного програмування; широке впровадження і постійне зростання потужності комп'ютерів, що дозволили використати ефективні графічні засоби і автоматизувати більшість етапів проектування; впровадження мережної технології, що надала можливість об'єднання зусиль окремих виконавців в єдиний процес проектування шляхом використання розподіленої бази даних, що містить необхідну інформацію про проект.
Зважаючи на різноманітну природу Case-засобів було б помилково робити якісь беззастережні висновки щодо реального задоволення тих чи інших очікувань від їх впровадження. Можна перерахувати такі чинники, що ускладнюють визначення можливого ефекту від використання Case-засобів:
широка розмаїтість якості і можливостей Case-засобів;
надто невеликий час використання Case-засобів в різноманітних організаціях і відсутність досвіду їх застосування;
широка розмаїтість в практиці впровадження різноманітних організацій;
відсутність детальних метрик і даних для уже виконаних і поточних проектів;
широкий діапазон предметних областей проектів;
різноманітна міра інтеграції Case-засобів в різноманітних проектах.
Із-за цих складностей доступна інформація про реальні впровадження вкрай обмежена і протирiчлива. Вона залежить від типу засобів, характеристик проектів, рівня супроводу і досвіду користувачів. Деякі аналітики вважають, що реальна користь від використання деяких типів Case-засобів може бути одержана тільки після одно- або дворічного досвіду. Інші вважають, що вплив може реально виявитися лише у фазі експлуатації ІС, коли технологічні поліпшення можуть привести до зниження експлуатаційних витрат. Для успішного впровадження Case-засобів організація повинна володіти такими якостями:
Технологія. Розуміння обмеженості існуючих можливостей і спроможність прийняти нову технологію;
Культура. Готовність до впровадження нових процесів і взаємовідносин між розробниками і користувачами;
Управління. Чітке керівництво і організованість по відношенню до найбільш важливих етапів і процесів впровадження.
Прикладами Case-засобів можуть виступати:
засоби моделювання даних (DBMS, DDL);
засоби трансформації моделей;
засоби трансформації програм (Stratego/XT, TXL, DMS);
засоби для рефакторингу (Eclipse, NetBeans, ReSharper);
засоби автоматичної генерації коду (IDE);
засоби UML;
програмні специфікації;
документація.
