Дата: 2017-03-02
Группы: ИП-51, ИП-52, ИП-53, ИП-54
Добрый день,
Пришло время делать лабораторные работы. Повторяю, что они у нас не обязательные, как и посещение. Это нужно, в первую очередь, вам, как возможность показать мне свой код и получить советы, как его улучшить по размеру, стилю, производительности и концептуально. Мы начнем с чего-то простого, для того, чтобы вы потренировались писать на JavaScript. Задания у нас по выбору, любое из перечисленных ниже, можно несколько, а если кому интересно что-то свое, то можете написать такое, чтобы меня удивить. Все задания я завел в GitHub, в соответствующих репозиториях.
Cписок заданий:
- Переписать с прототипного наследования на классовое пример с двусвязными списками: HowProgrammingWorks/LinkedList#5
- Добавить в LinkedList еще методы, можно взять из списка, можно свои: HowProgrammingWorks/LinkedList#6
- Переписать дерево с прототипного наследования на классовое: HowProgrammingWorks/Trees#7
- Добавить дереву методов: HowProgrammingWorks/Trees#6
- Написать оринтированный граф (можно на прототипах, классах, функциях) https://github.com/HowProgrammingWorks/DirectedGraph
- Модифицировать https://github.com/HowProgrammingWorks/KnowledgeMap Задания есть тут: https://github.com/HowProgrammingWorks/KnowledgeMap/issues
- Сравнить производительность прототипного, классового и наследования на замыканиях, в эту репу: https://github.com/HowProgrammingWorks/Benchmark
Кто хочет, вместо лаб или дополнительно к ним нужно помочь преподавателю АСОИУ, Баклану Игорю Всеволодовичу, который у вас будет читать декларативное и функциональное программирование, переложить его материалы и примеры кода с сайта http://baklaniv.at.ua/ (на котором куча рекламы и не очень удобно), на GitHub в эту нашу организацию https://github.com/HowProgrammingWorks/
С уважением,
~Тимур Шемсединов