Desenvolvimento de aplicativos para iPhone no Flash: estupidamente simples


O anúncio da Adode de que a próxima versão de sua Creative Suite virá com um empacotador para iPhone deixou muita gente que trabalha com Flash, Action Script, Flex e Air em polvorosa. Isso porque esta simples atitude da empresa fará com que se multiplique exponencialmente o número de potenciais desenvolvedores para iPhone/iPod/iPad, saltando dos atuais 125 mil para 2 milhões.

Notícia velha, eu sei. Mas o que eu não sabia até alguns dias atrás era como esse negócio todo vai funcionar. A Adobe fez direitinho o trabalho de casa? Tem suporte ao acelerômetro dos aparelhos? Todos os sistemas em que o CS5 rodar terão suporte ou só o Mac OS X? Algumas dessas questões são satisfatoriamente respondidas através do Developer FAQ, mas é claro que a curiosidade vai bater forte até que de fato a Creative Suite seja lançada. Alguns beta testers, no entanto, já botaram a mão na massa.

O video abaixo, sobre desenvolvimento para iPhone utilizando a dobradinha Flash/AS3, é do site GotoAndLearn. Chegou até mim através do @naftali, que entre outras coisas, programa em AS3. Clique na imagem abaixo para ver:

Não é lindo? Parece tão estupidamente fácil desenvolver um aplicativo para iPhone no Flash que acho que até eu consigo. De qualquer modo, já estou juntando os 99 dólares necessários para fazer parte do time de desenvolvedores da Apple.

  • XiriX

    Então mas o Flash não estava proibido de correr no iPhone?? Limitação imposta pela Apple por causa de instabilidade do próprio Flash?

     

    Ou isto é uma forma da Adobe tentar empurrar o Flash pela garganta do Steve Jobs?

     

    Eu vou ficar sentado a ver o que sair dessa “guerra”….

    • http://dleafy.deviantart.com/gallery/ DavidS

      O que acontece com o flash no iPhone é que o Steve Jobs não deixa eles colocarem o plugin no navegador Safari do iPhone OS, para que os conteúdos feitos em flash sejam exibidos no navegador nativo do aparelho. Já o que ocorre com essa exportação para o formato ipa no próximo creative suite é que o flash poderá gerar uma espécie de executável para iphone, você poderá criar programas que podem ser instalados no iPhone através do iTunes (do computador). Só não sei como isso será feito de forma legal, pois a Apple tem controle sobre todos os aplicativos que são disponibilizados (legalmente, sem jailbreak) autorizando ou não sua distribuição. Uma solução para os que não forem aprovados é apelar para o CYdia Store, uma espécie de App store paralela para os que fizeram jailbreak no aparelho.

      Não acho que a Adobe terá problemas para que os apps gerados pelo flash sejam aprovados pela Apple. O Unit 3D já possibilita isso há algum tempo e tem diversos Apps feitos nele rolando na App Store.

      • coliveira

        O que é controlado é exatamente o app final, como ele é feito, qual framework foi utilizado, se está bem programado, talvez sejam fatores que nem são levados em conta. O que é verificado é se vai gerar algum tipo de falha no sistema, se entra em contradição com os aplicativos da Apple, etc.

  • http://www.telha.srv.br Paula1000

    Também não sabia….valeu o comentário

  • tgmiguel

    Pelo que entendi, o CS deve converter toda programação em flash para o “idioma” do iPhone, rodando nativamente como um app feito no X-Code. Resta saber se a Apple irá aprovar aplicativos que utilizarem este formato de desenvolvimento.

    • XiriX

      Se for em X-Code, não tem como a Apple dizer que não. No entanto estou curioso para ver como isso vai funcionar em ambiente windows, já que não há compilador do C que é usado no ipod touch/iphone para ambientes windows…. Será que vamos ter versão de flash para windows e mac com diferentes features em cada uma?

    • http://megalopolis-blog.com Fabiane Lima

      Já existem aplicações feitas em Flash sendo comercializadas na App Store. Veja: http://labs.adobe.com/technologies/flashcs5/appsfor_iphone/

  • mano_lima

    E, assim, a torcida organizada “Morte ao Flash” começa a enrolar suas bandeiras debaixo dos braços. :D

    • http://www.brunobemfica.net BrunoTiger

      Ou não. Eu tenho um iPhone, sou desenvolvedor e continuo apoiando a morte ao flash.

      • mano_lima

        É sério assim? Não existe, por exemplo, a possibilidade da Adobe melhorar o produto de tal forma que ele não precise mais ser extinto? :?

        • Gui Del Frate

          Era exatamente isso que eu ia comentar.

          Estamos falando de uma empresa competente com um produto que se tornou quase que obrigatório nos computadores de todo o mundo. Não acho realmente que não dê para melhora-lo o suficiente.

          • garoa

            O gozado é que a maioria dos que reclamam são usuários de um produto que se tornou obrigatório nos computadores de todo mundo, a despeito da incompetência da empresa e de inúmeros bugs, instabilidades e insegurança ao longo de vários anos.  Flash nunca foi tão problemático assim.

             

          • coliveira

            O mundo inteiro já teve Fusca e nem por isso ele foi o melhor carro do mundo.

          • mano_lima

            Má comparação. Não lembro de nenhuma campanha para destruir os fuscas quando estes estavam em circulação.

            Editando: Estavam, uma ova! Ainda estão circulando por aí. Diz um amigo meu que “os idiotas, as baratas e os fuscas serão os únicos sobreviventes de uma hecatombe nuclear”.

          • garoa

            Substitua Fusca por Windows e carro por SO e seu comentário fica perfeito.

            mas o fusca era uma tremenda caranga na época, sacou broto? :P

          • frafra

            Xiii… e Linux seria o que? Calhambeque?  }:)

          • garoa

            Linux é um tanque de guerra.  Ele trucida outros calhambeques na estrada. }:)

          • http://dleafy.deviantart.com/gallery/ DavidS

            … e pouca gente usa.

          • http://ceticismo.net Pryderi

            E mulher não dá bola. Já uma Ferrari, Lamborghini, BMW, Mercedes…

          • http://dleafy.deviantart.com/gallery/ DavidS

            …pouca gente usa e mulher não bola.

          • http://ceticismo.net Pryderi

            Em suma: Tenha uma Ferrari e você terá chances reais de se reproduzir. }:)

          • garoa

            A Ferrari dos computadores se chama Mac, mas infelizmente a maioria dos que possui não está interessado em se reproduzir. :P

             

          • http://dleafy.deviantart.com/gallery/ DavidS

            Hah, isso, a `maioria`.

             

            Mas como dizem, sempre existe uma tampa para uma panela, um sapato para um pé, um morango para um chatili…

          • http://ceticismo.net Pryderi

            Ou uma boneca inflável. }:)

          • http://dleafy.deviantart.com/gallery/ DavidS

            uia, reproduzir com uma boneca inflável?!?!

            será que nasceria algo assim?


  • Gui Del Frate

    Fantástico!

    Já é um grande começo. Na App Store já há jogos desenvolvidos no Flash, mas ainda vemos alguns comentários com reclamações de performance.

    Ainda assim acho fantástico, é um excelente começo e todos só temos a ganhar com mais apps e mais gente desenvolvendo.

  • Wallacy

    Que seria facil eu nunca duvidei, fazer qualquer coisa em Flash é extremamente simples.

    O que me preocupa é: Se esse maldito aplicativo com uma simples bolinha tem 3.2MB imagina um app “de verdade”.

    Não falo só pelo tamanho, espaço o iphone tem, porém quando aplicativos simples são tão grandes é porque a otimização está lá em baixo! Isso em um aplicativo importante pode fazer a memoria do iphone ir para o espaço, além de varias “travadinhas”.

    Estrelas em bitmap passando pela tela, ou dados se batendo não é lá grande coisa ainda mais em 30fps. Quero ver colocar algumas texturas ali.

    • Wolfware

      Pois é, também estava pensando justamente nessa questão de performance. Criar um aplicativo(para iPhoneOS) sem o Xcode é perfeitamente possível, eu mesmo já fiz isso com o bom e velho Textmate, entretanto criar um BOM aplicativo sem o auxilio do Instruments, isso sim é um grande desafio. Ainda mais se levar em consideração que é código gerado “mecanicamente” onde por mais que exista um super otimizador (e conhecendo alguns produtos Adobe, como por exemplo o flash player, não dá para dizer que eles são experts no assunto “otimizar”) as chances de o código final esteja cheio de “lixo” são muito altas.

      Com esta nova ferramenta pode ser que logo logo teremos uma leva de novos aplicativos que “se encerram inesperadamente”, quem sabe não vira uma nova área na App Store os “Suprise Apps” }:) (já que é isso que o iPhoneOS faz com os Apps que se atrevem a consumir mais memória do que ele permite, e se o dispositivo em questão for um iPod Touch esta quantidade representa algo em torno de 15 a 30 MB).

      Mas pode ser também que a Adobe fez um produto incrível, cuja performance dos apps gerados seja ainda melhor do que aos feitos em Cocoa Touch nativo… quem sabe? :P

       

      PS: Assisti todo o video e não vi tanta diferença em termos de praticidade de desenvolvimento entre o Flash e a dupla Xcode+Interface Builder… exceto que o mesmo aplicativo escrito em Cocoa teria uns 200KB ou menos hehe

  • Jeorane

    É possível desenvolver para iPhone e iPad em C# e .NET, veja o site abaixo:

    MonoTouch

     

    O C# é uma linguagem muito mais sofisticada que o ActionScript usado pelo Flash, no entanto é mais fácil de aprender. Além disso, devido ao fato de ser mais poderosa é possível desnvolver aplicativos com muito menos linhas de código.

    Mas você não pode usar os objetos de interface do usuário (UI) nativos no .NET (Silverlight, WPF, Winforms,etc) no MonoTouch, você usa os objetos que são nativos do iPhone via iPhone SDK.

     

    • garoa

      Ainda tem outra vantagem:  você já tem todas a bibliotecas necessárias instaladas em seu sistema, enquanto que em Flash qualquer coisa extra tem que vir junto com o aplicativo, como o Wallacy notou acima.

      ah, as vantagens de se ter um monopólio e todos seus produtos se encaixarem com eficiência e esmagarem a concorrência… (estou falando do Windows, não iPhone)

    • kakaroto_BR

      Entretanto programar em objective C tbm não deve ser mto difícil. Tava a fim mesmo de escrever alguns aplicativos pra iphone e ficar rico de uma hora pra outra com um programa tipo iFart mas ainda me falta grana pra comprar um macbook.

      • shimatai

        Objective C é um saco. Uma linguagem com sintaxe estranha e complicada. É mais fácil programar em C que em ObjC.

        E se vc quiser aprender e usar o X-Code, pode montar um hackintosh, mas finge que vc não leu isso. ;)

        • kakaroto_BR

          Já tentei uma vez mas me atrapalhei com bios, placa mãe e processador etc. Arrumei uma máquina nova acho q vou tentar de novo.

          • shimatai

            Dica: Leo4All. Eu tentei com o iDeneb e não consegui, mas com o Leo4All foi tranquilo. Inclusive rodo numa máquina AMD (que é problemática com MacOS) e até o touchscreen funcionou!

          • kakaroto_BR

            Valeu vou tentar. Tentei usando o mac os x 10.5 e o iDeneb e não funcionou.

    • Gezuz

      Provavelmente em breve, ou até no lançamento da creative suite 5, será possível desenvolver programas em flash usando C e C++:

      http://labs.adobe.com/technologies/alchemy/

       

      O que garante também mais uma possibilidade ^^

  • http://www.edivaldobrito.com.br edivaldo_ma

    Essa briga da Apple com a Adobe ainda vai gerar muita coisa.

    Espero que o maior beneficiário seja o usuário.

  • Brunken

    Flash é um lixo, simples, a linguagem é porca, AC3.0 nem sequer se da o trabalho de obrigar a usar tipagem… Burro + Cachorro = Pato, nojento. Objective C é muito estranho mas ao menos deixa um codigo decente. Morte ao Flash! Desenvolvedor de verdade nao faz com “Timeline” ou “Stage”, Flash é coisa de Designer e ponto final, se a borboleta quer deixar de ser borboleta, aprende algo como C# ou Java e faz uma App de verdade.

     

    • http://www.fabiocardoso.com.br Fabião

      Eu desenvolvo aplicações usando Flash e usando AS3 você definitivamente só usa timeline se quiser.

      E seu comentário foi troll demais. E olhe que eu nem gosto de AS.

       

      • Brunken

        Se vc já programou com uma linguagem de verdade e foi forçado a usar a porcaria do AS3.0 (Flex) sabe o quanto é ruim.

        • omine

          desculpe intromissão.. mas flash foi projetado para ambiente web, por isso, é ilógico querer comparar com linguagens de programação..

          actionscript é apenas um complemento aos objetos do flash, sem pretensão nenhuma em ser uma linguagem orientada e objetos..

          o AS está para o Flash tal como o LISP está para o Autocad e o JavaScript para o HTML.. sacou ?

           

           

           

          • Brunken

            Falou tudo!

            Linguagem feita para … WEB.

            Mas, eu tenho nojo de site feito em flash …

          • http://www.fabiocardoso.com.br Fabião

            Você tem nojo de muita coisa e muito sem motivo.

             

          • hamacker

            Posso estar errado, mas o LISP foi removido do Acad a partir da versão 2006, não ?

          • garoa

            Mas ainda está no Emacs e é isso que importa. ;)

             

        • http://www.fabiocardoso.com.br Fabião

          Eu fico revoltado com a sua pretensão de se julgar no direito de dizer “Linguagem de Verdade”.

          Esclarecemos: Você não é forçado a nada. Ninguém apontou uma arma na sua cabeça e te obriga a fazer algo. Segundo que fica óbvio a sua predileção por “sei lá qual outra linguagem” e é óbvio que fica contrariado de usar uma que deteste.

          Se estava usando Flex, muito provavelmente estava desenvolvendo alguma RIA. Como programador, você sabe que tinha opções que não fosse o Flex, e, caso tenha sido fixada a obrigatoriedade do Flash, sabia que esta obrigatoriedade tinha algum motivo.

          E além do mais, é bem diferente trabalhar com campos de formulário e tranqueiras do tipo do que usar animações vetoriais e outras possibilidades, que não dá pra sair fazendo de modo fácil em Haskell ou seja lá o que você chame de “Linguagem de Verdade”.

          • coliveira

            Linguagem de verdade não existe, só para lembrar linguagem de programação sozinha não faz nada, a melhor linguagem de programação é aquela que o programador tem melhor adaptação, por isso das preferências.

            Não tem como exigir desempenho de um carro mil, se ele foi projetado para ser apenas econômico, não tem como exigir econômia de um formula 1 se ele foi projetado para ter desempenho.

            Flash não se compara com C# ou Java, ou ObjectiveC, são propósitos totalmente diferentes. Bem diferente de comparar Java com C# ou objectiveC.

            Outra coisa também é se comparar Latim com Português, uma está congelada a muitos anos, a outra ainda está em evolução, igual se compararmos C com PHP.

            Essa história de linguagem é tão antigo quanto o próprio nascimento delas, quase sempre aparece um programador que não gosta do que já existe e acaba ele mesmo desenvolvendo outra linguagem, e ai temos esse mundo sem fim de milhões de linguagens, pior para nós mesmos, temos sempre aprender o que tem de novidade.

             

    • garoa

      tipagem obrigatória =camisa-de-força

      Você pode ter se acostumado ao ambiente de um hospício, mas há pessoas que preferem Python, Haskell ou mesmo as últimas novidades do C# chupinhadas das 2 primeiras.

      A linguagem de Flash é essencialmente javascript, o C da web.

    • Gezuz

      Se você quiser forçar tipagem, é só trocar

      var x:* = 2;

      por

      var x:int = 2;

      Pronto, agora sua variávei está presa a um tipo. Próximo.

  • http://www.google.com/profiles/thiagopc thiago_pc

    Se esse código é exemplo do nível dos programadores da Adobe, não me surpreende nada que seus aplicativos sejam tão famosos bloatwares. Reparem em 7:00 a linha de código “genial” que o cara escreve.

    • kakaroto_BR

      Achei q vc tava implicando mas parei um pouco pra ver e realmente ficou estranho aquilo.

    • Wallacy

      Eu preferi acreditar que ele estava “pensando” em uma coisa e “fez outra”, o que fez misturar as coisas.

      Juro que até tentei ver se não tinha deixado escapar um parênteses, ou alguma explicação relacionada ao processo de arredondamento do flash, ou qualquer coisa, porém no geral é um big FAIL.

      ball.x += ((ball.x + tx) – ball.x) *0.3;

      Até fui olhar o que realmente o AccelerometerEvent.acelerationX retorna, para ver porque diabos tantas maquiadas como o *100 e o *0.3 depois e não direto por 30, porém ele retorna um numero em Gs (1 G = 9.8 m/sec²), ou seja gambiarra total, já que ele não elimina a razão quadrática (o que pareceu que ele tentou fazer), poderia ter usado o timestamp que consta na mesma documentação para isso.

      • franklinsa

        Isso aqui:

        ball.x += ((ball.x + tx) – ball.x) *0.3;

        Não seria igual a isso aqui?

        ball.x += tx *0.3;

        ????

        • http://www.google.com/profiles/thiagopc thiago_pc

          Precisamente.

  • http://www.ManiaBrasil.com Xexell

    Não acho isso que bacana, isso vai deixar mais difícil ainda pra quem estuda ciência da computação, ou algo do tipo. Criando mais “concorrentes” no mercado devido a grande facilidade que é criar um aplicativo..

    • shimatai

      Medo da concorrência? Só um ditado me vem a cabeça: só os competentes se estabelecem.

      Imagina a performance de apps criadas via WYSIWYG? No mínimo um lixo.

    • coliveira

      O problema, não é quem estuda, mas quem compra, se a grande maioria quer qualquer coisa (qualidade) e pagar pouco por isso, as empresas vão se focar em equipes com pouco expertise.

      Os produtos chineses seguem esta linha, e com esses produtos a China passou a Alemanha nas exportações mundiais, justo a Alemanha que foca principalmente em produtos de alto valor agregado.

      Coisas de mercado, se o público gosta de assitir malhação e Big Brother no dia-a-dia, nem adianta gastar horrores para produzir algo de qualidade. Ou então produzir algo de qualidade torna-se inviável se tivermos que preencher o espaço do dia-a-dia.

      Quem vende mais PS3 (grandes produções, console com muitos recursos e caro) ou Nintendo Wii (jogos mais simples, console com menos recursos e não tão caro)?

      Uma das saídas seria baratear os custos de produção do que tem qualidade, produzir numa escala monstruoza e assim sufocar o que for ruim. 

      • G4br1el

        A lei de mercado é da oferta e procura, não só da oferta.

        Malhação e Big Brother não são programas baratos, deve ser muito mais barato produzir Café Filosófico ou Roda Viva que, na sua acepção, devem ser considerados bons programas. Mas como tem pouca audiência, a Globo não coloca programas do gênero no seu horário nobre.

        Em resumo, as pessoas não procuram qualidade onde não precisam ou não desejam. Para que pagar mais caro por um programador que fará um HeapSort no lugar de um BubbleSort, se no seu sistema de padaria com 10 registros não vai mudar nada?

         

         

        • coliveira

          Concordo com vc, a procura sempre é maior pelo que é mais simples, por isso a oferta deste tipo de “produto”, é maior que qualquer outro.

          O Bigbrother acaba saindo barato, pois tem patrocinadores que vem junto com a produção do programa, pq este tipo de programa chama multidões de vários genêros, diferente de se produzir um seriado, sem um público fiel, sem garantia de quando for ao ar tenha interesse dos anunciantes de colocar propagandas durante a execução.

          Nem sempre programas de qualidade ficam confinados a debates intermináveis de assuntos que parecem não ter uma solução, prefiro alguns seriados, documentários, jornalismo, etc, e estes de uma certa forma são bem caros, pois o público é mais um determinado nicho.

          Exemplo: o The Big Bang Theory, possui um público cativo de “Nerds” ou simpatizantes, isso chama a atenção para anunciantes como a Microsoft, ou a Dell, mas anunciantes de produtos mais populares quase não aparecem. Mas seu custo de produção deve ser proximo ao de um 2 and a half Man, que possui um público bem mais genérico.

           

           

  • http://www.bytequeeugosto.com.br bqeg

    Em bom português, orkutizaram a APP Store.

    • http://dleafy.deviantart.com/gallery/ DavidS

      A App Store já foi ‘Orkutizada’ faz tempo. Eles prezam pela quantidade de Apps não pela qualidade.

      Com essa novidade do Flash aí a tendência é piorar e encontrarmos cada vez mais programas com sons de *pum*, incríveis simuladores de plásticos-bolha para estourar infinitamente, milhões de calculadoras com barulhinhos diferentes, programinhas de chat, medidores de bateria, lanternas em cores psicodélicas, despertadores que só funcionam se você deixar o app ligado direto sem poder usar outro, imagens de asiaticas,…

      • http://ceticismo.net Pryderi

        As coisas têm o valor que damos a elas. É complicado dizer que prezam pela quantidade ao invés da qualidade, pois se tem programinhas “úteis” assim, é porque tem quem baixe. Como foi dito: orkutizaram a App Store, pois o povo quer tosqueira.

        • http://dleafy.deviantart.com/gallery/ DavidS

          Sim, concordo, mas cara, são centenas de lanternas e medidores de bateria pela app store. -__-

          • http://ceticismo.net Pryderi

            Com o número de idiotas beirando os milhares (ou milhões, se levarmos em conta o mundo todo), até que não é muito. ;)

          • http://dleafy.deviantart.com/gallery/ DavidS

            é… pensando bem, haviam 6.1 milhões de iPhone vendidos em 2008, hoje não sei quantos existem, mas será que o numero chegou a dobrar? mesmo assim são muitos iphones.

            Mas será que um app pra cada coisa não seria melhor? no máximo uns 4 pra gerar uma certa concorrência que é sempre saudável e importante.

  • javaesrj

    E, assim, a torcida organizada “Morte ao Flash” começa a enrolar suas bandeiras debaixo dos braços.(2)

    • crazybyte

      Gostei do seu avatar.  Not. 

  • http://www.zergovermind.co.cc Decapattack
    E, assim, a torcida organizada “Morte ao Flash” começa a enrolar suas bandeiras debaixo dos braços…. e vão correndo fazer apps para o iPhone
  • rmsilva

    É isso aí ! Coma merda !!!  }:) Afinal um milhão (ou devo dizer dois milhões) de moscas não podem estar erradas !

  • omine

    falando em ”tró ló ló”, o que aconteceu com aquela alternativa ao Flash player que a Apple anunciou estar desenvolvendo no ano passado ?

    nao lembro o nome, mas era um nome bem estranho.. depois nunca mais ouvi falar..

    • garoa

      iGlow?  bem, já temos um Winjava chamado C#, por que não um Macflash?…

       

      • Jeorane

        Há três alternativas para explicar porque uma pessoa diria que C# é “WinJava”:

        1 – A pessoa não sabe o que é Java.

        2 – A pessoa não sabe o que é C#.

        3 – A pessoa não sabe o que é C# nem Java.

         

        Na corrida entre o C# e o Java, o Java cansou e ficou muito, muito  lá atrás.

        Pesquise e veja o que é C# 4.0, o .NET 4.0 e o Visual Studio 2010 e descubra que não há nada superior atualmente. Essa afirmação não é um exagero, pesquise.

        Mas apesar de o Java ter ficado ultrapassado, ele é ainda uma grande tecnologia, digna de respeito.

         

        • Fritche

          Só discordo na parte de o Java `cansou` e ficou para trás. Afinal de contas, a mercados em que o C# não entra, assim como outros onde o java não entra.

          O C está ai para provar que toda linguagem tem a sua virtude. O C#/.NET precisa ralar um eito ainda para ganhar o mercado corporativo, onde as aplicações levam bom tempo para ficar prontas e esta velocidade de lançamentos de versões acabe prejudicando um pouco, ninguém gosta de atualizar um aplicativo e este parar de funcionar.

          Concordo que em recursos propriamente ditos o C# tem mais, mas isso não é tudo.

           

        • garoa

          A sintaxe de C# e a VM nasceram do Java da Microsoft e o framework .NET, do Delphi.  Se você não conhece história, não é problema meu.

          • gugaime

            Garoa, a sintaxe do Java veio do C++, assim como a VM nao tem nada de novo. Nada  de novo se cria nas linguagens, as coisas apenas sao “reinventadas” com recursos que aumentam a facilidade. Agora se vc sabe algo de realmente novo que o Java ou c# criou, me fala ai por favor. VM, Generics, Reflections, nao existe nada de novo. E quanto as VM tb, apenas sao reescritos padroes de projetos em formas de frameworks. Besteira pessoal ficar brigando por linguagem, pq de novo num tem nada, apenas sao remodelagens de linguagens antigas afim de facilitar um objetivo.

          • garoa

            Estamos falando de descendência direta.  C# não precisou recorrer à fonte original C++ porque já tinha Java prontinho de modelo, como todos seus erros e acertos.  Ainda mais que a Microsoft aproveitou o expertise da VM Java que ela havia desenvolvido anteriormente.  Tudo já existente antes desde Lisp e Smalltalk, mas fica mais fácil copiar do que está mais perto de você.

            Não tem ninguém brigando, apenas esclarecendo fatos da história recente de TI.

          • gugaime

            Cara, eu realmente não entendo a semelhança que vc fala do Java para DotNet. As VM são completamente diferentes. A ideia do Java é abstrair, é ser portavel, enquanto a do DotNet é prover todos os recursos do Windows pra linguagem. Sempre digo pra o pessoal nao comparar C# com Java, pois as pessoas comparam a sintaxe, algo que nao serve pra nada, totalmente superficial. Sempre pergunto qual a semelhança entre VB.Net e Java. Java normalmente precisa de servidores de aplicaçoes para oferecer os recursos do SO como objetos, tenta ser o maximo possivel independente do SO, e isso é justamente o contrario do proposito da DotNet framework. Pra mim alguem que fala que java e dotnet sao iguais realmente num entende nada de uma ou da outra, pq apesar de nao apresentarem nada de novo, o foco delas sao complemente diferentes. A ideia do java é abraçar o mundo, prejudicando com isso a qualidades de suas implementaçao, basta observar a qualidade sofrivel de implementaçao das suas VMs, a começar pela da SUN, e de suas especificacoes, com o Swing, AWT, SWT Lwuit…..4 especificacoes de UI e todas horriveis.  Já a ideia do dotnet, por ser de uma unica empresa, é ser enxuto, com menos recursos, e focando na produtividade, prejudicando nesse caso seu leque de opçoes, q fica muito atras mesmo, anos luz do Java.  Entao falar que o dotnet é copia do java, ou que o java é igual a dotnet, pra mim é uma besteira simplesmente gigante, pq sao COMPLETAMENTE diferentes. Se alguem acha q sao iguais, é pq só conhecem a sintaxe das linguaguens e meia duzia de metodos e frameworks

          • garoa

            Eu não estou falando de (pouca) semelhança HOJE, estou falando do histórico da coisa.  Quem sabe você não aprende?

             

          • http://cognostech.posterous.com/ Ramon E. Ritter

            Garoa,

            Já que você gosta de falar de história, vale a pena dar uma lida na wikipedia ou conversar com seus amigos mais velhos, já que aparentemente você começou a programar depois dos fatos ocorridos e sobre os quais está falando. Trabalho (profissionalmente) com desenvolvimento de sistemas desde 1986 e nesses 24 anos programei em cada uma dessas liguagens que você cita, além de outras que nem existem mais e que talvez você nem tenha ouvido falar (fora a miríade de OSes que existiam por aqui na época da maldita reserva de mercado brasileira).

            Sobre o .Net ter sido copiado do Delphi (que por sinal foi uma melhoria do Pascal): Anders Hejlsberg, o arquiteto do .Net era o responsável dentro da Borland pelo Delphi e suas ótimas inovações até ser contratado pela Microsoft para desenvolver o seu novo framework (o VB, que tecnicamente sempre foi inferior ao Delphi, estava correndo perigo com o sucesso do Java, que havia surgido pouco tempo antes).

            Sua saída (ele levou junto alguns dos melhores programadores da sua equipe anterior) provocou um baque na Borland e ela nunca mais foi a mesma em termos de novidades (opinião de quem programou em Delphi desde a versão 2.0 e ainda hoje a considera uma das melhores linguagens para windows). Os recursos do framework .Net não foram copiados do Delphi e sim licenciados da Microsoft muito tempo mais tarde pela própria Borland quando ela viu que o .Net era um caminho sem volta.

            Sobre Java/C# e quem copiou quem, lembre que a base de ambas (tirando a VM, garbage collection e umas “cositas más”) é o C++ (a sintaxe é praticamente idêntica), que baseou-se no C (saudade das intermináveis discussões sobre MS-C x Turbo C x Watcom C). Entretanto, é bem provável que o Hejlberg tenha usado muitos conceitos do Java (que fazia o maior sucesso na época) na construção do .Net.

            Nao quero me alongar demais, porém em TI raramente algo não é aperfeiçoamento de outra idéia. E isso vale para as linguagens de programação atuais.

            A consultoria para a qual trabalho e sou sócio minoritário desenvolve sistemas para várias empresas (instituições financeiras em sua maioria) e temos projetos em Java (quando o cliente assim o deseja ou o servidor a ser utilizado roda um OS não-Windows), em C# (que tem uma biblioteca nativa excepcional) e em Delphi 7.0 (somente sistemas  legados, embora a performance dele ainda seja imbatível até hoje). Para apps web, a interface pode ser em Flex ou o trio HTML+CSS+Ajax.

            Dentro da empresa cada um tem suas preferências (a minha é o C#), porém todos sabem que cada linguagem/framework tem seus pontos fortes e deficiências e a decisão do que utilizar é determinado pelo tipo de projeto ou a exigência do cliente. O resto é conversa de botequim, regado a bastante cerveja… :D

             

          • garoa

            Você falou, falou e concordou comigo.

            Eu não estava falando do Delphi mais recente capaz de compilar projetos .NET, estava falando da época em que era relevante mesmo, antes da Microsoft contratar seu engenheiro chefe.  Quando eu disse “cópia do Delphi”, não foi por outra razão além da contratação do Anders trazendo todo o expertise da ferramenta e linguagem.  (e “properties” da linguagem Delphi (Object Pascal), que Java até hoje meio que pseudo-emula)…

        • coliveira

          Onde trabalho todos os servidores são Linux Red Hat e Solaris (PBX, CTI, Oracle, Informix, etc), nestes servidores todas as aplicações utilizam o Tomcat, todas desenvolvidas em JBoss.

          Já algumas poucas aplicações são desenvolvidas para windows com o .Net, mas diminui cada vez mais, já que a maioria das aplicações tem migrado para o Tomcat, ótimo pq o front-end pode ser qualquer plataforma que possua um browser – windows, linux, thinclient, smartphones, etc.

           

          • gugaime

            Cara, eu acho engraçado essa visao de mercado de vcs. Eu trabalho com c++, java e dotnet, e vejo cada vez mais o crescimento do dotnet, vejo o java muito bem obrigado, e c++ com o mercado q sempre teve. Acho engraçado essas opinioes de “java desaparecendo” ou “dotnet minguando”.  Se vc trabalha num empresa q o foco é linux, é obvio que vai ver o dotnet “morrer”. Mas se passar a trabalhar com empresas q usam ferramenta windows, vai ver o contrario. Realmente, é cada “analise” de mercado vergonhosa

          • coliveira

            A única coisa que vejo aumentar muito rapido são as WebAplications, das mais diversas combinações, PHP+(qualquer banco de dados), Java, .Net, etc, etc.

            Analise de mercado, é dificil até para quem tem uma montanha de dados, especulações é o que não faltam hoje em dia dos grandes especialistas do ramo, na máximo o que fazemos é “farejarmos” alguma coisa e relatar alguma conclusão, certeza nem a Google tem, e olha que eles possuem muitos dados. As variáveis são em grande número, ninguém sabe se amanha a India vai continuar sendo uma potencia em desenvolvimento de software, se a Russia vai passá-la, se a china vai piratear o Java e o .net juntos dar uma novo nome e do dia para noite surgirem 100 milhões de programadores, claros que são cenários estapafurdios, mas o mercado ultimamente só aumenta e muda constantemente.

            Se alguém tivesse certeza de alguma coisa do mercado, não existiriam investidores de risco e sim investidores de certeza.

        • fcostasilva

          Caro Jeorane, entendo que C# é seu ganha pão e tal, mas citar IDE ao comparar linguagens… Enfim, Java tem uma filosofia diferente, não é que tenha “parado no tempo”.  A Microsoft quer incorporar no C# tudo o que virou modinha no mundo das linguagens de programação. Java, por outro lado, é projetada para evoluir sem se tornar complexa para o programador. O próprio projetista da linguagem falou isso ao ser questionado porque ela não adota as idéias do AspectJ, por exemplo. Ao contrário do C#, que se tornou uma linguagem excessivamente complexa em termos de quantidade de funcionalidades. Dinamismo, structs e partial classes são alguns exemplos de estruturas que, sendo ou não úteis, tornam a linguagem mais difícil do que deveria ser. É surpreendentemente mais fácil aprender Java do que C#, ao contrário do que o senso comum pensa.

          • garoa

            LOL

          • kakaroto_BR

            Java, como C++, sucks, a linguagem é verbosa e ultrapassada. Além disso não sei se é problema da linguagem mas programador java adora abusar de design patterns com seus FactoryFactoryFactoryWhatever. C# errou no início por ser mto parecida com java, agora pelo menos estão deixando a linguagem mais funcional. Mas concordo q java é fácil no sentido em que não tem como fazer mta burrada com ela, faz parte do seu design ser muito restritiva para não deixar o programador fazer muita besteira.

  • Fritche

    Falta só uma coisa para o flash rodar no iphone: hardware.

     

    Acho que o pessoal ainda não entendeu o maior motivo de existir a corrente morte ao flash.

    Meu notebook tem um Turion X2 2.0Ghz e tem jogos em flash que derrubam o processador, como querem rodar isso em um celular?

    • http://dleafy.deviantart.com/gallery/ DavidS

      Algumas páginas da internet travam o iPhone, e sem flash. Fico imaginando se ele tivesse o plugin para as firulas animadas da web…

      • omine

        exatamente… é muito constante o safari travar no iphone e algumas vezes trava o aparelho inteiro… precisa desligar e ligar novamente..

        nao precisa de flash pra travar o browser. na maioria das vezes são sites com excesso de scripts javascript confitantes.
        pois tb há muita “firula animada” feita com javascript.

        fico imaginando quando der suporte ao HTML5, que maravilha vai ser..

        • http://dleafy.deviantart.com/gallery/ DavidS

          O meu iPhone é um 3G, e são poucas vezes que não consigo navegar em alguma pagina devido à travamentos, o meio bit, por exemplo, não trava muito, mas o hardware dos iPhones está evoluindo, o 3GS tem o dobro de processamento e de memória, essa lerdeza é menos constante ainda. Provavelmente o iPhone 4 terá um hardware mais parrudo ainda, chegando perto do iPad, talvez daqui a algumas gerações seja viável colocar o flash no iPhone, se ele já não estiver extinto.

  • http://www.zergovermind.co.cc Decapattack

    Para fazer jogos para PC o cara pode fazer em Flash, Java, c++, c, assembler…..

    Depende é o tipo de jogo, o público para tal jogo etc…

  • franklinsa

    Isso aqui:

    ball.x += ((ball.x + tx) – ball.x) *0.3;

     

    Não seria igual a isso aqui?

     

    ball.x += tx *0.3;

     

    ????

    • garoa

      sim.  Com sorte, o compilador javascript é capaz de otimizar isso aí.  compiladores + inteligentes = programadores + burros.  Ou seja, tudo igual a anos atrás quando o inverso reinava. :)

       

    • Wallacy

      Pior é ele multiplicar por 100 porque o numero é muito pequeno depois multiplicar por 0.3 porque ficou muito grande.

      Todo mundo tem seu momento de Fail, no caso dele só me pareceu que estava tentando fazer uma coisa e pensando em outra. Acho que ele estava preocupado com a bola sair da tela, e só que se embananou todo.

  • Jonas Klinger

    O comentário é estupidamente eficiente e estupidamente defendido. Eu a parabenizo estupidamente.

  • Slaker

    legal o vídeo!

  • http://www.digaxfotografias.blogspot.com/ cassioreggae

    video mt bacana… vlwpelo post

  • José Nelson

    Ééééé, até eu me tornaria desenvolvedor da Apple desse jeito, se não fosse as medidas que ela tomou para com os desenvolvedores de cortar as interfaces de terceiros para desenvolvimento…

  • Kaio

    A Apple baniu o uso da Ferramenta no Contrato do OS4. Fogo, viu?