• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Foskasse

5 razoes...

40 mensagens neste tópico

Arranjem me 5 razoes pra eu começar a aprender c#.... :P  :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

lol... sinceramente n sei... pensas tu agora que raio estou eu aqui a fazer a responder-te... lol :P

se gostas de aplicações po windows, se gostas de as fazer (ou gostavas de) e se n sabes nada de VB (ou .NET), então axo que podias aprender C#, isto, se é apenas por desportismo... se sabes ou se tens luzes de VB, axo que podias aperfeiçoar isso mas a nível do .NET em vez de tares a aprender C# onde muda a sintaxe, mas por outro lado, se sabes C ou C++, ou então a sintaxe n será problema no C#.

Tanto VB como C#, são duas boas linguagens, eu ando + pelo VB 2005 mas é porque ao longo dos anos fui-me afeiçoando ao VB, dei a versão 6.0 no secundário, gostei e comecei a brincar mais com aquilo, e por ai fiquei... mas penso que o C# seja mais poderoso, ms apenas penso, se calhar é mesmo, se calhar não, não sei bem, só sei que com VB já consegui fazer cenas que nunca pensei que fossem possiveis nesse tipo de linguagem, mas estas últimas versões são bastantes poderosas. mas gostava de ter começado por C# do que com VB, não sei bem pq, talvez por sempre gostei de C e aprendi C há mais tempo do que VB...

se calhar não te ajudei em nada, mas tentei...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

e assim so sei vb.net e vb6 queria entrar noutra porgramaçao....

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

e assim so sei vb.net e vb6 queria entrar noutra porgramaçao....

Python :ipool:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

1ª Pode ser utilizado em Windows e Linux

2ª É facil de aprender

3ª Tem editores e IDES bastante funcionais e gratuitos

4ª Existe muita documentação disponivel para aprender

5ª Depois de dominar permiter implementar muito rapidamente as soluções pretendidas

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Dou-te uma que é bastante boa: "Java done right".

E dou-te outra que é bastante má: "Windows Only" a sério.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

1ª Pode ser utilizado em Windows e Linux

2ª É facil de aprender

3ª Tem editores e IDES bastante funcionais e gratuitos

4ª Existe muita documentação disponivel para aprender

5ª Depois de dominar permiter implementar muito rapidamente as soluções pretendidas

Permite-me discordar. É que as razões que apresentas aplicam-se a imensas linguagens, nenhuma delas me faz escolher o C# em relação ao Java...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu não falei escolher isso seria outra discusão que não vou entrar porque seria improdutivo.

Porque no final acaba por ser uma questão de gosto, vicios, etc.

Isto são razões para aprender.

É certo que existem outras linguagens que podem se incluidas nestas razões.

Contudo para quem vem do VB estas a meu ver serão as principais razões.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu não falei escolher isso seria outra discusão que não vou entrar porque seria improdutivo.

Porque no final acaba por ser uma questão de gosto, vicios, etc.

Isto são razões para aprender.

É certo que existem outras linguagens que podem se incluidas nestas razões.

Contudo para quem vem do VB estas a meu ver serão as principais razões.

Permite-me discordar de novo... Nenhuma das razões apontadas me parece uma boa razão para aprender C#, independentemente da linguagem de onde vêm.

A meu ver, uma boa razão para escolher C# é o facto de suportar o método OO e não o facto de haver vários bons editores gratuitos...

A mensagem que quero deixar aqui é que há que separar aquilo a que chamo "marketing bulshit" das verdadeiras mais valias.

Ou seja, escolher C# só porque há vários editores gratuitos não é uma boa razão, já o facto de suportar o paradigma OO pode ser uma excelente razão. Por exemplo, uso o Emacs para editar linguagens as quais há bons editores para Windows, no entanto quando tenho de desenvolver para Linux não troco de linguagem só porque existe um bom editor dessa mesma linguagem. (Isto era mais gritante antes de exitir o Eclipse).

Cabeça fria na escolha das coisas, seja linguagens, arquitecturas ou soluções técnicas é a mensagem que quero deixar: analisar as reais mais valias que daí advém e filtrar/eliminar o "marketing bullshit". :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se não concordas não concordas

Nem vou dizer mais nada pq so ia me desgastar

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Em vez de 5 até te arranjo 10  :)

Dez razões para adotar o C#

1º C#:C++ Forte herança do C++

O C# tem uma herança muito forte do C++ isso provê que desenvolvedores com sólidos conhecimentos em orientação a objeto em C++ e programação baseada em componentes se sintam em “casa” sendo muito fácil a sua transição. O primeiro contato com a linguagem o desenvolvedor imediatamente sentirá a familiaridade e o conforto de se programar com C#, mesmo sendo vindo de Java ou Delphi.

2º Completamente baseado em objetos.

No C# tudo é derivado de uma classe pai chamada object , com isto garantimos o cast seguro pois é só transforma-la para object e depois para o destino. Além de que evitamos aqueles erros induzidos quando se trabalha com ponteiros.

O conceito boxing e unboxing de objetos permite ao desenvolvedor realizar processos complexos sem ser levados a erros.

3º Acesso à floresta de classes do Framework.NET.

O Visual C# permite aos desenvolvedores com acesso a Framework.NET um robusto, irrestrito, intuitivo, abrangente e concisa biblioteca de classes que permitem uma interação tanto com o Sistema Operacional através da Framework, quanto acesso a requisições Web como também a vários outros recursos existente na máquina e como desenvolvesse para a máquina mas tivesse “alguém” tomando conta para todo ocorrer bem.

4º Desenvolvimento orientado a componente.

Com um mercado exigindo cada vez mais a reutilização de código, uma linguagem de programação que é projetada para ser orientada a componentes cai como uma luva na mão dos desenvolvedores, pois a reutilização de código se torna cada vez mais fácil.

O C# contém várias características que ajudam na construção de componentes, que incluem suporte a indexadores, herança, gerenciamento de versão via código, atributos, delegates, propriedades, enumeradores, etc.

5º Comentários em XML

A documentação nunca foi tão fácil de se fazer, pois o C# é a única linguagem que permite usar comentários em Extensible Markup Language (XML) para otimizar o preparo da documentação, provendo um código fonte de fácil manutenção, personalizável, limpo, além que com a ajuda da IDE pode ler os comentários mesmo depois de compilado.

6º Linguagem baseada em padrões internacionais.

Ao contrário de muitas linguagens o C# é padronizada por uma instituição reconhecida assim não permitindo plataformas distintas de desenvolvimento e garantindo um maior envolvimento da comunidade, mesmo que não esteja usando softwares Microsoft (Ex. Projeto MONO) e tornando mais consistente essa inovação.

7º Interatividade com XML Web Services.

O Visual C# permite a você desenvolvedor, desenvolver e consumir ricas e interativas XML Web Services, em tempo recorde, além de reduzir o tempo de desenvolvimento, habilita a interatividade entre aplicativos permitindo até desenvolvimento de páginas web offline.

8º Plataforma alvo: Todas.

O Visual C# permite que o executável seja altamente escalável além de que com pouquíssimas alterações pode-se migrar de uma plataforma para outra, por exemplo, uma aplicação feita para rodar em windows pode ser rapidamente adaptável para Palm sem ter que mexer muitas linhas de código ou até nenhuma linha de código.

Além de que o desenvolvimento para outras plataformas é feita da mesma forma, podendo-se construir poderosas aplicações para handheld, wireless, páginas web, ...

9º Gerenciamento de memória “Estilo C”.

O C# é a única linguagem totalmente orientada a objetos a permitir o uso de ponteiros quando necessário, ou seja o próprio desenvolvedor pode manipular o uso de sua memória ainda que gerenciada pela Framework. E única linguagem para web que pode usar ponteiros para otimização de processos.

10º Ferramenta RAD: Visual Studio.NET

O desenvolvedor poderá contar com a ferramenta mais perfeita construída até hoje pela Microsoft, que é a maior fabricante de software do mundo, ninguém sabia!? : ) , chegando a superar ao Borland Delphi que era considerada a melhor ferramenta RAD, por várias revistas especializadas do ramo. Esta ferramenta conta com novas tecnologias de desenvolvimento, tais como Microsoft IntelliSense, Microsoft Outlining, etc.

in Linha de código

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu ate que curto c#. Precisei de fazer um programinha com GUI q me desse N numeros aleatorios e sem ter muita experiencia em C# fiz na boa. So ñ fiz em C++ pk agora ando destreinado e iria precisar de me lembrar de muita coisa.

Mas n gosto é do excesso de memoria q o c# ou o vb.net usam. Tudo bem o exe é pequeno e tal, mas vamos ver o uso de memoria e ate andamos pa tras :thumbsup:

Ñ aprendas C# so pk ta na moda. Eu tou a ver se aprendo C++ embora agora esteja parado em programaçao e so esteja em web com o php :biggrin:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

A politica do "excesso" de memória está muitas vezes errada. A memória do PC deve-se usar no máximo. Pode parecer mau um programa estar a usar muita memória, mas tambem não me parece correcto estar constantemente no processo de criação e destruição de objectos quando temos memória no PC e não a usamos. O GC utilizado nas linguagens mais recentes vem utilizar esse conceito de usar o que podermos, ou seja não é só para simplificar a partilha de memória... senão podiamos usar os smart pointers para isso. O GC está de facto a optimizar a velocidade do código, destruindo objectos quando o processador tiver tempo para isso.

Muitos de voces já devem estar a pensar que optimizam o código melhor com uma gestão de memoria eficaz em c++, mas na maioria das vezes isso é mentira. Existe muita coisa por detras de um compilador e de um GC que o programador não consegue fazer sem uma enorme quantidade de trabalho, é tambem ai que reside a grande produtividade destas linguagens.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Isso de usar a memoria ao maximo n me parece la muito inteligente mas pronto quando o teu pc começar a ficar muito lento a pala de 4 ou 5 programazitos q tao a drenar a ram toda, n te queixes :thumbsup:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Queixo-me é quando o meu PC começa a fazer barulhos com o disco a gerar page faults porque tem o programa carregado no swap e a memória a metade!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Para aqueles que ainda não ficaram convencidos de que o mito de libertar memória aumenta a performance, aqui vai um link. Para olharem com outros olhos o GC, e ficarem convencidos que não é facil fazer o que ele faz á lá pata...

http://www.bitsum.com/winmemboost.asp

 

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Para aqueles que ainda não ficaram convencidos de que o mito de libertar memória aumenta a performance, aqui vai um link. Para olharem com outros olhos o GC, e ficarem convencidos que não é facil fazer o que ele faz á lá pata...

http://www.bitsum.com/winmemboost.asp

 

Isso é (quase) verdade, é o tal paradoxo entre a teoria e a prática...

Passo a explicar: se uma aplicação consome num dado momento 100 KB de memória e só temos 200 KB livres, se necessitarmos de mais memória, em breve começaremos a sofrer de pagging (transferência de dados entre a RAM física e a RAM virtual que é memória construída à custa do disco rígido).

Dado que os acessos ao disco são muito mais lentos do que os acessos à RAM física, a performance da aplicação vai degradar-se bastante.

O GC ajuda a manter a "casa limpa", ou seja, ajunda a nossa aplicação a consumir a RAM extritamente necessária (nem sempre assim é mas esta é a função do GC), ajudando assim a evitar pagging.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Apoiado M6.

Não podemos dizer que os GC estejam perfeitos, mas têm de caminhar no sentido de melhorar nesse sentido.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

e assim so sei vb.net e vb6 queria entrar noutra porgramaçao....

eu acho que se sabes VB.NET e queres aprender outra programação avança para o C++

o C# tem as mesmas limitações que o VB.NET, são idênticas em funcionalidades e possibilidades

o C# tem a vantagem de ser mais fácil

o C++ tem a vantagem de ser a linguagem mais poderosa que existe

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

o C++ tem a vantagem de ser a linguagem mais poderosa que existe

Isso é discutível, mas concordo. :confused:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

o C++ tem a vantagem de ser a linguagem mais poderosa que existe

Isso é discutível, mas concordo. :confused:

Mas eu não concordo. Acho que actualmente a linguagem mais poderosa que há é JAVA, tendo a vantagem de correr em qualquer SO...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Quanto ao facto de ser poderosa, estava-me a referir ao poder de controlo que dá ao programador. Eu sei que existe o Assembly mas não é demasiado complexo para o dia-a-dia.

Quanto a portabilidade, sim, linguagens como Java, Python, Ruby, etc... podem correr em várias plataformas. :confused:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

o C++ tem a vantagem de ser a linguagem mais poderosa que existe

Isso é discutível, mas concordo. :confused:

Mas eu não concordo. Acho que actualmente a linguagem mais poderosa que há é JAVA, tendo a vantagem de correr em qualquer SO...

Então e C++ não dá é? Assim vão confundir as pessoas!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Então e C++ não dá é? Assim vão confundir as pessoas!

C++ não dá para quê?? Apenas estavamos a dar a nossa opinião e acredita que neste assunto nunca ninguém chega a acordo!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Quando apresentas-te a vantagem de java, não é na verdade uma vantagem... c++ também é portavel. Embora c++ tenha de ser compilado, isso sim já poderia ser um aspecto por onde pegar.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora