Loading:


    Przeniesienie Metody - metoda Refaktoryzacji

    Opis

    Wykonujemy tą metodę, gdy mamy metodę, która będzie używana przez inną klasę częściej niż aktualna klasa.

    Implementujemy podaną operację po przez przeniesienie metody do innej klasy, oraz zaktulizowaniu wszystkich odwołań do tego pola LUB przesunięciu samej zawartości metody do nowej metody i stworzeniu przekierowania w pierwszej metodzie do nowo powstałej metody w innej klasie. (zazwyczaj używa się pierwszej jednak opcji)

    Przykład


    diagram refaktoryzacji

     

    Listing 1.0 pokazuje metodę przed refaktoryzacją.

    Listing 2.0 ukazuje metodę/funkcję po refaktoryzacji.



    Napisz Artyku³

    Listing

    //listing 1.0
    class Projekt {
      Osoba[] uczestnicy;
    }

    class Osoba {
      int id;
      boolean uczestniczy(Projekt p) {
        for(int i=0; i<p.uczestnicy.length; i++) {
              if (p.uczestnicy[i].id == id) return(true);
        }
        return(false);
      }  
    }

    ... if (x.uczestniczy(p)) ...



    //listing 2.0
    class Projekt {
      Osoba[] uczestnicy;
      boolean uczestniczy(Person x) {
        for(int i=0; i<uczestnicy.length; i++) {
              if (uczestnicy[i].id == x.id) return(true);
        }
        return(false);
      }  
    }

    class Osoba {
      int id;
    }

    ... if (p.uczestniczy(x)) ...




    Dodano przez: divix
    Ranga: Administrator serwisu Punktów: 0
    Komentarze użytkowników
      • Tre¶æ komentarza
        Kod do komentarza (opcjonalnie)
        PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
        Autor
        Token
        token

         

         








    funkcje.net
    Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-2025 v.1.5 | design: diviXdesign & rainbowcolors