Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 12 лет назад пользователемwww.phpconf.ru
1 PHP&Flex - новая альтернатива для создания RIAs Иванников Андрей Улич Дмитрий
2 Что такое Flex? Adobe Flex 2 – это решение, позволяющее разрабатывать Rich Internet Applications на основе родственной Flash технологии. Описание интерфейса, и не только, основано на диалекте XML – MXML. Описание клиентской логики на ActionScript3 (AS3) В результате MXML->AS3->swf фаил.
3 Линейка продуктов Flex 2 Flex Builder 2 – IDE основанная на eclipse. Flex framework and SDK Flex Charting 2 Flex Data Services 2
4 Структура Flex приложений
5 Пример
6 MXML ActionScript package{ import mx.controls.Button; public class CustomButton extends Button{ public function CustomButton(){ supper(); }
7 ActionScript 3 ООП! Основан на стандарте ECMAScript 4. Строгая и динамическая типизация Наследование, интерфейсы, модульность Спецификаторы доступа Reflection API ECMAScript for XML (E4X) DOM3 модель событий Динамические классы (runtime добавление методов и свойств)
8 Другие аспекты разработки ASDoc – документирование в коде Mercury QuickTest – приемочные тесты FlexUnit – модульные тесты Flex Stress Testing – нагрузочные тесты Cairngorm - архитектурный фреймворк Flex-Ajax Bridge – AS JS Apollo - desktop приложения
9 Из рубрики Лучше один раз увидеть, чем сто раз услышать! Смотрим и про себя думаем, как бы мы все это сделали на JS?! %)
10 HTML&JavaScript vs MXML&ActionScript JSAS Кросбраузерность Функционал языка Распространенность Размер приложений Индексация в поисковиках Скорость разработки RIAs Производительность - + +/
11 Обмен данными Использовать фреймворки, которые сериализуют данные в формат AMF SOAP запросы Сокеты (в том числе и бинарные) Просто использовать GET и POST запросы
12 Реализована поддержка AMF PHP JAVA.NET ColdFusion Ruby
13 Фреймворки для связки PHP и Flex AMFPHP WEBORB SabreAMF
14 Общее Поддержка AMF3 Сопоставление классов (class mapping) между Flex и PHP Поддержка PHP5
15 Сравнение AMFPHPWEBORBSabreAMF Поддержка PHP4+-- Авторизация++- Документация--- Простота установки++- Ведение логов++- php_amf_extension+-- Браузер для служб+--
16 Flex
17 services-config.xml *
18 PHP class Users { public function getUsers(){ $users = array(); $query = mysql_query("select * from users"); while ($row = mysql_fetch_object($query)){ $users[] = $row; } return $users; }
19 НИЧЕГО!
20 Class mapping package vo{ [RemoteClass(alias="dummy.vo.UserVO")] public class UserVO{ public var userId:int; public var userName:String; }
21 class UserVO { public $_explicitType ="dummy.vo.UserVO"; public $userId; public $userName; }
22 import vo.UserVO; private var user:UserVO; private function createNewUser():void{ var newUser:UserVO = new UserVO(); newUser.userName = uName.text; ro.createNewUser(newUser); }
userId = $row->user_id; $user->username =" title="require_once(vo/UserVO.php); public function getUsers(){ $users = array(); $query = mysql_query("SELECT user_id, user_name FROM users"); while ($row = mysql_fetch_object($query)){ $user = new UserVO(); $user->userId = $row->user_id; $user->username =" class="link_thumb"> 23 require_once(vo/UserVO.php); public function getUsers(){ $users = array(); $query = mysql_query("SELECT user_id, user_name FROM users"); while ($row = mysql_fetch_object($query)){ $user = new UserVO(); $user->userId = $row->user_id; $user->username = $row->user_name; $users[] = $user; } return $users; } public function createNewUser (UserVO $newUser){ mysql_query("INSERT INTO users SET user_name = '". $newUser- >userName. "'"); } userId = $row->user_id; $user->username ="> userId = $row->user_id; $user->username = $row->user_name; $users[] = $user; } return $users; } public function createNewUser (UserVO $newUser){ mysql_query("INSERT INTO users SET user_name = '". $newUser- >userName. "'"); }"> userId = $row->user_id; $user->username =" title="require_once(vo/UserVO.php); public function getUsers(){ $users = array(); $query = mysql_query("SELECT user_id, user_name FROM users"); while ($row = mysql_fetch_object($query)){ $user = new UserVO(); $user->userId = $row->user_id; $user->username =">
24 Спасибо за внимание! Вопросы
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.