The State Pattern Explained and Implemented in Java | Behavioral Design Patterns | Geekific

Поділитися
Вставка
  • Опубліковано 16 гру 2024

КОМЕНТАРІ • 36

  • @ziekaman2450
    @ziekaman2450 3 роки тому +22

    best video about state pattern, keeping it short and simple

    • @geekific
      @geekific  3 роки тому +2

      Thank you :) Much appreciated!

  • @kdbwiz
    @kdbwiz Рік тому +4

    Outstanding example, thank you.

  • @prashlovessamosa
    @prashlovessamosa Рік тому +1

    Thank God I found your channel
    Quality Education
    Very grateful to you.

    • @geekific
      @geekific  Рік тому

      Glad it was helpful! Thanks a lot :)

  • @seriaaterriblee
    @seriaaterriblee 2 місяці тому

    i understood EVERYTHING, thank you.

  • @khomo12
    @khomo12 Місяць тому

    Very nice! Thank you!

  • @flyingjudgement
    @flyingjudgement 2 роки тому +1

    Great explanation, Thanks a lot no wounder I been struggling how to get this right. I need both for Procedural Move/Fight. If I look at a pair of legs;
    Strategy is great for a higher level order, like choosing a leg for actions: "Move" , "Attack" , "Jump". Each of them have a different state execution order, and the states can be changed at any time decoupled from the present order.
    State Is need for deeper executions, like : InAir, Landing, OnSolidObject, TransferEnergy( return Vector3 AccelerateOrHit).
    This was supper usefull, thaks for comparing them, both in here and on the Strategy VIdeo too. I go and start Refactoring :)

    • @geekific
      @geekific  2 роки тому

      Way to go! Glad it was helpful and Good Luck :)

  • @bradleyberthold4606
    @bradleyberthold4606 Рік тому +2

    It can help if you are a programmer in C or C++ to pretend the state classes are just function pointers (which really at the low level they are) and the state is just swapping around function pointers.

  • @sxx2491
    @sxx2491 2 роки тому

    explained it in a clear and understandable way, good contents

    • @geekific
      @geekific  2 роки тому

      Glad it was helpful :)

  • @TruthSeeker0145
    @TruthSeeker0145 2 роки тому +2

    Thanks Man, Really Good Job Keep up the good work!!!🤠

  • @anujupadhyay1854
    @anujupadhyay1854 Рік тому

    Amazing!

  • @markconnolly5260
    @markconnolly5260 Рік тому

    Great videos

  • @ChetanMahale-mx1mh
    @ChetanMahale-mx1mh Місяць тому

    can we use interface instead of abstract class???????

  • @kaisskander1867
    @kaisskander1867 2 роки тому

    excellent content

    • @geekific
      @geekific  2 роки тому

      Glad you liked it :)

  • @genziobal7281
    @genziobal7281 2 роки тому

    Hello , do u think its possible to use interface instead of abstract class ? if yes which solution is better ?

    • @geekific
      @geekific  2 роки тому +2

      There are always multiple ways to implement the same logic, so of course anything will work and will lead to the desired results. However, in this case and in this example, making use of the abstract class reduces duplicate attributes leading to a cleaner solution in my opinion. Cheers :)

    • @genziobal7281
      @genziobal7281 2 роки тому

      @@geekific I see ! thanks for the quick answer, im gona use ur design pattern playlist to try my best for my next coming exam :) thanks u for the clean videos

    • @geekific
      @geekific  2 роки тому +1

      @@genziobal7281 Good luck!

  • @samruddhisali
    @samruddhisali 2 роки тому

    Hello, Could you please give one example of Persistence State Pattern

    • @geekific
      @geekific  2 роки тому

      Hello, will add it to my list of upcoming videos! Stay Tuned!

  • @evandromottaz
    @evandromottaz 5 місяців тому

    ReadyState need to override onHome without using it, this is not anti pattern of Interface Segregation? A class that need a method that dont using?

    • @sahulraj9536
      @sahulraj9536 3 місяці тому

      yes i felt the same,it is a violation of inteface segregation, but we can make it right by having different interfaces for common functions and uncommon functions

  • @Cross_A
    @Cross_A 5 місяців тому

    Thanks for the vid! But one small correction: In the state, you dont use the Phone as a variable, but as a parameter

  • @mnm4324
    @mnm4324 2 роки тому

    Anyone Know the intro music?

    • @geekific
      @geekific  2 роки тому

      It's You Got Jazz by Diego Nava

  • @shyamamohanty7132
    @shyamamohanty7132 11 місяців тому +1

    Not pretty clean as both the State class has an instance of Phone & Phone class also has an instance of state so unnecessary coupling. Better would be to pass an instance of Phone to each of the methods of state change in the State class.

    • @hrithikt9987
      @hrithikt9987 Місяць тому

      yes, i was thinking the same.

  • @coolfyb
    @coolfyb 3 роки тому

    eXcellent’e

  • @mnm4324
    @mnm4324 2 роки тому

    Yung Lean?

  • @ongeri
    @ongeri 2 місяці тому

    Smartphones don't have a home button anymore 😔