На Хабре в свое время было несколько статей «Очень много полезных штук для AS3». Автор попытался собрать ссылки на самые полезные и интересные библиотеки. И т.к. в последнее время я разрабатываю под iOS, решил последовать его примеру и сделать то же самое, но для своей платформы. Описания почти прикладывать не буду, все есть на страничках проектов.
«Хелперы»:
UI-компоненты и фреймворки:
Работа с сетью, social API:
Аудио, видео, графика и анимация, файлы:
Игровые движки:
In-App Purchases:
Тестирование:
И в завершении хочется дать совет начинающим и не только разработчикам:
коллеги, не пишите свои велосипеды, используйте по возможности уже реализованное сообществом. Если вам не хватает функционала в какой-либо библиотеке, напишите его и выложите на всеобщее обозрение, люди вам только спасибо скажут.
UPD 2.12.12
По просьбе shoumikhin github.com/shoumikhin/NSXtensions — его набор категорий, который содержит в себе CocoaHelpers + еще всякие штуки. Доступен в CocoaPods.
«Хелперы»:
- «SSToolkit» — набор контроллеров, представлений и категорий, облегчающих жизнь.
- «Cocoa Helpers» — коллекция хелперов (категорий) Cocoa для стандартных Apple Cocoa/UIKit классов, делающая их более удобными в использовании.
- «BlocksKit» — упрощает работу с блоками.
- «iOS-Universal-Framework» — Шаблон проекта XCode 4 для построения универсального фреймворка (arm6, arm7, симулятор) для iOS / iPhone. [Must Have]
- «RMModelObject» — базовый класс для создания моделей. В принципе, подобное легко реализуется самостоятельно, но зачем тратить время, когда есть уже написанное решение.
- «FMDB» — обертка над SQLite. Позволяет выполнять запросы к базе в многопоточном режиме, получать результаты в удобном виде. [Must Have]
- «entropydb» — встраиваемая объектно-ориентированная БД для iOS, Mac OS X. Для любителей ORM.
- «twitter-text-objc» — официальная версия библиотеки на Objective-C для обработки текста от Twitter.
- «DCIntrospect» — Маленькая библиотека для визуальной отладки.
- «UIDevice-with-UniqueIdentifier-for-iOS-5» — генерация уникального идентификатора устройства в iOS 5.
- «iOS Boilerplate» — удобный и функциональный базовый шаблон проекта.
UI-компоненты и фреймворки:
- «Three20» — наверное, самый популярный фреймворк для iOS-разработки. Его используют Facebook, Posterous, Pulse, Meetup.com и мн.др. Да и в описании вакансий его можно часто встретить (пример компания Badoo). [Must Have]
- «TapkuLibrary» — еще один хороший фреймворк, ускоряющий разработку. Постоянно развивается.
- «Nimbus» — менее популярный, но не менее удобный. Если я не ошибаюсь, то победитель недавнего конкурса от ВК юзал именно его в своем приложении. [Must Have]
- «Cooliris ToolKit» — библиотека от одноименной компании. Впечатляет набором классов.
- «EGOTableViewPullRefresh» — хорошая реализация GUI-паттерна «Pull Down To Refresh». [Must Have]
- «QuickDialog» — нужно быстро построить форму в соответствии с HIG? Юзайте QuickDialog.
- «KTPhotoBrowser» — легковесная библиотечка для iPhone для просмотра фото.
- «AQGridView» — приложение-галлерею для iPad я писал применяя данную библиотеку. Очень понравились гибкая настройка ячеек грида и их перемешивание с анимацией. [Must Have]
- «KKGridView» — еще один GridView.
- «GMGridView» — более функциональное и гибкое решение, чем KKGridView.
- «MGSplitViewController» — улучшенный UISplitViewController для iPad.
- «PSStackedView» — имплементация интерфейса Twitter под iPad.
- «CLCascade» — еще один вариант реализации интерфейса Twitter под iPad.
- «HGPageScrollView» — UIScrollView для iPhone с горизонтальным слайдером страниц.
- «MTStatusBarOverlay» — кастомный статус бар.
- «WEPopover» — имплементация поповера с удобным API как UIPopoverController (iPad), но c возможностью кастомизации и работы в iPhone.
- «CMPopTipView» — позволяет создать красивую всплывающую подсказку.
- «MBProgressHUD» — более гибкая и функциональная реализация HUD.
- «SVProgressHUD» — альтернатива MBProgressHUD, более легковесная.
- «TTTAttributedLabel» — требовалось ли вам когда-нибудь вывести подчеркнутый текст? Стандартный UILabel этого сделать не позволяет. К счастью есть TTTAttributedLabel, который решает описанную задачу и предоставляют кучу других возможностей по форматированному выводу текста.
- «OHAttributedLabel» — альтернатива TTTAttributedLabel.
- «SSMessagesViewController» — Простой UI для отправки сообщений на подобии Messages.app.
- «TabBarKit» — название говорит за себя.
- «JMTabView» — еще одна реализация стилизованных вкладок с анимацией.
- «iRate» — хотите призвать пользователей активнее оценивать ваше приложение и реализовать такую возможность внутри его? Тогда этот класс для вас.
- «OpenSpringBoard» — пример реализации GUI-паттерна Dashboard.
- «ViewDeck» — красивый слайдинг наподобии реализации в клиенте Facebook.
- «SVSegmentedControl» — стилизованный UISegmentedControl с дополнительными возможностями.
- «UAModalPanel» — анимированная модальная панель.
- «iCarousel» — простая и гибкая в кастомизации 3D карусель для iOS и Mac OS.
- «Cocoa Controls» — куча кастомных компонентов для iOS, Mac OS X, среди которых встречаются действительно классные.
Работа с сетью, social API:
- «ASIHTTPRequest» — наверное, самая популярная и функциональная обертка над CFNetwork API. [Must Have]
- «AFNetworking» — фреймворк для работы с сетью. iOS, Mac OS X.
- «RestKit» — удобный фреймворк для работы с REST-сервисами.
- «JSONKit» — newonder в комментах посоветовал, за что ему и всеобщая благодарность. Судя по тестам самая быстрая либа, зафолловил.
- «SBJson (aka json-framework)» — библиотека сериализации/десериализации JSON.
- «BSJSONAdditions» — простой парсер JSON.
- «SDWebImage» — асинхронный загрузчик изображений с поддержкой кеширования.
- «ShareKit» — удобная библиотека для расшаривания в социалки и не только. [Must Have]
- «Facebook iOS SDK» — набор классов для работы с Facebook API. Хочу такую же официальную от ВК.
- «MGTwitterEngine» — библиотека для интеграции с Twitter в ваших Mac OS X, iOS приложениях.
- «MapKitDragAndDrop» — неплохой пример реализации аннотации на карте.
- «OCMapView» — отображение на карте сгруппированных аннотацией.
- «MapBox» — хорошая альтернатива MapKit. [Must Have]
Аудио, видео, графика и анимация, файлы:
- «AwesomeMenu» — очень красивое анимационное меню. [Must Have]
- «NYXImagesKit» — полезные категории для UIImage, добавляющие фильтры, изменение размера картинки, маски, и мн.др.
- «MGImageUtilities» = в дополнение к NYXImagesKit.
- «Filtrr» — фильтры для UIImage.
- «Core Plot» — для построения красивых графиков.
- «WhirlyGlobe» — 3D моделька Земли. Отличный пример для изучающих OpenGL ES.
- «AudioStreamer» — класс потокового аудио-плеера для Mac OS X и iPhone.
- «PDF Reader/Viewer» — просмотр PDF.
Игровые движки:
- «cocos2d-iphone» — один из самых популярных 2D-движков. [Must Have]
- «Corona». [Must Have]
- «The Sparrow Framework»
In-App Purchases:
- «MKStoreKit» — Вадим Башуров в своем докладе «Как откусить от яблока миллион» рекомендовал данную библиотеку. [Must Have]
Тестирование:
И в завершении хочется дать совет начинающим и не только разработчикам:
коллеги, не пишите свои велосипеды, используйте по возможности уже реализованное сообществом. Если вам не хватает функционала в какой-либо библиотеке, напишите его и выложите на всеобщее обозрение, люди вам только спасибо скажут.
UPD 2.12.12
По просьбе shoumikhin github.com/shoumikhin/NSXtensions — его набор категорий, который содержит в себе CocoaHelpers + еще всякие штуки. Доступен в CocoaPods.