Go Anti-Patterns - Edward Muller

Поделиться
HTML-код
  • Опубликовано: 12 дек 2024

Комментарии • 21

  • @homolkao
    @homolkao 5 лет назад +20

    7:30 - Tiny Package Syndrome
    9:23 - Premature Exportation
    12:14 - Package util
    13:43 - Config Structs
    18:32 - Pointer All The Things
    19:44 - context.Value
    21:45 - Asynchronous APIs
    23:45 - If - Then - Else
    26:35 - Panic In a Lib
    28:21 - Interface All The Things
    32:21 - Naked Return Values
    33:38 - interface{}

    • @ibrahimblake1219
      @ibrahimblake1219 3 года назад

      A tip : watch series on flixzone. Me and my gf have been using it for watching a lot of movies lately.

    • @keatondavion6706
      @keatondavion6706 3 года назад

      @Ibrahim Blake Definitely, have been using flixzone for since november myself :)

    • @jasperjoseph872
      @jasperjoseph872 3 года назад

      @Ibrahim Blake yup, been watching on Flixzone for years myself :)

  • @vimalk78
    @vimalk78 6 лет назад +9

    Go Anti Patterns slide at 7:09

  • @kozlovskyi
    @kozlovskyi 6 лет назад +6

    Thanks. That's cured me of the "tiny-packages" syndrome.

  • @fredoverflow
    @fredoverflow 7 лет назад +14

    The aspect ratio of the video doesn't seem right to me...

  • @ЕвгенийПоляков-п7р
    @ЕвгенийПоляков-п7р 5 лет назад +3

    Doesn't It look like an anti-pattern if you named your presentation slide "Anti-pattern:.." and then explain best-practices within it? :)

  • @rajendragosavi2233
    @rajendragosavi2233 3 года назад

    Where can I get slides?

  • @tjholowaychuk4646
    @tjholowaychuk4646 7 лет назад +6

    Hmm I'm not sure I agree with all of these. Personally I think it's nicer to split packages by domain, not what they happen to implement (context etc).

    • @jack-d2e6i
      @jack-d2e6i 7 лет назад +5

      Yeah he says "name packages based on purpose not contents"

  • @balanatarajan1892
    @balanatarajan1892 7 лет назад +2

    Shouldn't the package names be nouns instead of verbs?

    • @jack-d2e6i
      @jack-d2e6i 7 лет назад +2

      I would say it's more important that your package name has semantic meaning. "util" is akin to "interface{}": it says literally nothing. "generate" says "this package contains behaviours for generating things". That being said you could probably put "generateRandomBytes(..)" and "generateRandomString(..)" into package "rand" and "generateCert(..)" into package "cert".

  • @spacemanspiff85
    @spacemanspiff85 8 месяцев назад

    lol. I feel attacked.

  • @TiborVass
    @TiborVass 7 лет назад

    The credit for functional options should go to Rob Pike.

    • @jack-d2e6i
      @jack-d2e6i 7 лет назад

      Tibor Vass and I'm sure Rob got the idea from somewhere else.

    • @TiborVass
      @TiborVass 7 лет назад

      jack mordaunt I doubt he took it as is in Go from someone else. He would have mentioned the person just like Dave Cheney mentioned Rob Pike. It's likely he got inspiration from someone else but that's not always conscious.

  • @blanklastname7628
    @blanklastname7628 7 лет назад +2

    Every feel like you just watched a commercial for an employer disguised as a tech talk?

  • @jub0bs
    @jub0bs 2 года назад

    18:00 The type declaration is missing the type name. Presumably, it should read 𝚝𝚢𝚙𝚎 𝙾𝚙𝚝 𝚏𝚞𝚗𝚌(*𝚃𝚑𝚒𝚗𝚐) 𝙾𝚙𝚝