Pergunta

Eu fui à escola para programar anos e quando eu saí eu encontrei um emprego na administração do sistema e que é o sentido da minha carreira tomou. Eu gostaria de voltar para o desenvolvimento de algum tipo e tem sido 'jogar' com C # e ASP.NET, mas eu tenho ouvido muita buzz para outras 'novas' línguas (por nova média I que eles são novos para me) como ruby ??e F #. Eu acho que eu estou querendo saber se eu estou perdendo meu tempo com a aprendizagem em grande parte MS línguas em vez de ser mais de um generalista. Não Tendo sido para além da comunidade de desenvolvimento por um longo tempo (se alguma vez eu estava) tem me debatendo com as tendências e eu gostaria de não ser deixado para trás os tempos.

Todos os pensamentos para se é melhor para seguir as "últimas" línguas ou vara com tecnologias que é mais experimentadas e verdadeiras?

Foi útil?

Solução

Você deve aprender pelo menos 1 linguagem compilada (como C # ou Java) e 1 Script Language (Python, Ruby, etc). Isso geralmente é suficiente para ajudar a maioria dos desenvolvedores ter sucesso no que fazem, independentemente da idade da língua.

Quanto à nova vs idade, eu ia ficar com C # para agora como é muito popular. Aprender uma nova língua não seria muito ruim embora.

Outras dicas

C.

A sério, aprender C.

Se você não correr gritando para as colinas puxando seu cabelo para fora, então você está talhado para ser um desenvolvedor.

Note que não estou dizendo que as pessoas que não sabem C não são desenvolvedores (Jeff, o fundador do site, não sabe C e ele está indo muito bem), mas C irá apresentá-lo a um lote dos aspectos menos glamourosas e açúcar revestido de desenvolvimento.

Como uma segunda escolha, escolher C #.

O idioma que você escolher não é importante. Quando você entender os conceitos que você provavelmente será capaz de pegar uma nova língua muito rápido.

http://www.tiobe.com/ index.php / content / paperinfo / TPCI / index.html para um índice completo de popularidade linguagem

C # é minha língua de escolha, Java e C # são suficientes semelhante, eu não acho que é um grande negócio para aprender Java uma vez que os fundamentos c # são compreendidos ... mas c ++ é outra besta completamente.

Eu acho que c ++ é uma das ferramentas mais gerais e será mais fácil de resolver, uma vez c # é entendido bem (Ele tem uma grande quantidade de documentação e ajuda fóruns). A experiência em C ++ não se limita a Microsoft, embora - a maioria das plataformas populares será executado c ++, portanto, com essa experiência, você não será limitado a janelas. Também é bom porque não é como o doce-revestido como C # ou Java e não como corajoso como pura c, e pode interoperabilidade com bastante facilidade com c # (que é uma razão a transição é mais fácil)

Assim c # é uma boa escolha, e imho seguido de perto por c ++

Eu tenho que concordar com muitos dos acima: a língua não é importante. Em grande parte, a língua apenas importa para o seguinte:

  1. Características. Se você precisar de herança múltipla, é melhor você ir com C ++. Se, como 90 +% dos desenvolvedores, você não precisa de nada que é específico para um (ou um pequeno subconjunto de) línguas, isso não importa.
  2. Syntax. Você odeia espaços em branco? Vá com C #. Odeio chaves? LISP é seu amigo. Não me importo uma forma ou de outra? Isso não importa.
  3. compiladas ou interpretadas? Isso importa. Vá com compilado (ou parcialmente compilado, como .NET) e vai ser mais rápido ... mas a diferença de velocidade está se fechando.
  4. oportunidades de emprego locais. Claro, você pode ser um gênio em C # ... mas se todos perto de você quem está contratando está à procura de programadores Perl, ele não vai fazer nenhum bem.
  5. apoio
  6. Comunidade. Se o seu idioma não tem sido utilizado seriamente em 20 anos (ou nunca), não espere muito de uma tábua de salvação no Google. QBASIC, eu estou olhando para você. StackOverflow estará aqui embora ...

No final, nós podemos discutir coisas até que estamos todos com o rosto azul. Escolha um idioma com uma featureset você gosta, com sintaxe que não vai deixá-lo maluco, uma comunidade decente, e esperamos que as oportunidades de emprego na sua área.

Como a nova ou velha ... ambos são bons. As línguas mais recentes tendem a ser mais fácil para pegar, mas não há documentação mais generalizada e utilização das línguas mais antigas, no entanto, que pode ser phasing out.

Este é um pouco de uma pergunta capciosa, mas você vai descobrir que as pessoas aqui são apaixonados pela sua escolha ferramenta enquanto acreditando na flexibilidade que uma escolha fornece.

Dito isto, se você não se importa "vendor lockin," a pilha Microsoft é uma excelente maneira de entrar em programação e encontrar um emprego remunerado para os próximos anos. Microsoft é tanto "experimentado e verdadeiro" e "mais recente". A pilha Microsoft é tradicionalmente voltada para a construção de aplicações de negócios, mas você não está limitado a isso (ASP.NET MVC, por exemplo, foi usado para construir este site).

Eu não sei muita coisa sobre o mundo do Ruby on Rails e tal, então eu vou adiar para uma pessoa mais qualificado.

Meu conselho real é ir com o que você gosta. Saiba C # e F # se é isso que você está em.

Bem, se você manter-se atualizado sobre as últimas línguas, você vai sempre ser empregável por empresas que estão olhando para aumentar sua contagem de marketing buzzword. Não estou dizendo que este é o único uso para as línguas, mas é definitivamente um uso.

Por outro lado, também há sempre um mercado para tecnologias mais antigas em que suas empresas que querem construir em cima de mais confiável e testada tecnologia mais velha e para manter a referida tecnologia mais antiga.

Eu acho que isso depende de como você quer progredir. Se você vai para as tendências que você pode achar que você nunca tem tempo para realmente aprender uma tecnologia de dentro para fora, mas se você ir para as línguas mais antigas, você pode achar que os projetos mais interessantes estão sendo lançados com coisas novas que você não está familiarizado com e você ficam com manutenção. É tudo sobre o trade-off.

A minha própria visão seria de pensar sobre o tipo de trabalho que você quer fazer e quais os tipos de requisitos para esses postos de trabalho seria útil ter. Por exemplo, você sabe sobre padrões de design? Como cerca de modelar um sistema usando classes e herança? Se você quiser entrar em Rich Internet Applications existe AJAX e outros elementos JavaScript para aprender, bem como HTML e suas diversas ramificações, como XHTML e DHTML.

Eu não acho que haja nada de errado com sabendo apenas as tecnologias da Microsoft, se não topar com outros que possam ser necessários se você deseja aplicar para um trabalho de desenvolvedor e eles exigem Javascript ou CSS que você don 't tem.

Outro ponto é estar ciente de mudanças nas ferramentas ao longo do tempo como provavelmente haverá mais mudanças que estão por vir como a Web evolui um pouco mais, por exemplo, o Visual Studio 2010 terá pode ser muito mais muda do que o atual Visual Studio 2008 olhar para alguns dos recentes anúncios ao redor jQuery eo framework MVC.

Eu tenho usado C #, Ruby, Perl, JavaScript e PHP profissionalmente ao longo do último ano e eles já foram úteis em maneiras diferentes. Gostaria de sugerir que se você quiser uma maneira fácil de ser pego com as noções básicas de programação Ruby é uma grande linguagem de fazer isso com- tem simples, fácil de seguir sintaxe e torna-se muito fácil pensar em um Object-Oriented forma, algo que pode ser mais difícil com uma linguagem semi-OO como C # ou Java.

C # é bem vale a pena aprender, porque é útil saber um idioma na família C - as expressões fundamentais são tão comuns que vale a pena usá-los - mas eu evitaria C ou C ++, simplesmente porque eu realmente não vejo o necessidade de gerir a própria memória - isso torna a vida muito difícil, introduz uma série de bugs e confere alguns benefícios desnecessários até que você esteja realmente excelente no que faz. Ficar bom em algo que o gerenciamento de memória alças em primeiro lugar e, em seguida, você pode ir para o material mais resistente se você precisar.

Gostaria de evitar linguagens funcionais como F # para começar. Eles são bastante duro e bastante diferente embora por todas as contas compreendê-los faz você um programador melhor.

Eu diria que aprender o que é mais fácil, e agarrar os conceitos fundamentais por trás deles. Sintaxe é um obstáculo fácil de superar, a diferença entre as línguas são um pouco mais complicado.

No entanto, desde C # parece ter uma ampla base de ajuda na net e aqui no SO, gostaria de começar por aí, e aprender sobre os meandros da programação orientada a objeto. Então, idealmente, você deve ser capaz de mudar para mais qualquer outra linguagem OO que você precisa no momento (como Ruby, Java, Obj-C, ou até mesmo o temido C ++) jk, C ++ pessoas .

A linguagem como F #, enquanto popular, é bastante um pouco diferente do que C #, como é funcional. Se você está acostumado a escrever código de estilo funcional, F # pode ser um bom lugar para olhar. Mas, mesmo assim, aprender o que é como escrever código funcional e compreender os fundamentos da linguagem.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top