Статьи

Документация, документация, документация

Действительно сказано, что если вы не записали это, этого не произошло. Имея это в виду, я собираюсь поговорить о картографическом сервисе на основе JavaScript, который не является Google Maps. Community Mapbuilder — это «ряд ресурсов, помогающих организациям начать работу с основанным на стандартах онлайн-картографированием». Основная часть того, что они предлагают, это mapbuilder-lib , набор клиентских (и немного разбросанных по серверной части) скриптов, которые могут общаться с картографическими серверами с использованием стандартов OpenGIS, а затем отображать полученные карты с использованием JavaScript и XSL.

Демонстрация сообщества MapBuilder может сделать это немного яснее; он предоставляет множество масштабируемых карт, в том числе одну из стран мира и другую из Марса (!). Сама масштабируемая карта незаметно вставляется в страницу с помощью включенного JavaScript.

Это все стандартные вещи; Это хорошее применение техник, но сами техники довольно хорошо известны. Интересным моментом в mapbuilder-lib является то, что он довольно сильно документирован. В дополнение к некоторой обзорной технической документации , команда MapBuilder предоставила полную и полную документацию по API для всей библиотеки, что очень полезно для людей, которые хотят реализовать картографические приложения с использованием MapBuilder. Документация API создается с использованием JSDoc , который анализирует файлы JavaScript и извлекает документацию из комментариев так же, как JavaDoc для файлов Java. По сути, при написании кода автор добавляет специально отформатированные комментарии, например так:

/**
* Get a random colour, really inefficiently
* @returns a random colour name as a string
*/
function randomColour() {
var colours = ['red','blue','green','yellow','heliotrope'];
return colours[parseInt(Math.random()*colours.length)];
}

а затем JSDoc извлекает описания функций, детали того, что возвращает каждая функция (обозначается @returns) и т. д., и создает доступный для просмотра набор HTML-документации. JSDoc и подобные инструменты имеют большое значение для облегчения бремени написания документации для API или библиотеки, и, поскольку все больше веб-приложений и т.п. создаются с использованием сценариев DOM, появляется больше общих библиотек. Sarissa , кросс-браузерная библиотека JavaScript для обработки XML, также использует JSDoc для документации, и, несомненно, есть и другие. Будем надеяться, что больше библиотек, предназначенных для повторного использования, продолжат предоставлять хорошую документацию для использования хакерами.