What Is THE BEST Web Framework In Golang? Why?

Sdílet
Vložit
  • čas přidán 19. 09. 2023
  • ► Join my Discord community for free education 👉 / discord
    ► Exclusive Lessons, Mentorship, And Videos 👉 / anthonygg_
    ► Enjoy a 50% Discount on My Golang Course 👉 fulltimegodev.com
    ► Learn how I became a self-taught software engineer 👉fulltimegodev.com/#mystory
    ► Follow me on Twitter 👉 / anthdm
    ► Follow me on GitHub 👉 github.com/anthdm
    SUBSCRIBE OR NO MARGARITAS
    ╔═╦╗╔╦╗╔═╦═╦╦╦╦╗╔═╗
    ║╚╣║║║╚╣╚╣╔╣╔╣║╚╣═╣
    ╠╗║╚╝║║╠╗║╚╣║║║║║═╣
    ╚═╩══╩═╩═╩═╩╝╚╩═╩═╝

Komentáře • 70

  • @anthonygg_
    @anthonygg_  Před 8 měsíci +3

    ► Join my Discord community for free education 👉 discord.com/invite/Ac7CWREe58
    ► Exclusive Lessons, Mentorship, And Videos 👉 www.patreon.com/anthonygg_
    ► 50% OFF on my Golang course 👉 fulltimegodev.com
    Thanks for watching

  • @jex8885
    @jex8885 Před 8 měsíci +49

    Go Fiber is hands down the best web framework I've ever used compared to any relevant popular framework in Kotlin, .NET, JS, Python, Ruby, PHP, Rust, etc.
    The performance is amazing, it's super productive, and the API is good enough to guess your way around instead of reading docs.
    And it's super simple to extend :D
    Currently creating some big APIs and libs with fiber, including a new templating engine.

    • @hedgehogform
      @hedgehogform Před 8 měsíci +8

      For real. And I don't understand why many people complain about lack of support for http 2. Just use a reverse proxy like everyone is doing.

    • @jex8885
      @jex8885 Před 8 měsíci +2

      @@hedgehogform agreed! The underlying http implementation gets criticised too. But in reality there are no issues behind a reverse proxy.

    • @tsolanoff
      @tsolanoff Před 5 měsíci

      That rise of performance from fasthttp in production is nothing in majority of cases. Your reason seems like boredom you try to overcome with inventing complexities.

    • @xtremebh
      @xtremebh Před 4 měsíci

      Is Better than Laravel? I not talking about performance, but organization, features, and etc.

    • @jex8885
      @jex8885 Před 4 měsíci +3

      ​@@xtremebh You can't really compare micro-frameworks to frameworks. If you compare Lumen and Fiber, Fiber will be the far better choice. It's a question of what you need. If features out of the box is what's needed then Spring Boot and .NET is by far the better option.
      If you feel organization is solved by a framework then the projects are too small for it to matter imho. Directory structures can be used in any tech stack.

  • @nagygr
    @nagygr Před 8 měsíci +4

    Hi Anthony. Great video. In the first part though, where you show how error handling is done using the standard library you could use http.Error() which encorporates your two lines of code: writing an http error code to the header and an error message to the body (the only difference is that the message has to be plain text). I just thought this was worth mentioning.

  • @paulbinkim6409
    @paulbinkim6409 Před 8 měsíci +7

    I second this.
    It seems like general consensus within golang community is to use some type of mux library on top of standard http library but I always end up building sort of my mini framework whenever I am going this route. I mean standard libs or gorilla/mux, chi are fine if you are building a few services that for sake of simplicity, but it gets tedious as your server starts handling more complex stuff.

  • @ruslangabitov5202
    @ruslangabitov5202 Před 8 měsíci +2

    Thanks for the video. We also use echo in production, but for business logic we use one more layer. And echo is used as transport layer. It gives us flexibility to use alternative transport such as GRPC instead of or simultaneously with the REST.

    • @manit77
      @manit77 Před 5 měsíci

      Exactly you dont want the web context mixed in with your business logic.

  • @user-bh8xz4xy7o
    @user-bh8xz4xy7o Před 8 měsíci

    Thanks for the video!))
    Great as always)

  • @themarksmith
    @themarksmith Před 8 měsíci +1

    Really useful and interesting - thanks!

  • @obinnajohnson1467
    @obinnajohnson1467 Před 8 měsíci +3

    @Anthonygg what do you think of gin framework

  • @ho-dg6zi
    @ho-dg6zi Před 8 měsíci +13

    We use echo on production and i think its really good. Is minimal and just doenst feel you're using any framework

    • @MarkStrus
      @MarkStrus Před 8 měsíci

      I’ve been interested in echo due to its minimalism. Could you give me an example of the type of projects you use it for? Is it suitable for a CMS/API?

    • @ho-dg6zi
      @ho-dg6zi Před 8 měsíci +1

      @@MarkStrus We've been using it to a develop a fintech application

  • @123mrfarid
    @123mrfarid Před 7 měsíci +3

    We use echo for some finance projects.. Very good doc, very simple and very fast

  • @simo_the_goat
    @simo_the_goat Před měsícem +1

    Anthony you never disappoint you're the best :)

  • @amorto3420
    @amorto3420 Před měsícem

    Thank you Anthony. I am learning a lot from you.

  • @mariobroselli3642
    @mariobroselli3642 Před měsícem +2

    I could not find any Go Framework that has a tag on job tensor.

  • @beratdurdag5165
    @beratdurdag5165 Před 8 měsíci

    You are the best man thanks.

  • @shadowfaxenator
    @shadowfaxenator Před 8 měsíci +7

    The main problem of fiber is that it doesn’t support request Context cancellation on client connection termination (for example when user closes a browser tab) this is very annoying when you connect to brokers from your API endpoints or make any other long running tasks (websockets, etc), btw context.Context of http.Request does cancel

  • @zohaibakber3056
    @zohaibakber3056 Před 8 měsíci

    Hey Anthony I saw your video where you were building a trading platform or something like that , I wanna get into trading industry or banking maybe as a software dev where should I start? Should I learn Java because most enterprise use it and please guide where to find these specific resources...

    • @SamSPostma
      @SamSPostma Před 8 měsíci

      If you are interested in finance I think it is done mostly in C++. Definitely not java though

    • @anon3118
      @anon3118 Před 6 měsíci +1

      Java is also used in some situations such as non-HFT

  • @edzynda
    @edzynda Před 8 měsíci +4

    I love echo. Also, Pocketbase is built on echo, so if you use it as a framework, you have a db, auth, email, file, and admin panel built in. So basically, Pocketbase is my favorite framework now.

    • @MarkStrus
      @MarkStrus Před 8 měsíci

      Pocketbase is something I was looking at but there’s one thing I’m having trouble with which is creating repeater fields. I’m just not sure how to implement them and the project I’m building requires repeater fields in a few sections.
      I really like it for what it is though. Seems easy to work with and super simple to deploy.

    • @edzynda
      @edzynda Před 8 měsíci

      @@MarkStrus You can probably just use the JSON or Relation field to do that.

    • @123mrfarid
      @123mrfarid Před 7 měsíci

      @edzynda pocketbase seems awesome. I think i will consider to use it if we can set permission/rules on column level not table level since it is too general

  • @user-gc8wr5dp4k
    @user-gc8wr5dp4k Před 8 měsíci +2

    Golang and graphql. What do you recommend?

    • @anthonygg_
      @anthonygg_  Před 8 měsíci +1

      To be honest everything works if you are motivated

  • @Buiscit1738
    @Buiscit1738 Před 8 měsíci +1

    leveled up!

  • @flannn6
    @flannn6 Před 8 měsíci +8

    i dont think it is worth using an entire web framework just because you dont want to handle errors. you can easily just make a wrapper for handling error then implementing your handlers bellow it. I would totally recommend a router tho. the problem with web frameworks is they usually lead to very bad architectures, to projects with bad dependency injection and people passing the framework context all the way to lower layers making the project very rigid.

  • @computergeek3405
    @computergeek3405 Před 8 měsíci +2

    I wanna join your discord channel, but link has expired. How do i join now?

  • @giocaonguyen
    @giocaonguyen Před měsícem

    Could you please give us some guide for API gateway? Can we have an API gateway but does not depend on any cloud service? (I am Front-end developer and learning Golang to build a personal project to practice)

  • @zinwaiyan6474
    @zinwaiyan6474 Před 7 měsíci +2

    how about gin?

  • @tsolanoff
    @tsolanoff Před 5 měsíci +1

    Reading comments gives a sense that ppl for some unclear reason confused Golang with JS 😂 Bringing 100 frameworks and arguing which is better.

  • @vrg378
    @vrg378 Před 7 měsíci

    What about gin?

  • @subhendusahu3763
    @subhendusahu3763 Před 8 měsíci +6

    What's your thoughts about chi? Btw very insightful videos.

    • @zayttoven
      @zayttoven Před 8 měsíci +4

      Chi is a router, not a framework

  • @mdyousufgazi4030
    @mdyousufgazi4030 Před 8 měsíci

    anyone know the name of the theme he use in vscode?

  • @vickylance
    @vickylance Před měsícem

    audio is a bit low

  • @mojixcoder
    @mojixcoder Před 8 měsíci +3

    The web framework that I’ve written is the best one in the world

    • @voidreact
      @voidreact Před 3 měsíci

      agreed, you have some badass code there

    • @mojixcoder
      @mojixcoder Před 3 měsíci

      😁😁

  • @mrjvc
    @mrjvc Před měsícem

    Excellent content! You're probably already aware, but it's hard to understand when you say words that end in "r". You are pronouncing it many times as "sh", so "error" and "here" come out as "errosh" and "heesh". Small note that hopefully is helpful. Once again, thanks for this, great info!

  • @abcdefghjiklnmopqrstuvwxyz
    @abcdefghjiklnmopqrstuvwxyz Před 3 měsíci +1

    I thought that thumbnail was Johnny Sins 🤡

  • @dev-qq2vy
    @dev-qq2vy Před 2 měsíci +1

    I read source code of echo. It's smart and clear. I agree that echo is the best.

  • @headlinerbeats
    @headlinerbeats Před 8 měsíci +2

    Your videos volume always too low mate. Use a limiter

  • @interstellar1873
    @interstellar1873 Před 8 měsíci +1

    First💪🏼

  • @renanbrayner984
    @renanbrayner984 Před 3 měsíci

    the go comunitty seriously needs to stop using single letter variable names

  • @adilfarq3784
    @adilfarq3784 Před 8 měsíci

    @anthonygg_ Is it DSA must to study for golang 😁

  • @dandogamer
    @dandogamer Před 8 měsíci +6

    Been using go for 4 years, I've gone through fiber, gin, gorilla, echo and now chi. I still dont have a strong opinion on any of them apart from I think you should be using one of them over the default net/http. When I first started out I used fiber and that was easiest for me as I was coming from TS.
    Also if you are using chi I would recommend using their render package as it can help with returning errors and json easier

  • @NguyenDuy-mj3wh
    @NguyenDuy-mj3wh Před 8 měsíci +1

    how about weavebox

    • @anthonygg_
      @anthonygg_  Před 8 měsíci +1

      Whahaha Not sure about that 😅