logo
  • Home
  • Acerca
  • Autores
  • Faq
  • Rede
  • Mobile
  Twitter   Feed-me! RSS!
Fev 22

Lumine + ZendAmf + Flex 5/5

Escrito por Fábio Batista da Silva em 1, 4, 6, AMF, AR, Adobe, Adobe Flex, Arquitetura, BI, Bindable, Controls, DataGrid, DataProvider, Desenvolvedor, EventListener, Evento, Eventos, Flex, Flex 2, Flex 3, Flex 4, IE, Iniciando, Java, MXML, Number, O, PHP, Pessoal, Projetos, RIA, Ria’s Geral, TAT, Tema, TextInput, Tutorial, UI, Ved, XML, XP, action, app, auto, back, backend, bar, busca, class, control, código, código fonte, demo, desenvolvedores, dispatch, dispatchEvent, email, err, erro, event, events, fonte, for, framework, function, handle, ide, if, label, layout, on, pt, servidor, tag, tv, update, vs, zend, zendAMF, zendFramework @ 02 22nd, 2010 | via http://www.flexria.com.br/home | Sem comentários
Fábio Batista da Silva
? X
  • Bookmarks

Blinkbits BlinkLists BlogLines Blogmarks Buddymarks CiteULike Co.mments Del.icio.us Digg Diigo

Fark Feed Me Links Furl Google Linkagogo ma.gnolia Mister Wong Newsvine Propeller Rawsugar

Reddit Rojo Simpy Sphinn Spurl Squidoo StumbleUpon Tailrank Technorati Yahoo

More »

Lumine + ZendAmf + Flex 5/5

Olá pessoal !!!

Agora que temos nosso backend e regra de negocio pronta podemos implementar nossas views e actions.

Application

Iniciando pelo nosso application que terá apenas as configurações do Swiz e uma instância de nossa view :

<?xml version="1.0" encoding="utf-8"?>
<mx:Application 
	xmlns:mx="http://www.adobe.com/2006/mxml" 
	xmlns:swiz="http://swiz.swizframework.org"
	xmlns:views="br.com.flexria.views.*"
	layout="absolute" xmlns:local="*"
	creationPolicy="all"
	height="100%"
	width="100%">
 
	<local:ApplicationSwizConfig/>
 
	<views:ContactView 
		horizontalCenter="0" 
		verticalCenter="0"
		width="600"
		bottom="20" 
		top="20"/>
</mx:Application>

Views

A aplicação possui 2 view extremamente simples ContactView e PhoneView, sendo que a segunda será utilizado como filha da primeira:

ContactView.mxml

<?xml version="1.0" encoding="utf-8"?>
<mx:Panel 
	xmlns:mx="http://www.adobe.com/2006/mxml"
	xmlns:views="br.com.flexria.views.*" 
 	creationComplete="{init()}"
 	title="Contatos">
	<mx:Script source="actions/ContactAction.as"/>
	<mx:ViewStack id="_vs" width="100%" height="100%">
		<mx:Canvas width="100%" height="100%" id="_canvasList">
			<mx:HBox left="20" right="20" top="5">
				<mx:Label text="Nome"/>
				<mx:TextInput id="_txFind" width="80%"/>
				<mx:Button label="Buscar" click="find()"/>
			</mx:HBox>
			<mx:DataGrid 
				id="_dataGrid"
				top="40"
				left="10"
				right="10"
				bottom="60" 
				doubleClick="update()"
				doubleClickEnabled="true"
				dataProvider="{contactController.dataProvider}" >
				<mx:columns>
					<mx:DataGridColumn headerText="Nome" 	dataField="name"/>
					<mx:DataGridColumn headerText="Email" 	dataField="email"/>
				</mx:columns>
			</mx:DataGrid>
			<mx:ControlBar bottom="10" width="95%" horizontalCenter="0" horizontalAlign="left" verticalAlign="middle">
				<mx:Button label="Novo" 	id="_btnCreate" 	click="{create()}"/>
				<mx:Button label="Editar" 	id="_btnUpdate" 	click="{update()}"		enabled="{_dataGrid.selectedItem!=null}"/>
				<mx:Button label="Remover" 	id="_btnRemove" 	click="{remove()}"		enabled="{_dataGrid.selectedItem!=null}"/>
			</mx:ControlBar>
		</mx:Canvas>
		<mx:Canvas  width="100%" height="100%" id="_canvasForm">
			<mx:TabNavigator width="100%" height="100%">
				<mx:Form 
					top="10"
					left="10"
					right="10"
					bottom="10" 
					borderStyle="solid" label="Contato">
					<mx:FormHeading label="{contact.id>0?'Editando':'Incluindo'} contato"/>
					<mx:FormItem label="Nome:" required="true">
						<mx:TextInput 
							width="339" 
							id="_txtName" 
							text="{contact.name}"/>
					</mx:FormItem>
					<mx:FormItem label="Email:">
						<mx:TextInput 
							width="339" 
							id="_txtEmail" 
							text="{contact.email}"/>
					</mx:FormItem>
					<mx:FormItem width="100%" direction="horizontal">
						<mx:Button label="Cancelar" id="_btnCancel" 	click="{cancel()}"/>
						<mx:Button label="Confirmar" id="_btnConfirm" 	click="{save()}"/>
					</mx:FormItem>
				</mx:Form>
                                <!--Instancia de PhoneView-->
				<views:PhoneView 
					id="_phoneView" 
					contact="{contact}" 
					label="Telefones" 
					enabled="{contact.id>0}"/>
			</mx:TabNavigator>
		</mx:Canvas>
	</mx:ViewStack>
</mx:Panel>

PhoneView.mxml

<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas 
	xmlns:mx="http://www.adobe.com/2006/mxml" 
 	creationComplete="{init()}">
	<mx:Script source="actions/PhoneAction.as"/>
	<mx:ViewStack id="_vs" width="100%" height="100%">
		<mx:Canvas width="100%" height="100%" id="_canvasList">
			<mx:DataGrid 
				id="_dataGrid"
				top="10"
				left="10"
				right="10"
				bottom="60" 
				doubleClick="update()"
				doubleClickEnabled="true"
				dataProvider="{phoneController.dataProvider}" >
				<mx:columns>
					<mx:DataGridColumn headerText="Número" 	dataField="number"/>
				</mx:columns>
			</mx:DataGrid>
			<mx:ControlBar bottom="10" width="95%" horizontalCenter="0" horizontalAlign="left" verticalAlign="middle">
				<mx:Button label="Novo" 	id="_btnCreate" 	click="{create()}"/>
				<mx:Button label="Editar" 	id="_btnUpdate" 	click="{update()}"		enabled="{_dataGrid.selectedItem!=null}"/>
				<mx:Button label="Remover" 	id="_btnRemove" 	click="{remove()}"		enabled="{_dataGrid.selectedItem!=null}"/>
			</mx:ControlBar>
		</mx:Canvas>
		<mx:Canvas  width="100%" height="100%" id="_canvasForm">
			<mx:Form 
				top="10"
				left="10"
				right="10"
				bottom="10" 
				borderStyle="solid">
				<mx:FormHeading label="{phone.id>0?'Editando':'Incluindo'} telefone"/>
				<mx:FormItem label="Número:" required="true">
					<mx:TextInput 
						width="339" 
						id="_txtNumber" 
						text="{phone.number}"/>
				</mx:FormItem>
				<mx:FormItem width="100%" direction="horizontal">
					<mx:Button label="Cancelar" id="_btnCancel" 	click="{cancel()}"/>
					<mx:Button label="Confirmar" id="_btnConfirm" 	click="{save()}"/>
				</mx:FormItem>
			</mx:Form>
		</mx:Canvas>
	</mx:ViewStack>
</mx:Canvas>

Actions

E para finalizar as respectivas Actions para ContactView e PhoneView.
Essas action possuem os métodos que disparam os eventos de chamada ao servidor e métodos handler que serão chamados quando a requisição for completada.
Além disso temos a meta tag [Autowire] que faz a injeção do respectivo controller.
ContactAction.as

import br.com.flexria.controllers.ContactController;
import br.com.flexria.events.ContactEvent;
import br.com.flexria.vo.ContactVO;
import org.swizframework.Swiz;
import mx.events.CloseEvent;
import mx.controls.Alert;
 
 
[Bindable]
private var contact:ContactVO=new ContactVO();
 
[Bindable]
[Autowire]
public var contactController:ContactController;
 
/**
 * init()
 */
private function init():void
{
	find();
 
	Swiz.addEventListener(ContactEvent.SAVE_COMPLETE, saveCompleteHandler);
	Swiz.addEventListener(ContactEvent.REMOVE_COMPLETE, removeCompleteHandler);
}
 
/**
 * create()
 */
private function create():void
{
	contact=new ContactVO();
	_vs.selectedChild=_canvasForm;
}
 
/**
 * update()
 */
private function update():void
{
	contact=_dataGrid.selectedItem as ContactVO;
	_vs.selectedChild=_canvasForm;
}
 
/**
 * cancel()
 */
private function cancel():void
{
	contact=new ContactVO();
	_vs.selectedChild=_canvasList;
}
 
/**
 * find()
 */
private function find():void
{
	_vs.selectedChild=_canvasList;
	var event:ContactEvent=new ContactEvent(ContactEvent.FIND);
	event.contact=new ContactVO();
	event.contact.name=_txFind.text;
	Swiz.dispatchEvent(event);
}
 
/**
 * save()
 */
private function save():void
{
	contact.name=_txtName.text;
	contact.email=_txtEmail.text;
	var event:ContactEvent=new ContactEvent(ContactEvent.SAVE);
	event.contact=contact;
	Swiz.dispatchEvent(event);
}
 
/**
 * remove()
 */
private function remove():void
{
	Alert.show("Deseja realmente excluir o registro selecionado?", "Excluir", Alert.NO | Alert.YES | Alert.NONMODAL, null, function(e:CloseEvent):void
	{
		if (e.detail == Alert.YES)
		{
			contact=_dataGrid.selectedItem as ContactVO;
			var event:ContactEvent=new ContactEvent(ContactEvent.REMOVE);
			event.contact=contact;
			Swiz.dispatchEvent(event);
		}
	});
 
}
 
/**
 * saveCompleteHandler()
 */
private function saveCompleteHandler(event:Event):void
{
	_vs.selectedChild=_canvasList;
	find();
}
 
/**
 * removeCompleteHandler()
 */
private function removeCompleteHandler(event:Event):void
{
	_vs.selectedChild=_canvasList;
	find();
}

PhoneAction.as

import br.com.flexria.controllers.ContactController;
import br.com.flexria.controllers.PhoneController;
import br.com.flexria.events.ContactEvent;
import br.com.flexria.events.PhoneEvent;
import br.com.flexria.vo.ContactVO;
import br.com.flexria.vo.PhoneVO;
import org.swizframework.Swiz;
import mx.events.CloseEvent;
import mx.controls.Alert;
 
[Bindable]
private var _contact:ContactVO;
 
[Bindable]
private var phone:PhoneVO=new PhoneVO();
 
[Bindable]
[Autowire]
public var phoneController:PhoneController;
 
public function set contact(value:ContactVO):void
{
	_contact=value;
	if (_contact != null && _contact.id > 0)
	{
		load();
	}
}
 
/**
 * init()
 */
private function init():void
{
	Swiz.addEventListener(PhoneEvent.SAVE_COMPLETE, saveCompleteHandler);
	Swiz.addEventListener(PhoneEvent.REMOVE_COMPLETE, removeCompleteHandler);
}
 
/**
 * load()
 */
private function load():void
{
	_vs.selectedChild=_canvasList;
	var event:PhoneEvent=new PhoneEvent(PhoneEvent.LOAD);
	event.contact=_contact;
	Swiz.dispatchEvent(event);
}
 
/**
 * create()
 */
private function create():void
{
	phone=new PhoneVO();
	_vs.selectedChild=_canvasForm;
}
 
/**
 * update()
 */
private function update():void
{
	phone=_dataGrid.selectedItem as PhoneVO;
	_vs.selectedChild=_canvasForm;
}
 
/**
 * cancel()
 */
private function cancel():void
{
	phone=new PhoneVO();
	_vs.selectedChild=_canvasList;
}
 
/**
 * save()
 */
private function save():void
{
	phone.contactId=_contact.id;
	phone.number=_txtNumber.text;
	var event:PhoneEvent=new PhoneEvent(PhoneEvent.SAVE);
	event.phone=phone;
	Swiz.dispatchEvent(event);
}
 
/**
 * remove()
 */
private function remove():void
{
	Alert.show("Deseja realmente excluir o registro selecionado?", "Excluir", Alert.NO | Alert.YES | Alert.NONMODAL, null, function(e:CloseEvent):void
	{
		if (e.detail == Alert.YES)
		{
			phone=_dataGrid.selectedItem as PhoneVO;
			var event:PhoneEvent=new PhoneEvent(PhoneEvent.REMOVE);
			event.phone=phone;
			Swiz.dispatchEvent(event);
		}
	});
 
}
 
/**
 * saveCompleteHandler()
 */
private function saveCompleteHandler(event:Event):void
{
	_vs.selectedChild=_canvasList;
	load();
}
 
/**
 * removeCompleteHandler()
 */
private function removeCompleteHandler(event:Event):void
{
	_vs.selectedChild=_canvasList;
	load();
}

Assim finalizamos nossa aplicação !!!

O código fonte da aplicação pode ser baixado aqui

Espero que esse tutorial possa ser utíl aos desenvolvedores PHP que pretendem utilizar essa arquitetura em seus projetos e peço desculpas por algum erro ou se deixei de explicar algo durante o post.
Se houver alguma duvida podem podem perguntar via comentário no post ou email Q respondo na medida do possível..

Abraço a todos e até a próxima !!!!

Tutorial : Lumine + ZendAmf + Flex 1/5
Tutorial : Lumine + ZendAmf + Flex 2/5
Tutorial : Lumine + ZendAmf + Flex 3/5
Tutorial : Lumine + ZendAmf + Flex 4/5
Tutorial : Lumine + ZendAmf + Flex 5/5

Fev 17

XAMLCast – 2a Temporada – Episódio 7 – Silverlight Viewport, Visual Studio 2010 RC, MVVM

Escrito por XAML Cast em .NET, 1, 2009, 4, 6, AR, Blogs, DRE, Dica, Dicas, Frameworks, IE, Links, MSDN, Microsoft, Novidades, O, Ria’s Geral, Screencast, Tema, Twitter, UI, Visual Studio, Visual Studio 2010, WPF, Wordpress, XAML, Xna, arte, back, bar, blog, codeplex, comunidade, for, framework, iTunes, ide, if, int, mg, mvc, novidade, on, podcast, pt, quick, rss, screen, silverlight, tag, vs @ 02 17th, 2010 | via http://www.xamlcast.net | Sem comentários
XAML Cast
? X
  • Bookmarks

Blinkbits BlinkLists BlogLines Blogmarks Buddymarks CiteULike Co.mments Del.icio.us Digg Diigo

Fark Feed Me Links Furl Google Linkagogo ma.gnolia Mister Wong Newsvine Propeller Rawsugar

Reddit Rojo Simpy Sphinn Spurl Squidoo StumbleUpon Tailrank Technorati Yahoo

More »

Caros ouvintes!

Continuando o papo técnico, este espisódio do XAMLCast traz o tema MVVM salpicado com novidades e boas dicas e referências para você estudar.

Ouça e tire suas conclusões:

Seguem os links relacionados ao podcast:

  • Visual Studio 2010 RC
    • http://msdn.microsoft.com/pt-br/vstudio/dd582936.aspx
  • Jason Zander
    • Blog: http://blogs.msdn.com/jasonz
    • Channel9 (video): http://tinyurl.com/ycdur6g
  • Silverlight Viewport
    • http://tinyurl.com/yk5o7zq
  • SilverArcade (videocast)
    • http://www.silverarcade.com
  • MVC x MVP x MVVM
    • http://nirajrules.wordpress.com/2009/07/18/mvc-vs-mvp-vs-mvvm
  • Josh Smith
    • http://joshsmithonwpf.wordpress.com
  • Karl Shifflett
    • Blog
      • http://karlshifflett.wordpress.com
    • Ocean v2
      • http://karlshifflett.wordpress.com/ocean
      • http://karlshifflett.wordpress.com/2010/02/07/bbq-shack-ocean-v2-for-visual-studio-2008/
  • Sasha Barber
    • http://sachabarber.net
  • Marlon Grech
    • http://marlongrech.wordpress.com
  • MVVM Made Easy / Jeremiah Morrill (screencast)
    • http://vimeo.com/8915487
  • MVVM Frameworks
    • http://www.japf.fr/2009/10/a-quick-tour-of-existing-mvvm-frameworks/
  • MVVM Light
    • http://www.galasoft.ch/mvvm/getstarted
    • http://mvvmlight.codeplex.com
  • Cinch
    • http://sachabarber.net/?p=522
    • http://sachabarber.net/?p=523
    • http://www.codeproject.com/KB/WPF/CinchCodeGen.aspx
  • Jesse Liberty
    • http://tinyurl.com/y8nel6o
  • Dicas em português para começar com MVVM
    • http://tinyurl.com/yjhgrmv
  • Grupo MVVM na comunidade Silverlight Brasil
    • http://silverlightbrasil.ning.com/group/MVVM

Discutam, comentem e retwittem!

Para assinar:

  • Feed RSS: http://www.xamlcast.net
  • iTunes/iPod: pcast://www.xamlcast.net
  • Zune: zune://subscribe/?XAMLCast=http://www.xamlcast.net

O XAMLCast também está no Twitter!

- Twitter oficial: @xamlcast (e hashtag #xamlcast)

- Siga os XAMLCasters:

  • @kelps
  • @robertos_br
  • @rodrigokono

- Adicione o Twibbon do XAMLCast ao seu avatar!

  • http://twibbon.com/join/XAMLCast

Aguardamos seu feedback!

Abraços,

Kelps, Roberto Sonnino e Rodrigo Kono

http://feedproxy.google.com/~r/xamlcast/~5/7fUDAVC_Pxc/xamlcast – 2×07.mp3

Fev 11

Visual Studio 2010 Release Candidate disponível para download público

Escrito por Kelps Sousa em .NET, 1, 4, 6, AR, Asp.Net, BI, Beta, Blogs, Desenvolvimento, Download, Google, IE, Links, MIX, MSDN, Microsoft, NaN, News, Novidades, O, RIA, RTW, Release Candidate, Ria’s Geral, Silverlight 3, Silverlight 4, Twitter, UI, Visual Studio, Visual Studio 2008, Visual Studio 2010, XP, back, blog, class, for, framework, if, impressão, instalação, mg, mobile, mvc, novidade, on, problema, silverlight, tool, vs, web @ 02 11th, 2010 | via http://kelps-sousa.blogspot.com/ | Sem comentários
Kelps Sousa
? X
  • Bookmarks

Blinkbits BlinkLists BlogLines Blogmarks Buddymarks CiteULike Co.mments Del.icio.us Digg Diigo

Fark Feed Me Links Furl Google Linkagogo ma.gnolia Mister Wong Newsvine Propeller Rawsugar

Reddit Rojo Simpy Sphinn Spurl Squidoo StumbleUpon Tailrank Technorati Yahoo

More »

O Visual Studio 2010 e .NET Framework 4 Release Candidate estão disponíveis para download público (não assinantes do MSDN). A principal diferença dessa versão com relação ao Beta 2 são as melhorias de performance. Muita gente tem postado feedback extremamente positivo no Twitter sobre essa versão do Visual Studio.

Mas, nem tudo são rosas. Por estarmos bem no meio dos ciclos de desenvolvimento tanto do Visual Studio 2010 quanto do Silverlight 4, este não é suportado no VS2010 RC ainda. Como são times separados, decidiram não gerar uma versão do Silverlight 4 Tools para o Visual Studio 2010 RC e focar no próximo release do Silverlight 4 para dar esse suporte. Não há nenhuma data oficial para isso mas a minha impressão é de que isso vai ocorrer apenas no MIX, dia 15/março. Também acho que a versão do Silverlight 4 a ser lançada no MIX não será RTW ainda, justamente pelo fato de que o Visual Studio 2010 também ainda não estará em RTW.

Abaixo seguem algumas perguntas e respostas sobre essa nova versão do Visual Studio:

Que versões do Silverlight são suportadas?

O Visual Studio 2010 RC suporta apenas desenvolvimento de aplicações em Silverlight 3. O suporte a Silverlight 4 será disponibilizado apenas no próximo build público do Silverlight 4. Se você está desenvolvendo em Silverlight 4, continue com o Beta 2.

Serão disponibilizadas as versões Express do Visual Studio 2010 RC?

Não. As próximas versões Express do Visual Studio 2010 a ser liberadas serão RTW.

Preciso desinstalar outras versões do Visual Studio para instalar o RC?

O Visual Studio 2010 pode ser instalado em paralelo com o Visual Studio 2008 ou anteriores, mas é necessário remover tudo relacionado ao Visual Studio 2010 Beta/Beta2 antes de instalar o RC. Isso significa que devem ser removidos o Visual Studio 2010 Beta/Beta2 e o .NET Framework 4 Beta/Beta 2.

Há suporte para desenvolvimento para Mobile no Visual Studio 2010 RC?

Ainda não, mas haverá novidades em breve. Meu palpite é que ficaremos sabendo de alguma coisa na próxima semana por causa do World Mobile Congress 2010 que começará no dia 15/Fev. Vamos esperar.

Quando esta versão expira?

O Visual Studio 2010 RC expira em 30/Junho, mas isso não é problema pois a versão RTW está prevista para o próximo dia 12/Abril.

O Visual Studio 2010 RC suporta desenvolvimento de aplicações usando ASP.NET MVC 2?

Sim. Inclusive ele já vem com o ASP.NET MVC 2 RC 2 instalado, mas como houve 2 releases do MVC 2 RC 2 (devido a feedback), é recomendável atualizar a versão do MVC 2 após a instalação do Visual Studio 2010 RC. Mais detalhes no post do Phill Haack, nos links abaixo.

 

Links:

  • Download público do Visual Studio 2010 RC : http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx
  • Post de Scott Guthrie sobre este release : http://weblogs.asp.net/scottgu/archive/2010/02/08/vs-2010-net-4-release-candidate.aspx
  • Post de Jason Zander sobre este release : http://blogs.msdn.com/jasonz/archive/2010/02/10/visual-studio-2010-net-framework-4-rc-ready-for-general-download.aspx
  • Post de Phil Haack sobre utilização do ASP.NET MVC 2 RC 2 no Visual Studio 2010 RC : http://haacked.com/archive/2010/02/10/installing-asp-net-mvc-2-rc-2-on-visual-studio.aspx

Fev 9

Visual Studio 2010 e .NET Framework 4 Release Candidate

Escrito por Igor Musardo em .NET, 1, 4, 6, AR, Asp.Net, Beta, MSDN, Microsoft, NaN, O, Release Candidate, Ria’s Geral, Visual Studio, Visual Studio 2010, framework, git, mvc, pt, tag, vs @ 02 9th, 2010 | via http://www.igormusardo.com.br | Sem comentários
Igor Musardo
? X
  • Bookmarks

Blinkbits BlinkLists BlogLines Blogmarks Buddymarks CiteULike Co.mments Del.icio.us Digg Diigo

Fark Feed Me Links Furl Google Linkagogo ma.gnolia Mister Wong Newsvine Propeller Rawsugar

Reddit Rojo Simpy Sphinn Spurl Squidoo StumbleUpon Tailrank Technorati Yahoo

More »

Hoje foi um dia bem agitado, além da liberação do novo release candidate do ASP.NET MVC 2, a Microsoft liberou também a versão RC do Visual Studio 2010 e do .NET Framework 4 para assinantes MSDN.

Saiba como remover as versões do Visual Studio .NET Beta e Release Candidate em: http://support.microsoft.com/kb/312383/pt

Fev 4

A Apple, o iPad e o Flash VS HTML5

Escrito por Mauro Martins em .NET, 1, 4, 6, AR, ActionScript 3, Actionscript, Actionscript 3.0, Adobe, Ajax, BI, Blogs, Curso, Cursos, Debug, Desktop, Dica, Ferramenta, Flash / Flex, Flash Player, Flex, Google, Hacks, IE, Java, Javascript, Jogos, Mac, Mercado, O, Outros, PHP, RIA, Random, Ria’s Geral, Serviços, SmartPhone, Software, TAT, Tecnologia, Tema, Twitter, UI, UX, Vários, Vídeo, XP, action, app, app store, apple, bar, blog, browser, bug, class, cliente, control, demo, efeito, empresas, err, explorer, facebook, flash, for, gmail, google wave, html, html5, ide, if, image, int, internet, iphone, jogo, linkedin, map, menu, mg, mobile, on, player, problema, produto, pt, rss, servidor, serviço, silverlight, social, tag, vs, wave, web @ 02 4th, 2010 | via http://imauro.com/blog/ | Sem comentários
Mauro Martins
? X
  • Bookmarks

Blinkbits BlinkLists BlogLines Blogmarks Buddymarks CiteULike Co.mments Del.icio.us Digg Diigo

Fark Feed Me Links Furl Google Linkagogo ma.gnolia Mister Wong Newsvine Propeller Rawsugar

Reddit Rojo Simpy Sphinn Spurl Squidoo StumbleUpon Tailrank Technorati Yahoo

More »

(Antes de tudo deixem-me dizer que sou fã de vários produtos Apple. Tenho um MacBook Pro, um iPhone e muitos periféricos e por isso a minha visão tentará ser o mais imparcial possível!)

Para quem tem estado atento ao Twitter e aos blogs de tecnologia e web, esta imagem tem estado em todo o lado. Foi na Terça-Feira, que a Apple mostrou o seu mais recente gadget, o iPad.

O iPad é a tentativa da Apple de tentar preencher um nicho de mercado / nicho de tecnologia que fica ali um pouco entre os smartphones e os portáteis / desktops. É aquele instrumento que pode ser utilizado para coisas mais “light” como surfar na web e ver uns filmes.

Assim como o iPhone, o iPad tenta ser um produto revolucionário e que, como o próprio Steve Jobs o diz “A melhor experiência para surfar a web“.

Será?

Como pode um produto tentar ser a melhor forma de surfar na web se não possui um plug-in que está instalado em 95% dos dispositivos que se ligam à Internet (Flash)? Sem ter um plug-in em que estão a ser investidos milhares de euros neste momento (Silverlight)? Aliás, sem ter nenhum plug-in a não ser os criados pela própria Apple e que a Apple acha que são os mais apropriados para nós?

Desde o iPhone que a Apple já nos tinha mostrado que vai deixar o Flash de fora dos seus produtos. Mas, se bem que no iPhone a desculpa era a bateria e o processador, neste momento, no iPad não há nada que desculpe o facto da Apple tentar manter todos os plug-ins de fora dos seus browsers obrigando os utilizadores a navegar na web da forma como a Apple acha que é o mais interessante.

Porquê que é que Apple faz isto então?

Simples! Porque a Apple quer fazer dinheiro vendendo aplicações na sua galinha dos ovos de ouro, a App Store e assim não deixar “passear” as aplicações e os modelos de distribuição por onde não os pode controlar.

Se este é um bom modelo? Claro que é! Se pensarmos em termos de negócio para a Apple é um sistema perfeito! Obrigamos os nossos utilizadores a utilizar a nossa ferramenta para terem acesso a jogos, aplicações e outros modelos que geram retorno imediato para a Apple.

O problema é que, pela primeira vez, parece que há muita gente que não está de acordo com as explicações da Apple. Ninguém acredita que o iPad não aguenta com o Flash Player.

O que é que isto tem a ver com o HTML5? Tudo! A Apple está a tentar gerar todo o buzz em volta desta tecnologia que, sinceramente, antes de ser inovadora já não o é.

Confusos?! Fácil!

1- Será muito difícil para o html5 gerar, com tanta facilidade, aplicações ricas para os clientes e que funcionem perfeitamente em todo o lado (mobile, desktop, browser);

2 – Que a experiência seja independente de sistema, independente de browser, etc.;

3 – Que tenham servidores dedicados para dar ao utilizador a melhor experiência em vídeo;

4 – Que o Player de vídeo possa ser tão “estendido” ao ponto de se conseguir coisas como o Youtube.

5 – Que faça ISTO!

Enquanto o HTML5, o supracitado canvas e a tag <video> andam a tentar fazer coisas que o Flash já faz, o Flash já anda a tentar chegar a outros voos. Se formos ver o caso das RIA, com a nova versão do ActionScript 3.0 e principalmente com o Flex, a Adobe deu passos importantes para ser tornar um sério concorrente para aplicações em desktop e web. Basta ver casos como o Aviary que é uma ferramenta extremamente rica e que está na web para qualquer um aceder.

Ok, podem-me falar do Google Docs, Gmail, Google Wave e etc. Mas qual é aqui o denominador comum? o Google! Que é tão só uma das maiores empresas do Mundo a produzir conteúdo Web e que tem os recursos que quase nenhuma empresa no Mundo tem…

Mais. Até o HTML5 ser oficialmente um standard ainda vai demorar muito tempo. Para já temos de andar com hacks and tricks para podermos fazer com que tudo fique igual em todos os browsers (à lá Internet Explorer) o que faz com que o tempo despendido para criar aplicações demore muito mais tempo tanto a criar como na fase do debug.

Em resumo…

Se bem que a Apple está claramente a tentar divergir a web para um sistema mais de serviços onde, para cada conteúdo temos um software e uma aplicação dedicada para o efeito (ouvia ontem uma pessoa a dizer que a intenção da Apple é simplesmente acabar com os browsers), cabe a cada pessoa / empresa decidir qual o melhor veículo para dar a conhecer ou demonstrar um seu produto.

Anda por aí uma discussão enorme com dezenas de posts em blogs onde há sempre quem puxe para o lado do Flash, quem puxe para o lado do HTML e para quem discuta estes valores de uma forma basta acalorada e que demonstra a paixão que temos pelas tecnologias em que criamos e sentimos necessidade de as defender.

No fim de contas, o que interessa aqui é que para cada projecto. Devemos utilizar HTML5, JavaScript, Ajax e amigos? Claro que sim! Devemos sempre utilizar a ferramenta correcta para fazer o trabalho da melhor forma!

Se o melhor caminho é seguir empresas que nos tentam cortar o acesso à forma como nós queremos ver a web? NÃO! Por mais banners, mais consumos de recursos e mais crashes que um plug-in dê (Uma observação. Programo em Flash no meu MacBookPro há mais de dois anos e ele nunca crashou por culpa do Flash. Tive sorte? Talvez ;) ) devemos sempre optar por uma web livre e só assim se consegue a inovação!

Ah! E não, o Flash não vai acabar :)



  • Share this on del.icio.us
  • Digg this!
  • Stumble upon something good? Share it on StumbleUpon
  • Share this on Facebook
  • Tweet This!
  • Subscribe to the comments for this post?
  • Share this on Linkedin
  • Share this on Reddit
  • Post this to MySpace



Jan 29

Eventos do Flex ou Customizados

Escrito por Fabio da Silva em 1, 2009, 4, 6, AR, Adobe, Application.application, BI, Blogs, Dica, Dicas, Evento, Eventos, Flex, Google, IE, Links, NaN, O, Outros, RIA, Ria’s Geral, Ved, Vários, Wordpress, app, as3, blog, class, custom, código, demo, event, events, for, html, if, int, lista, live, mg, monitor, on, update, vs, window @ 01 29th, 2010 | via http://fabiophx.blogspot.com | Sem comentários
Fabio da Silva
? X
  • Bookmarks

Blinkbits BlinkLists BlogLines Blogmarks Buddymarks CiteULike Co.mments Del.icio.us Digg Diigo

Fark Feed Me Links Furl Google Linkagogo ma.gnolia Mister Wong Newsvine Propeller Rawsugar

Reddit Rojo Simpy Sphinn Spurl Squidoo StumbleUpon Tailrank Technorati Yahoo

More »

Frequentemente vejo nas listas de discussão a pergunta: como faço para acessar uma função / propriedade da minha janela (TitleWindow) através da application e vice-versa? Resumindo: como faço para trocar mensagens entre objetos?

Bem, para isso podemos usar Application.application ou as propriedades: parent, parentApplication, parentDocument ou owner, variando de acordo com os objetos que vão se comunicar.

Mas, esta não é a forma que eu recomendaria, a forma mais “elegante” é através do uso de eventos.

O Flex tem vários eventos próprios: eventos de ciclo de vida (add, added, preinitialize, initialize, creationComplete, updateComplete), MouseEvent, FocusEvent, KeyBoardEvent, entre outros …Event e você também pode criar os seus próprios eventos customizando-os conforme sua necessidade.

Os eventos diminuem o acoplamento entre objetos tornando-os mais independentes e facilita o reaproveitamento de código. No evento customizado você pode criar as propriedades necessárias para enviar aos objetos que estiverem escutando, não precisando assim que um objeto saiba quais propriedades ou objetos o objeto que disparou o evento possue, só será necessário conhecer o evento monitorado.

Abaixo uma relação de links que exemplificam o uso de Custom Events:
Using Events – LiveDocs
Custom Events – LiveDocs
Flex/AS3 – Truques e Dicas #7 – Custom Event
Eventos personalizados no Flex
Passando parâmetros entre Pop-Up e Application no Flex
Eventos personalizados interagindo entre telas

Jan 11

Entity Framework Error: The specified named connection is either not found in the configuration, not intended to be used with the EntityClient…

Escrito por Igor Musardo em .NET, 1, 4, 6, AR, Banco de Dados, Class Library, Dica, Entity Framework, IE, MSDN, Microsoft, O, Projetos, Ria’s Geral, UI, Visual Studio, Visual Studio 2008, app, class, dados, dotnet, err, erro, for, framework, ide, if, int, library, map, on, pt, site, social, string, vs, web @ 01 11th, 2010 | via http://www.igormusardo.com.br | Sem comentários
Igor Musardo
? X
  • Bookmarks

Blinkbits BlinkLists BlogLines Blogmarks Buddymarks CiteULike Co.mments Del.icio.us Digg Diigo

Fark Feed Me Links Furl Google Linkagogo ma.gnolia Mister Wong Newsvine Propeller Rawsugar

Reddit Rojo Simpy Sphinn Spurl Squidoo StumbleUpon Tailrank Technorati Yahoo

More »

Criei uma nova Solução no Visual Studio 2008 e criei dois projetos nesta solução: Class Library e Website.

Na Class Library criei um arquivo ADO.NET Entity Data Model, onde fiz o mapeamento das tabelas do banco de dados.

Configurei o Website para utilizar o modelo do Entity Framework da Class Library e ao executar o projeto estourou o erro abaixo:

The specified named connection is either not found in the configuration, not intended to be used with the EntityClient provider, or not valid.

Após pesquisar encontrei a solução:

Copie a string de conexão do app.config da Class Library para o Web.Config do Website que o .NET Framework passará a encontrar a conexão com o banco de dados.

Divirta-se.

Set 18

Flex vs Flash vs HTML

Escrito por Mário Santos em Action Script & MXML, Air, Flex, Ria's Geral, flash, html, vs @ 09 18th, 2009 | via http://msdevstudio.com/blog | Sem comentários
Mário Santos
? X
  • Bookmarks

Blinkbits BlinkLists BlogLines Blogmarks Buddymarks CiteULike Co.mments Del.icio.us Digg Diigo

Fark Feed Me Links Furl Google Linkagogo ma.gnolia Mister Wong Newsvine Propeller Rawsugar

Reddit Rojo Simpy Sphinn Spurl Squidoo StumbleUpon Tailrank Technorati Yahoo

More »

Bom, antes que pensem coisas, o que me levou a escrever este post foi ver muitas coisas que não achei correto nas discussões geradas nos comentários dos posts aqui e aqui em blogs que são grande referencia do flex e das aplicações ricas para internet e que curiosamente alguns acusam de lever a cabo uma campanha anti-flex.

O que eu pretendo com este post é dar a minha opinião muito sincera sobre o que eu penso disto tudo.

Uma coisa que me espanta é muita gente a confundir as coisas quando se fala de flex vs flash vs html. Primeiro de tudo: Não tentem comparar coisas que não devem ser comparadas;

Flash:

-Têm como principal objetivo a criação e publicação de animações para a plataforma flash, tende a ser usado maioritariamente em sites onde o cliente não se importa de prejudicar a indexação nos motores de busca em troca de uma apresentação visual que nunca outra plataforma é capaz de fazer até hoje.

- Atualmente permite que os motores de busca possam indexar algum do seu conteudo, e se estão com duvidas nada como o site de testes (disponivel aqui) que tem como objetivo provar e entender o que realmente os motores de busca indexam. Embora não ache isto necessario porque um site em flash nunca deve ter como principal objetivo distribuir informação em larga escala.

- Permite usar deeplinking, apesar de muitos cépticos, a realidade é que é possivel e apesar de levar algum trabalho é possivel obter um site em flash completamente dividido em “paginas”, têm duvidas? vejam: http://evapadberg.de e vao navegando no site olhando sempre para a barra de navegação, podem facilmente encontrar links assim:

http://evapadberg.de/#/en/information/autograph/

http://evapadberg.de/#/en/images-05—08/2008-karstadt-01/

etc…Os botões Recuar e Avançar funcionam ingualmente…

- Em conjunto com uma versão alternativa do site em html, usar devidamente as html tags e pelo menos um sitemap que incluia alguma informação este site também pode ser indexado num motor de busca… mas isso denota-se que não foi a pioridade deste site que apesar de usar deeplinking em todo ele nao foi presente aos motores de busca.

(…)
Leia o resto de Flex vs Flash vs HTML (1,253 palavras)


© Mário Santos em TSW – That Should Work, 2009. |
Link Permanente |
Sem comentarios |
Adicionar ao
del.icio.us -
Stumble it -
Google Bookmark -
technorati


Mais artigos relacionados nas categorias: Flash, Flex, HTML, vs



|

pussytube
scat orgy tube 8
Spankingtube
japanese tits tube
http://freerepresentationunit.org.uk/intranet/skins/p141x.php
classic tube porn
http://freerepresentationunit.org.uk/intranet/skins/p227x.php
home made movies tube
rude tube
porn tube list
http://freerepresentationunit.org.uk/intranet/skins/p17x.php
3d porn movie
grand tunica casino andmw
Rawtube365
http://freerepresentationunit.org.uk/intranet/skins/p13x.php
free gay tube porn
you tube red tube
zootube.co.uk
panty pissing xtube
xxnxxx
http://freerepresentationunit.org.uk/intranet/skins/p125x.php
Poohtube
pantypissing xtube
japan porn tube
free sex tubes
http://freerepresentationunit.org.uk/intranet/skins/p73x.php
Http://freerepresentationunit.org.uk/intranet/skins/p206x.php
5 MPIX TUBE
Tube8.com
treetubes
hot tub cover lifters
red tube .com
Zoosex tube 365
Beach tube
redtube porn
zootube365 shockingtube
Milf cunt tubes
http://freerepresentationunit.org.uk/intranet/skins/p186x.php
tuberculosis bacterium
http://freerepresentationunit.org.uk/intranet/skins/p220x.php
3d porn tube
Http://freerepresentationunit.org.uk/intranet/skins/p77x.php
mammothtubes
Http://freerepresentationunit.org.uk/intranet/skins/p45x.php
uporntube
toutube porn
animaal sex tube
Http://freerepresentationunit.org.uk/intranet/skins/p46x.php
lubeyourtube.net
porn tube sites
xxx teen tube movies
bisexual blue tube
sex tube
http://freerepresentationunit.org.uk/intranet/skins/p1x.php
Hq.tube
porn search tube
porn utube8
Anonymous red tube
porn tube8
http://freerepresentationunit.org.uk/intranet/skins/p149x.php
Http://freerepresentationunit.org.uk/intranet/skins/p95x.php
piratebay porn porn
zoosex tube
x tube wanking cumming
asian porn tube
http://freerepresentationunit.org.uk/intranet/skins/p166x.php
tube works blue tube
adult tube online tv ksex m90 porn tube
pornotubes
Free beast tube horse cum pussy
SHOCKINGTUBE.COM
Http://freerepresentationunit.org.uk/intranet/skins/p190x.php
http://freerepresentationunit.org.uk/intranet/skins/p192x.php
http://freerepresentationunit.org.uk/intranet/skins/p42x.php
http://freerepresentationunit.org.uk/intranet/skins/p135x.php
my mature tubes
tubes first
animal tube porn
www.bootytube247.com
lesbian porn tubes
Studded tubes
http://freerepresentationunit.org.uk/intranet/skins/p19x.php
teen lesbian tube video free
lobster tube porn
redt ube
25v clamping gas tube
free porn tube8
Fun fun fun games
the boob tube
peg tube feeding
http://freerepresentationunit.org.uk/intranet/skins/p194x.php
pornhub.net
gexo xtube
Tubegals
http://freerepresentationunit.org.uk/intranet/skins/p7x.php
teens redtube
http://freerepresentationunit.org.uk/intranet/skins/p109x.php
8tube porn
pinktube.com
http://freerepresentationunit.org.uk/intranet/skins/p177x.php
http://freerepresentationunit.org.uk/intranet/skins/p75x.php
wwwredtubecom
Tube teens
gay beastiality tube
free web tube porn
tubeyou
zuh zuh pets
shush tube.com
Sextube videos
animals bestiality tube
bbw porn tube videos
sex tube
TEEN TUBES
hq tube videos
poh tube
xtube
huge boob tube
dog sex tube
Bang tube.com
hand stand mixers
college porn tube
http://freerepresentationunit.org.uk/intranet/skins/p152x.php
big boob tube
Http://freerepresentationunit.org.uk/intranet/skins/p102x.php
Http://freerepresentationunit.org.uk/intranet/skins/p196x.php
petittube
filthtube.com
Gaytubevideos.com
inner tube
footfetishtube.com
beach sex tube
Twinksxtubeporn
http://freerepresentationunit.org.uk/intranet/skins/p200x.php
bbw porn tube
crazymaturetube
porn zoo
amateur porn tubes
fucktube.com
mature xxx tube
beasttube
mature redtube
porn tube
Http://freerepresentationunit.org.uk/intranet/skins/p231x.php
xtube berlin toilette
pornotube.com acount
Free driver education videos
Dudetubeonline
Http://freerepresentationunit.org.uk/intranet/skins/p76x.php
utube sex
Redtube.eu
yutube glasba
kick boxing
Http://freerepresentationunit.org.uk/intranet/skins/p26x.php
Http://freerepresentationunit.org.uk/intranet/skins/p172x.php
tubesfirst red tubecom
http://freerepresentationunit.org.uk/intranet/skins/p179x.php
http://freerepresentationunit.org.uk/intranet/skins/p136x.php
www.tube8
feels good tony toni tone
nudetubes
Yoytube
Hot tubes
PORN TUBE
tiavas tubes
Dirtyporn tube
file tube
http://freerepresentationunit.org.uk/intranet/skins/p246x.php
rockettube doctor
nudisten tube
College girl tube
sextube.com
all porn tubes
ssbbw tube movies
Tube teen
gas detection tube
lubetube com
tube365.com
redtubes
http://freerepresentationunit.org.uk/intranet/skins/p38x.php
dance xtube
hqtube.com
xtube comming soon
yotube com
fk tube
crocotube category
http://freerepresentationunit.org.uk/intranet/skins/p199x.php
zhu zhu pet accessories
rapetube
zoo tube 365 password
http://freerepresentationunit.org.uk/intranet/skins/p74x.php
zoo tube 365.com
hamsters free porn videos
sexy youtube
Yuvu tube
Crush fetish tube
Hot blonde having sex
psp sexy tubes
free extreme sex movies
Rtube
http://freerepresentationunit.org.uk/intranet/skins/p162x.php
Red tube videos
mom boy tube
porn bloopers tube
4tube.com
big natural tube
black lesbian tubes
redtube.co.uk
Bangtubecom
gay men sex videos
Xxx tube videos
beast tube
xxx sex tube 365
tubed porn
Free tube porn
hardcore porn tube
http://freerepresentationunit.org.uk/intranet/skins/p165x.php
pornoytube
Http://freerepresentationunit.org.uk/intranet/skins/p167x.php
jiss tube
retro porn tube search
sexy sex
yu tube sexs
http://freerepresentationunit.org.uk/intranet/skins/p78x.php
brazzerstube.com
sexytubesite
free porn tube red hub
animal sex tube video
solar bubble tube
http://freerepresentationunit.org.uk/intranet/skins/p50x.php
One tube oscillators
japanesetube
BEACH TUBE
nudetube
NUDETUBES
tubered.com
Incest redtube
free psp tubes adult
best free porn tubes
http://freerepresentationunit.org.uk/intranet/skins/p49x.php
FETISHTUBE
lolita tubes
Tube tops
youtube morrocan videos
Bestiality zootube 365
dog cum tube
xxx tube
Red tube4
best vacuum tubes
eskimotube.com
free gay sex tube
swanktube
redtube.comm

ACERCA

O que é o RedeRIA ?

O redeRIA não é nada mais que um agregador de feed's que disponibiliza o conteudo de varios blogs e autores ao redor do mundo RIA, actualmente agregamos mais de 1398 entradas vindas de 40 blogs especializados em ria’s, pelo que só fica a ganhar em assinar o feed ou seguir a comunidade no twitter.

Se acha que o seu blog ou um blog de um amigo é interessante e util para os leitores o redeRIA, faça a sua submissão aqui.

Feed: assine já
Twitter: siga-nos
Versão Mobile: aceda aqui

GOOGLE

Votação


Deveria o redeRIA organizar algum evento sobre RIA's ?? Sobre quais plataformas?
Ver Resultados

AUTORES


Eduardo KrausAlexandreBindableDaniel LopesDClick TeamEbercomEdgard DavidsonElvis FernandesFabiel PrestesFábio Batista da SilvaFabio da SilvaFlavia MoreiraGabriela T. PerryIgor MusardoJanderson CardosoJose Carlos FielKelps SousaLeonardo FrançaLucas MarçalMario JuniorMário SantosMauro MartinsPedro ClaudioreneRia BrazilriaPTRicardo CerqueiraRobson FernandesRodrigo Pereira FragaSaintBrSergio SouzaSilva DeveloperStefan HorochovecTech CaffeTecinforThiago BuenoVedVinícius SandimXAML Cast

PUBLICIDADE








Powered by Wordpress & msdevstudio.com