31
Советы по написанию кода. Именование, массивы, перечисления

Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

  • Upload
    solit

  • View
    161

  • Download
    0

Embed Size (px)

DESCRIPTION

Воробьёв Артём, Минск. Работал программистом в сфере защиты информации, затем перешел в область мобильных разработок, сейчас занимается разработкой игр для мобильных устройств. «Советы по написанию кода: именование, массивы и перечисления». Development секция. Для студентов и разработчиков.В презентации будут даны некоторые советы по именованию переменных и классов, а также некоторые соображения по использованию массивов и перечислений для написания более качественного кода. В презентации для пояснения идей будут использованы небольшие куски кода.

Citation preview

Page 1: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Советы по написанию кода.

Именование, массивы, перечисления

Page 2: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

О себеВоробьев Артем

Разработчик игр вSofteq Development

artyom.vorobyov

arvorobyov

[email protected]

Page 3: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

О чем будем говорить:

• Документирование кода

• Советы по именованию

• Использование массивов и перечислений

Page 4: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

1. Документирование кода

• Написание специальных документов

• Использование соглашений

• Написание комментариев

• Названия классов, переменных, методов и констант

• Использование архитектурных схем

Page 5: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Использование соглашений

• Гайдлайн – это требования, советы и рекомендации

• Можно использовать гайдлайны известных разработчиков (Google, Apple и т.д.)

• Соглашения могут касаться разных аспектов:

• Когда и как писать комментарии

• Как называть классы

• Как рисовать архитектурные схемы

• Как группировать код

Page 6: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Группировка строк кода (1)

Page 7: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Группировка строк кода (2)

Page 8: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Группировка строк кода (3)

Page 9: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Группировка строк кода (4)

Page 10: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Группировка методов

Page 11: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Написание комментариев

Page 12: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Пишем комментарии

• К блокам кода для группировки

• К интерфейсу классов и методов

• К частям сложного алгоритма для пояснения хода вычислений

• К неочевидным строкам кода (такие комментарии обычно указывают на плохой код)

Page 13: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Комментарии к интерфейсу (1)

Page 14: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Комментарии к интерфейсу (2)

• Здесь использована нотация Javadoc

• Комментируем сам класс, в общем описывая что это такое, для чего нужно и как им пользоваться

• Комментируем public-методы класса

Page 15: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Комментарии к интерфейсу (3)

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

• Комментарии к интерфейсу лучше писать до того, как реализовывать этот интерфейс

• Если вы не можете сформулировать комментарий, это может указывать на ошибку проектирования

Page 16: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

2. Именование

• Используем префиксы к именам классов

• Группирующее слово пишем первым в имени класса

• Группирующее слово пишем первым в имени переменной

Page 17: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Префиксы к именам классов

Page 18: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Группирующее слово в имени класса

Page 19: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Группирующее слово в имени переменной

• Венгерская нотация

• Плохое использование венгерской нотации: привязка исключительно к типу (dw – Double Word, i – Int, b – Byte и т.д.)

• Хрошее использование венгерской нотации: привязка к контексту:

int humanHeight;

float humanWeight

float animalWeight;

Page 20: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Архитектурные схемы (1)

Page 21: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Архитектурные схемы (2)

• Рисуем на листиках или на доске

• Фотографируем схемы с листика или доски

• Храним фотографии как документацию к проекту

• Схемы можно распечатать и делать на них пометки при дальнейшей работе

• Используйте диаграммы классов из UML и OMT (Object Modelling Technique)

Page 22: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

3. Использование массивов

Page 23: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Сворачивание данных в массив• Имеет смысл делать, если вы видите

последовательные блоки кода, осуществляющие однотипные операции над разными объектами

• Упрощает сопровождаемость кода

• Позволяет масштабировать код – если объектов станет больше чем 3, это потребует всего-лишь увеличения массива

• Может быть нецелесообразным в высокопроизводительном коде из-за дополнительных условных операторов

Page 24: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Пример: человек на поле

Page 25: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Сдвинуть человека на соседнюю клетку

Page 26: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

То же, с помощью перечисления

Page 27: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Двигаем человека на соседнюю клетку

Page 28: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Макросы для перечислений

Page 29: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Цикл с макросами

Page 30: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Если нужно поменять порядок направлений

Page 31: Solit 2013, Советы по написанию кода: именование, массивы и перечисления, Воробьев Артем

Спасибо! Вопросы?

?Воробьев Артем

Разработчик игр в Softeq Development

Skype: artyom.vorobyov

обращайтесь!