Как Вы работаете вокруг потребности в апострофах на определенные имена функций?

Когда я программирую, я часто пишу функции, что-should-(чтобы быть надлежащим английским языком) содержат апострофы (слишком плохой C запустил всех думающие, что апостроф был соответствующим разделителем). Например: get_user's_group() -> get_users_group() . Что делает Вас, парни делают с тем принудительно-плохо-английским неоднозначным английским языком? Просто проигнорируйте апостроф? Создать другую формулировку?

7
задан 4 revs, 3 users 100% 4 November 2014 в 06:38
поделиться

12 ответов

В этом случае я бы сделал get_group_for_user () .

Так что да, я бы «создал другую формулировку» :)

Либо это, либо user.get_group () .

12
ответ дан 6 December 2019 в 05:48
поделиться

Либо get_user_ApostropheShouldBeHereButLanguageWillNotLetMe_s_group , либо просто игнорируйте его, потому что это действительно не имеет значения.

3
ответ дан 6 December 2019 в 05:48
поделиться

Я игнорирую апостроф getGroupyUser и group_from_user оба совершенно понятны. Беспокойство о наличии правильной грамматики в именах ваших функций - это пустая трата времени и отвлекает от правильной цели иметь понятные и понятные имена пользователей.

1
ответ дан 6 December 2019 в 05:48
поделиться

Два пункта: Во-первых, не используйте имя, которое в противном случае потребовало бы апострофа, если вы можете избежать его. Во-вторых, вы правы в том, что беспокоитесь о двусмысленности. Например, вы можете:

  • getUsersGroup: получить группу из списка пользователей. Если вы используете объектно-ориентированный язык, то это может иметь больше информации, чем просто строка идентификатора группы. Вы также можете иметь что-то вроде createUsersGroup, что создаст объект группы из списка пользователей, переданных внутрь.
  • getGroupOfUser: принимает в каком-то объекте пользователя; возвращает имя группы пользователя
  • getGroupByUserId: принимает имя пользователя или уникальный ID, связанный с этим пользователем; возвращает имя группы пользователя

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

1
ответ дан 6 December 2019 в 05:48
поделиться

getGroupOfUser? getUserGroup?

Это язык программирования, а не литература...

Это был бы getBackgroundColour на правильном английском (а не getBackgroundColor)

.
0
ответ дан 6 December 2019 в 05:48
поделиться

Обычно я просто бросаю апостроф, но работают ли обратные клещи? (get_user's_group)

-121--3770430-

Ваше регулярное выражение почти работает, вы просто забыли уйти от периода. Кроме того, в PHP нужны разделители:

'/@(.*?)\./s'

S является модификатором DOTALL .

Вот полный пример того, как вы могли бы использовать его в PHP:

$s = 'foo@bar.baz';
$matches = array();
$t = preg_match('/@(.*?)\./s', $s, $matches);
print_r($matches[1]);

Output:

bar
-121--2300673-

точка правильного английского в именовании функций немного экстремальна...

я имею в виду, почему апостроф беспокоит вас, но _ вместо пространства нет?

1
ответ дан 6 December 2019 в 05:48
поделиться

Лично я бы написал get_user_group(), а не get_group_for_user(), так как мне кажется, что он лучше читается. Конечно, я использую язык программирования, где апострофы разрешены в именах:

proc get_user's_group {id} {#...}

Хотя некоторые более плодовитые неанглоязычные европейские пользователи используют его в качестве разделителя слов:

proc user'group {id} {#...}

к каждому своему, наверное...

0
ответ дан 6 December 2019 в 05:48
поделиться

Как насчет GetGroupbyuser ?

2
ответ дан 6 December 2019 в 05:48
поделиться
getGroupForUser() 

или

getGroupByUser()
7
ответ дан 6 December 2019 в 05:48
поделиться

В зависимости от языка программирования можно использовать имена переменных Unicode, этот SO-поток перечисляет несколько.

С помощью Unicode-идентификаторов Вы можете использовать один из апострофов Unicode для правильного форматирования имени переменной на английском языке. Хотя это только предположение. И это будет трудно поддерживать. На самом деле, теперь, когда я думаю об этом, это звучит совершенно злобно.

1
ответ дан 6 December 2019 в 05:48
поделиться

Обычно я просто бросаю апостроф, но спинки работают? (get_user`s_group)

0
ответ дан 6 December 2019 в 05:48
поделиться

Мой первоначальный ответ Игнорировать его, двигаться дальше! неполный. Вы должны игнорировать тот факт, что вы не можете использовать в вашем методе / функциях. Но вы должны продолжать смотреть на именование их, чтобы лучше объяснить, что они делают. Я думаю, что это стоящее преследование в программировании.

Выбирая на JavaScript, вы могут , если вы хотите использовать апострофы:

const user = {
    "get_user's_group": () => console.log("Naming things! Am I right?!")
}

user["get_user's_group"]()

, но не делайте этого

4
ответ дан 6 December 2019 в 05:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: