Вы упорядочиваете свои функции и переменные по их назначению или по неизменному набору правил? Это Open Mike, серия дискуссионных сообщений, чтобы бросить кота среди голубей. Эти сообщения все о вас — мы хотим услышать ваши мнения, идеи и мысли. Это так же просто, как они приходят; один вопрос, один опрос, но потенциально огромная дискуссия. Давайте послушаем, что вы скажете об организации кода .
Существует два подхода к упорядочению свойств и методов в ваших классах:
Методологический подход
Вы можете иметь строгий набор правил, таких как:
- Импорт организован в алфавитном порядке.
- Публичные консты приходят сразу после имени класса, затем частные.
- После констант идут переменные: публичные, защищенные, приватные, затем внутренние; все расположено в алфавитном порядке.
- Функция конструктора идет после переменных.
- Открытые функции идут после конструктора, затем защищенные, частные и внутренние; опять все в алфавитном порядке.
Эти правила не принимают во внимание то, что делают какие-либо переменные или функции; они просто предоставляют вам простой способ убедиться, что все на своем месте. Вы можете легко найти любой код, который вы ищете, хотя приличный редактор кода все равно сделает это легко.
Функциональный подход
На другой стороне спектра вы можете сгруппировать свои функции и переменные по назначению . Возможно, весь код, связанный с инициализацией класса, идет вверху, а код для его деконструкции — снизу.
Это облегчает чтение кода, хотя может быть сложнее найти конкретную функцию в спешке. Некоторые утверждают, что в этом нет необходимости, поскольку в любом случае класс должен содержать только код, необходимый для одной цели .
Какой у тебя подход?
Итак, как вы расположите свой код? Методически, функционально или какая-то смесь из двух? Примите участие в нашем опросе на Facebook и дайте нам знать 🙂