Знакомство с tizen

22
#mdmeetup Знакомство с Tizen Юрий Агеев, Applifto Ростов-на-Дону 21 декабря 2013

Upload: -

Post on 24-May-2015

222 views

Category:

Technology


0 download

DESCRIPTION

Немного о ОС Tizen и разработке нативных приложений для нее.

TRANSCRIPT

Page 1: Знакомство с Tizen

#mdmeetup

Знакомство с Tizen

Юрий Агеев, Applifto

Ростов-на-Дону 21 декабря 2013

Page 2: Знакомство с Tizen

#mdmeetup���2

Page 3: Знакомство с Tizen

#mdmeetup���3

Запутанная история

Page 4: Знакомство с Tizen

#mdmeetup���4

Архитектура Tizen

Page 5: Знакомство с Tizen

#mdmeetup

WEB

• Web IDE

• UI Builder

• Command Line Interface

• Web Simulator

• Emulator

���5

Page 6: Знакомство с Tizen

#mdmeetup

Native

• Native IDE

• UI Builder

• UI Effect Builder

• Command Line Interface

• Dynamic Analyzer

• Emulator

���6

Page 7: Знакомство с Tizen

#mdmeetup���7

Native IDE

Page 8: Знакомство с Tizen

#mdmeetup���8

Emulator

Page 9: Знакомство с Tizen

#mdmeetup

SDK

• Ubuntu 32/64 bits

• Windows 7 32/64 bits

• Mac OS X (Intel)

• Windows 8* 32/64 bits

���9

Page 10: Знакомство с Tizen

#mdmeetup

Going Native

���10

Page 11: Знакомство с Tizen

#mdmeetup

Ключевые моменты

• Работа с исключениями • Создание объектов • Ownership policy

• Многопоточность

���11

Page 12: Знакомство с Tizen

#mdmeetup

Работа с исключениями

• Внутри фреймфорка не используются стандартные исключения C++.

• Вместо исключений используются коды возврата.

• Можно использовать исключения в своем коде.

���12

Page 13: Знакомство с Tizen

#mdmeetup

Создание объектов

• Создание объектов двухфазное (вначале конструктор, а затем явный вызов метода Construct() для объекта).

���13

Page 14: Знакомство с Tizen

#mdmeetup���14

Пример

Page 15: Знакомство с Tizen

#mdmeetup

Ownership policy

• Право на владение объектом эксклюзивно и не может быть разделено (но может быть передано)

• Разработчик ответственен за самостоятельное удаление создаваемых им объектов

• Разработчик ответственен за удаление объектов возвращаемых методами с постфиксом «N»

���15

Page 16: Знакомство с Tizen

#mdmeetup���16

Создал - удали!

Page 17: Знакомство с Tizen

#mdmeetup

Многопоточность

• UI Thread

• Отдельных потоки для исполнения тяжелых операций

• Синхронизация обращения к данным: mutex, semaphore, monitor

• Синхронизация с UI

���17

Page 18: Знакомство с Tizen

#mdmeetup���18

Уведомляем UI

Page 19: Знакомство с Tizen

#mdmeetup

Бонусы нативности

• Libxml2

• STL

• OpenGL

• OpenAL

• OpenMP

• GCD*

���19

Page 20: Знакомство с Tizen

#mdmeetup

Что не так?

• Громоздкость кода • Отсутствие удобных фреймворков • Медленный IDE (OS X 10.9)

• Dynamic Analyzer не работает (OS X 10.9)

• Медленный эмулятор (OS X 10.9)

• Небольшое сообщество

���20

Page 21: Знакомство с Tizen

#mdmeetup

Что «так»?

• Большая часть проблем - временные

• Мощь C++

���21

Page 22: Знакомство с Tizen

#mdmeetup

Спасибо за внимание! Вопросы?

���22

@[email protected]