Spec-Zone.ru › OpenJavaFX 11
Модуль javafx.base
Пакет javafx.collections

Класс FXCollections

  • java.lang.Object
    • javafx.collections.FXCollections
  • public class FXCollections
    extends Object
    Утилитарный класс, состоящий из статических методов, которые являются 1:1 копиями методов java.util.Collections.

    Методы-обертки (например, synchronizedObservableList или emptyObservableList) имеют точно такую же функциональность, как и методы в Collections, за исключением того, что они возвращают ObservableList и поэтому подходят для методов, которые требуют ObservableList на входе.

    Утилитарные методы в основном предназначены для повышения производительности. Все методы оптимизированы таким образом, что они генерируют только ограниченное количество уведомлений. С другой стороны, методы java.util.Collections могут вызывать «методы изменения» в ObservableList несколько раз, что приводит к множеству уведомлений.
    Since:
    JavaFX 2.0
  • Краткое описание методов

    Все методыСтатические методыКонкретные методы
    Модификатор и тип Метод Описание
    static <E> ObservableList<E> checkedObservableList​(ObservableList<E> list, Class<E> type)
    Создаёт и возвращает безопасную оболочку для предоставленного наблюдаемого списка.
    static <K,​V>
    ObservableMap<K,​V>
    checkedObservableMap​(ObservableMap<K,​V> map, Class<K> keyType, Class<V> valueType)
    Создаёт и возвращает безопасную оболочку для предоставленного наблюдаемого словаря.
    static <E> ObservableSet<E> checkedObservableSet​(ObservableSet<E> set, Class<E> type)
    Создаёт и возвращает безопасную оболочку для предоставленного наблюдаемого множества.
    static <E> ObservableList<E> concat​(ObservableList<E>... lists)
    Конкатенирует несколько наблюдаемых списков в один.
    static <T> void copy​(ObservableList<? super T> dest, List<? extends T> src)
    Копирует элементы из источника в назначение.
    static <E> ObservableList<E> emptyObservableList()
    Создаёт пустой неизменяемый наблюдаемый список.
    static <K,​V>
    ObservableMap<K,​V>
    emptyObservableMap()
    Создаёт пустой неизменяемый наблюдаемый словарь.
    static <E> ObservableSet<E> emptyObservableSet()
    Создаёт пустое неизменяемое наблюдаемое множество.
    static <T> void fill​(ObservableList<? super T> list, T obj)
    Заполняет предоставленный список объектом obj.
    static <E> ObservableList<E> observableArrayList()
    Создаёт новый пустой наблюдаемый список, основанный на ArrayList.
    static <E> ObservableList<E> observableArrayList​(E... items)
    Создаёт новый наблюдаемый массив списков с добавленным в него items.
    static <E> ObservableList<E> observableArrayList​(Collection<? extends E> col)
    Создаёт новый наблюдаемый массив списков и добавляет в него содержимое коллекции col.
    static <E> ObservableList<E> observableArrayList​(Callback<E,​Observable[]> extractor)
    Создаёт новый пустой наблюдаемый список, основанный на ArrayList.
    static ObservableFloatArray observableFloatArray()
    Создаёт новый пустой наблюдаемый массив с плавающей запятой.
    static ObservableFloatArray observableFloatArray​(float... values)
    Создаёт новый наблюдаемый массив с плавающей запятой, которому присвоено значение values.
    static ObservableFloatArray observableFloatArray​(ObservableFloatArray array)
    Создаёт новый наблюдаемый массив с плавающей запятой с копией элементов из заданного array.
    static <K,​V>
    ObservableMap<K,​V>
    observableHashMap()
    Создаёт новый пустой наблюдаемый словарь, основанный на HashMap.
    static ObservableIntegerArray observableIntegerArray()
    Создаёт новый пустой наблюдаемый целочисленный массив.
    static ObservableIntegerArray observableIntegerArray​(int... values)
    Создаёт новый наблюдаемый целочисленный массив, которому присвоено значение values.
    static ObservableIntegerArray observableIntegerArray​(ObservableIntegerArray array)
    Создаёт новый наблюдаемый целочисленный массив с копией элементов из заданного array.
    static <E> ObservableList<E> observableList​(List<E> list)
    Создаёт ObservableList, основанный на указанном списке.
    static <E> ObservableList<E> observableList​(List<E> list, Callback<E,​Observable[]> extractor)
    Создаёт ObservableList, основанный на указанном списке.
    static <K,​V>
    ObservableMap<K,​V>
    observableMap​(Map<K,​V> map)
    Создаёт ObservableMap, основанный на указанном словаре.
    static <E> ObservableSet<E> observableSet​(E... elements)
    Создаёт ObservableSet, основанный на HashSet, содержащий все указанные элементы.
    static <E> ObservableSet<E> observableSet​(Set<E> set)
    Создаёт ObservableSet, основанный на указанном множестве.
    static <T> boolean replaceAll​(ObservableList<T> list, T oldVal, T newVal)
    Заменяет все элементы oldVal в списке на элемент newVal.
    static void reverse​(ObservableList list)
    Инвертирует порядок в списке. Вызывает только **одну** уведомление о изменении в списке.
    static void rotate​(ObservableList list, int distance)
    Поворачивает список на расстояние.
    static void shuffle​(ObservableList<?> list)
    Перемешивает все элементы в наблюдаемом списке.
    static void shuffle​(ObservableList list, Random rnd)
    Перемешивает все элементы в наблюдаемом списке.
    static <E> ObservableList<E> singletonObservableList​(E e)
    Создаёт неизменяемый наблюдаемый список с единственным элементом.
    static <T extends Comparable<? super T>>
    void
    sort​(ObservableList<T> list)
    Сортирует предоставленный наблюдаемый список.
    static <T> void sort​(ObservableList<T> list, Comparator<? super T> c)
    Сортирует предоставленный наблюдаемый список, используя компаратор c.
    static <E> ObservableList<E> synchronizedObservableList​(ObservableList<E> list)
    Создаёт и возвращает синхронизированную оболочку для предоставленного наблюдаемого списка.
    static <K,​V>
    ObservableMap<K,​V>
    synchronizedObservableMap​(ObservableMap<K,​V> map)
    Создаёт и возвращает синхронизированную оболочку для предоставленного наблюдаемого словаря.
    static <E> ObservableSet<E> synchronizedObservableSet​(ObservableSet<E> set)
    Создаёт и возвращает синхронизированную оболочку для предоставленного наблюдаемого множества.
    static <E> ObservableList<E> unmodifiableObservableList​(ObservableList<E> list)
    Создаёт и возвращает неизменяемую оболочку для предоставленного наблюдаемого списка.
    static <K,​V>
    ObservableMap<K,​V>
    unmodifiableObservableMap​(ObservableMap<K,​V> map)
    Создаёт интерфейс только для чтения для заданного ObservableMap.
    static <E> ObservableSet<E> unmodifiableObservableSet​(ObservableSet<E> set)
    Создаёт и возвращает неизменяемую оболочку для предоставленного наблюдаемого множества.
    • Наследуемые методы от класса java.lang.Object

      clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Подробное описание методов

    • observableList

      public static <E> ObservableList<E> observableList​(List<E> list)
      Создаёт ObservableList, основанный на указанном списке. Операции изменения в ObservableList будут сообщаться наблюдателям, зарегистрированным в этом экземпляре.
      Обратите внимание, что операции изменения, произведённые непосредственно в базовом списке, не сообщаются наблюдателям любого ObservableList, который его оборачивает.
      Параметры типа:
      E - Тип List, который будет оборачиваться
      Параметры:
      list - конкретный List, который служит основой для ObservableList
      Возвращает:
      новый ObservableList
    • observableList

      public static <E> ObservableList<E> observableList​(List<E> list,
                                                         Callback<E,​Observable[]> extractor)
      Создаёт ObservableList, основанный на указанном списке. Операции изменения в ObservableList будут сообщаться наблюдателям, зарегистрированным в этом экземпляре.
      Обратите внимание, что операции изменения, произведённые непосредственно в базовом списке, не сообщаются наблюдателям любого ObservableList, который его оборачивает.
      Этот список также сообщает об изменениях элементов, используя extractor. Наблюдаемые объекты, возвращаемые извлечением (применённым к каждому элементу списка), отслеживаются на предмет изменений и преобразуются в изменения типа «обновление» ListChangeListener.
      Параметры типа:
      E - Тип List, который будет оборачиваться
      Параметры:
      list - конкретный List, который служит основой для ObservableList
      extractor - преобразователь элементов в Observable[]
      Возвращает:
      новый ObservableList
      С:
      JavaFX 2.1
    • observableMap

      public static <K,​V> ObservableMap<K,​V> observableMap​(Map<K,​V> map)
      Создаёт ObservableMap, основанный на указанной карте. Операции изменения в ObservableMap будут сообщаться наблюдателям, зарегистрированным в этом экземпляре.
      Обратите внимание, что операции изменения, произведённые непосредственно в базовой карте, не сообщаются наблюдателям любого ObservableMap, который её оборачивает.
      Параметры типа:
      K - тип обернутого ключа
      V - тип обернутого значения
      Параметры:
      map - Map, служащая основой для ObservableMap
      Возвращает:
      новый ObservableMap
    • observableSet

      public static <E> ObservableSet<E> observableSet​(Set<E> set)
      Создаёт ObservableSet, основанный на указанном множестве. Операции изменения в ObservableSet будут сообщаться наблюдателям, зарегистрированным в этом экземпляре.
      Обратите внимание, что операции изменения, произведённые непосредственно в базовом множестве, не сообщаются наблюдателям любого ObservableSet, который его оборачивает.
      Параметры типа:
      E - Тип List, который будет оборачиваться
      Параметры:
      set - Set, служащий основой для ObservableSet
      Возвращает:
      новый ObservableSet
      С:
      JavaFX 2.1
    • observableSet

      public static <E> ObservableSet<E> observableSet​(E... elements)
      Создаёт ObservableSet, основанный на HashSet, который содержит все указанные элементы.
      Параметры типа:
      E - Тип List, который будет оборачиваться
      Параметры:
      elements - элементы, которые будут добавлены в возвращаемый ObservableSet
      Возвращает:
      новый ObservableSet
      С:
      JavaFX 2.1
    • unmodifiableObservableMap

      public static <K,​V> ObservableMap<K,​V> unmodifiableObservableMap​(ObservableMap<K,​V> map)
      Создаёт интерфейс только для чтения для указанного ObservableMap. Только операции изменения, выполненные в базовом ObservableMap, будут сообщаться наблюдателям, зарегистрированным в этом неизменяемом экземпляре. Это позволяет клиентам отслеживать изменения в Map, но запрещает их изменять.
      Параметры типа:
      K - тип обернутого ключа
      V - тип обернутого значения
      Параметры:
      map - ObservableMap, который будет отслеживаться этим интерфейсом
      Возвращает:
      новый UnmodifiableObservableMap
    • checkedObservableMap

      public static <K,​V> ObservableMap<K,​V> checkedObservableMap​(ObservableMap<K,​V> map,
                                                                              Class<K> keyType,
                                                                              Class<V> valueType)
      Создаёт и возвращает безопасную по типам оболочку поверх предоставленной observable карты.
      Параметры типа:
      K - тип обернутого ключа
      V - тип обернутого значения
      Параметры:
      map - observable карта, которая должна быть обернута
      keyType - тип ключа, который map разрешено содержать
      valueType - тип значения, который map разрешено содержать
      Возвращает:
      динамически безопасный вид указанной карты
      С:
      JavaFX 8.0
      См. также:
      Collections.checkedMap(java.util.Map, java.lang.Class, java.lang.Class)
    • synchronizedObservableMap

      public static <K,​V> ObservableMap<K,​V> synchronizedObservableMap​(ObservableMap<K,​V> map)
      Создаёт и возвращает синхронизированную оболочку поверх предоставленной observable карты.
      Параметры типа:
      K - тип обернутого ключа
      V - тип обернутого значения
      Параметры:
      map - карта, которая должна быть «обернута» в синхронизированную карту.
      Возвращает:
      синхронизированная версия observable карты
      С:
      JavaFX 8.0
      См. также:
      Collections.synchronizedMap(java.util.Map)
    • emptyObservableMap

      public static <K,​V> ObservableMap<K,​V> emptyObservableMap()
      Создаёт пустую неизменяемую observable карту.
      Параметры типа:
      K - тип обернутого ключа
      V - тип обернутого значения
      Возвращает:
      пустая неизменяемая observable карта
      С:
      JavaFX 8.0
      См. также:
      Collections.emptyMap()
    • observableIntegerArray

      public static ObservableIntegerArray observableIntegerArray()
      Создаёт новый пустой observable целочисленный массив.
      Возвращает:
      новый ObservableIntegerArray
      С:
      JavaFX 8.0
    • observableIntegerArray

      public static ObservableIntegerArray observableIntegerArray​(int... values)
      Создаёт новый observable целочисленный массив с values установленным для него.
      Параметры:
      values - значения, которые будут в новом observable целочисленном массиве
      Возвращает:
      новый ObservableIntegerArray
      С:
      JavaFX 8.0
    • observableIntegerArray

      public static ObservableIntegerArray observableIntegerArray​(ObservableIntegerArray array)
      Создаёт новый observable целочисленный массив со копией элементов из заданного array.
      Параметры:
      array - observable целочисленный массив для копирования
      Возвращает:
      новый ObservableIntegerArray
      С:
      JavaFX 8.0
    • observableFloatArray

      public static ObservableFloatArray observableFloatArray()
      Создаёт новый пустой observable плавающей точки массив.
      Возвращает:
      новый ObservableFloatArray
      С:
      JavaFX 8.0
    • observableFloatArray

      public static ObservableFloatArray observableFloatArray​(float... values)
      Создаёт новый observable массив с плавающей точкой с values установленным для него.
      Параметры:
      values - значения, которые будут в новом observable массиве с плавающей точкой
      Возвращает:
      новый ObservableFloatArray
      С:
      JavaFX 8.0
    • observableFloatArray

      public static ObservableFloatArray observableFloatArray​(ObservableFloatArray array)
      Создаёт новый observable массив с плавающей точкой со копией элементов из заданного array.
      Параметры:
      array - observable массив с плавающей точкой для копирования
      Возвращает:
      новый ObservableFloatArray
      С:
      JavaFX 8.0
    • observableArrayList

      public static <E> ObservableList<E> observableArrayList()
      Создаёт новый пустой наблюдаемый список, основанный на списке ArrayList.
      Параметры типа:
      E - Тип списка, который нужно обернуть
      Возвращает:
      новый созданный ObservableList
      См. также:
      observableList(java.util.List)
    • observableArrayList

      public static <E> ObservableList<E> observableArrayList​(Callback<E,​Observable[]> extractor)
      Создаёт новый пустой наблюдаемый список, основанный на списке ArrayList. Этот список отслеживает изменения элементов.
      Параметры типа:
      E - Тип списка, который нужно обернуть
      Параметры:
      extractor - преобразователь элемента в Observable[]. Объекты Observable отслеживаются для изменений в элементе.
      Возвращает:
      новый созданный ObservableList
      С тех пор, как:
      JavaFX 2.1
      См. также:
      observableList(java.util.List, javafx.util.Callback)
    • observableArrayList

      public static <E> ObservableList<E> observableArrayList​(E... items)
      Создаёт новый наблюдаемый список ArrayList с добавленными в него items.
      Параметры типа:
      E - Тип списка, который нужно обернуть
      Параметры:
      items - элементы, которые будут находиться в новом наблюдаемом списке ArrayList
      Возвращает:
      новосозданный наблюдаемый список ArrayList
      См. также:
      observableArrayList()
    • observableArrayList

      public static <E> ObservableList<E> observableArrayList​(Collection<? extends E> col)
      Создаёт новый наблюдаемый список ArrayList и добавляет в него содержимое коллекции col.
      Параметры типа:
      E - Тип списка, который нужно обернуть
      Параметры:
      col - коллекция, содержимое которой должно быть добавлено в observableArrayList
      Возвращает:
      новосозданный наблюдаемый список ArrayList
    • observableHashMap

      public static <K,​V> ObservableMap<K,​V> observableHashMap()
      Создаёт новый пустой наблюдаемый словарь, основанный на HashMap.
      Параметры типа:
      K - тип обернутого ключа
      V - тип обернутого значения
      Возвращает:
      новосозданный наблюдаемый словарь HashMap
    • concat

      public static <E> ObservableList<E> concat​(ObservableList<E>... lists)
      Конкатенирует несколько наблюдаемых списков в один. Результирующий список будет основан на списке ArrayList.
      Параметры типа:
      E - Тип списка, который нужно обернуть
      Параметры:
      lists - списки для конкатенации
      Возвращает:
      новый наблюдаемый список ArrayList, конкатенированный из аргументов
    • unmodifiableObservableList

      public static <E> ObservableList<E> unmodifiableObservableList​(ObservableList<E> list)
      Создаёт и возвращает неизменяемую оболочку на основе предоставленного наблюдаемого списка.
      Параметры типа:
      E - Тип списка, который нужно обернуть
      Параметры:
      list - наблюдаемый список, который нужно обернуть
      Возвращает:
      оболочка ObservableList, которая является неизменяемой
      См. также:
      Collections.unmodifiableList(java.util.List)
    • checkedObservableList

      public static <E> ObservableList<E> checkedObservableList​(ObservableList<E> list,
                                                                Class<E> type)
      Создаёт и возвращает безопасную по типу оболочку на основе предоставленного наблюдаемого списка.
      Параметры типа:
      E - Тип списка, который нужно обернуть
      Параметры:
      list - наблюдаемый список, который нужно обернуть
      type - тип элемента, который list разрешено хранить
      Возвращает:
      динамически безопасный по типу просмотр указанного списка
      См. также:
      Collections.checkedList(java.util.List, java.lang.Class)
    • synchronizedObservableList

      public static <E> ObservableList<E> synchronizedObservableList​(ObservableList<E> list)
      Создаёт и возвращает синхронизированную оболочку на основе предоставленного наблюдаемого списка.
      Параметры типа:
      E - Тип списка, который нужно обернуть
      Параметры:
      list - список, который нужно "обернуть" в синхронизированный список.
      Возвращает:
      синхронизированную версию наблюдаемого списка
      См. также:
      Collections.synchronizedList(java.util.List)
    • emptyObservableList

      public static <E> ObservableList<E> emptyObservableList()
      Создаёт пустой неизменяемый наблюдаемый список.
      Параметры типа:
      E - Тип списка, который нужно обернуть
      Возвращает:
      пустой неизменяемый наблюдаемый список
      См. также:
      Collections.emptyList()
    • singletonObservableList

      public static <E> ObservableList<E> singletonObservableList​(E e)
      Создаёт неизменяемый наблюдаемый список с одним элементом.
      Параметры типа:
      E - Тип списка, который нужно обернуть
      Параметры:
      e - единственный элемент, который будет содержаться в этом единственном наблюдаемом списке
      Возвращает:
      сингулярный наблюдаемый список
      См. также:
      Collections.singletonList(java.lang.Object)
    • unmodifiableObservableSet

      public static <E> ObservableSet<E> unmodifiableObservableSet​(ObservableSet<E> set)
      Создаёт и возвращает неизменяемую оболочку на основе предоставленного наблюдаемого множества.
      Параметры типа:
      E - Тип списка, который нужно обернуть
      Параметры:
      set - наблюдаемое множество, которое нужно обернуть
      Возвращает:
      оболочка ObserableSet, которая является неизменяемой
      С тех пор, как:
      JavaFX 8.0
      См. также:
      Collections.unmodifiableSet(java.util.Set)
    • checkedObservableSet

      public static <E> ObservableSet<E> checkedObservableSet​(ObservableSet<E> set,
                                                              Class<E> type)
      Создаёт и возвращает оболочку с проверкой типов на основе предоставленного наблюдаемого множества.
      Параметры типа:
      E - Тип списка, который нужно обернуть
      Параметры:
      set - наблюдаемое множество, которое нужно обернуть
      type - тип элемента, который set разрешено хранить
      Возвращает:
      динамически безопасный по типу просмотр указанного множества
      С тех пор, как:
      JavaFX 8.0
      См. также:
      Collections.checkedSet(java.util.Set, java.lang.Class)
    • synchronizedObservableSet

      public static <E> ObservableSet<E> synchronizedObservableSet​(ObservableSet<E> set)
      Создаёт и возвращает синхронизированную оболочку на основе предоставленного наблюдаемого множества.
      Параметры типа:
      E - Тип списка, который нужно обернуть
      Параметры:
      set - множество, которое нужно "обернуть" в синхронизированное множество.
      Возвращает:
      синхронизированную версию наблюдаемого множества
      С тех пор, как:
      JavaFX 8.0
      См. также:
      Collections.synchronizedSet(java.util.Set)
    • emptyObservableSet

      public static <E> ObservableSet<E> emptyObservableSet()
      Создаёт пустое неизменяемое наблюдаемое множество.
      Type Parameters:
      E - Тип списка, который будет обернут
      Возвращает:
      Пустое неизменяемое наблюдаемое множество
      Since:
      JavaFX 8.0
      См. также:
      Collections.emptySet()
    • copy

      public static <T> void copy​(ObservableList<? super T> dest,
                                  List<? extends T> src)
      Копирует элементы из src в dest. Срабатывает только одна уведомление о изменении в dest.
      Type Parameters:
      T - Тип списка, который будет обернут
      Параметры:
      dest - целевой наблюдаемый список
      src - исходный список
      См. также:
      Collections.copy(java.util.List, java.util.List)
    • fill

      public static <T> void fill​(ObservableList<? super T> list,
                                  T obj)
      Заполняет предоставленный список объектом obj. Срабатывает только одна уведомление о изменении в списке.
      Type Parameters:
      T - Тип списка, который будет обернут
      Параметры:
      list - список для заполнения
      obj - объект для заполнения списка
      См. также:
      Collections.fill(java.util.List, java.lang.Object)
    • replaceAll

      public static <T> boolean replaceAll​(ObservableList<T> list,
                                           T oldVal,
                                           T newVal)
      Заменяет все элементы oldVal в списке элементом newVal. Срабатывает только одна уведомление о изменении в списке.
      Type Parameters:
      T - Тип списка, который будет обернут
      Параметры:
      list - список, элементы которого будут заменены
      oldVal - элемент, который будет заменён
      newVal - замена
      Возвращает:
      true, если список был изменён
      См. также:
      Collections.replaceAll(java.util.List, java.lang.Object, java.lang.Object)
    • reverse

      public static void reverse​(ObservableList list)
      Инвертирует порядок элементов в списке. Срабатывает только одна уведомление о изменении в списке.
      Параметры:
      list - список, который будет инвертирован
      См. также:
      Collections.reverse(java.util.List)
    • rotate

      public static void rotate​(ObservableList list,
                                int distance)
      Поворачивает список на distance. Срабатывает только одна уведомление о изменении в списке.
      Параметры:
      list - список, который будет повернут
      distance - расстояние поворота
      См. также:
      Collections.rotate(java.util.List, int)
    • shuffle

      public static void shuffle​(ObservableList<?> list)
      Перемешивает все элементы в наблюдаемом списке. Срабатывает только одна уведомление о изменении в списке.
      Параметры:
      list - список для перемешивания
      См. также:
      Collections.shuffle(java.util.List)
    • shuffle

      public static void shuffle​(ObservableList list,
                                 Random rnd)
      Перемешивает все элементы в наблюдаемом списке. Срабатывает только одна уведомление о изменении в списке.
      Параметры:
      list - список для перемешивания
      rnd - генератор случайных чисел, используемый для перемешивания
      См. также:
      Collections.shuffle(java.util.List, java.util.Random)
    • sort

      public static <T extends Comparable<? super T>> void sort​(ObservableList<T> list)
      Сортирует предоставленный наблюдаемый список. Срабатывает только одна уведомление о изменении в списке.
      Type Parameters:
      T - Тип списка, который будет обернут
      Параметры:
      list - список, который будет отсортирован
      См. также:
      Collections.sort(java.util.List)
    • sort

      public static <T> void sort​(ObservableList<T> list,
                                  Comparator<? super T> c)
      Сортирует предоставленный наблюдаемый список, используя компаратор c. Срабатывает только одна уведомление о изменении в списке.
      Type Parameters:
      T - Тип списка, который будет обернут
      Параметры:
      list - список для сортировки
      c - компаратор, используемый для сортировки. Null, если требуется естественный порядок.
      См. также:
      Collections.sort(java.util.List, java.util.Comparator)

© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API