Najważniejszy język dla IT

Każdy program komputerowy wymaga napisania go w określonym języku. Czy można porównywać sztuczne języki i mierzyć ich znaczenie, także w odniesieniu do języka naturalnego?

Technologia IT opiera się na dwóch filarach: sprzęcie i oprogramowaniu. Software to zarówno jego zastosowania, jak i narzędzia służące do tworzenia aplikacji. W każdym przypadku mamy do czynienia z językami programowania. Bez nich nie funkcjonowałby hardware, nie byłoby sieci komputerowych czy baz danych. Nie byłoby też całej sfery oprogramowania użytkowego i narzędziowego.

Specyfika językowych standardów wpływa na sferę ich zastosowań. Na przykład dialekty SQL-u determinują granice aplikacji bazodanowych. Mamy zatem relacyjne bazy danych i ich zastosowania. Zauważmy, jak wiele wysiłku podczas modyfikacji oprogramowania wiąże się z różnymi formatami danych, z rozszerzaniem zadeklarowanych wielkości pól czy potrzebą wprowadzania nowych integrowanych systemów. A przecież składnia programowych komend i formaty danych wynikają ze słownika i gramatyki stosowanego języka.

Także z menedżerskiego punktu widzenia istotne są pytania: jakie języki są najefektywniejsze, najbardziej rozpowszechnione, z najlepszymi perspektywami rozwojowymi.

Możemy powiedzieć, że poza językiem nic nie istnieje, a nasza cywilizacja jest cywilizacją języka. Pierwsza część tego twierdzenia może brzmieć prowokacyjnie, ale jego obalenie wymagałoby wskazania, co istnieje poza językiem. A to oznaczałoby posłużenie się określonymi pojęciami, językowymi właśnie.

Języki naturalne i sztuczne

Pod pojęciem "język" niekoniecznie trzeba rozumieć ludzką mowę czy jej sztuczne odpowiedniki komputerowe. Natura ma również swój język, który staramy się zrozumieć. Mówiąc o językach, mamy na myśli także definiowania struktur otaczającego nas świata. Można powiedzieć, że matematyka jest nauką o strukturach. Zatem rozwój cywilizacji można powiązać z rozwojem stosowanych w niej języków - w komunikacji między ludźmi i w dialogu człowieka z maszynami cyfrowymi.

Praktyczne przejawy fenomenu, który dziś przyjmuje postać zwaną informacjonalizmem, pokazuje artykuł "Świat według Watsona" Andrzeja Lemańskiego (Computerworld, 18.10.2011). Społeczeństwo informacyjne jest faktem, a także efektem długiego rozwoju historycznego - na różnych poziomach informacjonalizmu (zob. tabela).

Przejście od pisma muszelkowego do przesyłania danych w bezprzewodowej sieci WBAN (Wireless Body Area Network) wymagało zastosowania sztucznych języków programowania. Już dwie dekady od powstania pierwszych komputerów Zusego (Z3, 1941) czy ENIACA (1946) było ich ponad 1500 (ok. 1700 w 1965 r.). W informatycznej epoce kamienia łupanego lat 50. twórcy pierwszych języków trzeciej generacji nie przypuszczali, że ich produkty przetrwają ponad pół wieku.

Standardy żyją

Pod koniec lat 90. Garnter Group raportował, że większość aplikacji biznesowych (70-80%) używa COBOL-a, korzystając łącznie z 200 mld linii kodowych, których liczba rośnie w tempie 5 mld rocznie. Z badania 352 firm w roku 2006 (http://www.computerworld.com/s/article/266228/Cobol_Coders_Going_Going_Gone_?pageNumber=1) mówią, że 62% z nich używa COBOL-a, z czego 75% intensywnie, a 58% korzysta z tego języka także dla rozwoju nowych aplikacji. Długa tradycja COBOL-a jest jego siłą, gdyż dzięki niej istnieją powszechnie akceptowane i jednoznaczne normy dla tego języka. Trudno jest zdobyć się na wymianę działającego oprogramowania tylko dlatego, że napisane było przy użyciu starszych narzędzi.

Przyszłość informatyki należy do nowszych rozwiązań. Do jakich? Na to pytanie stara się od lat odpowiedzieć indeks językowy TIOBE (http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html). Wynika z niego, że najsilniejszą pozycję mają dialekty C i Javy, osiągając ponad 50% zakresu znormalizowanego dla pierwszych 50 języków. Wyróżnia się także grupa narzędzi SQL-owych, choć może zaskakiwać niższy rating, np. dla ABAP-u. Czy można porównywać środowisko 4GL pisane w Javie i C, z samą Javą czy C? Z drugiej strony, dialekty SQL są klasyfikowane odrębnie, a SQL jest też częścią środowiska ABAP-u. Przykład pokazuje, że są języki bardziej uniwersalne, jak C i specjalizowane.

Na uwagę zasługują same założenia rozważanego indeksu, które definiują, czym jest język programowania. Wynika z nich, że SQL językiem nie jest, podobnie jak XML. Fundamentem indeksu jest liczba trafień dotyczących języka w popularnych wyszukiwarkach. Jedno jest pewne: świat otaczających nas języków jest heterogeniczny, a wielkim wyzwaniem dla informatyki jest coraz lepsza integracja języków sztucznych z tym najważniejszym - naturalnym.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200