Nov 29 2007

Silverlight 1.1 Tools for Visual Studio 2008

Tag: ASP.NET, C#, Silverlightdavid @ 8:19 am

Quem já estiver com o Visual Studio 2008 em mãos já pode fazer o dowload mais atualizado do pacote Microsoft Silverlight 1.1 Tools Alpha for Visual Studio 2008. São as mesmas ferramentas que estavam disponíveis para o Beta 2.

  • Templates para projetos Silverlight 1.1 em VB e C#
  • Website templates para desenvolvimento Silverlight 1.0 usando javascript
  • Editor de XAML com syntax highlight e intellisense
  • Intellisense para elementos XAML nos arquivos code-behind VB e C#
  • Integração de componentes Silverlight em projetos Web.
  • Possibilidade de criar referências de Web Services em um componente Silverlight.
  • Integração com Expression Blend para facilitar a cooperação entre designers e programadores

Para quem realmente quer tirar proveito da capacidade do WPF e do Silverlight é fundamental ter a mão um editor gráfico de XAML como o Expression Blend, uma das maiores inovações do framework 3.5 é justamente essa habilidade de gerar interfaces sofisticadas, mas o Visual Studio não é uma ferramenta de design e você logo vai notar que editar XAML na mão não é das tarefas mais divertidas. Vale o esforço, quem aprender a usar o Blend direitinho vai poder usar seus truques tanto em aplicações WPF e Xbap usando VB e C# quanto em aplicações Silverlight, onde o modelo de eventos é programado em Javascript (o que poderia ser mais divertido?). Infelizmente nada de doce para as crianças que estiverem brincando de Visual Web Developer Express Edition, mas eu acredito que os recursos possam ser integrados depois, já que existem templates de projeto WPF no Visual C# 2008 Express Edition.

É o melhor de 2 mundos, mesmo com as ferramentas ainda em estágio 1.0 (quase Alpha) esse é com toda certeza o futuro das aplicações Windows e RIA em plataformas Microsoft.

silverlight_tools.jpg


Nov 19 2007

“A fast guy in tights and a movie about Coffee”

Tag: Fundavid @ 2:04 pm
flash_and_js_dilbert.gif

Se eventualmente alguém não pescou, “a fast guy in tights” ou “um cara rápido usando colan” = Flash (The Flash, o herói), e “a movie about coffee” ou “um filme sobre café” = Java “Script”.

Dilbert > Resto


Nov 12 2007

SQL Server Driver para PHP5

Tag: PHP, Web Developmentdavid @ 5:31 pm

sqlphp.JPGA Microsoft liberou no mês passado o SQL Server Driver for PHP (October 2007) Community Technology Preview (CTP), também conhecido como SQLPHP, uma extensão do PHP5 (para Windows) desenhada para facilitar a integração entre scripts PHP e o SQL Server nas versões 2000 e 2005 de forma procedural (a extensão inclui uma série de funções no escopo global, não muito diferente das funções para trabalhar com MySQL). Esse driver é parte de um esforço que a Microsoft vem fazendo para acomodar melhor no Windows as milhares de aplicações PHP que existem hoje na internet, é de conhecimento geral que a maior parte das páginas dinâmicas rodando hoje em servidores Apache foi desenvolvida usando PHP e suportar melhor essa plataforma garante a Microsoft melhores condições de ganhar campo no mercado de servidores de internet com o IIS7 e finalmente ultrapassar o Apache (o que está muito próximo de acontecer). O download do driver pode ser feito aqui.

Existe uma documentação básica anexa com detalhes da API (em .doc), incluindo detalhes da instalação da extensão (que não difere em nada da instalação de outras extensões compiladas do PHP). Para quem estiver disposto a fazer o download de 524MB de vídeo também existe um bate-papo muito interessante no Channel 9 com a participação dos criadores do driver e um debate sobre outros esforços da Microsoft para que a plataforma Windows dê melhor suporte ao PHP no futuro.

Fiz testes rápidos aqui e a única coisa que me deixou frustrado é realmente a forma como foi implementado, não sei se a Microsoft fez dessa forma por pensar que programadores PHP não conseguem pensar em termos de objeto ou algo do tipo, mas seria muito melhor se todas essas funcionalidades estivessem encapsuladas em uma classe, nesse aspécto a API é um passo para trás.

http://channel9.msdn.com/Showpost.aspx?postid=354811


Nov 01 2007

Aptana Studio 1.0

Tag: Javascriptdavid @ 1:22 pm

aptana.jpg

Finalmente depois de 2 anos o Aptana IDE finalmente passou da fase milestone e chega a versão 1.0, estou usando o Aptana como ambiente de desenvolvimento primário a bem pouco tempo apesar de ter testado o produto desde as primeiras versões, fica aí uma dica para os iniciantes, é uma ótima pedida para quem está começando a fazer as primeiras páginas em modo texto (o correto, nada de dreamweaver para pegar pela mão) já que você vai encontrar no mesmo lugar uma ótima documentação para HTML, CSS e Javascript, isso sem falar do intellisense (o Aptana completa as tags pra você). É uma ferramenta que ajuda muito, apesar da memória que consome e do jeitão Visual Studio que pode assustar as pessoas acostumadas a editores de texto simples, na parte server-side não espere debug para PHP, não é um concorrente para o Zend Studio nesse aspécto, mas você tem as ferramentas básicas para trabalhar, veja a nota de release postada no blog do Aptana:

We are very proud to have released Aptana Studio 1.0 (formerly Aptana IDE). After over two years of non-stop development and close to a million downloads, we have finally reached “1.0?. Along with the release of 1.0, we have also created two editions of the product: Community and Professional. The Community Edition is the keystone of the Studio product, where all core features and capabilities are developed. The Professional Edition brings additional features and services beyond the free Community edition.

Agora com um novo nome o Aptana Studio 1.0 Community Edition também passa a ter uma versão paga, o Aptana Studio 1.0 Professional, as diferenças entre as versões podem ser vistas aqui, mas o grande destaque da versão professional fica mesmo para o Javascript debugger integrado ao Internet Explorer.

Continue lendo: “Aptana Studio 1.0″


Oct 25 2007

XML no PHP5

Tag: PHPdavid @ 10:55 pm
XML

Hoje em dia XML já não pode ser mais considerada uma palavra da moda, é um padrão sólido usado e aceito por empresas em aplicações de ponta no mundo todo, base para uma série de inovações como os Webservices e o recente XAML da Microsoft, é uma tecnologia que mudou a cara da internet e que surpreendentemente muitas pessoas não sabem muito bem como funciona, mesmo sendo extremamente simples.

Não vou falar sobre estruturas básicas de um arquivo XML, é uma informação que você pode tirar de muitas outras fontes, como por exemplo o livro Learning XML da O’reilly que aborda muitos outros aspéctos relacionados ao tema de forma profunda (adianto que como outros livros da O’reilly esse também é muito teórico, e se aprofunda no tema sem mostrar muitos exemplos práticos).

Aqui vou falar basicamente sobre como é o suporte nativo do PHP ao XML, como funcionam as ferramentas padrão da linguagem, evolução dessas ferramentas e no final uma abordagem OOP para a questão.

Continue lendo: “XML no PHP5″


Oct 23 2007

The Missing “LINQ”

Tag: C#david @ 4:19 pm

Functional programming is complexer than imperative (that’s what we do right now). You need to understand the algorithm when implementing it in a functional language. Otherwise you won’t success. You need to understand function calls and recursive calls (you won’t believe how many don’t know how that works). You need to look at the problem from a different viewpoint, which most never did and which might therefore be harder for some. It needs a deeper knowledge!

Enquanto alguns programadores com mais tempo de janela comparam a tecnologia LINQ com os antigos recursos encontrados no Visual FoxPro em vários artigos pelo mundo afora eu particularmente não posso me dar a esse luxo, quando FoxPro ainda era comercialmente viável e estava presente em muitas grandes empresas eu estava no meu quarto jogando Sonic 2 no MegaDrive (esse pessoal de internet gosta mesmo de provocar os mais velhos não?) e acabei perdendo toda essa grande festa da era pré .Net, de qualquer forma chegar mais perto da linguagem C# justamente agora, quando os primeiros recursos de “linguagens funcionais” são implementados me deixa muito satisfeito, provavelmente porque eu nasci no Javascript e o conceito de programação funcional foi o meu primeiro paradigma de programação. Com a introdução dos novos recursos da versão 3.0 da linguagem C# vou poder fazer coisas sofisticadas de uma forma que eu pelo menos acho bastante intuitiva, a tecnologia LINQ permite acessar informação em um objeto ou estrutura de dados através de consultas diretas, select statements literalmente falando, muito similar com T-SQL. A diferença elementar aqui é poder fazer uma consulta em qualquer estrutura de dados, um objeto, um XML e é claro em datasets e outros modelos de dados.

fig01_l.gif

Continue lendo: “The Missing “LINQ””


Oct 23 2007

Linguagens mais populares em Out/2007

Tag: Web Developmentdavid @ 12:46 pm

O ranking da TIOBE Programming Community do mês de Outubro mostra as 20 linguagens mais populares do mundo, não se trata propriamente de um ranking das melhores linguagens, é um índice que mostra as linguagens em que mais linhas de código foram escritas, mais cursos foram disponibilizados e mais referências foram feitas (Java deve aparecer em primeiro porque ganha linhas de código sempre que um universitário brasileiro usa 138 linhas para escrever um Hello World =P).

Interessante notar que o ranking mundial não tem absolutamente NADA a ver com o mercado brasileiro, aqui praticamente não existe espaço para desenvolvimento com Python e Ruby e eu poderia chutar que temos o Java (refletindo a tendência mundial) e o Visual Basic com percentuais muito maiores.

Continue lendo: “Linguagens mais populares em Out/2007″


Oct 18 2007

Javascript Magic Closures

Tag: Javascriptdavid @ 8:06 pm

Quando eu comecei a fazer meus primeiros códigos em Javascript ainda com meu O’reilly do rinoceronte a tira colo uma das coisas que mais me intrigavam eram as chamadas ”closures”, certamente me intrigavam menos do que programação OOP com prototypes mas ainda assim levei algum tempo para me acostumar com essa caracteristica da linguagem. Pra explicar de um jeito MUITO, mas muito simplista mesmo, podemos dizer que uma closure é uma variável criada dentro de uma função e que continua a existir na memória mesmo depois que a função já foi executada. Em uma análise mais profunda poderiamos dizer que as closures tem muito mais a ver com a forma como a memória é gerenciada no Javascript do que com uma váriável teimosa, vejamos o exemplo:

try {
     alert(closureDemo);
}
catch(err) {
    alert("A closure ainda não existe, mas na próxima...");
}
var theDemo = function () {
    closureDemo = "Aqui foi criada uma closure, essa string ainda vai existir quando a função terminar";
}
theDemo();
alert(closureDemo);

Continue lendo: “Javascript Magic Closures”


« Previous PageNext Page »