Como a maioria das pessoas, também senti vontade de conhecer o novo sistema operacional do Google, o Chromium OS, então em um rápida pesquisa encontrei um link para baixar uma máquina virtual do Virtual Box com o Chromium OS.
Um ponto interessante sobre o novo OS é que para efetuar login, você precisa ter uma conta no Gmail.
O link para download da VM é: http://www.ausgamers.com/news/read/2816103
Fiz um vídeo mostrando como utilizar a VM no Virtual Box e tentei mostrar também um pouco do novo sistema.
Creio que ainda é muito cedo para tirar conclusões sobre o ChromiumOS, mas nesse pouco tempo que o usei, não me agradou. Me senti muito preso ao Chromium (Browser) e as ferramentas online, agora é aguardar até o lançamento oficial para testá-lo novamente e quem sabe mudar de opinião. :)
Após a realização do primeiro iPhone Devcamp realizado no iAi (Instituto de artes interativas) que ocorreu no dia 1 de agosto de 2009, diversos desenvolvedores, designers, estudantes, pesquisadores e empresários ficaram com um desejo: um local para encontros mensais da comunidade que trabalha com a plataforma móvel iPhone e iPodTouch.
Pensando nisso, o empreendedor Pablo Oruê, fundador da startup MobileYou, produtora de aplicações e estratégias móveis firmou um acordo de parceria entre o MIS (Museu da Imagem e do Som) para a realização desses encontros, mensais, gratuítos e aberto ao público.
O primeiro encontro esse ano ocorreu dia 19 de setembro, onde além de palestras técnicas sobre desenvolvimento de aplicações e games, foram levantados assuntos mais comerciais e de mercado a respeito da nova plataforma de comunicação em mídia digital - os smartphones, com foco na plataforma da Apple, devido a sua facilidade de desenvolvimento e todo um ecossistema que tem se formado ao redor dela.
O segundo encontro, dia 24 de outubro foi um sucesso absoluto de público e também recebeu maior reconhecimento do mercado e da mídia, atraindo mais empresas e desenvolvedores mostrando-se assim que o evento iPhonedevBR agora é referência nacional de troca de experiências na plataforma da Apple, além de ter se tornado uma referência de organização entre as empresas do setor.
O terceiro encontro e último desse ano ocorrerá nesse próximo final de semana, dia 7 de novembro a partir das 12:30 e contará com as seguintes palestras:
Palestrante - Tema - Horário
Gustavo - Biblioteca Three20 utilizando na aplicação do Facebook - 12:30 Adriano (Maya) - Otimização, dicas de implementação e como resolver problemas - 14:30 Tiago M. - Formas de desenvolvimeno de jogos para iPhone - 15:30 Ney e Leonardo - Jogos avançados utilizando a biblioteca Cocos2D - 16:30 Márcio Nunes (Bitix) - Valorização de apps - 17:30
Veja mais informações no próprio site do evento:
Neste sábado (24/10) eu fui ao MIS -Museu da Imagem e do Som assistir as palestras do segundo encontro iPhoneDevBR.
O evento começou com a palestra Introdução ao desenvolvimento para iPhone e iPodTouch com o Alan Silva, uma palestra bem legal mostrando um pouco para quem não conhece ou tem pouco contato com o iPhone SDK.
Depois tivemos uma pausa para o almoço e ai complicou um pouco pois não tivemos opções disponíveis para ir, mas tudo bem, acho que todo mundo conseguiu se virar e encontrar algo! rsrs
No retorno o Ivan Salina Fernandes palestrou sobre Publicidade em aplicativos dando dicas importantes e exemplos vividos por ele próprio.
Em seguida o Rafael Fischmann da macmagazine falou sobre Melhores práticas para promoção de apps e passou inúmeras dicas valiosas para melhorar a visibilidade das nossas apps na app store.
O Ricardo Augusto fez uma breve e ótima palestra sobre Mapkit, mostrando as opções disponíveis e um exemplo de implementação.
E encerrando o clico de palestras o Mads Rasmussen falou sobre in-app payments passando muitas dicas para todos.
Gostei muito deste evento, pois todos (palestrantes e espectadores) participam ativamente nas palestras questionando, dando dicas e exemplos.
Agora fico aguardando a próxima edição do evento! :D
Sábado dia 24/10, em uma parceria entre o MIS (Museu da Imagem e do Som), MobileYou, CreativeApps e com apoio da Simple Brasil, ocorrerá o segundo encontro de desenvolvedores de aplicações para iPhone no auditório do Labmis.
Nestes encontro, os desenvolvedores abordarão assuntos técnicos sobre o desenvolvimento de aplicações e games para a plataforma Apple iPhone OS 3.0.
Confira o cronograma do evento, que ocorrerá no MIS:
Palestrante - Tema - Horário
Alan Silva - Introdução ao desenvolvimento para iPhone e iPodTouch - 13:00
Intervalo - Intervalo - 14:00
Ivan Salina Fernandes - Publicidade em aplicativos - 15:00
Rafael Fischmann - Melhores práticas para promoção de apps - 16:00
Ricardo Augusto - Mapkit - 17:00
Mads Rasmussen - in-app payments - 18:00
Veja mais informações no próprio site do evento:
O título desse post realmente é estranho, mas calma, não estou criando um novo catálogo de padrões de projetos baseado na culinária brasileira. :D Na verdade é somente um desabafo para que nós (desenvolvedores de software) não utilizemos Design Patterns sem motivo em nossos projetos.
Depois de um bom tempo trabalhando com desenvolvimento de software e de ter passado por inúmeros projetos, vejo que muitas vezes as arquiteturas dos softwares desenvolvidos contém vários Design Patterns que nem sempre são necessários para o bom design do projeto, adicionando camadas (layers) desnecessárias ao projeto e tornando o desenvolvimento e manutenção mais trabalhosa e difícil.
Costumo ver muito arquiteturas do tipo Action->Facade->Service->DAO, que mais parece ser uma receita de bolo. Não que um software desenvolvido nessa arquitetura esteja errado ou certo, mas o meu principal questionamento é a real necessidade de ter implementado estes ou aqueles padrões de projetos.
Conforme descrição no Wikipedia:
Design Patterns, descrevem soluções para problemas recorrentes no desenvolvimento de sistemas de software orientados a objetos. Um padrão de projeto estabelece um nome e define o problema, a solução, quando aplicar esta solução e suas conseqüências.
Na descrição acima vemos que os padrões de projetos existem para resolver certos problemas em uma arquitetura de software orientado a objetos e não para serem utilizados “á vontade” (self-service), mas infelizmente hoje vejo muitos desenvolvedores aplicando Design Patterns nos projetos apenas para poder dizer ( para outros ou para si mesmo ) que usa o Design Pattern XPTO no seu projeto e/ou que já possui experiência com Design Patterns. Com atitudes assim perde-se 2 vezes, uma no conhecimento pois o desenvolvedor está aprendendo de maneira errada a usar determinado padrão de projeto, e outra perde-se também na qualidade do software desenvolvido.
Um dos padrões que sofre com esse problema hoje é o Facade, pois sempre que vejo algo do tipo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public class XptoFacade{
private XptoService xptoService;
public void insert( Xpto o ) {
xptoService.insert( o );
}
public void update( Xpto o ) {
xptoService.update( o );
}
public void delete( Xpto o ) {
xptoService.delete( o );
}
public void update( Object o ) {
xptoService.update( o );
}
public List<Xpto> list() {
return xptoService.list();
}
}
Me pergunto se este Facade realmente é nessário ja que ele serve apenas para replicar as chamadas de um único Service e sempre me lembro de uma parte do livro Pojos in Action, onde o autor fala um pouco sobre Exposed Domain Model, mostrando os prós e contras de um modelo de domínio exposto e de um que utiliza o padrão Facade.
Então para não prolongar muito o post deixo uma dica que considero muito importante:
Antes de aplicar um Design Pattern no seu projeto, se informe bastante sobre o padrão, veja se o problema que o padrão se propõe a resolver condiz com o problema que você espera solucionar ao aplicá-lo em seu projeto e lembre-se que uma boa arquitetura necessariamente não é aquela que aplica todos os padrões do GoF ou do POEAA.