Основы и методология программирования 2016/2017/167-1: различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к навигации Перейти к поиску
Нет описания правки
Строка 8: Строка 8:
Почта: alexeyum@gmail.com
Почта: alexeyum@gmail.com


== Стиль кода ==
== Семинары ==
 
Весь код необходимо писать в рамках этого стиля. Если у вас возникают вопросы, откуда взялось то или иное правило - смело спрашивайте меня на семинаре.
 
=== Имена пременных ===


Названия переменных должны отражать то, какой смысл эти переменные несут. Это в том числе означает, что имена не должны быть однобуквенными, потому что одной буквой невозможно описать смысл переменной. Исключение составляют общепринятые короткие имена, область использования которых ограничена несколькими строками: i как счетчик цикла, a, b, ..., x, y, ... в математических функциях. Если есть сомнения, что данная переменная попадает под исключение, лучше использовать длинное имя.
Код программ мы пишем в соответствии со [http://wiki.cs.hse.ru/%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%BD%D1%8F%D1%82%D0%B8%D1%8F_%D0%BF%D0%BE_%D0%BA%D1%83%D1%80%D1%81%D1%83_%D0%9E%D0%B8%D0%9C%D0%9F/C%2B%2B_check стилем]
 
Не нужно использовать сокращения в именах.
 
Не используйте транслит для именования переменных.
 
== Семинары ==


=== 02.11 ===
=== 02.11 ===

Версия от 20:36, 15 ноября 2016

Общая информация

Время для консультаций (по предварительной договоренности):

  • Среда 11:00 - 12:00, 13:30 - 14:30
  • Пятница 11:00 - 12:00, 13:40 - 15:00

аудитория 623

Почта: alexeyum@gmail.com

Семинары

Код программ мы пишем в соответствии со стилем

02.11

05.11 - 11.11

Вот несколько часто используемых ситуаций при работе с программами

  • Компиляция с сохранением результата в заданный файл

$ clang++ mycode.cpp -o myoutput

  • Компиляция для стандарта C++11

$ clang++ mycode.cpp -std=c++11

  • Компиляция с оптимизацией

$ clang++ mycode.cpp -O3

  • Компиляция с сохранением информации для отладчика

$ clang++ mycode.cpp -g

  • Запускаем отладчик, потом в нем ставим брейкпоинт и запускаем программу

$ gdb ./a.out

> break 42

> run

  • Перенаправляем вывод (stdout/cout) в output.txt, лог ошибок (stderr/cerr) в errorlog.txt и читаем ввод (stdin/cin) из input.txt

$ ./a.out < input.txt > output.txt 2> errorlog.txt

  • Перенаправляем один из потоков "в корзину"

$ ./a.out > /dev/null