27 open-source ништячков для iOS разработчика

в 11:09, , рубрики: edisonsoftware, iOS, ios development, open source, Блог компании Edison, отладка, Программирование, программирование проектирование, разработка, разработка под iOS

В портфолио компании EDISON Software есть 8 проектов, связанных с разработкой под Android и 4 крупных проекта, связанных с разработкой под iOS:

Хотим поделиться с вами полезной подборкой open-source библиотек для iOS разработчика.

1. DZNEmptyDataSet

Это должно быть стандартом, встроенным в iOS, как способ работы с пустыми таблицами и просмотром коллекций. По умолчанию, если табличное представление пустое, то на экране ничего не отображается. Это не лучший пользовательский опыт, который вы можете получить.

С этой библиотекой вам необходимо всего лишь соответствовать определённым протоколам и iOS сама позаботиться о просмотре коллекций и выделит необходимое особым шрифтом, в виде красивых сообщений для пользователя. Элементарное решение для каждого проекта под iOS.

image

27 open-source ништячков для iOS разработчика - 2

2. PDTSimpleCalendar

image

Необходим простой, привлекательный и рабочий календарь для вашего приложения? Теперь есть PDTSimpleCalendar, который является, наверное, лучшим дополнением для календаря в iOS. Вы можете настроить как его внешний вид, так и дополнительные функции.

27 open-source ништячков для iOS разработчика - 4

3. MagicalRecord

Они говорили, что Core Data это просто. Они говорили, что это просто и красиво. Да ну, реально, Apple? Тонны шаблонного кода, добавляемого в каждый проект, не выглядит простым и элегантным. Не говоря уже о добавлении, удалении и обновлении многих объектов, сохраняя контекст, создавать различные стеки Core Data для различных сред и т.д. и т.п. Конечно же, я люблю Core Data, но Apple могла бы действительно упростить его при помощи MagicalRecord.

MagicalRecord является оболочкой для Core Data, которая скрывает от разработчика ненужный хлам. Если вы когда-нибудь работали с динамичными шаблонами записи (например Ruby on Rails), то вы почувствуете себя как дома. Рекомендую эту библиотеку, если вы используете Core Data в вашем приложении.

27 open-source ништячков для iOS разработчика - 5

4. Chameleon

Если вы читаете эту статью, то, скорее всего, вы больше программист, нежели дизайнер. Тогда это для вас.

image

Chameleon — это фреймворк с цветовой палитрой для iOS. Он расширяет UIColor красивыми, современными матовыми цветами. Он также позволяет создавать палитры цветов, которые вы можете определить сами. Он может выполнять и другие функции, ознакомьтесь с ними в README. Если вам необходимо красивое приложение, обязательно добавьте эту библиотеку в ваш проект.

image

27 open-source ништячков для iOS разработчика - 8

5. Alamofire

Alamofire — элегантная сетевая библиотека написанная на Swift. Вы когда-нибудь использовали AFNetworking? Alamofire его младший брат. Более молодой и более стильный, конечно же (AFNetworking написан на Objective-C).

image

Необходимо выполнить какие-либо действия в интернете, как например скачивание, загрузка, получение JSON и т.д.? Alamofire для вас. 8000 человек на GitHub не могут ошибаться.

27 open-source ништячков для iOS разработчика - 10

6. TextFieldEffects

Вам не кажется, что UITextField слегка скучноват? Мне тоже. Поэтому поприветствуем TextFieldEffects! Я не буду писать о нём много, только покажу пару примеров возможностей этой библиотеки:

image
image
image

Да, это простые вставные контроллеры. Вы также можете использовать IBDesignables в окне редактора.

27 open-source ништячков для iOS разработчика - 14

7. GPUImage

Вы когда-нибудь создавали приложения для камеры? Если нет, то вам обязательно захочется после знакомства с этой библиотекой.

image

GPUImage обеспечивает процессорное ускорение эффектов камеры (как изображения, так и видео) с невероятной скоростью. В AppStore сотни приложений использующих эту библиотеку, среди которых есть и одна моя.

image

8869 звёзд на GitHub и их количество продолжает увеличиваться.

27 open-source ништячков для iOS разработчика - 17

8. iRate

Какой самый лучший способ получить больше отзывов в AppStore? У меня нет точных ответов на этот вопрос, но если подумать, я бы предположил что это просто просить пользователя об этом. Может, это немного устаревший способ, большинство разработчиков создают свои собственные оповещения для приложений, но если у вас нет времени на это или вы не хотите создавать это всё с нуля, то лучше использовать iRate, чем не использовать. И вот что из себя представляет iRate: небольшая библиотека, которую вы добавляете к себе в проект и забываете о том, чтобы просить пользователя оставить отзыв. iRate сделает это за вас.

27 open-source ништячков для iOS разработчика - 18

9. GameCenterManager

Любите вы, или нет singltons, но в этом случае управление Game Center`ом станет легче с небольшой помощью известного анти-паттерна (у вас же только один Game Center в игре, не так ли?).

image

По правде говоря, управление Game Centre’ом в iOS не так уж и сложно, но с этой библиотекой это станет еще проще и быстрее. А лучшее — враг хорошего.

image

Я использовал эту библиотеку в одной из своих игр и остался доволен.

27 open-source ништячков для iOS разработчика - 21

10. PKRevealController

PKRevealController 2 — жемчужина этого списка и одна из моих самых любимых способов манипуляций в iOS. Это боковое скользящее меню (левое, правое или двустороннее), которое выскальзывает с помощью пальца (или при нажатии на кнопку, что не так круто, в отличие от слайдинга).

image

Я пробовал использовать другие похожие библиотеки, но PKRevealController лучшая. Лёгкая для установки, множество настроек и распознавания жестов, что очень хорошо. Её стоило бы добавить в iOS SDK как стандарт.

27 open-source ништячков для iOS разработчика - 23

11. SlackTextViewController

Вы когда-нибудь использовали приложение Slack iOS? Если вы работаете в крупной фирме, которая специализируется на программном обеспечении, скорее всего да. Для тех же, кто не пользовался им, скажу вот что: Slack рулит! Как и Slack iOS, особенно для большого, вводимого пользователем текста — код готов для использования в вашем приложении!

Растущая область текста? Есть. Распознавание жестов, автозаполнение, вставка мультимедийных файлов? Есть. Простое встроенное решение? Есть. Что вам еще может быть нужно?

27 open-source ништячков для iOS разработчика - 24

12. RETableViewManager

RETableViewManager поможет вам динамически создавать и управлять своими представлениями таблиц при помощи кода. Это предоставляет заранее определённые ячейки (для текста, дат и т.д. — см. скриншоты ниже), но вы также можете создавать пользовательские виды и использовать их с теми, что определены по умолчанию.

image

Всё это вы можете сделать в окне редактора без использования этой библиотеки, но иногда лучше использовать простой код, нежели визуальный редактор.

27 open-source ништячков для iOS разработчика - 26

13. PermissionScope

Полезная библиотека для обеспечения более комфортного использования, путём объяснения необходимых системных разрешений, прежде чем запрашивать пользователя о них. Более быстрое восприятие -> больше пользователей активно используют приложение -> больше постоянных пользователей -> лучше статистика -> больше скачиваний. Довольно полезное дополнение.

image

27 open-source ништячков для iOS разработчика - 28

14. SVProgressHUD

«Это изображение загружается должным образом, подождите дольше и не обновляйте страницу». Это именно то, как SVProgressHUD выглядит в вашем приложении. Если вам нужен пользовательский индикатор ожидания, это один (и, наверное, лучший) из них.

image

27 open-source ништячков для iOS разработчика - 30

15. FontAwesomeKit

Font Awesome — шикарен, а с этой библиотекой вы с легкостью сможете добавить его к себе в проект и использовать его любыми способами.

image

27 open-source ништячков для iOS разработчика - 32

16. SnapKit

Любите автоматические макеты? А следует!

По крайней мере, при создании его в раскадровке.

Создание ограничений при помощи кода довольно сложно без сторонней помощи, но к счастью есть SnapKit и с его помощью вы можете вы можете программировать свои ограничения легким, декларативным образом. Попробуйте.

image

27 open-source ништячков для iOS разработчика - 34

17. MGSwipeTableCell

Другой компонент пользовательского интерфейса, который так часто встречается во многих приложениях, что Apple, вероятно, следует задуматься о добавлении чего-то подобного в стандартной іOS SDK. Перелистываемые ячейки таблицы — лучшее описание этого дополнения. Один из лучших.

image
image
image

Это всего лишь 3 вида анимации, есть больше. Почитайте файл README.

27 open-source ништячков для iOS разработчика - 38

18. Quick

Модульное тестирование в Swift, для Swift (ок, для Objective-C тоже), интегрированной с Xcode. Если вы фанат Objective-C, я бы рекомендовал Specta вместо этого, но для Swift, Quick будет, вероятно, лучшим.

image

imagehabrastorage.org/getpro/habr/post_images/c64/7c1/d06/c647c1d061fc9b964fd0537a0dee4f7c.png

27 open-source ништячков для iOS разработчика - 41

19. IAPHelper

Покупки в приложениях приносят нам огромное количество шаблонного кода, от которого эта библиотека помогает избавиться и предоставляет оболочку для наиболее распространённых задач связанных с переводом денег от пользователя в ваш (или вашей компании) кошелёк.

27 open-source ништячков для iOS разработчика - 42

20. ReactiveCocoa

Итак, у нас есть маленький монстр.

image

ReactiveCocoa совсем не маленький проект, в отличие от тех, что упомянуты в этом списке. ReactiveCocoa это совершенно другой стиль/архитектура программирования на основе значений сигналов и потоков. Это нечто совершенно сногсшибательное и вам необходимо сначала научиться этому, что бы понимать, как это работает. Это непростая работа, но стоящая.

Это не подходящее место, что бы учить вас ReactiveCocoa, но вот вам ссылки на полезные ресурсы, если вы заинтересовались:

27 open-source ништячков для iOS разработчика - 44

27 open-source ништячков для iOS разработчика - 45

27 open-source ништячков для iOS разработчика - 46

27 open-source ништячков для iOS разработчика - 47

21. SwiftyJSON

Делает проще синтаксический анализ JSON в Swift.

27 open-source ништячков для iOS разработчика - 48

22. Spring

Делает анимацию простой, цепной и декоративной.
image

27 open-source ништячков для iOS разработчика - 50

23. FontBlaster

Упрощает загрузку пользовательских шрифтов в приложение.

27 open-source ништячков для iOS разработчика - 51

24. TAPromotee

Перекрестное продвижение ваших приложений является одной из лучших маркетинговых стратегий, которую вы можете реализовать бесплатно. А с этой библиотекой это становиться так просто, что вы больше не сможете оправдываться, чтобы не делать этого: добавьте TAPromotee в ваш профиль, настройте и наслаждайтесь большим количеством скачиваний, совсем бесплатно.

image

27 open-source ништячков для iOS разработчика - 53

25. Concorde

Загружаете много JPEG изображений в приложение? С Concorde вы можете сделать это в более привлекательном виде. Прогрессивным способом.

image

27 open-source ништячков для iOS разработчика - 55

26. KeychainAccess

Маленькая вспомогательная библиотека для управления доступа в Keychain.

27 open-source ништячков для iOS разработчика - 56

27 open-source ништячков для iOS разработчика - 57

27. iOS-charts

И последняя по порядку, но не по важности – библиотека диаграмм в iOS! Она настолько полезна и красива, что я не буду писать многое. Просто посмотрите ниже что вы сможете сделать в своём проекте при помощи этой библиотеки.

image

27 open-source ништячков для iOS разработчика - 59

Много красивых примеров

image

image

image

image

image

image

image

image

image

image

image

image

image

Да, это всё доступно как вставляемый компонент. К сожалению, ещё не существует поддержки CocoaPods, так что вам нужно вручную перетащить проект из вашего Xcode на рабочую область.

TL;DR

Список библиотек

DZNEmptyDataSet [UI, пустые таблицы]
PDTSimpleCalendar [UI, календарь]
MagicalRecord [помощь с Core Data]
Chameleon [UI, работа с цветом]
Alamofire [Swift networking]
TextFieldEffects [UI, текст]
GPUImage [ускорение картинок]
iRate [рейтинги]
GameCenterManager [простое управление Game Center]
PKRevealController [UI, менюшки]
SlackTextViewController [UI, настройка полей]
RETableViewManager [динамический просмотр таблиц]
PermissionScope [UI, запросы]
SVProgressHUD [UI, индикатор ожидания]
FontAwesomeKit [easily add Font Awesome to your project]
SnapKit [easy auto layout in code]
MGSwipeTableCell [UI, swipeable table view cells]
Quick [Swift unit testing framework]
IAPHelper [In-App Purchases helper wrapper]
ReactiveCocoa [FRP]
SwiftyJSON [библиотека]
Spring [анимация]
FontBlaster [шрифты]
TAPromotee [cross promote your apps with drop-in view]
Concorde [прогрессивный JPEG]
KeychainAccess [manage keychain easily]
iOS-charts [графики]


Разработка приложений в EDISON Software

Вот так мы рассказываем заказчику, какой способ оплаты выбрать:

А вот так мы заботимся об информационной безопасности на рабочем месте:

image

Подробнее в блоге — «Организация пространства типового центра разработки»

Автор: Edison

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js