Рубрика «objective-c»

Привет!

Этот пост, конечно же, про AppCode 2018.1. Впрочем нет, в этот раз он еще и про первый апдейт. У нас много нового и полезного, все в картинках под катом.

Splash

Читать полностью »

Со временем языки программирования постоянно изменяются и развиваются из-за появления новых технологий, современных требований или простого желания освежить стиль написания кода. Реактивное программирование можно реализовать с помощью различных фреймворков, таких как Reactive Cocoa. Он изменяет рамки императивного стиля языка Objective-C и у такого подхода к программированию есть что предложить стандартной парадигме. Это, безусловно, и привлекает внимание iOS разработчиков.

ReactiveCocoa привносит декларативный стиль в Objective-C. Что мы подразумеваем под этим? Традиционный императивный стиль, который используют такие языки как: C, С++, Objective-C, и Java и т. д. можно описать так: Вы пишете директивы для компьютерной программы, которые должны быть выполнены определенным способом. Другими словами, вы говорите «как сделать» что-то. В то время как декларативное программирование позволяет описать поток управления как последовательность действий, «что сделать», не определяя, «как делать».

ReactiveCocoa

Читать полностью »

У каждого опытного разработчика есть набор инструментов, к которым он привык и с которыми ему удобно работать. Это может быть простейшая настройка окружения, утилиты для промежуточных операций (к примеру, помощник по тестированию API Postman), проверенные временем и лично разработчиком библиотеки и сниппеты.
Также у многих разработчиков может быть свой подход к реализации выбранной архитектуры. Поэтому очень полезно иметь в своем арсенале заготовку приложения – общий скелет, к которому останется только добавлять новые модули, экраны и фичи. В этом материале я расскажу, как создать собственный шаблон приложения в Xcode.

Читать полностью »

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

Основы безопасности: Keychain и Хеширование - 1

В этой статье вы погрузитесь в основы безопасности в iOS. Вы поработаете с некоторыми базовыми криптографическими методами хеширования для надежного хранения полученных данных в Keychain — сохраняя и защищая пользовательские данные в приложении.

Apple имеет несколько API, которые помогут защитить ваши приложения, и вы изучите их при работе с Keychain. Кроме того, вы будете использовать CryptoSwift — хорошо изучите и просмотрите библиотеку с открытым исходным кодом, которая реализует криптографические алгоритмы.
Читать полностью »

Здравствуйте читатели! В предыдущей статье я рассказывал немного про железную часть проекта охранной системы и про систему на Python, которая работает с этим железом. В этой статье я продолжаю рассказ про серверную часть.

image

Читать полностью »

Привет!

Вышел AppCode 2017.2, а значит, пора рассказать обо всех новых возможностях в этом релизе! Под катом, как и всегда, много картинок.

AppCode 2017.2
Читать полностью »

Введение

Одним из немаловажных аспектов разработки мобильных приложений является оптимизация размера. Мы все по личному опыту знаем, что чем меньше весит приложение, тем охотнее его скачивают, особенно если под рукой нет точки доступа Wi-Fi, а скорость и/или трафик мобильного интернета оставляют желать лучшего. К тому же, нельзя забывать и о том, что некоторые маркеты ставят ограничение на размер выпускаемого приложения. Например, в App Store продукты размером до 100 МБ доступны для скачивания по мобильному интернету, если же вес приложения превышает этот порог, то скачать его можно только через Wi-Fi. На Play Market же приложение, которое вытягивает больше 100 МБ, нельзя загрузить в принципе. В данной статье мы опишем, к каким методам и хитростям прибегали наши разработчики нативных приложений на iOS для того, чтобы уменьшить вес продукта, и добавим к этому несколько дельных советов, найденных в сети.

Уменьшаем размер приложения: проверенные способы - 1

Читать полностью »

В апреле состоялась конференция для разработчиков мобильных приложений Mobius. На мероприятии Программу «Единая фронтальная система» представляли лидеры команды мобильной разработки Дмитрий Евстратов и Даниил Калинцев (Отдел развития платформы ЕФС АО СберТех) с рассказом о масштабируемом VIP архитектурном дизайне для компонентов с использованием React Native.
Для тех, кому интересна мобильная разработка Программы ЕФС, кто не присутствовал или не успел пообщаться с ребятами на конференции, мы подготовили короткое интервью. В комментариях к нему вы можете задать вопрос спикерам напрямую.
 
О мобильной библиотеке и любви к React Native - 1
 Читать полностью »

Чуть больше месяца назад мы выпустили iOS-приложение «Тинькофф Инвестиции». Приложение полностью написано на языке Swift, но имеет некоторые Objective-C-зависимости. Продукт быстро начал обрастать новой функциональностью, а вместе с тем время сборки проекта существенно увеличивалось. Когда мы пришли к тому, что после clean или значительных правок проект собирался дольше шести минут, мы осознали, что перемены необходимы.

image

На просторах интернета было найдено много действенных и не очень способов ускорить время сборки проекта. Особенно нас интересовало время сборки debug-версии, потому что работать становилось всё сложнее. Ниже я расскажу о методах, которые мы опробовали в рамках решения задачи, и результатах, которых мы добились. Хочу отметить, что долгое время сборки может зависеть от разных факторов, поэтому и методы для каждого проекта используются разные.Читать полностью »

Туториал по AsyncDisplayKit 2.0 (Texture): автоматическая компоновка - 1

Добро пожаловать во вторую часть серии статей по AsyncDisplayKit (Texture)!

Система компоновки AsyncDisplayKit позволяет писать невероятно быстрый, декларативный код.

Помимо быстрой настройки, она автоматически адаптируется к устройству, на котором запущено приложение. Допустим, вы пытаетесь создать узел, который можно использовать во view controller приложения или в качестве popover в приложении для iPad. Если его layout будет правильно создан, вы сможете перенести узел в эту новую среду, не беспокоясь об изменении базового кода макета!

Читать полностью »