Udostępnij przez


Pisanie aplikacji współdziałalnej

Za każdym razem, gdy aplikacja używa tego samego kodu względem więcej niż jednego sterownika, ten kod musi być współdziałający między tymi sterownikami. W większości przypadków jest to łatwe zadanie. Na przykład kod pobierania wierszy z kursorem tylko do przodu jest taki sam dla wszystkich sterowników. W niektórych przypadkach może to być trudniejsze. Na przykład kod do konstruowania identyfikatorów do użycia w instrukcjach SQL musi uwzględniać wielkość liter identyfikatora, użycie cudzysłowów oraz jedno-, dwu- i trzyczęściowe konwencje nazewnictwa.

Ogólnie rzecz biorąc, międzyoperacyjny kod musi poradzić sobie z problemami dotyczącymi obsługi funkcji i zmienności funkcji. Obsługa funkcji odnosi się do tego, czy dana funkcja jest obsługiwana. Na przykład nie wszystkie maszyny DBMS obsługują transakcje, a kod współdziałalny musi działać poprawnie niezależnie od obsługi transakcji. Zmienność funkcji odnosi się do odmian w sposób, w jaki dana funkcja jest obsługiwana. Na przykład nazwy katalogów są umieszczane na początku identyfikatorów w niektórych systemach DBMS i na końcu identyfikatorów w innych.

Aplikacje mogą obsługiwać obsługę funkcji i zmienność funkcji w czasie projektowania lub w czasie wykonywania. Aby radzić sobie z obsługą funkcji i zmiennością w czasie projektowania, deweloper analizuje docelowe maszyny DBMS i sterowniki i upewnia się, że ten sam kod będzie między nimi współdziałać. Jest to ogólnie sposób, w jaki aplikacje o niskiej lub ograniczonej współdziałalności zajmują się tymi problemami.

Jeśli na przykład deweloper gwarantuje, że pionowa aplikacja będzie działać tylko z czterema konkretnymi systemami DBMS, a każdy z tych zestawów DBMS obsługuje transakcje, aplikacja nie potrzebuje kodu, aby sprawdzić obsługę transakcji w czasie wykonywania. Zawsze można założyć, że transakcje są dostępne ze względu na decyzję w czasie projektowania o użyciu tylko czterech maszyn DBMS, z których każda obsługuje transakcje.

Aby zarządzać obsługą funkcji i zmiennością podczas działania, aplikacja musi testować różne możliwości i działać odpowiednio. Jest to zazwyczaj sposób, w jaki wysoce interoperacyjne aplikacje radzą sobie z tymi problemami. W przypadku problemów z obsługą funkcji oznacza to pisanie kodu, który sprawia, że funkcja jest opcjonalna lub pisze kod emulujący funkcję, gdy nie jest dostępna. W przypadku problemów ze zmiennością funkcji oznacza to pisanie kodu obsługującego wszystkie możliwe odmiany.

Ta sekcja zawiera następujące tematy.