Max Stern
35 уровень
Нижний Новгород

5 самых популярных Java-проектов на GitHub

Пост из группы Java Developer
1807 участников
Когда начинающий программист начинает искать работу, он очень часто натыкается на глухую стену, на которой кто-то вывел уверенной рукой: “нужны специалисты с опытом”. И… что теперь? Попадаем в ситуацию “чтобы получить опыт, нам нужен опыт”? Оставь попытку всяк сюда входящий?...
На самом деле есть несколько выходов из этой рекурсии. Можно попробовать пойти на стажировку при компании (туда поступить зачастую сложнее, чем в университет), пройти стажировку за свои деньги (например, онлайн-стажировка JavaRush) или найти подходящие open source проекты для начинающих. Точно так же, к слову, поступают и более опытные разработчики, которым рутинная работа на галерах уже набила оскомину. Они находят более серьезные GitHub-проекты на Java и работают над ними, дабы держать себя в тонусе. А ещё иногда очень полезно посмотреть, как устроены крупные Java open source проекты и покопаться в их коде. В этой статье Джейн Элизабет (помощник редактора сайта JAXenter.com) рассматривает 5 самых популярных Java-проектов на GitHub. На самом деле на этом ресурсе выложены Java-проекты в огромном количестве (744 тыс., если быть точными). Но какие из них больше всего интересуют профессиональных разработчиков?

1. Mockito

Это название легко запомнить, Mockito звучит как знаменитый мятно-лаймовый коктейль. Однако этот Java Open Source проект является популярнейшим имитационным фреймворком для Unit-тестов, написанных на Java. Mockito постоянно дорабатывается на основе библиотеки Shipkit. Mockito 2.0 предоставляет улучшенный API для расширенной интеграции фреймворка, рассчитанный не на пишущих Unit-тесты пользователей, а на другие тестовые утилиты и имитационные фреймворки, для которых требуется расширение или обертывание Mockito в пользовательскую логику.

2. java-design-patterns

Этот Java open source проект полностью соответствует своему названию: java-design-patterns предоставляет разработчикам возможности реализации паттернов проектирования на языке Java. В частности, паттерны проектирования представляют собой формализованные рекомендуемые практики, благодаря которым разработчики могут решать часто встречающиеся при проектировании приложения или системы задачи. За счет протестированных и проверенных парадигм программирования они ускоряют процесс разработки. Кроме того, повторное использование паттернов помогает в предотвращении мелких неточностей, грозящих впоследствии превратиться в большие проблемы.

3. RxJava

RxJava – один из самых популярных Java-репозиториев на GitHub и популярный фреймворк. Основанная на API ReactiveX, библиотека RxJava позволяет создавать асинхронные и событийно-управляемые программы при помощи наблюдаемых последовательностей для виртуальной машины Java. RxJava расширяет паттерн "Наблюдатель" на поддержку последовательностей данных и событий. Он также добавляет операторы, позволяющие разработчикам комбинировать последовательности на этапе описания и не волноваться при этом о таких вещах, как низкоуровневое распараллеливание обработка по нитям, синхронизация, нитебезопасность и параллельные структуры данных.

4. MpAndroidChart

MPAndroidChart — обладающая широкими возможностями и удобная в использовании библиотека для разработки под операционную систему Android, работающая на API level 8 и более новых версиях. При помощи MPAndroidChart можно рисовать различные диаграммы в приложениях Android. Её можно рассматривать как утилиту визуализации данных для разработчиков мобильных приложений. В MPAndroidChart есть множество различных графиков: линейный график, гистограмма (вертикальная, горизонтальная, с накоплением, сгруппированная), секторная диаграмма, диаграмма рассеяния, график типа "японские свечи" (для финансовых данных), лепестковая диаграмма (паутинная диаграмма), кружковая диаграмма а также различные их сочетания. (Само слово "диаграмма" в отдельности теряет всякий смысл).

5. Guava

Эта превосходная библиотека ядра Google для языка Java уже существует очень давно, однако остается исключительно удобной утилитой с открытым исходным кодом для всех видов разработчиков. Она экономит массу времени, включает простые утилиты, упрощающие использование языка Java, расширения экосистемы коллекций JDK, а также другие утилиты, например, кэши, идиомы функционального программирования и многое, многое другое. В частности, Google Guava прекрасно подходит для работы с упорядоченными коллекциями. Эта её возможность, позволяющая разработчикам сравнивать содержимое коллекций при помощи чрезвычайно продвинутой функции сортировки и сравнения – одна из лучше всего развитых и проработанных в Guava.
Что еще почитать:

12 потрясающих возможностей GitHub

Комментарии (3)
  • популярные
  • новые
  • старые
Для того, что бы оставить комментарий вы должны авторизироваться
PO 2 уровень, Москва
суббота, 14:19
https://github.com/spring-projects/spring-boot Чуть более популярный java проект, чем вы привели.
Dmitry Stryukov 18 уровень, Москва
27 июня, 11:45
Я так понимаю эти open source проекты не подходят для начинающих? Каков механизм участия?
Марк Цукерберг 3 уровень, Москва
29 июня, 13:03
можно врать, что участвовал