Na plataforma .NET qual a linguagem a usar?

PHP, Java, JavaScript, XML, XHTML, HTML, CSS, ASP, Delphi, Assembly, LaTeX, C, UML, Flash, Perl, SQL, Python, Zope, Pascal, WML. Se conhece mais de 3 siglas referidas, este é o forum para si.

Moderadores: Administradores, Moderadores

Mensagempor rosas » Segunda Mar 07, 2005 11:28

nao eh uma questao de conheceres a sintaxe????
mas sim o framework?
fonix!!! o framework eh o mesmo para vb.net ou c#

um dos mvp da ms (e nao eh um mvp local) ainda programa em eVb e eC++ e utiliza a CF 1.0 tal como eu, com a dif q uso c#.

o meu background eh variado. vai desde pasca, a vb, a c.
se vieres de vb, vais notar grande dif. para o vb.net, por isso ires para vb.net ou c# vai dar ao mesmo. vais ter de voltar a re-aprender tudo.
a grande dif entre o c# e o c++ e a nao necessidade de ter de voltar a trabalhar com apontadores de memoria. esse aspecto eh tratado pelo proprio c#.

dependendo tb do q pretendes, e no meu caso q so trabalho para mobile, o .net pode nao ser porventura a melhor opçao. a ms ainda nao conseguiu fornecer um web service q funcione "off-line", enquanto q com o java por exemplo, tenho tomcat.

alguns links muito uteis:
www.devbuzz.com
www.codeproject.com
www.dotnetforums.net

os restantes q tenho sao ligados a mobile portanto nao devem ser de grande interesse para vcs.
rosas
Membro Diamante
Membro Diamante
 
Mensagens: 1092
Registado: Terça Fev 10, 2004 12:10
Localização: Porto

Mensagempor xirix » Segunda Mar 07, 2005 12:45

rosas Escreveu:nao eh uma questao de conheceres a sintaxe????
mas sim o framework?
fonix!!! o framework eh o mesmo para vb.net ou c#


Não entendi se concordaste ou não....
xirix
Membro de Ouro
Membro de Ouro
 
Mensagens: 673
Registado: Terça Out 05, 2004 21:07

Mensagempor MetalFatigue » Segunda Mar 07, 2005 15:45

Sim realmente nc tinha pensado nesses termos....realmente vendo bem as linguagens tendo o mm suporte têm as mm potencialidades.

Mas sinceramente para entender um pouco melhor a base parece-me que C# obriga-te a ser um pouco mais explicito do que vb.net...pelo menos dos bocados de codigos q tenho visto no MSDN, é o que me parece. Parece-me q VB deixa abstrair algumas coisas.
*-ASUS P5K-PRO
-Intel Core 2 Duo E8200
-2x2GB PC6400 Team Elite
-RAID0 2xSeagate SP 500GB + WD Green 1TB
-GF 9600GT
-MSI TV @nywhere Master
*-Toshiba A200-21T

http://souprimeiroministro.pt.vu
MetalFatigue
Membro de Ouro
Membro de Ouro
 
Mensagens: 654
Registado: Quarta Out 20, 2004 14:31
Localização: Bobadela

Mensagempor xirix » Segunda Mar 07, 2005 15:52

Isso é devido à Msft querer que o pessoal de VB6 tenha uma curva de migração menor. Por isso ainda tens um namespace em vb.net com acesso a funções que são de VB6 (é tipo de uma camada de abstração entre métodos/funções de VB6 e seus equivalentes em vb.net)
xirix
Membro de Ouro
Membro de Ouro
 
Mensagens: 673
Registado: Terça Out 05, 2004 21:07

Mensagempor Creative Byte » Quarta Mar 30, 2005 16:28

Boas,

Neste momento o C# tem uma melhor performance em relação ao vb.net visto ser uma linguagem criada de raiz para a plataforma .net. Não estou a dizer isto por preferir C# mas se lerem este artigo fica um pouco esclarecido os motivos. Mas tem que se ter em atenção o seguinte, muitas vezes não è uma questão de uma linguagem ser mais rápida ou mais robusta do que a outra mas sim a forma como se desenvolve uma aplicação.

http://www.codeproject.com/dotnet/vbvscsmsil.asp

De qualquer forma os programadores são um pouco religiosos em relação às suas linguagens de eleição e como já foi mencionado anteriormente como tens conhecimentos em JAVA provavelmente vais-te adaptar melhor no C#.
Creative Byte
Membro de Prata
Membro de Prata
 
Mensagens: 264
Registado: Quarta Mar 30, 2005 15:55

Mensagempor xirix » Quarta Mar 30, 2005 16:55

Creative Byte Escreveu:Neste momento o C# tem uma melhor performance em relação ao vb.net visto ser uma linguagem criada de raiz para a plataforma .net.


Lamento, mas não concordo em nada contigo. É possivél escrever código tanto em VB.NET ou C# com a mesma performance entre os dois. Não irás nunca ter esse comportamento se vais programar com os mesmo hábitos que normalmente um programador de VB6 costuma ter.

Para comparação de strings, a forma mais eficaz em .NET, é sempre o String.Equals do que stringA = stringB, em que dás espaço para que o compilador assuma certas decisões.

Talvez o que se deva de dizer em vez de "C# é mais rápido do que VB.NET" é que "O compilador de C# tem melhores optimizações que o de VB.NET".

Não digo isto, pq sou um VB.NET lover ,pelo contrário, prefiro 1000xs o C# que VB.NET;

Mas concordo contigo quando dizes
Creative Byte Escreveu:não è uma questão de uma linguagem ser mais rápida ou mais robusta do que a outra mas sim a forma como se desenvolve uma aplicação


Eu até considero o aprender C# uma opção mais viável de carreira do que o VB.NET. Com VB.NET, sabes aquela sintax e pronto. Com C# tem a sintax C based, como o JAVA, etc etc. Então estás mais bem preparado para o mercado, para assumires uma outra linguagem do que o VB.NET que apenas te da acesso ao mercado de VB.NET.


Abraços
X|r|X
=================
Não subscrevam a VIANETWORKS, TVTel ADSL, ASDL.XL, CyclopNet. A VIA aldraba todos os seus clientes iludindo-os c/ velocidades q nunca tem na realidade. Uma ligação 1024/256 (128kB/32kB) na prática é de 6kB/4kB c/ o emule.
xirix
Membro de Ouro
Membro de Ouro
 
Mensagens: 673
Registado: Terça Out 05, 2004 21:07

Mensagempor rosas » Quarta Mar 30, 2005 18:17

xirix Escreveu:
rosas Escreveu:nao eh uma questao de conheceres a sintaxe????
mas sim o framework?
fonix!!! o framework eh o mesmo para vb.net ou c#


Não entendi se concordaste ou não....


entao??
se o framework eh o mesmo, o q muda eh a linguagem e subsquentemente a sintaxe.
rosas
Membro Diamante
Membro Diamante
 
Mensagens: 1092
Registado: Terça Fev 10, 2004 12:10
Localização: Porto

Mensagempor xirix » Quarta Mar 30, 2005 22:36

Mas as mudanças de sintaxe são minimas.

Os namespace são os mesmos nas duas linguagens.

Em C# fazes Console.Write e em VB.NET tb.

Tens mudanças especificas da linguagem em si, por exemplo a forma como fazes um "for" em C# é diferente da forma como fazes em vb.net. Mas essa diferença é própria da linguagem e não tem nada a haver com o framework.

Quando dizes que o teu background é variado, o meu também o é. Não é à toa que trabalho com programação à quase 10 anos e já me passaram pela mão projectos em VB 3 e 6, Delphi, C++ e até asm. Agora estou com C# tanto para Winforms e WebForms.

rosas Escreveu:se vieres de vb, vais notar grande dif. para o vb.net, por isso ires para vb.net ou c# vai dar ao mesmo. vais ter de voltar a re-aprender tudo.


Tudo não, apenas a sintaxe da linguagem. A localização das classes é a mesma. O namespace de Data tem a mesma estrutura e as mesmas classes tanto em C# como VB.NET ou qualquer outro linguagem .NET based.

rosas Escreveu:a grande dif entre o c# e o c++ e a nao necessidade de ter de voltar a trabalhar com apontadores de memoria. esse aspecto eh tratado pelo proprio c#.


Grande verdade, não preciso de fazer malocs, agora isso não é tratado pelo C# e sim pelo Framework que possui uma feature interessante que é o GC(Garbage Collector) que analisa o que está em memória e através de uns algoritmos avalia se esse espaço pode ser reclamado como espaço livre ou não. Pena que isto, apesar de dar grandes ganhos de produtividade e velocidade, tem graves problemas de performance.


rosas Escreveu:dependendo tb do q pretendes, e no meu caso q so trabalho para mobile, o .net pode nao ser porventura a melhor opçao. a ms ainda nao conseguiu fornecer um web service q funcione "off-line", enquanto q com o java por exemplo, tenho tomcat.


A ideia de um webservice, nunca foi nem será trabalhar offline. No java não tens webservices offline, no máximo transportas contigo um server web no device mobile que faz essa tarefa, e depois deve guardar de alguma forma o que tem feito para mais tarde sincronizar com o "servidor". No .NET a alternativa não é apresentada na forma de WebService offline (pq a própria definição de WS pelo W3C nunca foi ter offline), mas sim numa BD mobile, que é o SQL CE. Existe tb o Oracle e até DB2 para mobile devices. Em que o principio é o mesmo, executas as transações dentro destas DBs e depois sincronizas com o servidor quando estiveres online.


O meu primeiro projecto de VB.NET foi um em que o cliente já tinha algumas coisas feitas em VB.NET (era a Presentation Layer) e queria o resto em C#. Como já sabia C#, a curva de aprendizado foi minima, apenas aprender as nuances do vb.net. Agora dúvidas sobre como consultar os dados e afins, é a mesma coisa em C# e em VB.NET. Resumindo, em 3 dias estava a programar em VB.NET quase à mesma velocidade que programava em C#.

Mais uma vez, reforço que a grande dificuldade para um programador (não um caramelo que compra um livro "aprende VB em 21 dias") é conhecer o Framework. Depois as eventuais diferenças entre linguagens são minimas (leia-se C# e VB.NET).


Abraços
X|r|X
=================
Não subscrevam a VIANETWORKS, TVTel ADSL, ASDL.XL, CyclopNet. A VIA aldraba todos os seus clientes iludindo-os c/ velocidades q nunca tem na realidade. Uma ligação 1024/256 (128kB/32kB) na prática é de 6kB/4kB c/ o emule.
xirix
Membro de Ouro
Membro de Ouro
 
Mensagens: 673
Registado: Terça Out 05, 2004 21:07

Anterior

Voltar para Programação

Quem está ligado:

Utilizador a ver este Fórum: Nenhum utilizador registado e 1 visitante

cron