Прескочи на основното съдържание
moodle
  • Български ‎(bg)‎
    Български ‎(bg)‎ English ‎(en)‎
В момента имате достъп като гост (Влизане)

Електронно обучение по Ruby

  1. Начална страница
  2. Курсове
  3. Архив
  4. Бакалаври, летен семестър 2014/2015
  5. Избираеми дисциплини
  6. Студентски курсове ЕО 2014-2015
  7. Електронно обучение по Ruby
  8. Тема 3 - Външни библиотеки
  9. Домашно 3

Домашно 3

Изисквания за завършване
Отворено: сряда, 24 юни 2015, 00:00
До: сряда, 1 юли 2015, 00:00

Command Line Toolkit

След като се справихте отлично с имплементацията на файлова система, сега е време да проверим вашите UI умения.

Задачата ви този път е да имплементирате framework за изграждане на текстов интерфейс, който би могъл да работи в конзола. Тъй като това е сложна задача, ще се ограничим само до най-базовата функционалност. Това, което трябва да реализирате е частта за "подредба" на компонентите на екрана. Ще изтестваме тази функционалност, създавайки примерен компонент - текстови етикет.

TextScreen

TextScreen е основният обект за изграждане на текстов интерфейс. Той ви позволява да дефинирате изгледа на вашето приложение, указвайки какви компоненти съдържа той и по какъв начин са подредени. Използваме го по следния начин:

UI::TextScreen.draw do
  # ...
end

На мястото на коментара задаваме интерфейса на приложението, използвайки методите, описани в следващите секции. Резултатът от TextScreen.draw е String, съдържащ текстовото представяне на дефинираните компоненти.

label

Текстовият етикет е компонентът, с който ще тестваме подредбата на нашия UI. Пример:

screen = UI::TextScreen.draw do
  label text: 'Something'
end
puts screen

Горното парче код принтира Something на стандартния изход.

Подредба на компонентите

По подразбиране TextScreen подрежда компонентите си хоризонтално.

screen = UI::TextScreen.draw do
  label text: 'Something'
  label text: 'else'
end
puts screen

Резултатът от изпълнение на кода горе е принтиране на Somethingelse на стандартния изход.

Можем да променяме това поведение на TextScreen използвайки групи.

Вертикална група

Вертикална група създаваме с метода vertical. Всички компоненти, дефинирани в групата, се подреждат вертикално, един под друг. Пример:

screen = UI::TextScreen.draw do
  vertical do
    label text: '1'
    label text: '2'
    label text: '3'
  end
end

Резултатът от screen.to_s e 1\n2\n3\n, което принтирано на стандартния изход визуализира етикетите един под друг.

Хоризонтална група

Хоризонтална група създаваме с метода horizontal. Всички компоненти, дефинирани в групата, се подреждат хоризонтално, един след друг. Пример:

screen = UI::TextScreen.draw do
  horizontal do
    label text: '1'
    label text: '2'
    label text: '3'
  end
end

Резултатът от screen.to_s e 123, което принтирано на стандартния изход визуализира етикетите един до друг.

Комбиниране на групи

Можем да комбинираме групи, за да създаваме по-сложни изгледи. Кодът по-долу описва табличен интерфейс:

screen = UI::TextScreen.draw do
  vertical do
    horizontal do
      label text: '1'
      label text: '2'
      label text: '3'
    end
    horizontal do
      label text: '4'
      label text: '5'
      label text: '6'
    end
    horizontal do
      label text: '7'
      label text: '8'
      label text: '9'
    end
  end
end

Резултатът след принтиране на screen e:

123
456
789

Стилизиране на компоненти

Да организираме компоненти по екрана е важно, но не достатъчно. Искаме възможност за стилизиране на компонентите, преди те да бъдат нарисувани. Въвеждаме следните две опции за избиране на стил на компонент:

Рамка

Методът label приема няколко незадължителни именувани аргумента (keyword arguments). Един от тях е border. По подразбиране стойността на border за всеки компонент е nil, което символизира липсата на рамка. Можем да зададем произволен низ, който да бъде използван за рамка на компонента. Рамката чертаем в ляво и дясно от съдържанието на компонента.

screen = UI::TextScreen.draw do
  label text: 'bordered', border: '|'
end

Резултатът в screen е низът "|bordered|".

Рамки можем да слагаме и на групи от компоненти:

screen = UI::TextScreen.draw do
  horizontal border: '#' do
    label text: '1'
    label text: '2'
    label text: '3'
  end
end

Резултатът в screen е низът "#123#".

При вертикални групи е важно да съобразим рамката с най-широкия елемент, за да не я начертаем накриво :)

screen = UI::TextScreen.draw do
  vertical border: '|' do
    label text: 'ha'
    label text: 'haha'
    label text: 'hahahaha'
  end
end

Резултатът след принтиране на screen е:

|ha      |
|haha    |
|hahahaha|

Стилове

Освен възможността за поставяне на рамка около компонентите, добавяме и изискването за избиране на стил. Това става чрез задаване на стойност на параметъра style, като валидни стойности са :upcase, :downcase и nil (стойността по подразбиране). :upcase и :downcase променят визуализацията на компонент, превръщайки буквите му съответно в главни и малки. nil символизира липса на указан стил, при което компонентът се "рендерира" без някаква промяна.

screen = UI::TextScreen.draw do
  horizontal style: :upcase do
    label text: 'ha'
    label text: 'HA', style: :downcase
    label text: 'ha'
  end
end

Резултатът в screen е низът HAhaHA.

Дизайн на кода

Както и в предната задача, ще спазим добрата практика целият код на нашата малка библиотечка да се намира в модул, с цел по-добра капсулация. Модулът е UI. Извън този модул не трябва да имате нищо друго.

От друга страна, имате пълна свобода да слагате в UI колкото искате други класове и модули и да съставите такава архитектура, каквато ви харесва, стига да спазите описания по-горе публичен интерфейс.

DSL

Методите, използвани за описание на екраните, са тясно свързани с проблемната област. Имената им и начинът, по който ги ползваме, моделират тази проблемна област. Тази концепция се нарича domain-specific language. Съкращава се като DSL. Това е задачата ви – да имплементирате един DSL.

Тези методи трябва да са налични само в блока, подаван на draw. Извън него те не трябва да работят. Това не трябва да са глобални методи. Не трябва да ги има в Object. Ще има тестове, които ще проверяват това. Ако видим такива методи в Object, ще ви възнаградим и с наказателни точки.

Бележка

Ще тестваме само с латиница и специални символи от сорта на |~!@#$%^&*. Други азбуки към момента не ни вълнуват.

Примерни тестове

Примерните тестове се намират в хранилището ни в GitHub!

Ограничения

Тази задача има следните ограничения:

  • Най-много 6 реда на метод
  • Най-много 80 символа на ред
  • Най-много 1 нива на влагане
  • Най-много 6 метода в клас
  • Не ползвайте ; за да разделяте изрази
  • Без whitespace на края на реда
  • Изисква валиден синтаксис
  • Забранява използването на глобални променливи
  • Налага спазване на конвенциите за именуване
  • Най-много 3 аргумента на метод
  • Налага спазване на конвенциите за поставяне на интервали около оператори
  • Изисква да ползвате само комбинации валидни английски думи за именуване, със следните изключения: upcase downcase delegator

◄ Видео материал
Упражнение за външни библиотеки ►

Блокове

Прескочи Навигация

Навигация

  • Начална страница

    • Страници от сайта

      • Моите курсове

      • Етикети

      • СтраницаЧесто задавани въпроси (FAQ)

      • ФорумНовини за сайта

      • СтраницаНастройки на автоматично генериран курс

    • Моите курсове

    • Курсове

      • Архив

        • Магистри, летен семестър 2023/2024

          • САППМ

          • Избираеми дисциплини

          • АГТЧ

          • ТГД

          • ТОППИТ

          • ИМЗПМКМИТ

          • ЛиА-инф

          • ТПИ в ИТ

          • Задочно обучение

            • ЕО

            • Избираеми дисциплини

            • ЛА-на англ.

            • ТОМИ

          • ТОМИ

          • ЕО

          • ММИ

          • ВАС

          • Мех&роб

          • КомпГраф

          • ИИОЗ

          • ИМиММ

          • ИИ

          • ЗИКСМ

          • БМИ

          • СофТех

          • ИС

        • Бакалаври, летен семестър 2023/2024

          • АД

          • Стат

          • ИС

          • И

          • М

          • КН

          • ПрМ

          • СИ

          • Избираеми дисциплини

            • Студентски курсове ЕО, летен 2023/2024

          • МИ

          • Задочно обучение

            • Избираеми дисциплини

            • МИ

              • Студентски курсове, задочно обучение, летен 2023/2024

        • Магистри, зимен семестър 2023/2024

          • ИМЗПМКМИТ

          • ТОППИТ

          • АГТ

          • ММИ

          • Избираеми дисциплини

          • ЕО

          • ВАС

          • Мех&роб

          • ТГД

          • ТПИ в ИТ

          • РСиМТ

          • КомпГраф

          • ИИОЗ

          • Задочно обучение

            • ЕО

            • Избираеми дисциплини

            • ЛА-на англ.

            • ТОМИ

          • ТОМИ

          • ИС

          • ЛиА-инф

          • БМИ

          • ИИ

          • СофТех

          • ЗИКСМ

          • ВПИ (HPC)

        • Бакалаври, зимен семестър 2023/2024

          • Избираеми дисциплини

          • М

          • Стат

          • И

          • МИ

          • СИ

          • ПрМ

          • КН

          • ИС

          • АД

          • Задочно обучение

            • Избираеми дисциплини

            • МИ

        • Магистри, летен семестър 2022/2023

          • РСиМТ

          • Избираеми дисциплини

          • ВАС

          • ТОППИТ

          • Задочно обучение

            • Избираеми дисциплини

            • ТОМИ

          • ТОМИ

          • ТПИ в ИТ

          • ИМиММ

          • КомпГраф

          • ММИ

          • ЛиА-инф

          • ЕО

          • ИМЗПМКМИТ

          • БМИ

          • СофТех

          • Мех&роб

          • ИИОЗ

          • ИС

          • ИИ

          • ЗИКСМ

        • Бакалаври, летен семестър 2022/2023

          • АД

          • МИ

          • М

          • КН

          • И

          • ИС

          • Избираеми дисциплини

            • Студентски курсове ЕО 2022/2023 редовно

          • СИ

          • Стат

          • ПрМ

          • Задочно обучение

            • Избираеми дисциплини

            • МИ

              • Студентски курсове, задочно обучение, летен 2022/2023

        • Магистри, зимен семестър 2022/2023

          • ЕО

          • ИМиММ

          • Опт

          • УМФ

          • ТОМИ

          • Задочно обучение

            • ЕО

            • ТОМИ

            • Избираеми дисциплини

            • ЛА-на англ.

          • ИМЗПМКМИТ

          • Мех&роб

          • КомпГраф

          • ТПИ в ИТ

          • БМИ

          • ТОППИТ

          • Избираеми дисциплини

          • ВАС

          • ЗИКСМ

          • ИИ

          • ИС

          • ИИОЗ

          • ЛиА-инф

          • ММИ

          • РСиМТ

          • РСМТ-летен прием

          • СофТех

        • Бакалаври, зимен семестър 2022/2023

          • Избираеми дисциплини

          • АД

          • КН

          • ПрМ

          • М

          • Стат

          • МИ

          • ИС

          • СИ

          • И

          • Задочно обучение

            • Избираеми дисциплини

            • МИ

        • Магистри, летен семестър 2021/2022

          • АГТ

          • РСМТ-летен прием

          • Избираеми дисциплини

          • ТОМИ

          • ЛиА-инф

          • ВАС

          • КомпГраф

          • ММИ

          • ИМиММ

          • ИС

          • УМФ

          • Мех&роб

          • Задочно обучение

            • Избираеми дисциплини

            • ТОМИ

            • ЛА-на англ.

            • ЕО

          • ЕО

          • БМИ

          • ИИОЗ

          • ВС

          • ТПИ в ИТ

          • СофТех

          • ИИ

          • ЗИКСМ

        • Бакалаври, летен семестър 2021/2022

          • Стат

          • М

          • КН

          • СИ

          • И

          • ИС

          • Задочно обучение

            • Избираеми дисциплини

              • Студентски курсове по ЕО, задочно обучение 2021/2022

            • МИ

          • МИ

          • Избираеми дисциплини

            • Студентски курсове по ЕО 2021/2022, редовно обучение

          • ПрМ

        • Магистри, зимен семестър 2021/2022

          • ИМиММ

          • Избираеми дисциплини

          • ЛиА-инф

          • УМФ

          • Задочно обучение

            • ТОМИ

            • Избираеми дисциплини

            • ЛА-на англ.

            • ЕО

          • ЕО

          • ТПИ в ИТ

          • Мех&роб

          • КомпГраф

          • РСиМТ

          • СофТех

          • ВС

          • БМИ

          • ТОМИ

          • ИИОЗ

          • ИС

          • ИИ

          • ЗИКСМ

          • ММИ

          • ВАС

        • Бакалаври, зимен семестър 2021/2022

          • Избираеми дисциплини

          • М

          • И

          • МИ

          • СИ

          • Стат

          • ПрМ

          • КН

          • ИС

          • Задочно обучение

            • МИ

            • Избираеми дисциплини

        • Магистри, летен семестър 2020/2021

          • РСМТ-летен прием

          • АГТ

          • РСиМТ

          • Избираеми дисциплини

          • ТОМИ

          • ММИ

          • ИМиММ

          • ТЗИ

          • КомпГраф

          • ВАС

          • ТПИ в ИТ

          • Задочно обучение

            • Избираеми дисциплини

            • ТОМИ

            • ЕО

          • ЕО

          • ИС

          • Мех&роб

          • ЛиА-инф

          • ИИ

          • ИИОЗ

          • ЗИКСМ

          • БМИ

          • СофТех

        • Бакалаври, летен семестър 2020/2021

          • Стат

          • М

          • ПрМ

          • КН

          • ИС

          • СИ

          • И

          • МИ

          • Избираеми дисциплини

            • Студентски курсове ЕО 2020/2021 редовно обучение

          • Задочно обучение

            • Избираеми дисциплини

            • МИ

              • Студентски курсове, задочно обучение, летен 2020/2021

        • Магистри, зимен семестър 2020/2021

          • ИМиММ

          • ДАС

          • РСиМТ

          • Избираеми дисциплини

          • КомпЛингв

          • ЛиА-инф

          • ЛА-на англ.

          • Мех&роб

          • ТПИ в ИТ

          • БМИ

          • Задочно обучение

            • ЛА-на англ.

            • Избираеми дисциплини

            • ТОМИ

            • ЕО

          • ЕО

          • КомпГраф

          • СофТех

          • УМФ

          • ТЗИ

          • ВС

          • ИИОЗ

          • ИС

          • Опт

          • УМФ&пр.

          • ММИ

          • ИИ

          • РСМТ-летен прием

          • ВАС

          • ТОМИ

          • ЗИКСМ

        • Бакалаври, зимен семестър 2020/2021

          • Избираеми дисциплини

          • Задочно обучение

            • МИ

            • Избираеми дисциплини

              • Студентски курсове по ЕО, задочно обучение 2020/2021

          • Стат

          • ПрМ

          • МИ

          • М

          • И

          • КН

          • СИ

          • ИС

        • Магистри, летен семестър 2019/2020

          • Избираеми дисциплини

          • ТОМИ

          • УМФ&пр.

          • ЛиА-инф

          • ТПИ в ИТ

          • ВАС

          • ЗИКСМ

          • Задочно обучение

            • Избираеми дисциплини

            • ЛА-на англ.

            • ТОМИ

          • ЕО

          • УМФ

          • ИМиММ

          • ДАС

          • СофТех

          • Мех&роб

          • КомпГраф

          • ИИ

          • ИИОЗ

          • БМИ

          • ВС

          • ИС

        • Бакалаври, летен семестър 2019/2020

          • Стат

          • ПрМ

          • М

          • СИ

          • МИ

          • Задочно обучение

            • МИ

              • Студентски курсове, задочно обучение, летен 2019/2020

            • Избираеми дисциплини

          • КН

          • ИС

          • И

          • Избираеми дисциплини

            • Студентски курсове ЕО 2019-2020 редовно

        • Магистри, зимен семестър 2019/2020

          • ИМиММ

          • Избираеми дисциплини

          • ЕО

          • ММИ

          • Мех&роб

          • КомпГраф

          • ТПИ в ИТ

          • ЛиА-инф

          • УМФ

          • УМФ&пр.

          • ИС

          • ТЗИ

          • ИИОЗ

          • РСиМТ

          • ИИ

          • БМИ

          • АГТ

          • ВАС

          • Задочно обучение

            • Избираеми дисциплини

            • ЕО

            • ЛА-на англ.

            • ТОМИ

            • ЕБ на англ.ез.-летен

          • ТОМИ

          • ЗИКСМ

          • СофТех

          • ВС

        • Бакалаври, зимен семестър 2019/2020

          • Задочно обучение

            • Избираеми дисциплини

            • МИ

          • МИ

          • Стат

          • ПрМ

          • М

          • СИ

          • КН

          • ИС

          • И

          • Избираеми дисциплини

        • Магистри, летен семестър 2018/2019

          • ЕБиЕУ

          • Избираеми дисциплини

          • РСиМТ

          • ТЗИ

          • Задочно обучение

            • Избираеми дисциплини

            • ЛА-на англ.

            • ТОМИ

            • ЕБ на англ. ез.

          • БМИ

          • ИМиММ

          • ВАС

          • ТОМИ

          • ТПИ в ИТ

          • ЕО

          • СофТех

          • Мех&роб

          • ЛиА-инф

          • КомпГраф

          • ИТУП

          • ИС

          • ИИ

          • ИИОЗ

          • ЗИКСМ

          • ВС

        • Магистри, зимен семестър 2018/2019

          • Опт

          • ИМиММ

          • АГТ

          • Задочно обучение

            • Избираеми дисциплини

            • ЛА-на англ.

          • ЕБ на англ. ез.

          • УМФ

          • ТОМИ

          • ЛиА-инф

          • ИС

          • ЕБиЕУ

          • ММИ

          • ВАС

          • КомпГраф

          • ТЗИ

          • ЕО

          • ТПИ в ИТ

          • Мех&роб

          • ВС

          • ИТУП

          • КомпЛингв

          • ЗИКСМ

          • СофТех

          • БМИ

          • ИИ

          • ИИОЗ

          • РСиМТ

          • Избираеми дисциплини

        • Бакалаври, летен семестър 2018/2019

          • Избираеми дисциплини

            • Студентски курсове ЕО 2018-2019 редовно

          • СИ

          • ИС

          • Задочно обучение

            • Избираеми дисциплини

            • МИ

          • МИ

          • Стат

          • ПрМ

          • М

          • И

          • КН

        • Бакалаври, зимен семестър 2018/2019

          • Избираеми дисциплини

          • СИ

          • Задочно обучение

            • Избираеми дисциплини

            • МИ

          • МИ

          • Стат

          • ПрМ

          • М

          • КН

          • ИС

          • И

        • Магистри, летен семестър 2017/2018

          • ДСиТЧ - летен прием

          • РСМТ-летен прием

          • Задочно обучение

            • ЕБ на англ. ез.

            • Избираеми дисциплини

          • РСиМТ

          • ЗИКСМ

          • ИИ

          • ВАС

          • ЕО

          • ЛиА-инф

          • УМФ

          • Избираеми дисциплини

          • БМИ

          • ВС

          • ТОМИ

          • ИМиММ

          • ТЗИ

          • СофТех

          • Мех&роб

          • ИТУП

          • ИС

          • КомпГраф

          • ИИОЗ

        • Бакалаври, летен семестър 2017/2018

          • ИС

          • М

          • КН

          • Избираеми дисциплини

            • Студентски курсове ЕО 2017-2018 редовно

          • Стат

          • И

          • ПрМ

          • МИ

          • Задочно обучение

            • Избираеми дисциплини

            • МИ

          • СИ

        • Магистри, зимен семестър 2017/2018

          • АГТ

          • ММИ-летен

          • ТОМИ

          • ДАС

          • ТЗИ

          • РСМТ-летен прием

          • Избираеми дисциплини

          • ЗИКСМ

          • ИМиММ

          • ММИ

          • ЛиА-инф

          • БМИ

          • ВАС

          • СофТех

          • Мех&роб

          • КомпГраф

          • ИТУП

          • ИС

          • ИИ

          • ВС

          • КомпЛингв

          • ИИОЗ

          • ЕБиЕУ

          • Задочно обучение

            • Избираеми дисциплини

            • ЛА-на англ.

            • ЕО

            • ЕБ на англ. ез.

          • ЕО

          • РСиМТ

          • УМФ

        • Бакалаври, зимен семестър 2017/2018

          • Избираеми дисциплини

          • СИ

          • Стат

          • ПрМ

          • КН

          • ИС

          • МИ

          • Задочно обучение

            • МИ

            • Избираеми дисциплини

          • М

          • И

        • Магистри, летен семестър 2016/2017

          • ЛА-на англ.

          • ИМиММ

          • ВАС

          • ЕО

          • УМФ

          • ТПИ в ИТ

          • ТЗИ

          • СофТех

          • Мех&роб

          • ИТУП

          • ИС

          • ИИОЗ

          • ИИ

          • Задочно обучение

            • Избираеми дисциплини

            • ТОМИ

          • ТОМИ

          • ЗИКСМ

          • КомпГраф

          • ВС

          • БМИ

          • Избираеми дисциплини

        • Бакалаври, летен семестър 2016/2017

          • Избираеми дисциплини

            • Студентски курсове ЕО 2016-2017 редовно

          • СИ

          • ИС

          • М

          • МИ

          • Стат

          • КН

          • И

          • Задочно обучение

            • Избираеми дисциплини

              • Студентски курсове ЕО 2016-2017

            • МИ

          • ПрМ

        • Бакалаври, зимен семестър 2016/2017

          • Избираеми дисциплини

          • Стат

          • М

          • Задочно обучение

            • Избираеми дисциплини

            • МИ

          • ИС

          • ПрМ

          • МИ

          • И

          • КН

          • СИ

        • Магистри, зимен семестър 2016/2017

          • ЕБ на англ. ез.

          • Задочно обучение

            • ТОМИ

            • Избираеми дисциплини

            • ЕО

          • ТОМИ

          • ЛиА-инф

          • УМФ

          • КомпЛингв

          • ИТУП

          • ЛА-на англ.

          • ТПИ в ИТ

          • ДАС

          • Избираеми дисциплини

          • Опт

          • ЛА

          • ММИ

          • ЕО

          • Мех&роб

          • КомпГраф

          • ВАС

          • ВС

          • АГТ

          • БМИ

          • ТЗИ

          • ЗИКСМ

          • ИИОЗ

          • ЕБиЕУ

          • ИМиММ

          • ИС

          • ИИ

          • СофТех

          • РСиМТ

        • Магистри, летен семестър 2015/2016

          • Избираеми дисциплини

          • Мех&роб

          • ЛА

          • ИМиММ

          • ДАС

          • ТЗИ

          • ИС

          • СофТех

          • ИИОЗ

          • ИИ

          • КомпГраф

          • ЗИКСМ

          • ВАС

          • Задочно обучение

            • ТОМИ

          • БМИ

          • ММИ-летен

          • ЕО

          • РСМТ

        • Бакалаври, летен семестър 2015/2016

          • М

          • Стат

          • Задочно обучение

            • МИ

          • МИ

          • ПрМ

          • ИС

          • И

          • СИ

          • КН

          • Избираеми дисциплини

            • Студентски курсове ЕО 2015-2016

        • Магистри, зимен семестър 2015/2016

          • Опт

          • КомпЛингв

          • Мех&роб

          • Избираеми дисциплини

          • ВАС

          • Задочно обучение

            • Избираеми дисциплини

            • ВАС

            • ТОМИ

            • ЕО

          • ТОМИ

          • ТЗИ

          • КомпГраф

          • ИИОЗ

          • БМИ

          • ММИ

          • ИМиММ

          • ЗИКСМ

          • ЕО

          • ЛА

          • ЕБиЕУ

          • ИС

          • ЛиА-инф

          • ЕБ на англ. ез.

          • ВС

          • СофТех

          • ИИ

          • РСиМТ

          • Прием

        • Бакалаври, зимен семестър 2015/2016

          • ПрМ

          • Стат

          • Задочно обучение

            • Избираеми дисциплини

            • МИ

          • МИ

          • И

          • ИС

          • СИ

          • М

          • КН

          • Избираеми дисциплини

        • Магистри, летен семестър 2014/2015

          • БМИ

          • ВАС

          • ВС

          • ЕО

          • Задочно обучение

            • Избираеми дисциплини

            • ТОМИ

            • ЕО

          • ЗИКСМ

          • Избираеми дисциплини

          • ИИ

          • ИИОЗ

          • ИМиММ

          • ИС

          • ИТУП

          • КомпГраф

          • КомпЛингв

          • ЛА

          • РСиМТ

          • СофТех

          • ТЗИ

          • ТОМИ

          • УМФ

        • Бакалаври, летен семестър 2014/2015

          • Задочно обучение

            • Избираеми дисциплини

            • МИ

          • И

          • Избираеми дисциплини

            • Студентски курсове ЕО 2014-2015

              • Programming in C#

              • Електронно обучение по Ruby

                • Програмиране с Ruby

                • Тема 1 - Въведение в Ruby

                • Тема 2 - Типове данни

                • Тема 3 - Външни библиотеки

                  • ФайлGems.pdf

                  • URLОфициална документация

                  • URLRuby toolbox

                  • URLВидео материал

                  • ЗаданиеДомашно 3

                  • URLУпражнение за външни библиотеки

                • Тема 4 - Обектно-ориентирано програмиране

                • Тема 5 - Методи, класове и нследяване

                • Тема 6 - Предефиниране на методи

                • Тема 7 - Процедурно програмиране

                • Тема 8 - Глобални и локални променливи

                • Тема 9 - Exceptions Handling

                • Тема 10 - Ruby on Rails

                • Финален тест

              • iOS development

              • Въведение и основи на криптографията 2015

              • Proben kurs

              • Тест

              • Microsoft Office за начинаещи

              • Компютърни архитектури - практикум

              • Компютърни архитектури

              • Разработване на приложения с C#

              • Най - важните теми от математиката в училище

            • Софтуер за научна визуализация

            • Семинар по функционален анализ

            • Компютърна евристика (задочно обучение, летен семе...

            • Избрани теми от биоматематиката

            • Теория на солитоните

            • Съдържание и методика на извънкласната работа по м...

            • Математически методи в педагогическата диагностика

            • Коректно поставени задачи за еволюционни уравнения...

            • Динамични системи

            • Бази от данни-практикум сп. И, КН

            • Приложение на групите на Ли в диференциалните урав...

          • ИС

          • КН

          • М

          • МИ

          • ПрМ

          • СИ

          • Стат

        • Магистри, зимен семестър 2014/2015

          • АГТ

          • БМИ

          • В&С

          • ВАС

          • ВС

          • ДАС

          • ЕБ на англ. ез.

          • ЕБиЕУ

          • ЕО

          • ЗИКСМ

          • Избираеми дисциплини

          • ИИ

          • ИИОЗ

          • ИМиММ

          • ИС

          • ИТУП

          • КомпГраф

          • КомпЛингв

          • ЛА

          • ЛиА-инф

          • ЛиА-мат

          • Мех&роб

          • ММИ

          • Опт

          • РСиМТ

          • СофТех

          • ТЗИ

          • ТОМИ

          • УМФ

          • УМФ&пр.

        • Бакалаври, зимен семестър 2014/2015

          • И

          • Избираеми дисциплини

          • ИС

          • КН

          • М

          • МИ

          • ПрМ

          • СИ

          • Стат

        • Магистри, летен семестър 2013/2014

          • Био и медицинска информатика

          • Избираеми

          • Информатика

            • Дискретни и алгебрични структури

            • ЕБ и ЕУ

            • ЗИКСМ

            • Извличане на информация и ОЗ

            • Изкуствен интелект

            • Информационни системи

            • ИТ услуги и проекти

            • Компютърна графика

            • Компютърна лингвистика

            • Логика и алгоритми

            • ММ в икономиката

            • Мехатроника и роботика

            • РСМТ

            • Софтуерни технологии

            • Технологии за знания и иновации

          • Математика

            • АГТ

            • Динамични системи и теория на числата

            • Логика и алгоритми

            • Уравнения на математичната физика

          • Математика и информатика

            • EO

            • ТОМИ

          • Приложна математика

            • ВС

            • ИМиМО

            • ММ в икономиката

            • Оптимизация

        • Бакалаври, летен семестър 2013/2014

          • Избираеми дисциплини

            • ЕО - Студентски курсове 2013-2014

          • Информатика

          • Информационни системи

          • Компютърни науки

          • Математика

          • Математика и информатика

          • Приложна математика

          • Софтуерно инженерство

          • Статистика

        • Бакалаври, зимен семестър 2013/2014

          • Избираеми курсове

          • Информатика

          • Информационни системи

          • Компютърни науки

          • Математика

          • Математика и информатика

          • Приложна математика

          • Софтуерно инженерство

          • Статистика

        • Магистри, зимен семестър 2013/2014

          • Биомедицинска информатика

          • ЕБ и ЕУ

          • Електронно обучение

            • Студентски курсове 2013-2014

          • Извличане на информация и ОЗ

          • Изкуствен интелект

          • Информационни системи

          • ИТ услуги и проекти

          • РСМТ

          • Софтуерни технологии

          • ТОМИ

        • Летен семестър 2012/2013

          • Избираеми курсове

          • Информатика

          • Информационни системи

          • Компютърни науки

          • Математика

          • Математика и информатика

          • Приложна математика

          • Софтуерно инженерство

          • Статистика

        • Зимен семестър 2012/2013

          • Изборни курсове

          • Информатика

          • Информационни системи

          • Компютърни науки

          • Математика

          • Математика и информатика

          • Приложна математика

          • Софтуерно инженерство

          • Статистика

        • Летен семестър 2011/2012

          • Изборни курсове

          • Информатика

          • Информационни системи

          • Компютърни науки

          • Математика

          • Математика и информатика

          • Приложна математика

          • Софтуерно инженерство

          • Статистика

        • Зимен семестър 2011/2012

          • Изборни курсове

          • Информатика

          • Информационни Системи

          • Компютърни Науки

          • Математика

          • Математика и Информатика

          • Приложна Математика

          • Софтуерно Инженерство

          • Статистика

        • Летен семестър 2010/2011

          • Изборни курсове

          • Информатика

          • Информационни Системи

          • Компютърни Науки

          • Математика

          • Математика и Информатика

          • Приложна Математика

          • Софтуерно Инженерство

          • Статистика

        • Зимен семестър 2010/2011

          • Изборни курсове

          • Информатика

          • Информационни Системи

          • Компютърни Науки

          • Математика

          • Математика и Информатика

          • Приложна Математика

          • Софтуерно Инженерство

          • Статистика

        • Летен семестър 2009/2010

          • Изборни Курсове

          • Информатика

          • Информационни Системи

          • Компютърни Науки

          • Математика

          • Математика и Информатика

          • Приложна Математика

          • Софтуерно Инженерство

          • Статистика

        • Зимен Семестър 2009/2010

          • Дискретни и алгебрични структури

          • Електронно Управление (магистри)

          • Задочно обучение

            • Математика и информатика

          • Изборни курсове

          • Информатика

          • Информационни системи

          • Компютърни науки

          • Математика

          • Математика и информатика

          • Мехатроника и роботика

          • Приложна математика

          • РСМТ

          • Софтуерно инженерство

          • Статистика

        • Летен Семестър 2008/2009

          • Задочно обучение

            • Математика и информатика

          • Изборни Курсове

          • Информатика

          • Информационни системи

          • Компютърни Науки

          • Математика

          • Математика и информатика

          • Мехатроника и роботика

          • Приложна Математика

          • РСМТ

          • Софтуерно Инжинерство

          • Статистика

        • Зимен Семестър 2008/2009

          • Задочно обучение

            • Математика и Информатика

          • Изборни курсове

          • Информатика

          • Информационни системи

          • Компютърни науки

          • Математика

          • Математика и информатика

          • Мехатроника и роботика

          • Приложна математика

          • РСМТ

          • Софтуерно Инжинерство

        • Летен Семестър 2007/2008

          • Изборни курсове

          • Информатика

          • Информационни системи

          • Компютърни науки

          • Математика

          • Математика и информатика

          • Мехатроника и роботика

          • Приложна математика

          • РСМТ

          • Статистика

        • Зимен семестър 2007/2008

          • Изборни курсове

          • Информатика

          • Информационни системи

          • Компютърни Науки

          • Математика

          • Математика и Информатика

          • РСМТ

        • Летен семестър 2006/2007

        • Зимен семестър 2006/2007

        • Летен семестър 2005/06

        • Зимен семестър 2005/06

        • Летен семестър 2004/05

        • Зимен семестър 2004/05

      • Бакалаври, зимен семестър 2025/2026

        • АД-М

        • Стат

        • Задочно обучение

          • МИ

          • Избираеми дисциплини

        • АД

        • ПрМ

        • М

        • И

        • КН

        • СИ

        • ИС

        • МИ

      • Магистри, летен семестър 2024/2025

        • Задочно обучение

          • Избираеми дисциплини

        • РСМТ-летен прием

        • Избираеми дисциплини

        • ВПИ

        • ЛиА-инф

        • ТЗИ

        • ИМЗПМКМИТ

        • ТПИ в ИТ

        • ТГД

        • ИС

        • Мех&роб

        • БМИ

        • ИИОЗ

        • ВС

        • СофТех

        • ИИ

        • ЗИКСМ

        • УМФ&пр.

        • ИМиММ

        • ЛА-на англ.

        • ММИ

        • ВАС

        • ТОМИ

        • КомпГраф

      • Бакалаври, летен семестър 2024/2025

        • Избираеми дисциплини

        • Стат

        • АД

        • АД-М

        • ИС

        • СИ

        • ПрМ

        • И

        • КН

        • М

        • Задочно обучение

          • Избираеми дисциплини

          • МИ

        • МИ

      • Магистри, зимен семестър 2024/2025

        • Опт

        • ИМЗПМКМИТ

        • ВС

        • УМФ&пр.

        • ТЗИ

        • КомпГраф

        • ТПИ в ИТ

        • СофТех

        • Мех&роб

        • БМИ

        • САППМ

        • РСиМТ

        • ИИОЗ

        • ИС

        • Избираеми дисциплини

        • Задочно обучение

          • Избираеми дисциплини

          • ЕО

          • ТОМИ

        • ТОМИ

        • ИИ

        • ЗИКСМ

        • ТГД

        • ВАС

        • ЛиА-инф

        • ВПИ (HPC)

        • ЛА-на англ.

        • ЕО

      • Бакалаври, зимен семестър 2024/2025

        • Избираеми дисциплини

        • Стат

        • АД

        • ПрМ

        • М

        • И

        • МИ

        • КН

        • ИС

        • Задочно обучение

          • Избираеми дисциплини

          • МИ

        • СИ

      • Бакалавърски програми

        • Приложна математика

        • Информационни системи

        • Математика и информатика

      • Магистърски програми

        • ВС

        • ММИ

        • РСМТ

        • ВАС

        • ИС

        • ЕО

        • КИ

      • Докторски програми

        • Теория на вероятностите и математическа статистика

        • Информационни технологии

        • Информационни системи

        • Бази от данни

        • Вградени системи

      • Катедри

        • Алгебра

        • ВОИС

        • Геометрия

        • ИТ

          • Дипломанти ИТ

        • КИ

        • ОМИ

        • МЛП

        • Софтуерни технологии

        • Математически анализ

      • Erasmus+

        • Erasmus+, summer, 2024/2025

        • Erasmus+, fall, 2024/2025

        • Erasmus+, summer, 2023/2024

        • Erasmus+, fall, 2023/2024

        • Erasmus+, summer, 2022/2023

        • Erasmus+, fall, 2022/2023

        • Erasmus+, fall, 2021/2022

        • Erasmus+, summer, 2021/2022

        • Erasmus+, summer, 2020/2021

      • Семинари

      • Учебници и ръководства

      • Административни

        • Атестационна комисия

        • Акредитация

          • 1.3. Педагогика на обучението по… 2023

        • Програма ЕОС

        • Процедури за научни степени и академични длъжности

        • Анкети

        • Събития

      • Държавен изпит

      • Проекти

        • Проекти по програма ЕОС

          • Обучение по Мудъл

            • Учебни курсове

          • Наставници за учебната 2022/2023 г.

          • Информационни системи, ЕОС

        • Еразъм +

        • Project Joint Doctoral School, 2025

        • ДокЦент (BG05M2OP001-2.009-0013)

        • Проект Електронно обучение

          • Модули и курсове за студенти

            • Курсове за продължаващо обучение

          • Курсове за служители от админстрацията на ФМИ

          • Курсове за преподаватели

          • Курсове за обучение на администратори във ФМИ

          • Учебно-методически център за електронно дистанцион...

            • Тестови курсове

        • Проект Докторанти, млади учени и постокторанти

          • Курсове за докторанти

        • Учебни планове и програми

        • Huawei ICT Academy

        • Проекти по ОП

        • УНИТе

        • ФНИ на СУ

        • ИКТвНОС

      • Други факултети

        • ГГФ

        • БФ

        • МФ

        • СтФ

        • ФзФ

        • ФКНФ

        • ФХФ

        • Каритас

        • Internships

      • СДК

        • Профилирана подготовка по информатика и ИТ 2015/2016

        • Профилирана подготовка по информатика и ИТ 2016/2017

      • Учебни материали, разработени по програма ЕОС

      • Учебни материали

      • Кандидатстудентски курсове

        • 2022/2023

        • 2021/2022

        • 2020/2021

        • 2023/2024

        • 2024/2025

Блокове

В момента имате достъп като гост (Влизане)
Ruby
  • Български ‎(bg)‎
    • Български ‎(bg)‎
    • English ‎(en)‎
Информация за запазване на лични данни
Get the mobile app