Uniknąć if,else i Wzorzec Strategy, State i Maszyna Stanów

แชร์
ฝัง
  • เผยแพร่เมื่อ 3 ธ.ค. 2024

ความคิดเห็น • 38

  • @mateuszbasiak9337
    @mateuszbasiak9337 3 ปีที่แล้ว +10

    Podoba mi się taki luźny styl prowadzenia filmu, różni się od tej standardowej spiętej postawy i tworzy atmosferę zabawy z kodem a nie szkolnej nauki, poza tym świetnie że przykłady to życiówki, jedyne co mi brakuje to na koniec przypadki użycia - gdzie najczęściej się to sprawdza w architekturze lub w jakich przypadkach, subik rzecz jasna ;)

  • @Adik120PL
    @Adik120PL 3 ปีที่แล้ว +3

    Super kanał, bardzo mi się podoba sposób w jaki opowiadasz, bez zbędnego gadania, same szybkie konrkety i jednocześnie luzny styl pokazujący, że programowanie to nie tylko naburmuszone nerdy# ale przede wszystkim dobra zabawa!

  • @davidopara
    @davidopara 3 ปีที่แล้ว +2

    Dobre przykłady i przekaz wiedzy. Proponuje rozszerzyć temat wzorca strategii o temat deserializacji interfejsów oraz generyków - Pozdrawiam

  • @tomu134
    @tomu134 2 ปีที่แล้ว +1

    Nie znałem wzorca maszyny stanów, teraz nie mogę się doczekać kiedy go zaimplementuję 😁

  • @johnybravo7253
    @johnybravo7253 2 ปีที่แล้ว +1

    super ten tutorial, szybko i rzeczowo :)

  • @marekkacprzyk1748
    @marekkacprzyk1748 3 ปีที่แล้ว +5

    Cezary fajnie że i Ty jesteś bo robisz kawał dobrej i potrzebnej roboty. Zabrakło mi tylko jakiegoś przykładu z zagnierzdzonymiif else :)

  • @T3mai
    @T3mai 2 ปีที่แล้ว +1

    Właśnie takiego poradnika szukałem! Wielkie dzięki :)

  • @lukaszpluta1
    @lukaszpluta1 2 ปีที่แล้ว +1

    dajesz rade

  • @irundil8253
    @irundil8253 3 ปีที่แล้ว +2

    sztos

  • @ukaszk8428
    @ukaszk8428 3 ปีที่แล้ว +1

    Widzę, że też jesteś fanem modków, xmów, itków itd. prosiłbym playlisty pod filmikami bo nie wszystkie znam :) A filmik bardzo pomocny, super, robota, pozdrawiam.

  • @NiczymSaper
    @NiczymSaper 3 ปีที่แล้ว +1

    koks filmik

  • @StahuProdukszyn
    @StahuProdukszyn 3 ปีที่แล้ว +1

    Fajne, dzięki

  • @marekkacprzyk1748
    @marekkacprzyk1748 3 ปีที่แล้ว +1

    Będziesz coś może nagrywał o innych wzorcach projektowych? Fajnie że przy okazji pokazujesz jakieś nugety które ułatwiają ich stosowanie.

    • @CezaryWalenciuk
      @CezaryWalenciuk  3 ปีที่แล้ว +3

      Da się zrobić :) prawie wszystkie omówiłem na blogu

  • @Masteroxify
    @Masteroxify 3 ปีที่แล้ว +1

    Inne pytanie :D Reflekcja nie powinna być ostatecznością ze względu na słaby performance ?

    • @CezaryWalenciuk
      @CezaryWalenciuk  3 ปีที่แล้ว +1

      Największy problem tutaj jest activator.createinstance per wywołanie metody.
      Tworzenie słownika i szukanie zawsze można zrobić jedno razo per wywołanie całej aplikacji.
      Zamiast refleksji trzeba skorzystać z kontenera wstrzykiwania zależności.

  • @JackJones-uj9fh
    @JackJones-uj9fh 2 ปีที่แล้ว +1

    Moje pytanie brzmi, jak czesto wykorzystuje sie to w praktyce?

    • @CezaryWalenciuk
      @CezaryWalenciuk  2 ปีที่แล้ว

      W programowaniu funkcyjnym nawet nazywa się to wzorcem "decide". Bardzo zbliżona odmiana wzorca "State Machine"
      Można z maszyną stanów porobić nie złe jaja i włączyć w to zapisywanie zdarzeń do bazy danych czyli Event Sourcing

  • @MBBGun14
    @MBBGun14 3 ปีที่แล้ว

    Używanie refleksji do znalezienia strategii? Jak dla mnie trochę kontrowersyjny wybór. Unikniemy ifów, za to dostaniemy wolniejszy kod.
    Jeszcze odnośnie przykładu ze słownikiem, co w przypadku, gdy podamy nieistniejący klucz (bez użycia refleksji)? if contains key, czy może try-catch w miejscu, które używa tego słownika?

    • @CezaryWalenciuk
      @CezaryWalenciuk  3 ปีที่แล้ว

      Spokojnie
      Zamiast refleksji możesz użyć kontenera wstrzykiwania zależności i uniknąć tego activator.createInstance per wywołanie metody.
      Generowanie słownika akurat można zrobić tylko raz per wywołanie całej aplikacji więc to aż tak nie boli.
      Jeśli chodzi o brak obsługi klucza którego nie ma to od Ciebie zależy jak obsłużysz.

  • @TomekGroszkowski
    @TomekGroszkowski 2 ปีที่แล้ว

    Merytorycznie extra. Ale zweryfikuj trajgery 😂 aby przekazując jedną wiedzę nie wciskać zlych nawykow jak dilejty 😁

    • @CezaryWalenciuk
      @CezaryWalenciuk  2 ปีที่แล้ว

      O co chodzi z tymi dilejtami ?
      Fajna informacja zwrotna ale muszę mieć więcej szczegółów ?

    • @TomekGroszkowski
      @TomekGroszkowski 2 ปีที่แล้ว

      @@CezaryWalenciuk obejrzyj ;)
      th-cam.com/video/z6ZHAF3oL_c/w-d-xo.html
      oraz
      th-cam.com/video/tONf0uKi-18/w-d-xo.html

    • @TomekGroszkowski
      @TomekGroszkowski 2 ปีที่แล้ว

      Oczywiście u Ciebie dilejta nie było. Podałem go tylko jako przykład złego nawyku :D

    • @CezaryWalenciuk
      @CezaryWalenciuk  2 ปีที่แล้ว +1

      @@TomekGroszkowski Gdyby się przejmował swoim językiem to bym niczego nie zrobił przez te 10 lat
      Dzięki za sprostowanie :)

  • @bartibv
    @bartibv 2 ปีที่แล้ว +2

    trajgery XDD ale film fajny, mimo trajgerów XD

  • @martinbauer78
    @martinbauer78 3 ปีที่แล้ว +3

    Łapka w górę! Mogę gdzies pobrać kod do tego?

    • @CezaryWalenciuk
      @CezaryWalenciuk  3 ปีที่แล้ว +5

      Jak wrócę tylko z ITAD w Bielsku-Białej to Ci odpowiem na ten komentarz z linkiem do githuba

    • @VarranComodoo
      @VarranComodoo 3 ปีที่แล้ว

      @@CezaryWalenciuk również chętnie skorzystałbym z źródeł szczególnie jeżeli chodzi o wykorzystanie refleksji przy wzorcu strategia.

    • @CezaryWalenciuk
      @CezaryWalenciuk  3 ปีที่แล้ว +3

      github.com/PanNiebieski/How-to-avoid-If-and-else-in-code

    • @martinbauer78
      @martinbauer78 3 ปีที่แล้ว

      @@CezaryWalenciuk Dzięki :D!

  • @limsky8012
    @limsky8012 2 ปีที่แล้ว +2

    Triger nie trajger

  • @akkudakkupl
    @akkudakkupl 2 ปีที่แล้ว +1

    Ternary się nie podoba, a wyrażenie lambda tak? Lambda jest dla laika i na pierwszy rzut oka zupełnie nieczytelna XD

  • @dark-fu9jw
    @dark-fu9jw 3 ปีที่แล้ว +2

    Ogólnie fajne filmy robisz, ale mam wrażenie, że jesteś strasznie roztrzepany. Skaczesz z miejsca na miejsce. Szczerze mówiąc wolałbym, żeby odcinek był dłuższy, a żebyś refaktorował kod podczas nagrywania. Wydaje mnie się, że byłoby to czytelniejsze. Ale to tylko moja opinia i nie każdy musi się z nią zgodzić.
    Podsumowując:
    - dużo wiedzy, o której nawet wcześniej nie miałem pojęcia
    - ale strasznie chaotycznie przedstawiona

    • @CezaryWalenciuk
      @CezaryWalenciuk  3 ปีที่แล้ว

      Dzięki akurat po moim filmie "Jaki język programowania z 7: Cobol,Python,PHP,Java,C#,JavaScript,GO" zacząłem się zastanawiać jak mówić jeszcze szybciej, bo dla TH-cam tak zwany "watch time" pozycjonuje Cię w algorytmach . A w tamtym filmiku w końcu udało mi się przebić "watch time" do 50% czasu trwania całego filmiku. Tak statystycznie ludzie oglądają 20% całego filmiku zapewne po nim skacząc.
      Twoja opinia jest cenna, bo sam nie wiem co oczekują ode mnie ludzie. Mogę gadać po powoli i nawet pisać kod od zera. Czy mam robić filmik jak w TikToku gdzie co 8 sekund coś eksploduje, aby utrzymać uwagę widza?
      Wiem, że algorytm chciałbym, aby mówił jak najszybciej i do rzeczy, aby ludzie nie skakali po filmiku. To jest ten współczynnik "watch time". Potem są "komentarze" i liczba lajków.

  • @CezaryWalenciuk
    @CezaryWalenciuk  3 ปีที่แล้ว +4

    Wszystkie przykłady macie tutaj : github.com/PanNiebieski/How-to-avoid-If-and-else-in-code

  • @uskrzydlacz
    @uskrzydlacz ปีที่แล้ว +1

    Console.WriteLine("Daj komentarz");