Dylematy programisty

Wybór narzędzia do tworzenia aplikacji jest decyzją o wieloletnich konsekwencjach.

Wybór narzędzia do tworzenia aplikacji jest decyzją o wieloletnich konsekwencjach.

Szczegółowa analiza polskich aplikacji obecnych na tegorocznym Softargu i rozmowy, które tam przeprowadziłem, pozwala mi sądzić, że wiele polskich domów software'owych znalazło się na rozdrożu. Do tej pory spokojnie pisali aplikacje w narzędziach typowych dla DOS-u i małych sieci, takich jak Clipper, Pascal, Access czy FoxPro. Bardziej ambitni i zaawansowani tworzyli je w SQLWindows (firmy Gupta, obecnie Centura) lub w Visual Basicu (Microsoft). Narzędzia high-end typu Informix New Era, Oracle Designer/Developer, Powersoft PowerBuilder i Borland Delphi są używane jedynie przez dużych producentów oprogramowania na zamówienie.

Sytuacja na rynku zmienia się jednak równie szybko, jak zmienia się obraz wyposażenia naszych przedsiębiorstw i organizacji w sprzęt i zaopatrzenie w programy biurowe. Nie jest już luksusem posiadanie szybkiego komputera i używanie wielu programów biurowych, ułatwiających codzienną pracę. Wśród użytkowników powszechna jest świadomość przydatności programów, takich jak Excel czy Quattro Pro. W tym momencie przestaje bawić siermiężna prostota używanej DOS-owej aplikacji bazodanowej do wprowadzania danych o firmach, klientach czy produktach. Zauważają, że jeżeli udałoby się przetransponować bezboleśnie te dane do Excela lub Worda, stworzyć z nich listę mailingową lub przeanalizować wg dowolnych - wybranych ad hoc - kryteriów, mieliby znacznie ułatwione życie.

Na szczęście, także szefowie domów software'owych i programiści zauważyli tę tendencję i pilnie rozglądają się za odpowiednimi narzędziami do tworzenia aplikacji bazodanowych w Windows. Wybór wcale nie jest łatwy, zwłaszcza że oferta naszego rynku jest dość uboga, a raz podjęta decyzja będzie ważyć na przyszłości firmy przez kilka lat.

Narzędzia najwyższej klasy są, niestety, tak drogie, że wiele firm nie może sobie na nie pozwolić. Wydanie kilku tysięcy USD na samo narzędzie jest kosztem, który powinien się zwrócić. Jednakże z taką decyzją zwykle wiąże się jeszcze jedna - przejścia ze wszystkimi nowymi aplikacjami na firmowy system zarządzania bazami danych, najlepiej wspierany przez wybrane narzędzie. I tu okazuje się, że trzeba podnieść cenę tanich do tej pory produktów, działających na opracowanej przez siebie namiastce bazy danych, o cenę systemu zarządzania bazami danych.

Typowy koszt licencji systemu zarządzania bazami danych zależy od platformy sprzętowej; jest niższy dla Windows NT i NetWare niż dla Unixa i wynosi od 200-300 USD dla wersji jednostanowiskowej (dla jednego programisty lub użytkownika) do 5-15 tys. USD dla wersji z nie limitowaną liczbą użytkowników.

Kondycja producenta

Jak wynika z rozmów, które prowadziłem, szefowie polskich firm programistycznych dobrze orientują się w kondycji finansowej producentów popularnych narzędzi, nieco gorzej znają ich strategię rozwoju i perspektywy na przyszłość. Jeżeli jakaś firma traci w kolejnych kwartałach po 20-25 mln USD, to obawiają się, że pewnego dnia zbankrutuje lub zostanie wykupiona przez dużego producenta baz danych, a sam produkt zniknie z rynku. Wprawdzie znane do tej pory przypadki wykupienia producenta narzędzi przez dużych producentów oprogramowania nie zakończyły się tak fatalnie, wywołały jednak poważne zawirowania na rynku. Chyba najlepiej okres zmiany właściciela przeszła firma PowerSoft (wykupiona przez Sybase), gorzej Ingres (wykupiona przez Computer Associates).

Co polecać?

Wiele z dostępnych narzędzi nadaje się nie tylko do opracowania aplikacji z dziedziny baz danych, ale można za ich pomocą tworzyć aplikacje bardziej uniwersalne.Jeżeli zależy nam na wybraniu takiego narzędzia, to oprócz standardowych środowisk C/C++ (Microsoft, Borland, IBM) istnieją tylko dwa produkty: Microsoft Visual Basic i Borland Delphi. Każde z nich świetnie spisuje się przy tworzeniu interfejsu użytkowego aplikacji i ułatwieniu dostępu do bazy danych za pośrednictwem sterowników ODBC, ale cały kod przetwarzania i tak trzeba napisać w języku niskiego poziomu, odpowiednio w Basicu lub Pascalu.

Jeżeli zaś wybieramy narzędzie tylko do tworzenia aplikacji z dziedziny baz danych, to - mimo szerokiej gamy dostępnych narzędzi - nie ma idealnego narzędzia nadającego się jednocześnie do tworzenia takich aplikacji dla małych, średnich i dużych firm. Nie da się pogodzić wymagań skalowalności aplikacji do kilku, kilkudziesięciu, kilkuset i kilku tysięcy użytkowników w jednym produkcie.


TOP 200