| Termin | Definicja |
|---|---|
| Przestarzałe funkcje | Funkcje przestarzałe działają jeszcze w bieżącej wersji, lecz producent zaleca ich zastąpienie nowszymi odpowiednikami. Czym są funkcje oznaczone jako przestarzałePrzestarzała funkcja, określana w dokumentacji jako deprecated, nadal może być dostępna i poprawnie wykonywać swoje zadanie w bieżącej wersji programu, biblioteki, systemu operacyjnego albo interfejsu programistycznego. Producent sygnalizuje jednak, że nie powinno się jej używać w nowym kodzie lub nowych konfiguracjach, ponieważ istnieje nowszy mechanizm przeznaczony do tego samego celu. Oznaczenie „przestarzała” nie oznacza więc automatycznie, że funkcja jest już wyłączona, uszkodzona albo niebezpieczna. Powody wycofywania funkcji bywają różne. Starszy interfejs może mieć niejasne zasady działania, ograniczoną obsługę nowych formatów, słabsze mechanizmy kontroli błędów albo rozwiązania niezgodne z aktualną architekturą programu. Czasami producent chce ujednolicić kilka podobnych funkcji, zmienić sposób przekazywania parametrów lub zastąpić starszy interfejs rozwiązaniem lepiej przystosowanym do pracy wielowątkowej, urządzeń mobilnych czy współczesnych metod uwierzytelniania. Sama obecność ostrzeżenia nie pozwala jednak stwierdzić, że komputer wymaga naprawy. Dlaczego producent pozostawia starszy mechanizmUsunięcie funkcji natychmiast po wprowadzeniu zamiennika mogłoby przerwać działanie istniejących programów, skryptów, dodatków i plików konfiguracyjnych. Z tego powodu producenci często utrzymują zgodność wsteczną przez pewien czas. Program korzystający z przestarzałej funkcji może nadal się uruchamiać, ale podczas kompilowania, aktualizacji lub sprawdzania kodu może pojawić się ostrzeżenie. W dokumentacji zwykle wskazuje się alternatywną funkcję albo zalecaną ścieżkę migracji. Okres przejściowy nie jest gwarancją bezterminowej obsługi. W kolejnej głównej wersji biblioteki, środowiska uruchomieniowego lub programu stary mechanizm może zostać usunięty, ograniczony albo zmieniony w sposób niezgodny z dotychczasowym użyciem. Skutkiem może być błąd kompilacji, wyjątek podczas uruchamiania, brak określonej opcji w interfejsie lub nieprawidłowe przetwarzanie danych. Dlatego ostrzeżenia o funkcjach przestarzałych warto traktować jako informację o konieczności zaplanowania migracji, a nie jako komunikat, który zawsze można zignorować. Jak rozpoznać rzeczywisty problem w programieNajpierw należy ustalić, gdzie pojawia się oznaczenie. Może ono pochodzić z kompilatora, interpretera, konsoli programu, dziennika zdarzeń, narzędzia do sprawdzania kodu albo dokumentacji producenta. Ważna jest dokładna nazwa funkcji, komponentu i wersji używanego oprogramowania. Sam ogólny komunikat o „starej funkcji” nie wystarcza do bezpiecznej zmiany konfiguracji, ponieważ zamiennik może wymagać innych parametrów, innego formatu danych albo odmiennych uprawnień. W przypadku gotowego programu użytkowego należy sprawdzić jego wymagania, historię zmian i dostępność aktualizacji od producenta. Nie powinno się usuwać plików bibliotecznych, wyłączać składników systemowych ani zmieniać ustawień zabezpieczeń tylko dlatego, że komunikat zawiera słowo „deprecated”. Jeżeli aplikacja działa, a ostrzeżenie występuje wyłącznie podczas aktualizacji lub w logu technicznym, przyczyną może być nieprzebudowany dodatek, stary moduł albo pozostałość po wcześniejszej wersji. Jeżeli natomiast pojawiają się awarie, zawieszanie, błędy uruchamiania lub utrata funkcji, trzeba powiązać komunikat czasowo z konkretną zmianą i sprawdzić cały łańcuch zależności. Plan przejścia na nowszy odpowiednikMigrację należy rozpocząć od dokumentacji właściwej dla używanego programu lub środowiska, a nie od przypadkowego zamiennika znalezionego dla podobnej technologii. Trzeba porównać sposób wywołania starej i nowej funkcji, typy danych, wartości zwracane oraz zachowanie w sytuacjach wyjątkowych. W kodzie warto wyszukać wszystkie użycia oznaczonego mechanizmu, następnie zmienić je etapami i sprawdzić działanie najważniejszych operacji. Przydatne jest także zachowanie kopii konfiguracji oraz możliwość powrotu do wcześniejszej wersji, jeśli zmiana okaże się niezgodna z innymi elementami programu. Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów i komputerów PC, dlatego przy problemach z działaniem oprogramowania można zlecić sprawdzenie, czy komunikat o przestarzałej funkcji jest tylko ostrzeżeniem, czy wiąże się z konkretną awarią systemu lub aplikacji. Diagnostyka powinna obejmować objawy, wersje używanych składników, ostatnie aktualizacje oraz sposób odtwarzania problemu. Dopiero na tej podstawie można rozdzielić zwykłą potrzebę aktualizacji programu od usterki wymagającej szerszej ingerencji w konfigurację komputera. |