Teooria

Arenduse etapid


  1. Eelanalüüs. Описание потребностей и их анализ
  2. Tehniline ja visuaalne disain. Дизайн программного продукта
  3. Arendus. Разработка
  4. Testimine. Проверка
  5. Juurutamine. Выпуск и внедрение продукта
  6. Hooldus. Обслуживание продукта

Tarkvara elutsükli mudelid


  • Waterfall (kaskaad) – этапы зависят друг от друга, следующий начинает после того как закончит другой.
  • Iteratiivsed – Разбиение проекта на части, каждый этап закончен сам по себе. Если требуется, то этапы можно переразработать
  • Spiraalsed – жизненые циклы спиральной модели идут витками
  • inkrementaalsed
  • Agile (agiilne) – люди и взаимодействие важнее процессов и инструментов , работающий продукт важнее документации . Сотрудничество важнее условий контракта, готовность к изменениям важнее плана

Testimine


Must kast –

Valge kast –  

Hall kast –


Vead ja erandid


Loogikavead – Логические. Ошибка вызывающаяя неправильное поведение программы. Работать она будет, но не так как нужно.

Süntaksivead – Синтаксические * ошибка complier-a

Erindid – исключения. Проблема пропажи файлов/данных. Способ исправить – сделать такой код что бы он сам создал файл в случае его ненахода. (try catch)


Vigade liigitamine programmi töötlemise etappide kaupa


  • kompileerimisvead (Ошибки компиляции)
  • paigutusvead (Ошибки компоновки)
  • toimimsvead (Ошибки выполнения)

Põhilised origrammeerimismudelid


  • Императивное программирование: Стиль программирования, где код описывает последовательность шагов, которые компьютер должен выполнить.
  • Декларативное программирование: Стиль программирования, где код описывает, что нужно сделать, а не как это сделать.
  • Структурное программирование: Подход, который использует подпрограммы, циклы и условные операторы для улучшения читаемости и управления кодом.
  • Функциональное программирование: Стиль программирования, который рассматривает вычисления как оценку математических функций и избегает изменения состояния и данных.
  • Логическое программирование: Стиль программирования, основанный на логических выражениях и правилах, например, Prolog.
  • Объектно-ориентированное программирование: Стиль программирования, который организует код вокруг объектов, которые содержат данные и методы для работы с этими данными.
  • Компонентно-ориентированное программирование: Подход, который разбивает систему на отдельные, повторно используемые компоненты.
  • Прототипно-ориентированное программирование: Стиль программирования, где объекты могут наследовать свойства и методы напрямую от других объектов, без использования классов.

Algoritmide põhiomadused


  1. Diskreetsus – osadeks jagatud
  2. Selgus(kindlus) – lõplik sammude kogus
  3. ühesus – ühesuguste lähteandmete korral peab algoritmi täitmine viima ühesuguste lõpputulemuste. Algoritmi täitmine tulemus ei tohi sõltuda täitjast.
  4. Universaalsus – algoritm peab olema mõeldud kõikide antud
  5. Lõplikus – lõpliku arvu sammude järel peab algoritm viima lõõtulemusele
  6. Korrektsus

Algoritmide tüübid


  • Lineaarne algoritm – algoritmi sammude täitmise järjekord ei sõltu vahetulemustest
  • Hargnev algoritm – sammude täitmise järjekord sõltub mingist tingimusest või vahetulemusest
  • Tsükliline algoritm – algoritmi mingit osa täidetakse korduvalt

Plokkskeem – algoritmi graafiline kujutamine plokkid ja neid ühendavate noolte abil:

Algus või lõpp

Protsess, tegevused

Sisend või väljund

Otsutus