Эту аббревиатуру конечный пользователь видит достаточно редко, однако это вовсе не означает, что он не сталкивается с ней никогда. Поэтому сегодня к длинному списку аббревиатур, которые мы уже рассмотрели ранее в нашей традиционной рубрике FAQ, добавится ещё одна, с которой, надеюсь, будет интересно и полезно познакомиться.
Итак, что же такое SDL? Как всегда, вариантов того, как можно интерпретировать аббревиатуру, великое множество, но мы остановимся только на одном. В данном случае расшифровывается это сокращение как Simple DirectMedia Layer. Так называется мощная программная библиотека, которая самым что ни на есть активным образом используется для разработки кросс-платформенных (и не только) мультимедийных приложений, в том числе игр. Библиотека SDL предоставляет единый интерфейс для доступа к графическим и звуковым устройствам, а также устройствам ввода. Основным преимуществом этой библиотеки перед другими аналогичными программными продуктами можно назвать как раз её кросс-платформенность, которая, в отличие от множества других библиотек, не ограничивается переносимостью между 32-разрядными версиями Windows и Linux. Список поддерживаемых программных платформ велик, и вы можете увидеть в нем даже довольно экзотические системы: BeOS, Mac OS, Mac OS X, FreeBSD, OpenBSD, BSD/OS, Solaris, IRIX, QNX. Список систем, не поддерживаемых официально, но, тем не менее, совместимых на практике с большинством возможностей библиотеки, ещё шире: он включает в себя такие системы, как AmigaOS, Dreamcast, Atari, AIX, OSF/Tru64, RISC OS, SymbianOS, OS/2.
SDL является свободной библиотекой и распространяется под лицензией GNU GPL, благодаря этому (хотя, конечно, не только этому) она заслужила большую популярность у создателей мультимедийных проигрывателей и игр под Linux и другие POSIX-системы. Изначально SDL была предназначена для разработки приложений на C (ну и, конечно же, на C++), но со временем, благодаря своему качеству и большой популярности, были сделаны "обертки" для её функций для таких языков, как Ada, C#, D, Eiffel, Erlang, Euphoria, Guile, Haskell, Java, Lisp, Lua, ML, Objective C, Pascal, Perl, PHP, Pike, Pliant, Python, Ruby, Smalltalk,Tcl.
Стоит отметить, что, несмотря на свою популярность в мире Linux, под Windows SDL распространена намного меньше и используется, в основном, из соображений совместимости в силу того, что опирается на достаточно старые интерфейсы DirectX API 7-й версии.
Вадим СТАНКЕВИЧ,
dreamdrusch@tut.by