Pull to refresh
3
0
Дмитрий Караченцов @Ne0nX

User

Send message

Общие принципы в создании мобильных приложений для начинающего UX/UI-дизайнера

Reading time3 min
Views65K


Привет! После предыдущих моих постов мне часто писали ребята, которые начинают изучать тему UI/UX. Это так классно, спасибо вам! И в этой статье я делюсь принципами, которые будут интересны и полезны новичку.
Читать дальше →
Total votes 25: ↑21 and ↓4+17
Comments23

Что нового в Ruby 2.3

Reading time4 min
Views15K
На прошой неделе вышел превью Ruby 2.3.0. Что есть интересного из изменений:

  • оператор безопасной навигации вглубь объектов (safe navigation operator), #11537
  • в Hash и Array добавлен метод dig для доступа вглубь вложенных хэшей или массивов #11688
  • движение в сторону неизменяемых (frozen) по умолчанию строковых литералов (обоснование, обсуждение #11473
Читать дальше →
Total votes 10: ↑9 and ↓1+8
Comments40

Идем на рекорд: как мы оптимизировали прикрепление изображений в Почте Mail.Ru для iOS

Reading time4 min
Views13K


По внутренней статистике Почты Mail.Ru, 80% файлов, отправляемых по email — изображения. Мы и сами каждый день шлём десятки макетов, прототипов и скриншотов. Конечно, мы захотели сделать такой распространенный сценарий удобнее, и нам это удалось. В результате отправлять фото и видео из нашего iOS-приложения стало гораздо удобнее и быстрее, чем у конкурентов. Например, чтобы прикрепить к письму три фотографии, в Почте Mail.Ru нужно всего пять нажатий. Это на 10 меньше, чем в Gmail, и на целых 13 — чем в Apple Mail. Под катом рассказ о работе над этой задачей, от возникновения идеи до её воплощения, а также несколько тяжелых гифок.
Читать дальше →
Total votes 47: ↑36 and ↓11+25
Comments23

Стилизация iOS-приложений: как мы натягиваем шрифты, цвета и изображения

Reading time3 min
Views24K


В ходе работы над мобильным приложением разработчики получают от дизайнеров макеты, шрифты и изображения. Преобразование этих материалов в код — нудное занятие, да и в процессе каждый норовит изобрести свой велосипед. Чтобы проекты оставались чистыми, мы приняли единую конвенцию по работе со стилями.
Читать дальше →
Total votes 24: ↑21 and ↓3+18
Comments6

Основы программирования графики на Apple Metal: Начало

Reading time18 min
Views26K
imageПривет, Хабр! Мой сегодняшний пост — это руководство для начинающих программировать графику на Apple Metal API. Когда я начал разбираться с этой темой, то обнаружилось, что помимо документации от Apple и примеров от них же и смотреть особо нечего. Сегодня я расскажу о том, как создать простое приложение на Metal, которое отображает трехмерный куб с освещением. Затем мы нарисуем несколько кубов с использованием одной из главных фишек Metal — рендеринга в нескольких потоках. Заинтересовавшихся прошу под кат.
Читать дальше →
Total votes 23: ↑19 and ↓4+15
Comments23

Создание Today Extension для iOS 8

Reading time14 min
Views19K
С выходом iOS 8 компания Apple представила новою концепцию под названием App Extensions, с помощью которой, Вы сможете делиться функциональностью Вашего приложения с другими приложениями, и из самой ОС.

Один из этих типов расширений являются Today Extensions, также известные как Widgets. Они предоставляют Вам возможность отображать информацию в Центр Уведомления, который является отличным способом предоставления самой актуальной информации, которой интересуется пользователь.

В этой статье, Вы напишете приложение на основе расширения Today Extension, которое представит текущую рыночную стоимость Bitcoin на основе доллара США.

Еще никогда не было так просто и так быстро предоставлять нужную информацию для Ваших пользователей. Давайте начнем!
Читать дальше →
Total votes 20: ↑15 and ↓5+10
Comments10

Не нужно бояться Core Data

Reading time11 min
Views34K
Давно подметил, что среди многих своих коллег по цеху присутствует некоторая подозрительность и даже в некотором роде неприязнь к Core Data, причем некоторые к фреймворку даже и не притрагивались. Чего уж там, и я в начале своего пути освоения новой платформы относился к нему предвзято, пойдя на поводу у подобных комментариев. Но не стоит поддаваться предрассудкам и мифам, не потрогав продукт самостоятельно. Тем из нас, кто пошел «против системы», но еще не постиг инструмент полностью, я и посвящаю эту статью. На основе небольшого примера, основанного на реальной задаче разработки мобильного клиента нашей социальной сети Мой Мир, я хочу рассказать о некоторых «подводных» камнях и заострить внимание начинающего разработчика на важных моментах оптимизации использования Core Data. Предполагается, что читающий уже имеет представление, для чего нужны основные элементы Core Data (NSManagedObjectContext, NSPersistentStoreCoordinator и т.д.) и хотя бы поверхностно ознакомлен с API.

Наш кейс: необходимо разработать приложение, позволяющее хранить и структурировать большой объем фотографий с различной метаинформацией о них. Для этого нам потребуется Core Data… и все.

Core Data rulezzz!
Читать дальше →
Total votes 55: ↑41 and ↓14+27
Comments27

GitHub Student Developer Pack — лучшие инструменты разработки бесплатно для студентов

Reading time1 min
Views68K

Несолько минут назад я получил сообщение от гитхаба с информацией о новой программе Student Developer Pack, о которой я и хочу с вами поделиться.

Програма Student Developer Pack расчитана на студентов, которые не могут себе позволить использование дорогостоящих подписок на платные сервисы для разработки.
Читать дальше →
Total votes 64: ↑56 and ↓8+48
Comments45

Разрабатываем хабраклавиатуру под iOS

Reading time13 min
Views32K

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

Так у меня появилась идея написать свою клавиатуру, в которой по нажатию на клавишу добавляется открывающийся и закрывающийся тег в текстовое поле. Курсор при этом должен стать прямо между ними, чтобы сразу же приступить к написанию текста. Также необходимо иметь возможность перемещать курсор с помощью жестов свайпа, субъективно это удобней, чем тянуть палец к полю, ожидать появления лупы, перемещать палец и надеяться, что курсор попадет куда надо. И наконец, пора бы уже разобраться с тегами «Сарказм» и «Зануда», которые не поддерживаются парсером хабра. Клавиатура должна иметь специальные клавиши для этих целей, а оформление тегов должно быть конфигурируемым в настройках клавиатуры, чтобы каждый мог указать тот вид, который ему нравится.

С выходом iOS 8 Apple открывает новый API, который позволяет разрабатывать расширения к приложениям. Клавиатура (Custom Keyboard) является одним из представителей таких расширений. О ней и пойдет речь. В статье вы узнаете о том, какие возможности, ограничения и баги предоставляет новый API, как разработать хабраклавиатуру, и как сделать так, чтобы ваша клавиатура появилась в AppStore, а следовательно и на устройствах ваших пользователей.
Читать дальше →
Total votes 61: ↑55 and ↓6+49
Comments15

Дайджест интересных материалов для мобильного разработчика #69 (1-7 сентября)

Reading time3 min
Views13K
Во многом новости этой недели связаны с Apple – утечка фотографий знаменитостей и расследование этого дела, подготовка к предстоящей во вторник конференции с обновлением инструментов, прогнозы о том, что будет в новых iPhone. Кроме этого вирус для Android, как работает мобильная реклама, первый смартфон с изогнутым дисплеем от Samsung – в еженедельном дайджесте.

Читать дальше →
Total votes 23: ↑20 and ↓3+17
Comments3

«Как я, будучи обычным школьником, спроектировал и собрал свою модель 3D принтера»

Reading time6 min
Views246K
Многие из нас привыкли смотреть за прогрессом и последними достижениями техники и науки как бы немного со стороны – оценивая уже конкретные продукты, а не сам процесс. Однако школьник из Волгограда Михаил Козенко не из их числа. Он как раз и таких, кто собственноручно предпочитает пройти весь путь от идеи до конечного результата. И итогом его поисков стал 3D принтер, который принес юному изобретателю (в мае ему исполнилось 15 лет) уже несколько наград.

С Мишей мы познакомились случайно – новость о его принтере появилась на нескольких сайтах, последовали приглашения на радио, было пару постов в развлекательных группах (эту публикации Мише, кстати, принесли немало разочарований из-за чересчур ироничных комментариев публики). В нашей группе «ВК» о Мише также была новость. И, что удивительно, сам автор без нашего приглашения вступил в диалог с читателями паблика «Простая наука», объяснял, подсказывал и учил. Он, как и мы своей книгой для детей 5-12 лет «Простая наука», двигает науку вперед не просто словами, а конкретными делами. Так у нас с ним и родилась идея сделать подробный пост для «чайников» (под таковым я подразумеваю себя, а не уважаемых хабровчан), как сделать 3D принтер с нуля.

Далее — со слов автора, который с удовольствием поучаствует в обсуждении под этим постом. И если текст получится полезным и интересным, он расскажет о создании «второй версии» принтера.

image
Читать дальше →
Total votes 255: ↑244 and ↓11+233
Comments61

Github — без командной строки

Reading time2 min
Views68K

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

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

Здесь я собрал несколько рецептов, используя которые, вы сможете без единой команды git, скопировать себе репозиторий, создать там вспомогательную ветку, в ней что-то отредактировать, добавить/удалить файлы/папки, сделать пулл-реквест в оригинальный репозиторий. А по истечению какого-то времени, когда в оригинальном репозитории накопятся изменения не отраженные в нашей копии — синхронизировать эти два репозитория — причем тоже без единой git-команды.

Читать дальше →
Total votes 67: ↑45 and ↓22+23
Comments33

От Objective-C к Swift. Рекомендации

Reading time10 min
Views41K
Swift это новый язык программирования от компаний Apple, который она презентовала в этом году на WWDC. Вместе с языком программирования, Apple выпустила отличный справочник по языку Swift, который я рекомендую прочитать или ознакомиться с ним. Тем не менее, читать книгу это очень долго! Так что если у Вас нет много времени и Вы просто хотите узнать о новом языке Swift, то эта статья для Вас.

В данной статье я бы хотел поделиться некоторыми размышлениями по поводу перехода от Objective-C к Swift. Я постараюсь дать Вам несколько советов и указать на недостатки при разном подходе к обеим языкам. Поэтому без лишних отступлений, перейдем к самой статье.
Читать дальше →
Total votes 23: ↑14 and ↓9+5
Comments9

Джентльменский набор тестировщика по версии ZeptoLab

Reading time4 min
Views55K

Вступление


Как-то раз мы съездили на конференцию SQA days, где мне довелось попасть на доклад «Джентельменский набор тестировщика». Хотелось бы продолжить эту тему и рассказать о своих тулзах, облегчающих жизнь тестировщика.

Справедливости ради стоит отметить, что у нас, в Zeptolab, работает всего несколько QA Lead’ов, а всю основную работу проделывают аутсорсеры. Тем не менее, на нашу долю приходится обширный список обязанностей, требующий глубоких знаний о продукте, работе различных sdk и методов диагностики работы приложений.

Чтобы сильно не раздувать статью, я ограничусь лишь небольшим описанием работы инструментов. Если у вас возникнут вопросы — можем обсудить их в комментариях.
Читать дальше →
Total votes 30: ↑27 and ↓3+24
Comments19

Как делать качественные печатные платы в домашних условиях.

Reading time2 min
Views389K
Любой электронный девайс требует соединения воедино кучи деталей. Конечно, можно спаять девайс на монтажной плате, но при этом велик риск наделать кучу ошибок, да и сам девайс будет выглядеть весьма стремно. Торчащие во все стороны провода оценят только любители трешдизайна. Поэтому, будем делать печатную плату!

А чтобы тебе было проще, я сделал видео урок на тему изготовления печатных плат методом Лазерного Утюга ака ЛУТ.

Полный цикл, от подготовки платы с куска текстолита, до сверления и лужения.
Читать дальше →
Total votes 123: ↑117 and ↓6+111
Comments136

Создание оффлайн карты для iOS приложения

Reading time4 min
Views19K


Доброго времени, дорогие Хабровчане!

В этой статье я расскажу о том, как реализовать оффлайн карты.

Дисклеймер. Статья не является пиаром чего-либо. Данный вариант реализации был выбран мною как самый оптимальный и я бы хотел поведать о нем в доступной форме.
Спасибо!

Предыстория


При разработке гид приложения для Гонконга, возникла нужда в использовании оффлайн карт. Google карты, к сожалению, не предоставляют такой возможности, так что, из за безысходности пришлось использовать такой сервис как MapBox, точнее расширение для iOS — MapBox-ios-sdk.

Заинтересовавшихся прошу под кат.
Читать дальше →
Total votes 29: ↑28 and ↓1+27
Comments7

Используем вебсокеты в своем iOS приложении

Reading time3 min
Views28K
Добрый день, уважаемые читатели Хабрахабра!

Сегодня я хочу рассказать вам о том, как просто и быстро подключить вебсокеты в свое iOS приложение на примере чата известной биржи криптовалют. Реализуем мы это при помощи удобного открытого решения SocketRocket.

Этот подход может пригодиться для:

  • Реализации чата в мобильном клиенте под iOS
  • Использовании информации чата для обучения нейронных сетей

Заинтересовавшихся прошу под кат!
Читать дальше →
Total votes 31: ↑21 and ↓10+11
Comments24

Как собрать WhatsApp за сутки. Часть 1

Reading time12 min
Views112K


Здравствуйте, дорогие читатели Хабрахабра!

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

  1. Создание проекта, простой UI, привязка к сервису мгновенных сообщений
  2. Делаем красивый UI, добавляем видео и аудио звонки, передачу фото и документов

К сожалению, пособие о том, как набрать 400 000 000 пользователей и продать сервис за 19 Инстаграмов, затерялось где-то на книжной полке. Постараюсь его найти, если кому интересно.

Заинтересовавшихся прошу под кат.
Читать дальше →
Total votes 178: ↑146 and ↓32+114
Comments55

RestKit — описание одной из возможностей

Reading time3 min
Views14K
Привет Хабр!

Предыстория



Давно заметил, что на хабре нет ни одной статьи о такой замечательной библиотеке как RestKit, написанной на Objective-C и предоставляющая прекрасные возможности для работы с RESTful-сервисами. Поэтому и пришла идея опубликовать краткое описание некоторых возможностей библиотеки, тем более что уже вышла совершенно новая её версия использующая за основу AFNetworking библиотеку для работы с HTTP. В статье описывается одна из важнейших для меня функциональностей — маппинг объектов.
Читать дальше →
Total votes 6: ↑4 and ↓2+2
Comments4

Core Data: импорт данных с минимумом кода

Reading time5 min
Views11K
Как и многие разработчики, я не очень люблю писать много кода, особенно там, где это кажется не нужным — на ранних стадиях стараюсь придумать, как этот код оптимизировать и обобщить. Что касается непосредственно Core Data, мне всегда казалось, что все эти бесконечные фетчи и создания новых объектов можно упростить. Тогда я открыл для себя часто упоминаемый на хабре паттерн ActiveRecord и его очень хорошую (на мой взгляд) реализацию на Objective-C — MagicalRecord. Углубляться в описание не буду — все очень доступно описано на странице проекта.
Следующим шагом упрощения должен был быть маппинг данных, поступающих извне.

Читать дальше →
Total votes 6: ↑6 and ↓0+6
Comments0
1

Information

Rating
Does not participate
Location
Днепр, Днепропетровская обл., Украина
Date of birth
Registered
Activity