Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Introduction à Flex
Search
Anna Filina
April 03, 2008
Programming
43
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Introduction à Flex
Anna Filina
April 03, 2008
More Decks by Anna Filina
See All by Anna Filina
Surviving a Symfony Upgrade
afilina
1
180
Upgrading Legacy to the Latest PHP Version
afilina
1
200
Better Code Design in PHP
afilina
0
310
Semi-Automated Refactoring and Upgrades with Rector
afilina
0
210
Better Code Design in PHP
afilina
1
460
Better Code Design in PHP
afilina
0
630
Adding Tests to Untestable Legacy Code
afilina
0
410
Upgrading Legacy to the Latest PHP Version
afilina
0
430
Semi-Automated Refactoring and Upgrades with Rector
afilina
0
340
Other Decks in Programming
See All in Programming
Agentic UI
manfredsteyer
PRO
0
130
Webフレームワークの ベンチマークについて
yusukebe
0
160
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
780
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
270
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
6
880
The ROI of Quarkus for Spring Boot Applications
hollycummins
0
110
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
130
その問い、本当に正しいですか?AI時代のエンジニアに必要な哲学と認知科学 / ai-philosophy-cognitive-science
minodriven
5
3.9k
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
2k
Copilot CLI の継戦能力を高める コンテキスト管理
nozomutu
1
1.2k
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
12
3.6k
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
390
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
Designing for humans not robots
tammielis
254
26k
Utilizing Notion as your number one productivity tool
mfonobong
4
320
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Building Applications with DynamoDB
mza
96
7.1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Done Done
chrislema
186
16k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
480
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
720
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Transcript
Introduction à Flex PHP Québec - 3 avril 2008 Thursday,
January 14, 2010
Plan Qu’est-ce que Flex? Exemples (Amazon, PHP) Moteurs de recherche
Thursday, January 14, 2010
Qu’est-ce que Flex? Un Framework basé sur Flash ActionScript 3.0
MXML Parfait pour les données Thursday, January 14, 2010
Hello World <mx:Model id="movies" source="disneymovies.xml" /> <mx:List dataProvider="{movies.movie}" labelField="title" />
<catalog> <movie title="Aladdin"></movie> <movie title="Balto"></movie> [...] </catalog> Thursday, January 14, 2010
Thursday, January 14, 2010
Data Binding mise à jour de la variable Binding élément
visuel élément visuel élément visuel Thursday, January 14, 2010
Sources de données Array/Object Fichiers XML REST / SOAP Data
Services (BlazeDS) Thursday, January 14, 2010
Exemple Amazon <mx:HTTPService id="search" url="http://ecs.amazonaws.com/onca/xml" /> private function init():void {
var params:Object = { Service: "AWSECommerceService", AWSAccessKeyId: "07AJHV55CZA8XD0JPN82", Operation: "ItemSearch", SearchIndex: "Books", Title: "PHP" } search.send(params); } Thursday, January 14, 2010
Exemple Amazon <mx:List dataProvider=" {search.lastResult.ItemSearchResponse.Items.Item}" labelFunction="booklabel" /> private function booklabel(item:Object):String
{ return item.ItemAttributes.Title + " - " + item.ItemAttributes.Author; } Thursday, January 14, 2010
Thursday, January 14, 2010
Visuel [Bindable] private var mergedResult:ArrayCollection = new ArrayCollection; <mx:TileList dataProvider="{mergedResult}"
itemRenderer="renderer" /> <mx:VBox> <mx:Image source="{data.imgSrcMedium}"/> <mx:Text text="{data.title}" fontSize="12" fontWeight="bold" /> <mx:Text text="{data.author}" /> </mx:VBox> Thursday, January 14, 2010
Thursday, January 14, 2010
Drag & Drop <mx:TileList dataProvider="{mergedResult}" itemRenderer="renderer1" dragEnabled="true" /> <mx:List dropEnabled="true"
itemRenderer="renderer2" /> <mx:VBox> <mx:Image source="{data.imgSrcSmall}" /> <mx:Text text="{data.title}" /> </mx:VBox> Thursday, January 14, 2010
Thursday, January 14, 2010
Communiquer avec PHP $xml = ''; $sql = 'SELECT *
FROM gps'; $result = mysql_query($sql); while ($gps = mysql_fetch_assoc($result)) { $xml .= "<item manufacturer=\"{$gps['manufacturer']}\" model=\"{$gps['model']}\" bluetooth=\"{$gps['bluetooth']}\" touchscreen=\"{$gps['touchscreen']}\" audioguide=\"{$gps['audioguide']}\" lcdw=\"{$gps['lcdw']}\" lcdh=\"{$gps['lcdh']}\" />"; } echo "<gps>{$xml}</gps>"; Thursday, January 14, 2010
Communiquer avec PHP private function init():void { xml.send(); } <mx:HTTPService
id="xml" url="http://localhost:8888/FlexIntro/ example05.php" /> <mx:List id="list" dataProvider="{xml.lastResult.gps.item}" labelField="model"/> Thursday, January 14, 2010
Communiquer avec PHP <mx:Form> <mx:FormItem label="Manufacturer"> <mx:ComboBox dataProvider="{manufacturers}" selectedIndex="{int(list.selectedItem.manufacturer)}"/> </mx:FormItem>
<mx:FormItem label="Model"> <mx:TextInput text="{list.selectedItem.model}"/> </mx:FormItem> <mx:FormItem label="Features"> <mx:CheckBox label="Bluetooth Data Connection" selected="{list.selectedItem.bluetooth == 1}"/> [...] </mx:FormItem> <mx:FormItem label="LCD Resolution"> <mx:HBox> <mx:NumericStepper value="{list.selectedItem.lcdw}"/> [...] </mx:HBox> </mx:FormItem> </mx:Form> Thursday, January 14, 2010
Thursday, January 14, 2010
Sauvegarder dans BD $sql = "UPDATE gps SET manufacturer=\"{$_POST['manufacturer']}\", model=\"{$_POST['model']}\",
bluetooth=\"{$_POST['bluetooth']}\", touchscreen=\"{$_POST['touchscreen']}\", audioguide=\"{$_POST['audioguide']}\", lcdw=\"{$_POST['lcdw']}\", lcdh=\"{$_POST['lcdh']}\" WHERE id=\"{$_POST['id']}\" "; $response = mysql_query($sql) ? 'ok' : 'error'; echo "<response>{$response}</response>"; Thursday, January 14, 2010
Sauvegarder dans BD <mx:HTTPService id="saveScript" url="http://localhost:8888/FlexIntro/ example06.php" /> <mx:Button label="Save"
click="save()"/> private function save():void { list.selectedItem.manufacturer = cboManufacturer.selectedIndex; list.selectedItem.model = txtModel.text; [...] var params:Object = { id: list.selectedItem.id, manufacturer: list.selectedItem.manufacturer, [...] }; saveScript.method = "POST"; saveScript.send(params); } Thursday, January 14, 2010
Thursday, January 14, 2010
Avantages Puissant et flexible Populaire SDK et compilateur MXML gratuits
“AIR” donne accès au disque dur Flash Player 6 Flash Player 7 Flash Player 8 Flash Player 9 US/ Canada 99.0% 99.0% 98.5% 96.8% Europe2 98.1% 98.1% 97.6% 94.3% selon Adobe Thursday, January 14, 2010
Ressources Documentation - http://www.adobe.com/ support/documentation/en/flex/ Tutoriels - http://labs.adobe.com/ technologies/flexbuilder2/tutorials/ Blog
- http://annafilina.com Thursday, January 14, 2010