Przestarzały
„Przestarzały” to termin używany w tworzeniu oprogramowania w odniesieniu do funkcji, które są wycofywane i zastępowane. Przestarzała funkcja w języku programowania lub aplikacji może nadal działać, ale nie jest już obsługiwana ani rozwijana. Większość przestarzałych funkcji zostaje ostatecznie całkowicie usunięta. Twórcy programu lub języka programowania zazwyczaj ogłaszają wycofanie funkcji z kilkumiesięcznym lub kilkuletnim wyprzedzeniem, aby dać programistom czas na wdrożenie zamiennika.
Języki programowania i aplikacje będące w aktywnym rozwoju od czasu do czasu zastępują stare funkcje i inne elementy całkowicie nowymi zamiennikami. Na przykład w PHP funkcja money_format(), która formatuje liczbę jako ciąg znaków przedstawiający walutę, została uznana za przestarzałą na rzecz bardziej rozbudowanej NumberFormatter klasy, która może formatować liczby na wiele sposobów, w tym jako walutę. Stara funkcja money_format() nadal działała po ogłoszeniu jej wycofania w PHP 7.4, dając programistom PHP czas na wcześniejszą aktualizację ich kodu źródłowego przed jej całkowitym usunięciem w PHP 8.
Uznanie funkcji za przestarzałą nie zawsze oznacza przeznaczenie jej do usunięcia, szczególnie w programie lub języku, który istnieje od dawna. Przestarzała funkcja może pozostać ze względu na zgodność wsteczną, nawet jeśli dostępna jest lepsza implementacja lub pierwotna metoda powoduje niestabilność systemu, aby stare oprogramowanie mogło nadal działać bez gruntownej przebudowy. Na przykład funkcja escape() języka JavaScript została uznana za przestarzałą z powodu słabej obsługi znaków Unicode, ale nadal jest dostępna w większości przeglądarek internetowych, aby umożliwić uruchamianie starego kodu JavaScript.
Elementy oprogramowania i języków programowania mogą zostać uznane za przestarzałe z kilku powodów:
- Wprowadzono funkcję zastępczą, która wykonuje tę samą czynność z większą wydajnością lub mniejszą złożonością, przez co przestarzała funkcja staje się zbędna.
- Stare funkcje, które są niespójne z obecnym stanem programu lub języka, mogą zostać uznane za przestarzałe na rzecz przeprojektowanej wersji. Mogą one używać nieaktualnej składni lub konwencji nazewnictwa, które mogłyby zdezorientować nowego programistę, dlatego są wycofywane i zastępowane wersjami lepiej zgodnymi ze współczesnymi standardami.
- Funkcja z wadą projektową, taką jak luka w zabezpieczeniach lub wyciek pamięci, może zostać uznana za przestarzałą, aby zniechęcić do jej używania.
- Zbędne funkcje mogą zostać uznane za przestarzałe i usunięte w celu zmniejszenia złożoności systemu.
- Zaplanowane zmiany w programie lub języku spowodują, że istniejąca funkcja przestanie działać, dlatego wcześniej oznacza się ją jako przestarzałą, aby zachęcić programistów do korzystania z rozwiązania alternatywnego, którego zmiany te nie obejmą.
NOTE: Twórcy programu lub języka programowania ogłaszają wycofanie funkcji w dokumentacji i informacjach o wydaniu. Przestarzałe funkcje w języku programowania powodują również wyświetlenie komunikatów ostrzegawczych w zintegrowanym środowisku programistycznym tego języka (IDE), gdy programiści próbują ich użyć.
Sprawdź swoją wiedzę