Найти тему
ГоГофер

Правила нейминга функций и методов в Go

Как senior golang developer, я хочу поделиться своим опытом и знаниями о стандартах наименования функций и методов в языке программирования Go. Хорошо выбранные имена функций и методов могут значительно упростить понимание кода и сделать его более читаемым. В этой статье мы рассмотрим общепринятые стандарты наименования функций и методов в сообществе Go разработчиков.

Локаничность и читаемость

Перед тем, как перейти к стандартам наименования функций и методов, давайте обсудим два важных аспекта: локаничность и читаемость.

Локаничность - это способность изложения мыслей с помощью минимального количества слов. В программировании это означает использование коротких имен функций и переменных, которые ясно передают смысл.

Читаемость - это способность кода быть понятным другим разработчикам. В программировании это означает использование понятных имен функций и переменных, которые легко читаются и понимаются.

Стандарты наименования функций

Ниже приведены общепринятые стандарты наименования функций в Go:

1. Имена функций должны начинаться с маленькой буквы и использовать CamelCase.

Пример: calculateTotalPrice()

2. Имена функций должны быть локаничными и описывать действие, которое они выполняют.

Пример: validateEmail()

3. Имена функций должны быть глаголами или фразами, начинающимися с глагола.

Пример: createUser()

4. Имена функций должны быть максимально конкретными и точно отражать то, что функция делает.

Пример: calculateDistanceBetweenTwoPoints()

5. Не используйте аббревиатуры в именах функций, если это необходимо, то используйте только широко известные аббревиатуры.

Пример: parseJSON()

6. Избегайте длинных имен функций, поскольку они могут быть неудобны в использовании и затруднить чтение кода.

Пример: calculateTotalPriceOfAllProductsInCart()

Стандарты наименования методов

Ниже приведены общепринятые стандарты наименования методов в Go:

1. Имена методов должны начинаться с большой буквы и использовать CamelCase.

Пример: CalculateTotalPrice()

2. Имена методов должны быть локаничными и описывать действие, которое они выполняют.

Пример: ValidateEmail()

3. Имена методов должны быть глаголами или фразами, начинающимися с глагола.

Пример: CreateUser()

4. Имена методов должны быть максимально конкретными и точно отражать то, что метод делает.

Пример: CalculateDistanceBetweenTwoPoints()

5. Не используйте аббревиатуры в именах методов, если это необходимо, то используйте только широко известные аббревиатуры.

Пример: ParseJSON()

6. Избегайте длинных имен методов, поскольку они могут быть неудобны в использовании и затруднить чтение кода.

Пример: CalculateTotalPriceOfAllProductsInCart()

Дополнительные стандарты наименования функций и методов в Go:

1. Длина функций должна быть ограничена до 25 строк кода. Если функция становится слишком большой, ее следует разбить на несколько более мелких функций.

2. Функции должны иметь не более 3-х входных параметров. Если функция требует больше параметров, следует рассмотреть возможность использования структуры в качестве параметра.

3. Функции должны возвращать только один результат. Если функция требует возврата нескольких значений, следует рассмотреть возможность использования структуры в качестве возвращаемого значения.

4. Имена методов должны начинаться с имени типа, за которым следует точка и название метода.

Пример: type User struct { ... }; func (u *User) ValidateEmail() { ... }

5. Имена методов должны быть консистентными и соответствовать другим методам в том же типе.

6. Избегайте использования глаголов, которые могут быть неоднозначны или непонятны.

Пример: используйте "Get" вместо "Fetch", "Set" вместо "Update".

7. Не используйте имена методов, которые могут быть конфликтными с именами встроенных функций или методов.

8. Имена методов должны быть максимально конкретными и точно отражать то, что метод делает.

Пример: CalculateDistanceBetweenTwoPoints()

9. Избегайте длинных имен методов, поскольку они могут быть неудобны в использовании и затруднить чтение кода.

Пример: CalculateTotalPriceOfAllProductsInCart()

Заключение

Правильное наименование функций и методов является ключевым аспектом написания хорошего кода. Оно помогает сделать код более читаемым и понятным другим разработчикам. В этой статье мы рассмотрели общепринятые стандарты наименования функций и методов в Go, которые помогут вам написать локаничный и читаемый код. Следуйте этим стандартам и ваш код будет более понятным и легким для сопровождения.