1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

A Linguagem Certa [Update: Escolher Livro C++ | HELP]

Discussão em 'Programação' iniciada por tuniq, 1 de Outubro de 2008. (Respostas: 42; Visualizações: 2129)

?

Qual a linguagem para começar ?

  1. C++

    8 vote(s)
    38,1%
  2. C#

    6 vote(s)
    28,6%
  3. VB.NET

    3 vote(s)
    14,3%
  4. Java

    4 vote(s)
    19,0%
  1. tuniq

    tuniq What is folding?

    Boas,

    Antes de mais, deixem-me avisar que já li as threads que estão em sticky da parte de programação e após algumas pesquisas continuo sem resolução para o meu problema. Neste momento estou a começar (leia-se comecar agora) a estudar C++ mas durante o pouco tempo que estive a pesquisar livros e manuais deparei-me com um problema... Será que C++ é mesmo o que eu quero ? Por isso, escrevo este tópico para vos preguntar, com a vossa experiencia na area e conhecimentos, que linguagem acham que se adqua mais a mim ...

    Pretendo algo para fazer programas que possam interagir com bases de dados, algo como Gestão e coisas envolvidadas com matemática, bem como uns jogos, ou seja, partes gráficas ...

    Já exprimentei o VB 9 só para fazer uns testes e realmente tem mais parte gráfica que o C++ mas queria saber o que voces acham ... E depois o Java que imensa gente aconselha ...

    Com esta informação qual será a linguagem que se adqua mais ?



    cumps,
    tuniq
    :kfold:
     
    Última edição: 3 de Outubro de 2008
  2. Evil_Tidus

    Evil_Tidus Power Member

    para cálculos matemáticos aconselho-te uma linguagem funcional, se bem que não conheço pessoalmente nenhuma :(

    em relação ao C++, epa eu estou a aprender por conta própria, acho que vale a pena, é uma linguagem que permite operações de baixo nível (que pode melhorar consideravelmente a performance) e com a adição de objectos que simplifica imenso a vida

    contudo acho o C++ uma linguagem feia, pelo menos comparado com o java/C# que são as que uso, acho a sintaxe, definição de classes um pouco monstruoso no C++, mas isto sou eu, há quem goste e há quem não, mas nada que exprimentar para ver
     
  3. sapropel

    sapropel Power Member

    C++ também tem muito partes gráficas, seja construçao de GUI's ou gráficos propriamente ditos, não o faz é de "raiz" (so com as bibliotecas standard), por isso leva mais tempo a ter resultados "visiveis" nesse campo. mas uma vez percebendo a linguagem e a sua maneira de funcionar, usar novas bibliotecas é o mais facil.
    digamos que C++ tem uma linha de aprendizagem e de "showoff" de resultados um pouco maior (passas muito tempo so a brincar com a consola primeiro) mas uma vez atingido esse limite, é simplesmente brutal.

    outra opção é usar C# com .NET, linguagem também poderosa e avançada, mas tem uma linha de aprendizagem mais curta na minha opinião (o que é bom) e resultados visiveis mais rapido, porque .net inclui bibliotecas para tudo seja GUI, graficos, bases de dados (também falaste nisso), etc..

    ambas são brutais, se quiseres ter resultados mais rapidos vai já para c# e depois avança para c++, mas aprende as duas.

    espero ter ajudado :p

    PS: e ambas são boas e eficientes o suficiente para calculos avançados matematicos, claro que depois depende de caso para caso e de implementação para implementação.
     
  4. OubeLa

    OubeLa Power Member

    C++ é interessante para a parte gráfica utilizando OpenGL, por exemplo.
     
  5. CrazyBomber

    CrazyBomber Power Member

    Para começar, acho que C# (Visual Studio Express) ou Java (Netbeans, Eclipse) são as ideais.
    Não são muito complicadas, e facilitam bastante muitas coisas.
    Quando estiveres á vontade com essas, aprender C/C++ é num instante :)
     
  6. samouco

    samouco Power Member

    Com a parte de começar pelo C# que é mais fácil concordo.

    Agora que aprender C++ num instante por saber C# tenho as minhas dúvidas.

    Para começar pelo mais básico em C++ a gestão da memória é feita por nós, basta esquecer um delete e rebenta tudo.

    Depois a parte de construir as janelas/forms, e aceder aos controlos, actualizar controlos... quem vem do facilitado C# de certeza que se vai ver ás aranhas em C++ que é preciso usar DDX_CONTROL e ter uma variável para cada controlo...

    Aceder a bases de dados com o C++ é bem mais tricky que no C#

    Se meter COM então ai é que complica mesmo no C++.

    E podia enumerar mais umas...

    Já agora trabalhei 10 anos com o C++, e os últimos 3 com C# e sinceramente não sei se se a rapidez do C++ versus facilidade de programação do C# compensa.

    Eu pessoalmente gosto de programar em C++, depois de nos habituarmos e arranjarmos os objectos necessários para facilitar o trabalho tb é sempre a bombar :)

    Cumprimentos
    PS: Não estou a falar de C++.NET
     
    Última edição: 2 de Outubro de 2008
  7. tuniq

    tuniq What is folding?

    Obrigado pela vossa ajuda...

    C# e Java serão os que vou tomar em consideração .. Já agora, devo incluir VB nos "pensamentos" ??
    Estou mais virado para o C# porque já vi num livro e envolve mais matematica e lógica do que qq outra ... Mas VB não me sai da cabeça .. Não sei porquê .. Parece ser muito mais facil ...


    Outra coisa,
    Relativamente a .NET's podem explicar o que é isso ? Eu sempre pensei (erradamente) que o .NET era desenvolver uma aplicação em VB por exemplo e depois integrar esse programa numa rede ...



    Cumps,
    tuniq
    :kfold:
     
  8. sapropel

    sapropel Power Member

    NÃO, esquece VB.
    se um dia fores obrigado a usa-la (no trabalho ou assim) logo te preocupas, mas evita a linguagem até seres forçado a usa-la (se tiveres sorte, nunca).
     
  9. tuniq

    tuniq What is folding?

    Só por curiosidade, porquê ??
     
  10. Baderous

    Baderous Banido

    Fake.
     
  11. tuniq

    tuniq What is folding?

    Why ? Quando falo em logica coisas do tipo printf's e isso porque é logico que print me mostre o que quero ... Mas esquecendo essa parte, qual é entao ?
     
  12. Baderous

    Baderous Banido

    Isso não é lógica, isso é sintaxe. Não sei onde é que o C# tem mais lógica e matemática do que qualquer outra linguagem. Que eu saiba as linguagens servem para representar algoritmos, e esses é que têm lógica e matemática. Não são as linguagens.
     
  13. OubeLa

    OubeLa Power Member

    Lógica é com Prolog, por exemplo. Btw, acho muito mais logico saber primeiro C++ e depois C# (a aprendizagem de C++ pode ser complicada mas depois a aprendizagem de C# é muito mais facil).
     
  14. tuniq

    tuniq What is folding?

    Sim ..
    Eu é que não me consegui explicar bem
    Moving on ...

    Mas porquê aprender as 2 ? Pelo que disseram nos post's anteriores C# será mais fácil para programação de jogos (ambintes gráficos) do que C++ (?)
    Ou seja, aprender C++ não é desnecessário ?

    Em relação a VB, se alguém se pudesse pronunciar, agradecia :)
     
  15. balute

    balute Power Member

    O C# e o Java são óptimos para aprender algoritmia e quase todos os conceitos e paradigmas básicos da programação, além de serem linguagens "amigas" (ajudam-te bastante a proteger contra erros no código e em tempo de execução). No entanto, não recomendo usar Java e C# para aprender operações de baixo nível (por exemplo, trabalhar ponteiros), o modo como funciona a memória de um programa, etc. Para isso, o C e o C++ são muito mais adequados.

    Quanto a escolher entre o C# e o Java, talvez fosse para o C#, porque o .NET possui uma biblioteca de classes bastante poderosa (mais que o Java, IMO). Por outro lado, o Java é cross-platform. De qualquer forma, depois aprenderes uma destas, facilmente te adequas à outra - a sintaxe é praticamente igual, e os conceitos são os mesmos. Só a biblioteca é que é realmente diferente.

    VB .NET, na minha opinião, é uma versão ligeiramente simplificada do C#, e com uma sintaxe diferente. Mas vais mais longe se souberes a sintaxe do C# do que a do VB. Fazendo ambas parte do .NET Framework (correm na mesma máquina virtual), consegues fazer numa o mesmo que fazes na outra. E que fique claro que o VB .NET, por dentro, é completamente diferente do VB6.

    Ah, e a parte gráfica que vês no C# e no VB .NET não tem nada a ver com jogos. Para jogos, precisas de saber trabalhar com DirectX/OpenGL. Não tenho experiência com isso, mas creio que C++ seja mais adequado devido à necessidade de maior performance.
     
    Última edição: 2 de Outubro de 2008
  16. tuniq

    tuniq What is folding?

    Então C++ e OpenGL serão o conjunto para as minhas necessidades ??
    Tanto para programas como para jogos ...

    Estou correcto ?


    cumps,
    tuniq
    :kfold:
     
  17. merlin3000

    merlin3000 Power Member

    Em termos de performance, C/C++ são a escolha a ter. Mas o que tens de pensar é se aquilo que queres tem realmente que ter assim tanta performace. Quanto a mim do que falas-te só se tiveres a pensar em fazer um jogo já bem evoluído é que irás reparar na performance se o fizeres por exemplo em C#.

    Não posso dizer ao certo qual é a melhor. Se o o teu objectivo é aprender rápido e passar já para criação de aplicações e desenvolvimento de algoritmos de alto nível tenta escolher algo que não tenha tanto para aprender de base, por exemplo C#, Java e VB.Net. Agora se o que te interessa é aprenderes primeiro as bases das coisas C/C++ são uma boa escolhas, pois controlas tudo por defeito como apontadores, gestão de memória e outras coisas que não precisas de te preocupar em C# ou Java.

    Começares por C++ não te prejudica em nada simplesmente se quiseres controlar bem a linguagem vais demorar mais um pouco.
     
  18. tuniq

    tuniq What is folding?

    No início, claro que não vou fazer jogo nenhum .. Também é preciso ter os pés assentes na Terra .. Quer dizer, se eu alguma vez me apetecer fazer um jogo (sinceramente gostava de o fazer), não irá ser num futuro próximo dado que ainda tendo de aprender a dita linguagem .. Ou seja, será que mesmo não metendo jogos pá conversa, o C++ ainda valerá a pena ? Ou o C# chega para programar coisas decentes ??

    Já agora, aproveito para dizer que não é por uma linguagem ser mais fácil do que outro que a vou deixar de aprender ... Prefiro algo que me interesse e que demore mais tempo a produzir resultados do que coisas fáceis que depois não servem para o que eu quero ...


    cumps,
    tuniq
    :kfold:
     
  19. balute

    balute Power Member

    Também tens que ter em conta que fazer um jogo não é de todo trivial, especialmente se envolver modelação 3D e a criação de um motor de física.
    Com C# consegues programar o mesmo que com C++ (excepto situações muito específicas que envolvam manipulação a baixo nível), mas com menos linhas de código (graças à biblioteca gigante do .NET Framework), menos complicações, e um código mais limpo e elegante.
    Se começares por C++, acredito que, no início da aprendizagem, vás pensar "se calhar devia ter começado por Java ou C#". O inverso, de certeza que não iria acontecer.

    Além disso, antes de começar o desenvolvimento de programas a sério, convém aprender as bases de programação, através de linguagens isentas de complicações dispensáveis (como o C++), tornando assim a aprendizagem o mais eficaz possível. Depois de conheceres as bases, adequas-te facilmente a qualquer linguagem, e és capaz de aprender C++ rapidamente. De qualquer forma, o C# e o Java são ferramentas suficientemente poderosas para desenvolver qualquer tipo de aplicações, e que te poderão manter satisfeito por muito tempo.
     
  20. tuniq

    tuniq What is folding?

    Cada vez fico mais confuso... Consultei o forum gamedev em pt e maioria escolhe C++ para os seus projectos, não só jogos mas como aplicações também ..

    "Com C# consegues programar o mesmo que com C++ (excepto situações muito específicas que envolvam manipulação a baixo nível), mas com menos linhas de código (graças à biblioteca gigante do .NET Framework), menos complicações, e um código mais limpo e elegante."

    Então pelo que dizer C# é melhor que C++ .. Quer dizer, mais fácil para aprender, menos código, menos complicações, mais limpo e elegaante ... Ou seja, o C++ é melhor em que aspecto ??

    PS: Na wikipedia vi que o Crysis, que usa o motor CryEngine2, foi feito em C++ maioritáriamente ... Ou seja, qual os argumentos deles para fazeres o jogo em C++ e não em C# ?

    quote: "Modularity: Entirely written in modular C++, with comments, documentation and subdivisions into multiple DLLs."
    @ wiki


    cumps,
    tuniq
     

Partilhar esta Página