3622
правки
Изменения
продвинутый for, (), enum
* Дополнение к концепции Python-style (надо понимать, что фигурные скобки, лишние круглые скобки, двоеточия после условий (хотя после главной функции можно) и многое другое {{---}} всё сделано для того, чтобы написать компилятор было проще, а программы компилировались быстрей, поэтому в псевдокоде надо стараться избегать всяких особенностей конкретного языка программирования, чтобы повысить читаемость кода)
** Операторы, ключевые слова, название самой глобальной функции, типы данных оборачивать в тройные кавычки ('''for''', '''if''', '''return''', '''and''', '''pushFront''', '''int''' и другие)
*** '''void''' _НЕ_ писать, если функция возращает ''ничего'', тип указывается, только если он разумный
** Использовать словесное обозначение логических операций ('''and''', '''or''', '''xor''', '''not''' вместо &&, ||, !)
*** Вместо побитового '''xor'''-а ^ (крышечка) лучше писать <tex> \bigoplus </tex> (ниже о том, зачем это нужно)
*** Проверку типов и приведение к типу(если вдруг понадобится) писать как '''is''' и '''as'''
** '''new''' _НЕ_ писать при создании экземпляра класса
** TODO: При нисходящем '''for''' писать '''downto'''*** Итерируясь по объектам (рёбра, работы и другие) желательно использовать '''foreach''', чтобы было понятно {{---}} используется другой вид '''for''', хотя в языке программирования они вполне могут быть реализованы более-менее одинаково*** Можно писать '''for''' по числам и через две точки ('''for''' i = 1..10) или через '''to''' ('''for''' i = 1 to 10), но надо понимать, что-нибудь разумное про последний элемент итерации ''включается'', а внутри одного конкспекта придерживаться одного стиля**** Ещё хочется, чтобы массивы и строки индексировались с <tex> 1 </tex>, чтобы не делать лишних вычитаний (так правда смотрится красивее), но не обязательно так делать** ''enum'', типа -поля класса или просто переменные выделять его курсивомв псевдокоде** У методов size(), length() можно не писать круглые скобки {{---}} трудно придумать случай, когда реализация функций отличается от просто поля в экземпляре класса чем-то существенным (это уже просто инкапсуляция языков программирования)*** len(queue), len(array) не писать {{---}} лишние скобки мешают читаемости*** TODO: надо ли заменять isEmpty на <tex> == \varnothing </tex> ?
* Случаи использования tex в псевдокоде:
** <tex> \varnothing, \emptyset </tex> вместо null