blob: 5640699670f5262cc11e920aa19c19d643999668 [file] [log] [blame]
<!DOCTYPE html>
<!--
~ Copyright (c) 2020 Goldman Sachs and others
~ All rights reserved. This program and the accompanying materials
~ are made available under the terms of the Eclipse Public License v1.0
~ and Eclipse Distribution License v. 1.0 which accompany this distribution.
~ The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
~ and the Eclipse Distribution License is available at
~ http://www.eclipse.org/org/documents/edl-v10.php.
-->
<html lang="ru">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="">
<link rel="shortcut icon" type="image/x-icon" href="favicon.ico" />
<title>Eclipse Collections - Функции, которые вы хотите, в коллекциях, которые вам нужны. </title>
<!-- Bootstrap Core CSS -->
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet" integrity="sha256-7s5uDGW3AHqw6xtJmNNtr+OBRJUlgkNJEo78P4b0yRw= sha512-nNo+yCHEyn0smMxSswnf/OnX6/KwJuZTlNZBjauKhTK0c+zT+q5JOCx0UFhXQ6rJR9jg6Es8gPuD2uZcYDLqSw==" crossorigin="anonymous">
<!-- Custom CSS -->
<link href="../css/landing-page.css" rel="stylesheet">
<!-- Custom Fonts -->
<link href="//fonts.googleapis.com/css?family=Roboto+Condensed:300,400,700,300italic,400italic,700italic" rel="stylesheet" type="text/css">
<!-- Google Code Prettify -->
<link href="../css/sunburst.css" rel="stylesheet" type="text/css">
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<!-- Navigation -->
<nav class="navbar navbar-default navbar-fixed-top topnav" role="navigation">
<div class="container topnav">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<img src="../img/eclipse-collections-logo.png" style="width:175px;height:50px;" align="left" alt="Eclipse Collections">
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav navbar-right">
<li>
<a href="#start">Обзор</a>
</li>
<li>
<a href="#concept">Концепции</a>
</li>
<li>
<a href="#learn">Учите</a>
</li>
<li>
<a href="#history">История</a>
</li>
<li>
<a href="#refGuide">Руководство</a>
</li>
<li>
<a href="#sourceCode">Исходный код</a>
</li>
<li>
<a href="#contribute">Участвуйте</a>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true"
aria-expanded="false">Javadoc<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="../javadoc/10.4.0">10.4.0</a></li>
<li><a href="../javadoc/10.3.0">10.3.0</a></li>
<li><a href="../javadoc/10.2.0">10.2.0</a></li>
<li><a href="../javadoc/10.1.0">10.1.0</a></li>
<li><a href="../javadoc/10.0.0">10.0.0</a></li>
<li><a href="../javadoc/9.2.0">9.2.0</a></li>
<li><a href="../javadoc/8.2.0">8.2.0</a></li>
<li><a href="../javadoc/7.1.0">7.1.0</a></li>
</ul>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true"
aria-expanded="false">Языки<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="../index.html">English</a></li>
<li><a href="../de/index.html">Deutsch</a></li>
<li><a href="../el/index.html">Ελληνικά</a></li>
<li><a href="../es/index.html">Español</a></li>
<li><a href="../fr/index.html">Français</a></li>
<li><a href="../cn/index.html">中文</a></li>
<li><a href="../ja/index.html">日本語</a></li>
<li><a href="../pt-br/index.html">Português-Brasil</a></li>
<li><a href="">Русский</a></li>
<li><a href="../hi/index.html">हिंदी</a></li>
</ul>
</li>
</ul>
</div>
<!-- /.navbar-collapse -->
</div>
<!-- /.container -->
</nav>
<!-- Header -->
<a class="anchor" name="about"></a>
<div class="intro-header">
<div class="container-fluid">
<div class="row">
<div class="col-lg-push-2 col-lg-8">
<div class="intro-message">
<h1>Eclipse <span style="font-weight: 400">Collections</span></h1>
<h3>- Функции, которые вы хотите, в коллекциях, которые вам нужны -</h3>
</div>
</div>
</div>
</div>
<!-- /.container -->
</div>
<!-- /.intro-header -->
<!-- Page Content -->
<a class="anchor" name="start"></a>
<div class="content-section-a">
<div class="container-fluid">
<div class="row">
<div class="col-lg-5 col-sm-6">
<hr class="section-heading-spacer">
<div class="clearfix"></div>
<h2 class="section-heading">Что такое<br>Eclipse Collections</h2>
<p class="lead">Eclipse Collections - это самая лучшая библиотека коллекций для Java,
доставляющая много удовольствия разработчикам программ.
<br><br>Добавьте её к коду вашего проекта, используя систему
сборки предпочитаемую вами!</p>
</div>
<div class="col-lg-7 col-sm-6">
<ul class="nav nav-tabs">
<li class="active"><a href="#maven" data-toggle="tab">Maven</a></li>
<li><a href="#gradle" data-toggle="tab">Gradle</a></li>
<li><a href="#ivy" data-toggle="tab">Ivy</a></li>
<li><a href="#download" data-toggle="tab">Download</a></li>
</ul>
<div id="dependencies" class="tab-content">
<div class="tab-pane fade in active" id="maven">
<pre class="prettyprint">
&lt;dependency&gt;
&lt;groupId&gt;org.eclipse.collections&lt;/groupId&gt;
&lt;artifactId&gt;eclipse-collections-api&lt;/artifactId&gt;
&lt;version&gt;10.4.0&lt;/version&gt;
&lt;/dependency&gt;
&lt;dependency&gt;
&lt;groupId&gt;org.eclipse.collections&lt;/groupId&gt;
&lt;artifactId&gt;eclipse-collections&lt;/artifactId&gt;
&lt;version&gt;10.4.0&lt;/version>
&lt;/dependency&gt;</pre>
</div>
<div class="tab-pane fade" id="gradle">
<pre class="prettyprint">
implementation 'org.eclipse.collections:eclipse-collections-api:10.4.0'
implementation 'org.eclipse.collections:eclipse-collections:10.4.0'</pre>
</div>
<div class="tab-pane fade" id="ivy">
<pre class="prettyprint">
&lt;dependency org="org.eclipse.collections" name="eclipse-collections-api" rev="10.4.0" /&gt;
&lt;dependency org="org.eclipse.collections" name="eclipse-collections" rev="10.4.0" /&gt;</pre>
</div>
<div class="tab-pane fade" id="download">
<pre class="prettyprint">
<a target="_blank" href="http://mvnrepository.com/artifact/org.eclipse.collections/eclipse-collections-api/10.4.0">eclipse-collections-api-10.4.0.jar</a>
<a target="_blank" href="http://mvnrepository.com/artifact/org.eclipse.collections/eclipse-collections/10.4.0">eclipse-collections-10.4.0.jar</a></pre>
</div>
</div>
</div>
</div>
</div>
<!-- /.container -->
</div>
<!-- Get Started -->
<a class="anchor" name="concept"></a>
<div class="content-section-b">
<div class="container-fluid">
<div class="row">
<div class="col-lg-push-7 col-lg-5 col-sm-push-6 col-sm-6">
<hr class="section-heading-spacer">
<div class="clearfix"></div>
<h2 class="section-heading">Богатые, выразительные и легко читаемые интерфейсы (API)</h2>
<p class="lead">
Получите максимум эффективности от лямбда-выражений и ссылок на методы в Java 8,
используя богатые интерфейсы, которые доступны прямо на ваших коллекциях.
</p>
</div>
<div class="col-lg-pull-5 col-lg-7 col-sm-pull-6 col-sm-6">
<ul class="nav nav-tabs">
<li class="active"><a href="#method" data-toggle="tab">Eclipse Collections с ссылками на методы</a></li>
<li><a href="#ec" data-toggle="tab">Eclipse Collections с лямбда-выражениями</a></li>
<li><a href="#streams" data-toggle="tab">Java 8 Stream API</a></li>
</ul>
<div id="ec-vs-streams" class="tab-content">
<div class="tab-pane fade in active" id="method">
<pre class="prettyprint lang-java">
boolean anyPeopleHaveCats =
this.people
.anySatisfyWith(Person::hasPet, PetType.CAT);
int countPeopleWithCats =
this.people
.countWith(Person::hasPet, PetType.CAT);
MutableList&lt;Person&gt; peopleWithCats =
this.people
.selectWith(Person::hasPet, PetType.CAT)</pre>
</div>
<div class="tab-pane fade" id="ec">
<pre class="prettyprint lang-java">
boolean anyPeopleHaveCats =
this.people
.anySatisfy(person -> person.hasPet(PetType.CAT));
int countPeopleWithCats =
this.people
.count(person -> person.hasPet(PetType.CAT));
MutableList&lt;Person&gt; peopleWithCats =
this.people
.select(person -> person.hasPet(PetType.CAT));</pre>
</div>
<div class="tab-pane fade" id="streams">
<pre class="prettyprint lang-java">
boolean anyPeopleHaveCats =
this.people
.stream()
.anyMatch(person -> person.hasPet(PetType.CAT));
long countPeopleWithCats =
this.people
.stream()
.filter(person -> person.hasPet(PetType.CAT))
.count();
List&lt;Person&gt; peopleWithCats =
this.people
.stream()
.filter(person -> person.hasPet(PetType.CAT))
.collect(Collectors.toList());</pre>
</div>
</div>
<!-- /.tab-content -->
</div>
<!-- /.col -->
</div>
<!-- /.row -->
</div>
<!-- /.container -->
</div>
<!-- Rich and fluent API -->
<div class="content-section-a">
<div class="container-fluid">
<div class="row">
<div class="col-lg-5 col-sm-6">
<hr class="section-heading-spacer">
<div class="clearfix"></div>
<h2 class="section-heading">Большое разнообразие структур данных, включая<br>
неизменяемые коллекции, коллекции примитивных типов, Bimap, Multimap и Bag
</h2>
<p class="lead">
Неизменяемые (immutable) коллекции, коллекции примитивных типов, Bimap ("инвертированный" словарь, можно найти ключ по значению),
Multimap (мультисловари, словари с не уникальными ключами) и Bag (мультимножество, множество с повторяющимся элементами) -
вы можете создать все эти разнообразные типы контейнеров, используя удобные и легко находимые фабрики.</p>
</div>
<div class="col-lg-7 col-sm-6">
<ul class="nav nav-tabs">
<li class="active"><a href="#mutable" data-toggle="tab">Изменяемые коллекции</a></li>
<li><a href="#immutable" data-toggle="tab">Неизменяемые коллекции</a></li>
<li><a href="#primitives" data-toggle="tab">Коллекции примитивных типов</a></li>
</ul>
<div id="container-types" class="tab-content">
<div class="tab-pane fade in active" id="mutable">
<pre class="prettyprint lang-java">
// Инициализируем изменяемый список при помощи методов with empty(), of(), with()
MutableList&lt;String&gt; mutableListEmpty =
Lists.mutable.empty();
MutableList&lt;String&gt; mutableListOf =
Lists.mutable.of("One", "One", "Two", "Three");
MutableList&lt;String&gt; mutableListWith =
Lists.mutable.with("One", "One", "Two", "Three");
// Разнообразные типы контейнеров
MutableSet&lt;String&gt; mutableSet =
Sets.mutable.with("One", "One", "Two", "Three");
MutableBag&lt;String&gt; mutableBag =
Bags.mutable.with("One", "One", "Two", "Three");
MutableStack&lt;String&gt; mutableStack =
Stacks.mutable.with("One", "One", "Two", "Three");
MutableMap&lt;String, String&gt; mutableMap =
Maps.mutable.with("key1", "value1", "key2", "value2", "key3", "value3");
MutableMultimap&lt;String, String&gt; multimapWithList =
Multimaps.mutable.list.with("key1", "value1-1", "key1", "value1-2", "key2","value2-1");
MutableBiMap&lt;String, String&gt; mutableBiMap =
BiMaps.mutable.with("key1", "value1", "key2", "value2", "key3", "value3");</pre>
</div>
<div class="tab-pane fade" id="immutable">
<pre class="prettyprint lang-java">
// Инициализируем неизменяемые списки при помощи методов with empty(), of(), with()
ImmutableList&lt;String&gt; immutableListEmpty =
Lists.immutable.empty();
ImmutableList&lt;String&gt; immutableListOf =
Lists.immutable.of("One", "One", "Two", "Three");
ImmutableList&lt;String&gt; immutableListWith =
Lists.immutable.with("One", "One", "Two", "Three");
// Разнообразные типы контейнеров
ImmutableSet&lt;String&gt; immutableSet =
Sets.immutable.with("One", "One", "Two", "Three");
ImmutableBag&lt;String&gt; immutableBag =
Bags.immutable.with("One", "One", "Two", "Three");
ImmutableStack&lt;String&gt; immutableStack =
Stacks.immutable.with("One", "One", "Two", "Three");
ImmutableMap&lt;String, String&gt; immutableMap =
Maps.immutable.with("key1", "value1", "key2", "value2", "key3", "value3");
ImmutableMultimap&lt;String, String&gt; immutableMultimapWithList =
Multimaps.immutable.list.with("key1", "value1-1", "key1", "value1-2", "key2","value2-1");
ImmutableBiMap&lt;String, String&gt; immutableBiMap =
BiMaps.immutable.with("key1", "value1", "key2", "value2", "key3", "value3");</pre>
</div>
<div class="tab-pane fade" id="primitives">
<pre class="prettyprint lang-java">
//Изменяемые и неизменяемые контейнеры List, Set, Bag, Stack и Map существуют для всех примитивных типов
MutableIntList intList =
IntLists.mutable.of(1, 2, 3);
MutableLongList longList =
LongLists.mutable.of(1L, 2L, 3L);
MutableCharList charList =
CharLists.mutable.of('a', 'b', 'c');
MutableShortList shortList =
ShortLists.mutable.of((short)1, (short)2, (short)3);
MutableByteList byteList =
ByteLists.mutable.of((byte)1, (byte)2, (byte)3);
MutableBooleanList booleanList =
BooleanLists.mutable.of(true, false);
MutableFloatList floatList =
FloatLists.mutable.of(1.0f, 2.0f, 3.0f);
MutableDoubleList doubleList =
DoubleLists.mutable.of(1.0, 2.0, 3.0);
//Вы можете создать диапазон типа int с помошью IntInterval
IntInterval oneTo10 =
IntInterval.fromTo(1, 10); // ints from 1 to 10
// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
IntInterval oneTo10By3 =
IntInterval.fromToBy(1, 10, 3); // ints from 1 to 10 step by 3
// [1, 4, 7, 10]
IntInterval oddsFrom1To10 =
IntInterval.oddsFromTo(1, 10); // odd ints from 1 to 10
// [1, 3, 5, 7, 9]
IntInterval evensFrom1To10 =
IntInterval.evensFromTo(1, 10); // even ints from i to 10
// [2, 4, 6, 8, 10]</pre>
</div>
</div>
<!-- /.tab-content -->
</div>
<!-- /.col -->
</div>
<!-- /.row -->
</div>
<!-- /.container -->
</div>
<!-- Container Types -->
<a class="anchor" name="memory"></a>
<div class="content-section-b">
<div class="container-fluid">
<div class="row">
<div class="col-lg-push-6 col-lg-6 col-sm-push-6 col-sm-6">
<hr class="section-heading-spacer">
<div class="clearfix"></div>
<h2 class="section-heading">Уменьшите расход памяти<br>при помощи коллекций с эффективным использованием памяти</h2>
<p class="lead">Eclipse Collections содержит оптимизированные по памяти реализации интерфейсов Set (множества) и Maps (словари),
а также коллекции примитивных типов.</p>
</div>
<div class="col-lg-pull-6 col-lg-6 col-sm-pull-6 col-sm-6">
<ul class="nav nav-tabs">
<li class="active"><a href="#set" data-toggle="tab">Sets</a></li>
<li><a href="#map" data-toggle="tab">Maps</a></li>
<li><a href="#ints" data-toggle="tab">Примитивные Коллекции</a></li>
</ul>
<div id="memory" class="tab-content">
<div class="tab-pane fade in active" id="set">
<img class="img-responsive" src="../img/set.png" alt="">
</div>
<div class="tab-pane fade" id="map">
<img class="img-responsive" src="../img/map.png" alt="">
</div>
<div class="tab-pane fade" id="ints">
<img class="img-responsive" src="../img/ints.png" alt="">
</div>
</div>
</div>
</div>
</div>
<!-- /.container -->
</div>
<!-- Memory footprint -->
<a class="anchor" name="learn"></a>
<div class="content-section-a">
<div class="container-fluid">
<div class="row">
<div class="col-lg-5 col-sm-6">
<hr class="section-heading-spacer">
<div class="clearfix"></div>
<h2 class="section-heading">Выучите Eclipse Collections с помощью ката</h2>
<p class="lead">
Ознакомьтесь с <a href="https://github.com/eclipse/eclipse-collections-kata">Eclipse Collections Ката</a> -
это лёгкий и интересный способ выучить, как писать правильный, идиоматический код с Eclipse Collections.
Эта ката состоит из последовательности тестов, которые изначально не проходят.
Ваша задача - сделать так, чтобы тесты проходили, используя Eclipse Collections.
</p>
</div>
<div class="col-lg-7 col-sm-6">
<ul class="nav nav-tabs">
<li class="active"><a href="#exercise" data-toggle="tab">Пример упражнения</a></li>
<li><a href="#solution" data-toggle="tab">Пример решения</a></li>
</ul>
<div class="tab-content">
<div class="tab-pane fade in active" id="exercise">
<pre class="prettyprint lang-java">
@Test
public void getFirstNamesOfAllPeople()
{
MutableList&lt;Person&gt; people = this.people;
MutableList&lt;String&gt; firstNames = null; //Replace null, with a transformation method on MutableList.
MutableList&lt;String&gt; expectedFirstNames =
Lists.mutable.with("Mary", "Bob", "Ted", "Jake", "Barry", "Terry", "Harry", "John");
Assert.assertEquals(expectedFirstNames, firstNames);
}</pre>
</div>
<div class="tab-pane fade" id="solution">
<pre class="prettyprint lang-java">
@Test
public void getFirstNamesOfAllPeople()
{
MutableList&lt;Person&gt; people = this.people;
MutableList&lt;String&gt; firstNames = people.collect(Person::getFirstName);
MutableList&lt;String&gt; expectedFirstNames =
Lists.mutable.with("Mary", "Bob", "Ted", "Jake", "Barry", "Terry", "Harry", "John");
Assert.assertEquals(expectedFirstNames, firstNames);
}</pre>
</div>
</div>
<!-- /.tab-content -->
</div>
<!-- /.col -->
</div>
<!-- /.row -->
</div>
<!-- /.container -->
</div>
<!-- Kata -->
<a class="anchor" name="history"></a>
<div class="content-section-b">
<div class="container-fluid">
<h2 class="section-heading">История Eclipse Collections</h2>
<p class="lead">
Eclipse Collections имеет свои корни в фреймворке Caramel, созданном в компании Goldman Sachs в 2004 году.
С тех пор фреймворк развивался, и в 2012 году его исходный код был открыт на GitHub как проект под названием
<a href="https://github.com/goldmansachs/gs-collections">GS Collections</a>.
<br><br>
О GS Collections было рассказано на множестве
<a href="https://github.com/eclipse/eclipse-collections/wiki/Conference-talks-and-meetups">конференций</a>,
включая JVM Language Summit в 2012 году и JavaOne в 2014 году.
Сравнение производительности параллельных ленивых реализаций коллекций в Java 8, Scala и GS Collections было представлено в
<a href="http://www.infoq.com/presentations/java-streams-scala-parallel-collections">QCon New York</a> в 2014 году.
<a href="https://github.com/eclipse/eclipse-collections/wiki/Articles">Статьи</a> о GS Collections
(<a href="http://www.infoq.com/articles/GS-Collections-by-Example-1">Часть 1</a> /
<a href="http://www.infoq.com/articles/GS-Collections-by-Example-2">Часть 2</a>)
были опубликованы на сайте InfoQ.com, демонстрируя возможности фреймворка
на моногчисленных примерах. Они также включали и интервью с создателем GS Collections.
<br><br>
За эти годы около 40 разработчиков внесли исправления и дополнения в этот фреймворк, но все эти разработчики
были из одной компании (Goldman Sachs).
<br><br>
Чтобы полностью реализовать потенциал открытого проекта, фреймворк GS Collections перешёл в Eclipse Foundation,
и был соответственно переименован в Eclipse Collections в 2015 году. Теперь платформа Eclipse Collections доступна всем,
и любой разработчик может принять участие в её развитии!
</p>
</div>
</div>
<!-- History -->
<a class="anchor" name="refGuide"></a>
<div class="content-section-a">
<div class="container-fluid">
<h2 class="section-heading">Руководство</h2>
<p class="lead">
Полное руководство по библиотеке можно найти на GitHub здесь:
<a href="https://github.com/eclipse/eclipse-collections/blob/master/docs/guide.md#eclipse-collections-reference-guide">Reference Guide</a> (англ.)
</p>
</div>
<!-- /.container -->
</div>
<!-- Reference Guide -->
<a class="anchor" name="sourceCode"></a>
<div class="content-section-b">
<div class="container-fluid">
<h2 class="section-heading">Исходный Код</h2>
<p class="lead">
Исходный код находится на GitHub: <a href="https://github.com/eclipse/eclipse-collections">Eclipse Collections</a>.
</p>
</div>
<!-- /.container -->
</div>
<!-- Source Code -->
<a class="anchor" name="contribute"></a>
<div class="content-footer">
<div class="container-fluid">
<div class="row">
<div class="col-lg-4 col-sm-4">
<h3>Участие</h3>
<p class="regular">
Мы приветсвуем ваше участие!
<br><br>
Вы можете ознакомиться с планом равития Eclipse Collections
<a href="https://github.com/eclipse/eclipse-collections/wiki/Roadmap">здесь</a>.
<br><br>
Мы принимаем предложения на изменение кода через запросы на слияние ("pull request") в GitHub.
Чтобы сделать свой вклад в проект, пожалуйста ознакомьтесь с этим документом:
<a href="https://github.com/eclipse/eclipse-collections/blob/master/CONTRIBUTING.md">How To Contribute</a> (англ.)
</p>
</div>
<div class="col-lg-4 col-sm-4">
<h3>Новости проекта</h3>
<p class="regular">Eclipse Collections 10.4.0 <a href="https://github.com/eclipse/eclipse-collections/releases/tag/10.4.0">выпущен</a> <a class="light">(Aug 20th 2020)</a></p>
<p class="regular">Eclipse Collections 10.3.0 <a href="https://github.com/eclipse/eclipse-collections/releases/tag/10.3.0">выпущен</a> <a class="light">(Aug 8th 2020)</a></p>
<p class="regular">Eclipse Collections 10.2.0 <a href="https://github.com/eclipse/eclipse-collections/releases/tag/10.2.0">выпущен</a> <a class="light">(Feb 11th 2020)</a></p>
<p class="regular">Eclipse Collections 10.1.0 <a href="https://github.com/eclipse/eclipse-collections/releases/tag/10.1.0">выпущен</a> <a class="light">(Dec 4th 2019)</a></p>
<p class="regular">Eclipse Collections 10.0.0 <a href="https://github.com/eclipse/eclipse-collections/releases/tag/10.0.0">выпущен</a> <a class="light">(Jul 10th 2019)</a></p>
</div>
<div class="col-lg-4 col-sm-4">
<h3>Полезные ссылки</h3>
<p class="regular">Eclipse PMI: <a href="https://projects.eclipse.org/projects/technology.collections">управление проектом на сайте eclipse</a></p>
<p class="regular">GitHub: <a href="https://github.com/eclipse/eclipse-collections">eclipse-collections</a></p>
<p class="regular">Трекер заявок: <a href="https://github.com/eclipse/eclipse-collections/issues">отслеживание заявок на GitHub</a></p>
<p class="regular">Список рассылки: <a href="https://dev.eclipse.org/mailman/listinfo/collections-dev">collections-dev</a></p>
<p class="regular">Wiki: <a href="https://github.com/eclipse/eclipse-collections/wiki">GitHub wiki</a></p>
<p class="regular">Форум: <a href="https://www.eclipse.org/forums/index.php?t=thread&amp;frm_id=329">Eclipse Collections Forum</a></p>
<p class="regular">StackOverflow: с пометкой (тегом) <a href="http://stackoverflow.com/questions/tagged/eclipse-collections">eclipse-collections</a></p>
</div>
<!-- /.col -->
</div>
<!-- /.row -->
</div>
<!-- /.container -->
</div>
<!-- Container Types -->
<div class="banner">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<h3>- Больше функций, меньше трат -</h3>
</div>
</div>
</div>
<!-- /.container -->
</div>
<!-- /.banner -->
<!-- Footer -->
<footer>
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<ul class="list-inline">
<li>
<p class="copyright text-muted small">Copyright &copy; 2018 The Eclipse Foundation. All Rights Reserved. </p>
</li>
<li class="footer-menu-divider">&sdot;</li>
<li>
<a class="small" href="http://www.eclipse.org">Eclipse Foundation</a>
</li>
<li class="footer-menu-divider">&sdot;</li>
<li>
<a class="small" href="http://www.eclipse.org/legal">Legal</a>
</li>
<li class="footer-menu-divider">&sdot;</li>
<li>
<a class="small" href="http://www.eclipse.org/legal/privacy.php">Privacy</a>
</li>
<li class="footer-menu-divider">&sdot;</li>
<li>
<a class="small" href="http://www.eclipse.org/legal/termsofuse.php">Terms of Use</a>
</li>
<li class="footer-menu-divider">&sdot;</li>
<li>
<a class="small" href="http://www.eclipse.org/legal/copyright.php">Copyright Agent</a>
</li>
</ul>
</div>
</div>
</div>
</footer>
<!-- jQuery -->
<script src="https://code.jquery.com/jquery-2.2.0.min.js"></script>
<!-- Bootstrap Core JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha256-KXn5puMvxCw+dAYznun+drMdG1IFl3agK0p/pqT9KAo= sha512-2e8qq0ETcfWRI4HJBzQiA3UoyFk6tbNyG+qSaIBZLyW9Xf3sWZHN/lxe9fTh1U45DpPf07yj94KsUHHWe4Yk1A==" crossorigin="anonymous"></script>
<!-- Google Code Prettify -->
<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js?skin=sunburst"></script>
</body>
</html>