4.7. Zabezpieczanie tablic przed utratą posortowania

Problem

Chcielibyśmy mieć pewność, że w posortowanej tablicy zachowana zostanie kolejność elementów zgodna z kryterium sortowania, nawet po zmianie wartości niektórych elementów lub dodaniu nowych.

Rozwiązanie

Należy zdefiniować subklasę klasy Array i przedefiniować wszystkie metody, które skutkować mogą dodawaniem do tablicy nowych elementów lub zmianą wartości elementów obecnych już w tablicy. W nowej implementacji element o nowej wartości wstawiany był na pozycję wynikającą z kryterium sortowania.

Jak się za chwilę przekonamy, lista metod, o których mowa powyżej, jest dość długa. Można jednak zrezygnować z przedefiniowywania tych metod, co do których mamy pewność, że nie zostaną ...

Get Ruby. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.