XAMARIN.FORMS USANDO VISUAL BASIC.NET
é o seguinte. Programo em VB já há alguns anos e comecei a me enveredar pelos caminhos dos APPs, utilizando o APP Inventor. Fácil, mas muito limitado em alguns aspectos.
Preciso agora dar um passo adiante e gostaria da opinião dos grandes mestres que já trabalham com o Xamarin
Já me decidi por utilizar o Xamarin Cross Plataform pela praticidade de construir apps para várias plataformas, utilizando o mesmo código fonte.
Sei que o Xamarin não dá suporte ao VB mas encontrei esse link onde deixa claro que isso é possÃvel, apesar de algumas restrições:
http://https://developer.xamarin.com/guides/cross-platform/application_fundamentals/pcl/portable_visual_basic_net/xamarin-forms/
Minha preocupação é iniciar todo um trabalho de desenvolvimento utilizando esse recurso, por ser mais fácil prá mim que não sei nada de C# e descobrir lá no final que por esse caminho não será possÃvel isso ou aquilo, e eu acabar [Ô]morrendo afogado a dois metros da praia[Ô].
O que vocês acham disso? Seria possÃvel trabalhar com o VB até onde der e complementar o que não for possÃvel com C#? Ou vale mais já enfrentar o [Ô]Monstro de 07 C#beças[Ô] desde o inÃcio? Qual a opinião de vocês?
Citação:Porque você acha que a grande maioria dos tutoriais, exemplos de código e documentação é muito mais vasto usando C# ao invés do VB?
Já tinha percebido isso, mas achei que era por ser uma linguagem mais antiga que o VB. O problema é realmente a zona de conforto que o VB me traz, e o pouco que pesquisei do Xamarin (vou intensificar essas pesquisas a partir de agora), algo que me assustou um pouco no Cross Plataform e não ter visto uma interface de designe comum do Visual Studio. Nos tutoriais que vÃ, os componentes são inseridos e posicionados via código. Provavelmente esse recurso existe, só não o vi por não ter pesquisado como deveria. Estou certo?
Citação::
Olá Kerplunk!! Agradeço muito a atenção e sua opinião!
Porque você acha que a grande maioria dos tutoriais, exemplos de código e documentação é muito mais vasto usando C# ao invés do VB?
Já tinha percebido isso, mas achei que era por ser uma linguagem mais antiga que o VB. O problema é realmente a zona de conforto que o VB me traz, e o pouco que pesquisei do Xamarin (vou intensificar essas pesquisas a partir de agora), algo que me assustou um pouco no Cross Plataform e não ter visto uma interface de designe comum do Visual Studio. Nos tutoriais que vÃ, os componentes são inseridos e posicionados via código. Provavelmente esse recurso existe, só não o vi por não ter pesquisado como deveria. Estou certo?
Sinto lhe informar que não existe mesmo.
Você tem duas opções para fazer a interface, direto por código ou usando arquivos xaml, tipo os do WPF, porém não existe editor visual.
Existe editor Visual apenas se você desenvolver direto para Android ou iOS usando a interface nativa deles, sem o Xamarin Forms.
Até existe um visualizador de interface para arquivos xaml nas versões mais novas, que eles chamam de XAML Previewer
https://developer.xamarin.com/guides/xamarin-forms/xaml/xaml-previewer/
Porém ainda é algo novo e serve apenas para visualizar, editar ainda é direto no editor de texto, eu não cheguei a testar ele para saber o quanto é util pois não uso o Xamarin Forms, no app que trabalho foi feito com a interface nativa do android
Assim como o KERP já falou, o C# não é tão difÃcil assim, após você trabalhar com ele, vai achar até mais fácil que a linguagem Visual Basic.
O Xamarin Forms não tem um editor gráfico mesmo, mas sempre que preciso fazer um aplicativo mobile, nunca utilizo o editor gráfico, pois o editor em XML ou XAML tem mais recursos, e depois de um tempo você se acostuma.
Hoje utilizo o Android Studio, pois apesar do Xamarin compartilhar o mesmo [Ô]código[Ô], ele tem as suas limitações, então prefiro criar a aplicação na sua ferramenta [Ô]nativa[Ô], sendo o Android Studio ou o XCODE.
Acredito que o conteúdo para o Android Studio e JAVA é mais abundante que o Xamarin, e por este motivo, para quem vai iniciar, acredito que seja o fator determinante.
Um abraço.
Quando você usa o Xamarin Forms você faz tudo com a API dele, não é só a interface, ele vai abstrair quase tudo que existe em comum entre as plataformas e você não pode chamar diretamente a API do Android ou do iOS por exemplo, para fazer isso ele cria projetos especÃficos para cada plataforma e você precisa implementar as partes especÃficas de cada nestes projetos.
Quando você cria o aplicativo direto para uma plataforma, como o Android, ele te da acesso direto a toda a API do Android, da mesmo forma quase que faria no Java com algumas adaptações para o C#, a interface mesmo se você for criar no Android Studio com Java você pode fazer por código ou por arquivo [Ô]xml[Ô], e no Xamarin é a mesma coisa, eles só renomearam o arquivo para [Ô]axml[Ô] (de Android XML eu imagino) apenas para poderem associar esta extensão com um editor visual, mas o formato do arquivo é exatamente o mesmo usado no Android Studio.
E como a API do Android é totalmente diferente da do iOS não tem como usar o mesmo código para as duas, seria possÃvel você fazer um código que pudesse ser reaproveitado pelos dois e separar toda a parte que é especÃfica de cada um, como exemplo eu tenho um programa que no caso é um App para Android e um programa para Windows Desktop, os dois possuem praticamente a mesma funcionalidade, eu usei neste projeto o padrão MVP (Model View Presenter) e fiz toda a lógica do programa ser independente de qual plataforma ele está, então eu chuto bem por cima que 70% do meu código é o mesmo para Android e Windows, mas sempre que faço uma tela nova tenho que fazer ela nas duas plataformas, porém eu não tenho quase código nenhum nas telas, a lógica em si fica no Presenter.
Citação:Eis a questão que acabo entrando em parafuso, estou tão acostumado com VB.NET como nosso amigo e C# é tão simples, que quando vejo ambos os codigos lado a lado, eu consigo ver uma linguagem só, a minha questão é semelhante ao do nosso amigo MLALEX, só não digo igual por 2 motivos, projetos prontos entregues para pessoas a quais faço manutenção e estar muito acomodado com aquilo que aprendi e também não vi a necessidade de mudança da linguagem, mas qualquer pessoa que aprendeu VB.NET que conhece bem a linguagem, se for determinado e ter foco, conseguira aprender C# muito mais rápido do que o próprio vb.net.uma vez que entenda como funciona a sintaxe do C# não vai mais querer usar VB
Sempre analise: Real necessidade, qual necessidade da mudança.
Como os sistemas que quer trabalhar é mobile, recomendo aprender a base, pegue um projeto pequeno como uma calculadora em vb.net e mude para C#, depois vá para uma agenda de ambas linguagens com Orientação Objeto e vai comparando. Pelo menos foi assim que consegui aprender a ler em C#.
Vou deixar o tópico aberto por 1 ou 2 dias para ver se alguém quer comentar algo mais.
VALEU!!!
Citação::
Ok gente!! As opiniões realmente me deram um norte. Já sabendo melhor como esse universo funciona, vou testar códigos básicos e escolher por qual caminho seguir. AGRADEÇO A TODOS A ATENÇÃO.
Vou deixar o tópico aberto por 1 ou 2 dias para ver se alguém quer comentar algo mais.
VALEU!!!
Então você viu o norte errado... Não foque em linguagem, comandos, sintaxe. Isso é resultado de conceitos bem entendidos. Aqui no fórum vocês devem até estar cansados de tanto ver eu insistir nisso, mas entender conceitos é muito mais importante que qualquer outra coisa. Escrever código é a parte final e por incrÃvel que pareça, a mais fácil.
Não veja código, veja conceitos que o código vem ao natural.