-
Notifications
You must be signed in to change notification settings - Fork 38
Coding style
В своем коде следуйте этим guidelines
- Не используйте сокращения!
- В проекте используется Indentation - 2
‼️ для Tab width, Indent width
Все git commit
проходят code review
К merge
принимаются:
- Коммиты только warnings
⚠️ на TODO и FIXME от SwiftLint (В release допускаются без warnings) - Не допускаются к
git commit
пустые изменения - для отмены используйтеdiscard hunk
См.примеры - При создании новой ветки указываем
тип таски/id таски/краткое описание
- PR с небольшим количеством изменений, точное число вам подскажет
git hook
😉
Правила оформления pull request
- Название задачи и ссылка в трелло См.примеры
- Описание, что было сделано
- На что обратить внимание, как тестировать
- (Optional) Связанные таски
- (Optional) При разбиении пул-реквеста указать поэтапный список реализации
Шаблон можете посмотреть тут
Примеры
-
Создание ветки Задача в трелло ->
https://trello.com/c/*oIO4hMDV*/events-screen
Ветка ->feature/*oIO4hMDV*/add-event-screen
-
Пустые имения Пробелы, удаления и вставки кода без изменений и т.д.
Правила о названиях
- Controller — это то место, где нет выполняемой логики, но есть взаимодействие разных классов
- Учитываете следующее при названии протоколов ☟
-
Protocols that describe what something is should read as nouns (e.g. Collection).
-
Protocols that describe a capability should be named using the suffixes able, ible, or ing (e.g. Equatable, ProgressReporting).
-
Для расширений <название типа>+<существительное компонента с большой буквы> См.примеры
Структура проекта должна совпадать со структурой файлов
Примеры
- Создание
extensions
дляString
String+Localization
, используем путь
Extensions/Foundation/String/String+ Localization.swift
Стили проекта
В проекте используются шрифты, цвета только те, которые уже заданы в extensions
- Шрифт задаются через
enum UIFont.FontType
следующим образом ☞UIFont.appFont(.gothamProMedium(size: 14))
- Цвета задаются через
enum UIColor. ColorType
следующим образом ☞UIColor(.grey)
Home 🏡
Product 📱
Development 💻
Management 🚦