Си диез / Говнокод #9621 Ссылка на оригинал

0

  1. 1
public void GetLocalUsers(out List<string> members) { ... }

Первый раз вижу что-то подобное.

Запостил: fr0mrus fr0mrus, (Updated )

Комментарии (31) RSS

  • Смутил тип возврата void в функции с именем Get... ?
    Ответить
    • просто гетер публичный наверное к тому же еще и воид возвращает вместе со списком...
      Ответить
    • Я бы сказал, смутил феерический идиотизм. Я бы за такое бил по рукам.
      Ответить
    • Может быть это бывший программист на Objective C — у них по гайдлайнам положено писать именно так.
      Ответить
  • Девушка написала. Со словами: "Я так хочу, у меня стиль такой". Весь код в таком стиле... Без шуток.
    Ответить
    • Гы ) это многие разрабы которые не работали в команде говорят.
      Я слышала такое от мужчин раза три...
      Ответить
    • я ничего страшного не вижу.

      и это не только стиль, но и способ заставить вычитывать данные перед использованием в переменную.

      оправдано если внутри функции генерация списка.

      говно если это просто геттер для референса/указателя (или чего оно там в С#) существующего списка.
      Ответить
      • Хз, иногда имеет смысл потребовать, чтобы структуру данных создали в другом месте, т.как размер не известен внутри функции. Но передавать сложный объект через out нет смысла. Это только добавляет сложностей в организации функции, которая с ним работает (функция не может закончится, если переданному параметру не назначено значение). Вобщем, такие манипуляции могут быть оправданы для простых типов, когда функция уже что-то возвращает, а нужно, чтобы еще что-то проапдейтилось врезультате работы, а возвращать структуру содержащию сразу несколько значений не хочется.
        В данном случае - прoсто бессмысленное усложнение. Вероятнее всего, без out работало бы точно так же (если список создается где-то в другом месте).
        Ответить
        • > Но передавать сложный объект через out нет смысла.

          я правильно понял документацию, что в C# как и в жабе объекты (или точнее "reference types") передаются всегда по ссылке?

          > Вероятнее всего, без out работало бы точно так же (если список создается где-то в другом месте).

          Если как в Жабе, то да.
          Ответить
          • Да, в этом смысле так же как в Яве. Но тут могло быть две разные ситуации: Создали объект вне функции, и передали его функции, чтобы она с ним что-то сделала. Либо объявили переменную нужного типа, и ожидаем, что функция создаст объект и присвоит ссылку на него объявленной переменной. В первом случае out вообще не нужен. Во втором - лучше было бы его вернуть из функции, чем так замысловато передать.
            В теории, возможна ситуация, когда кто-то хотел функцию использовать и первым и вторым способом, и в ситуации, когда бы функция возвращала объект, который дальше по коду не используется (потому что ссылка на него уже есть), могло быть предупреждение за не использование возвращаемого результата. Но судя по описанию, проблема более тривиальная 🙂
            Ответить
  • мужчин не трогать. мужчины - суровые и пишут сурово. а девушки хотят няшно писать и получается вот такой "стиль"
    Ответить
      • это все школота. кстати с наступающим дама, мы на работе уже в говно))) настроение праздничное, чего желаю всем присуцтвующим на говнокоде говнокодерам и не очень
        Ответить
    • Кстати вспомнилось как друг ругался на проект который ему достался.
      Хорошо написан, оппешно и все такое, но вот названия...
      Кнопка PushMyHardBaby и тд и тп.
      Ответить
  • г"F$P(J!Y?R!Y:P"Z!DX K E!M$H:J)M"M?R GN$O:GE$C"HL,S.J$P$N$S Y(A!O!L C,N:I?I?Z)J,V$CR(K:N?Y(F)S,U I(A)R(N!R V:M(B.Y:F"Q"A,T!U?Z"HE.G!HX(E$D:U"J?W,D,F"W,L!JT!H)G$P"E Q?T!O.M:E Y$C:W!I)K$X)Q(D(U(XR)F E,Z$P(H)J R,P,C:R,S"J?S,X)R C B.T J(FO?J(Z R,Z$G!J(N L.G:N:N)G?Y)F:S(I!K!I(U?E)W$R,P"C"O T?G R:D$Y M,G$Z"S?B!G"Z!U:Y"F$J!F(K FV(N?K?M"A)QI?U$K K S.X?C:Q,W?TF,K"C)J"F X.T)R(F:XB"S,P"N K?BO LV.A"L A(O?M Q(X:A(U"Y!A(FK.U(D$P!Y$B?S.Q:B$A?I?D?E!U(ZG?Z)Q U!T"D$Y:M:W$F!U(X W"U?N?P:K$C.Y:I:C"O,W"K"H:H!N!P)I?X:E!A,D:V!G"T"M(Z?N.C(M.C)W)V!R.UF,A E?P I.Y)F.L G"J(F,Q!D!J)I,O.V"D"Q T!D)R(Z:R.H C?Q$N:I?P,G.BFO!P"KE,Q(Z)W)B,N)H,J!Z$J(X:P.U:S D(X"GD$E,N$B!DZ)O(B)X,Y)A:A,V"P$D$F?E!N?JM)E(I V$MW?R)QYEDC.P.H K A PUE.O$F?U"A"A(P)O)N(P.J H?Y)I.H"L)A$U:CF:A)P T.K?M?O$D)J!E,I L(K:F)G!R)I:P TH!I.T,Y"U)E!Z"F"H:WF$X(L)Q?J.E"R.O.II.D!C"W"L W?J"A?P!U$BQ(P!V?X V$P!N!WW.Y,Y)X"J!N SU Z)P A)P!R!C)O.P)F:S:G?N:B,H?R"GI!D$D.Q(F:C:D K$T,L(S P(P,PI,H"U,L.F$CG(Q)R:Z,N(M O!H"C?Z!O:T?U C?B$F"M"Z.A(W.Q"D(A H Y:U J)L.A:Q.C"N?D.Y)Z)UF$O$Y.V(O"E,H"K,C$P.M,Z(X X(G,H:P:Z"A,P!SN)Y$N?Q.R)N!O)WB Q Y C:E(R)C"X)N!X,V.M$K,M,B!D)B(P(F!F?P,O W$M?D:M,W.U!I$V?L,S?D"X:E!P(T(U:Q.N?S?D(I.U.R,K G S:N)N!X(G$K E,ID"C"A)H(MI B)EV.O.D!I?I!J"E!F"S,B!K"L.X"U O"O.F)D?J?A$O!M)B"GE"B)W D!EQ H.B?N$N"J D.U?R)Q)ZI!I!Z)V.I$C.C:E?V"Y:R(X"H"K$G!N$V"G"S(R,NL(V F N,H!B?F:Z:Z"T:U(G"B$X TM.D)I:C NG.W:R"S(N.LLE)F K M?S,JI)Y?O?H.X$I:U!O,I:D)T?I?E)D$I$L)W:B:R(Y.N)D W$NМITRGHHLIUOQEPSDXRSYWXNRITNQOQPJDUHQCQQLRTVJVFSGQJWHUFNMCRJSZVGEGAOXGNRORSURCDNOULRTWBFUZFUYQTLUUNVTDDJZQXMZKUSQKHSKZTPTRJXKCUHSPFFLERXGWVSDYHMFCHFLD
    Ответить

Добавить комментарий

Помни, guest, за тобой могут следить!

    А не использовать ли нам bbcode?


    8