+ Responder ao Tópico



  1. #1

    Padrão Programação em C/C++

    Boa tarde amigos.

    Estou muito interessado em aprender C/C++. Gostaria de antes de iniciar essa jornada, que deduzo ser longa, gostaria de saber se depois de um programa criado em C/C++ é fácil de exportar para outras plataformas.

    Eu quero criar alguns programas para Windows, Linux e Mac. Como vi em vários lugares que com C/C++ é possível programar para essas plataformas, gostaria de saber se depois de ter criado para linux, por exemplo, eu terei que reescrevê-lo todo ou grande parte para usar no Windows?

    Muito obrigado.

  2. #2

    Padrão

    IMHO, aprender C/C++ é uma boa para qualquer pessoa, mesmo que ela não trabalhe com programação (Como é o meu caso). Eu digo isso porque você vê as mesmas sintaxes em muitas outras linguagens de programação, como Java, PERL, shell-script, etc. Sem falar que é uma ótima linguagem para começar a programar.

    Entretanto, se você quiser uma linguagem multiplataforma, onde você tenha que alterar pouco o seu código para portá-lo, eu recomendo Java, pois com a máquina virtual, fica praticamente transparente para a aplicação saber em qual SO ela está rodando.


    Abraços!

  3. #3

    Padrão

    Nao necessariamente.
    Se voce está programando em windows um software em java, e usa uma biblioteca especifica pra windows, nenhuma outra plataforma vai funcionar. Entao teria que se programar sem utilizar essas bibliotecas.

    Outra, a maquina virtual é pesadissima.

    Entao, se vc programar algum software em C, sem utilizar nenhuma biblioteca nativa, voce nao precisa reescrever o codigo, a unica coisa que vai precisar fazer é recompilar, e com um detalhe, fica bem mais rapido que java.

    Entao, a portabilidade é muito relativa.

    A unica coisa no meu ver que o java tem um ponto a mais, seria que a maioria das plataformas tem a maquina virtual, e nem todas tem um compilador.

    Mas mesmo assim, fico com o C.

    Discutir programacao seria igual discutir religiao, politica e futebol.

    Boa sorte.

  4. #4

    Padrão

    Aproveitando o que nossos amigos citaram... Qual o melhot livro em C/C++?

  5. #5

    Padrão

    Depende do quê você quer estudar com C/C++. Existem livros só de estruturas de dados, etc... mas pra quem quer aprender, tem um que a galera recomenda muito que é o "Treinamento em Linguagem C" da Victorine Viviane Mizrah. São quatro módulos ao total: dois pra C++ e dois pra C. O preço é meio salgado só, mas o livro é bom.

    Submarino.com.br Livros: Treinamento em Linguagem C: Curso Completo - Módulo 1 - VICTORINE VIVIANE MIZRAHI

    Abraços!

  6. #6
    cassiomarques
    Visitante

    Padrão

    Citação Postado originalmente por GrayFox Ver Post
    Nao necessariamente.
    Se voce está programando em windows um software em java, e usa uma biblioteca especifica pra windows, nenhuma outra plataforma vai funcionar. Entao teria que se programar sem utilizar essas bibliotecas.

    Outra, a maquina virtual é pesadissima.

    Entao, se vc programar algum software em C, sem utilizar nenhuma biblioteca nativa, voce nao precisa reescrever o codigo, a unica coisa que vai precisar fazer é recompilar, e com um detalhe, fica bem mais rapido que java.

    Entao, a portabilidade é muito relativa.

    A unica coisa no meu ver que o java tem um ponto a mais, seria que a maioria das plataformas tem a maquina virtual, e nem todas tem um compilador.

    Mas mesmo assim, fico com o C.

    Discutir programacao seria igual discutir religiao, politica e futebol.

    Boa sorte.
    Olá,

    Discordo do que você escreveu (mas vc está certo quanto a dizer que discutir programação é como discutir religião).

    Programo em C/C++ e Java há alguns anos e posso te dizer que C++ está bem mais próximo do Java do que do C, se for programado da maneira correta, isto é, utilizando-se orientação a objeto.
    É óbvio que um programa compilado TENDE a ser mais rápido do que um programa interpretado por uma máquina virtual, entretanto diversos benchmarks atuais vêm provando que programas bem escritos em Java podem ser tão ou mais rápidos do que código em C++.

    O fato é que cada problema deve ser resolvido com a ferramenta certa. Voce não vai, a não ser que esteja maluco, escrever um sistema para controlar motel, supermercado, farmácia ou qualquer coisa do tipo utilizando C puro. Na verdade nem mesmo C++ puro. É pedir pra morrer. Em C++ vc pode utilizar algumas bibliotecas para isso, como Qt (que garante um bom nível de portabilidade entre sistemas, sendo necessário na maioria dos casos apenas recompilar tudo), WxWidgets, etc. E C seria uma tarefa hérculea.
    Com Java isso seria tarefa mais simples, desde que o programador já conheça a linguagem (porque é muito fácil fazer um monte de merda usando Java).
    Da mesma maneira ninguém em sã consciência escreveria um driver para um dispositivo qualquer utilizando Java. Isso tbm seria equivalente a dar um tiro no pé, e provavelmente C seria a escolha correta (se não assembly).