Linguagem para desenvoler aplicativos Linux / Windows

Discussão sobre linux para plataformas Intel x86 ou x64 (PC)

Moderadores: 51, guest2003, Renie, gpenga

Mensagempor polesapart » 22 Ago 2008 13:18

Marcelo Samsoniuk escreveu:
polesapart escreveu:O chun é um chinês baixinho, tem só uns 2m de altura. Se ele aparecer aqui pra jogar lenha na fogueira, eu ajudo a apagar (com gasolina) depois: é só convidar o binhara e dizer que o chun falou mal do MONO, e não precisa muito, basta dizer que C# é coisa de amadores [:P]


o chun nao dah nem pro comeco! a ultima vez que falei para ele que java era coisa de mocinhas, ele chorou e pediu pra sair! :)


Isto vindo de um cara que ainda falava bem dos 680xx já no século 21,e que ainda usa slackware 4.0!

(Eu avisei que só estava aqui pra provocar).
Avatar do usuário
polesapart
Byte
 
Mensagens: 477
Registrado em: 19 Nov 2007 12:56
Localização: Curitiba

Mensagempor msamsoniuk » 22 Ago 2008 13:58

chipselect escreveu:Marcelo, vc acha que só existe sistemas embarcados? Mas daí pra que saber de portabilidade de software e compatibilidade entre Linux e Windows, que é o foco deste tópico?


bom, embarcados sao o foco principal do forum, mas para nao dizer que nao existe windows embarcado, que tal o caso classico do USS Yorktown ? dah uma olhada nessa historinha de terror:

http://www.wired.com/science/discoverie ... 8/07/13987

eh claro, alguns vao argumentar que no nosso dia a dia nao estamos no comando de navios de guerra e que pequenas falhas sao aceitaveis. mas pensem sobre isso na proxima vez q o windows der tela azul ou seu PC crashear inexplicavelmente.

hj os sistemas estao mais misturados: temos embarcados q passam por cima dos PCs atuais em termos de performance, PCs que gerenciam embarcados e aplicacoes criticas e mesmo embarcados pequenos que rodam sistemas operacionais de PCs.

as coisas estao interligadas. mas vc pode manter uma visao obsoleta de que cada caso eh um caso...

Sistemas grandes que são "legados", não é viável portar pra nenhuma linguagem ainda, pois isso custa caro. Mas se for adicionar ou fazer mais coisas, estão usando java, e não C/C++, não é mesmo? Acho que esses caras são burros, pois você tá pregando que C é a "linguagem universal, a top das tops, é a melhor pra qualquer coisa, é o bixo da goiaba..."


se C eh suficientemente bom para embarcados de grande porte, pq nao seria suficientemente bom para aplicacoes de TI de grande porte ? em ambos os casos estamos falando de sistemas que atendem milhares de usuarios, ficam em datacenters e tem poderio computacional equivalente.

a diferenca eh que chamam um deles de embarcado de grande porte e eles nao falham, de modo que as pessoas colocam suas vidas nas maos destes sistemas. o outro roda aplicacoes de TI e o indice de falhas se mede pela tipica desculpa de "o sistema caiu". sera q a abordagem no segundo caso nao esta falha logo na raiz ? sera que realmente o mercado nao esta errado ? pense bem.

O java e o C tem seu lugar. Ou você faria um sistema tipo o "siscomex" hoje, do zero, inteiro em ANSI C??? Faria todo em C++??? do jeito que você prega, nem sgbd presta, vai tudo em file io mesmo...


como se um sgbd tivesse segredos alem de um open() e mmap(). a maioria deles eh feita em C, assim como 95% das aplicacoes de um unix tipico, entao nao teria pq reescrever.

aff cara, se liga, C não tem suporte nem a OO, nem dianta falar que dá pra praticar os conceitos de OO em qualquer lugar, não dá não, se der, eu gostaria muito de saber como se faz sobrecarga de operadores e funções em ANSI C... Assembly então... o resultado é pura gambiarra.


sobrecarga de operandos ? mas que exemplo mais furado!

sobrecarga de operandos eh um conceito meramente estetico e isso nao eh sequer fundamental para OO. vc poderia ter citado poliformismo, por exemplo, que eh um conceito muito mais fundamental para OO.

em tempo, eh como jah disseram por ae, se java fosse bom tinha sistemas operacionais escritos em java! hehehe
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor helton » 22 Ago 2008 14:56

Aproveitando o tópico....o chun é um cagao...deixou o delphi, pra usar a mordomia do java ( hibernate, etc...)...
Programador C/Unix tem muita preguiça de usar outra linguagem, e usam só C mesmo...o resto que se exploda...no máxima um shell script para fazer commit/update no svn...
Programador bom mesmo, é aquele que acorda as 6:15 da manhã, faz o que o chefe manda...na linguagem que pagam pra ele usar, e no final do dia esqueçe tudo o que fez, e vai tomar uma gelada com os camaradas...

Unix/Linux = C/C++, Perl, Python, etc...
Java: Tem que ter saco pra poder reconfigurar aquele monte de XML
Visual C++: é muito bom...mas só funciona com o windows...

Acho que 100% de portabilidade não existe...de qualquer maneira, e em qualquer linguagem...neguinho tem que suar a camisa pra rodar o software em 3 sistemas operacionais (Linux, Windows, MAC OS ) e em 5 idiomas diferentes...
E OO ou estruturada ...foda-se...cada empresa emprega sua política de eng. de software...Ambos tem vantagens e desvantagens...
Helton Marques
"Priorize as Prioridades"
helton
Byte
 
Mensagens: 146
Registrado em: 16 Out 2006 09:18
Localização: São José-SC

Mensagempor msamsoniuk » 22 Ago 2008 15:19

eu acho que os usuarios do forum que moram em curitiba deviam se reunir no bar para discutir o assunto. por sinal hoje eh o tradicional dia da pizza (no planeta pizza da vicente machado, 19h30), quem quiser falar mal de java e debian esta convidado.
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor chipselect » 22 Ago 2008 16:22

Marcelo

Exato, sistemas estão interligados, e o java não tem nada padronizado nisso, não é mesmo? Já o ANSI C nasceu com isso, tudo padronizado... não é?

usando sgbd vc não teria que escrever ainda o aplicativo web? Bom, dá pra fazer tudo em C, não é mesmo? é o que o mercado tá fazendo... o java é só boato, tá todo mundo fazendo interface web usando CGI pra ligar as requisições html com rotinas C, uma beleza.

E polimorfismo não usa de sobrecarga de operadores e funções (ad hoc)?

Vcs estão certos, pra quê engenharia de software? Chuta a orientação a objetos e tudo que a engenharia de software criou, ninguém precisa daquilo mesmo... o lance de reaproveitamento de código é besteira, vai no CTRL+C -> CTRL+V mesmo, ou cria uma infinidade de include e sai resolvendo conflito no código, tudo simples assim, não precisamos de evolução, vamo voltar pra idade da pedra.
chipselect
Word
 
Mensagens: 744
Registrado em: 16 Out 2006 18:50

Mensagempor ivan » 22 Ago 2008 19:14

Isso é um emulador 3270? Não parece...
http://www.receita.fazenda.gov.br/aduan ... stemas.htm

Ainda é usado natural para acesso aos dados no Adabas, mas já existem packages para acessá-lo em java. Só custam muitos $$$$$.... Além do mais, o acesso já e feito mesmo... já está testado... então...

Consiga um certificado digital com um despachante aduaneiro e acesse os sites.

Mais um copo de java.
Salut!
"A mente que se abre a uma nova idéia jamais volta ao seu tamanho original." (Albert Einstein).
Avatar do usuário
ivan
Word
 
Mensagens: 618
Registrado em: 12 Out 2006 21:27

Mensagempor msamsoniuk » 22 Ago 2008 20:06

soh um parenteses em nossa salutar discussao...

eu estava lendo em um forum uma comparacao de C++ com java. um programa praticamente identico, executado com algumas milhoes de interacoes. inicialmente o mesmo programa rodou 3x mais rapido em java que em C++.

o programador entao deu uma boa analisada e descobriu que o java estava paralelizando a execucao e usando dois cores enquanto que o programa em C++ usava apenas um. o resto da diferenca se deu em funcao do java pre-alocar uma imensa quantidade de memoria logo na inicializacao e o C++ ter que requisitar periodicamente para o sistema operacional.

por fim, aplicando as mesmas otimizacoes, chegou-se ao resultado esperado, onde a JVM e o programa em C++ estavam praticamente usando algoritmos similares (a maioria das JVMs provavelmente eh escrita em C++, entao a teoria do testador era de que deveriam nivelar na mesma performance se usasse as mesmas tecnicas em C++).

bom, ateh ae nenhuma novidade, mas lancou-se o desafio se seria possivel melhorar a performance. e realmente, surgiram inumeras ideias que melhoraram consideravelmente a performance do programa escrito em C++, mas as mesmas tecnicas nao podiam ser aplicadas no programa em java pq os algoritmos chave estavam presos dentro da JVM e de qq forma eram especificos para acelerar aquele problema em particular, enquanto os algoritmos da JVM sao bons, mas genericos.

bom, o teste no fim das contas comecou mostrando java 3x mais veloz e terminou com java perdendo de lavada... a moral da historia para os caras do C++ eh que programadores java nao sabem programar em C++; a moral da historia para os caras do java eh que programadores C++ nao sabem perder.

voltando ao assunto, chipselect, eu nao entendo em que ponto vc quer chegar ao comparar a padronizacao de java ou C entre sistemas diferentes. me parece obvio e ululante que se uma plataforma nao possui compilador C, dificilmente vc vai conseguir portar uma JVM para ela. vc poderia ateh argumentar que vai escrever uma JVM em assembler para o PIC, mas francamente, ela nao vai ter a mesma qualidade de uma boa JVM escrita em C++. convenhamos, essa historia de portabilidade no java eh totalmente balela. o que existe eh uma portabilidade entre sistemas de alto nivel que estao nivelados pq alguem se preocupou em escrever codigo C++ que compatibiliza estas plataformas, isso jah considerando o proprio fato destas plataformas disporem de compilador C++. entao, nesse aspecto, java eh tao portatil quanto o apache.

sobre o sgbd, eu posso fazer uma comparacao pratica usando um exemplo que outro colega anti-java citou durante o intervalo do cafeh: ele perdeu um bom tempo instalando um apache, um tomcat, uma jvm e configurando uma parafernalha de coisas para uma aplicacao java rodar via web falando com um banco de dados. infelizmente, tudo isso consumia bastante memoria e, quando se abriam umas 10 conexoes o sistema ficava carregado a tal ponto que a maquina comecava a demorar minutos para abrir uma pagina.

ok, era soh adicionar mais memoria, mas convenhamos que ele tinha motivo para indignacao: na mesma maquina, rodando um sistema similar escrito em php, ele conseguia 250 conexoes e o tempo de resposta continuava normal. mas php eh meio lentinho, se usasse C, provavelmente conseguiria milhares de conexoes simultaneas.

bom, sobrecarga eh um recurso meramente estetico, mas nao vou discutir sobre OOP em C com vc, existem milhares de referencias sobre isso na internet. eu francamente acho que vc deveria abrir sua mente e tentar aceitar mais o mundo a sua volta, sei lah, dah uma corrida amanha cedinho no parque para tirar todo esse odio do coracao! :)
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor msamsoniuk » 22 Ago 2008 23:16

ivan escreveu:Isso é um emulador 3270? Não parece...
http://www.receita.fazenda.gov.br/aduan ... stemas.htm


segundo o site da receita, para importar vc usa esse aqui:

"O software de acesso é composto por um conjunto de disquetes contemplando os serviços de: emulação de terminal 3270 (ambiente Windows), automatização do processo de acesso a Rede SERPRO e ao Siscomex, transferência de arquivos, serviço de cooperação entre processos executados no microcomputador do usuário com processos executados no computador central do Sistema e controle/atualização de versões do Sistema."

mas olha soh! aquele emulador de 3270 em java nao eh usado no siscomex! segundo o site da receita, eles torram nossos impostos comprando o IWW da cytrix:

http://www.receita.fazenda.gov.br/aduan ... cnicos.htm

que eh um emulador 3270 comercial que deve custar uma fortuna! nao podiam poupar custos e usar o emulador 3270 feito em java disponivel no serpro ?!? ou eles tem medo que o java devore os dados ? hahaha =D~

Ainda é usado natural para acesso aos dados no Adabas, mas já existem packages para acessá-lo em java. Só custam muitos $$$$$.... Além do mais, o acesso já e feito mesmo... já está testado... então...


questao: pq para exportar vc pode fazer via web e para importar vc ainda precisa fazer via emulador 3270 ? eles tem medo de java ?

eu lembro que os softwares menores da receita eram feitos em VB ou access, sei lah, era um negocio simplorio. mas eles nao confiavam nessas tecnologias primitivas para todas as tarefas e algumas coisas eram feitas apenas via terminal 3270.

Consiga um certificado digital com um despachante aduaneiro e acesse os sites.

Mais um copo de java.
Salut!


eu nao! eu vou correr no parque ver as gatinhas q eu ganho mais! quem programa em C tem tempo livre para fazer essas coisas neh! e nem vem zuar que eh por falta do que fazer huahuahua :)
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor ivan » 23 Ago 2008 18:45

É Marcelo, sua visão um tanto miope merece muito mais que um copo de java.
Vc quis um exemplo de sistema grande e crítico em Java. Eu lhe mostrei alguns dos vários, um dos maiores, que existem no mundo. São apenas alguns bilhões de dólares, mesmo que seja somente nas exportações brasileiras, que é o carro-chefe da balança comercial onde o resultado é: $$$ EXPORTAÇÔES - $$$ IMPORTAÇÔES.
Espero realmente q vc, e muitos outros, sejam anti-java eternamente, pois assim, leigos como eu, teremos uma pequena chance no mercado de trabalho tão competitivo.

Obrigado.
"A mente que se abre a uma nova idéia jamais volta ao seu tamanho original." (Albert Einstein).
Avatar do usuário
ivan
Word
 
Mensagens: 618
Registrado em: 12 Out 2006 21:27

Mensagempor msamsoniuk » 24 Ago 2008 04:27

desenvolvedores java no horizonte! tragam um canhao maior, rapido! =D~

eu lembro de uma entrevista do James Maguire com Robert Dewar, um professor de renome na New York University, que tambem atende empresas como Lockheed Martin e Boeing. bom, ele fala exatamente dos riscos que eu percebo nos desenvolvedores java tipicos... segue um pedaco da entrevista:

Código: Selecionar todos
When I noticed that this list of the popular programming languages placed Java in the top position, I picked up the phone to call Robert Dewar. Several months back I interviewed Dewar, a professor emeritus of computer science at New York University, about Java’s role in the college classroom.

What he said in that interview about Java in the classroom wasn’t pretty.

In essence, he said that [b]today’s Java-savvy college grad is tomorrow’s pizza delivery man[/b]. Their skills are so easily outsourced that they’re heading for near-term obsolescence.

Dewar stresses that he’s not against Java itself. But the fact that Java is taught as the core language in so many colleges is resulting in a weak field of computer science grads, he says.

The reason: students’ reliance on Java’s libraries of pre-written code means they aren’t developing the deep programming skills necessary to make them invaluable. Colleges, alarmed by falling CS enrollment, have dumbed down the course requirements. Consequently, CS majors sail through a curriculum of Math Lite, earning a smiley-face on their papers for “developing” projects using pre-built libraries.

[b]In the end, they graduate with a diploma whose value is questionable. They may be equipped for a dynamic career in fast food delivery, yet they are not fully prepared to compete against what is now a global field of rigorously educated software developers[/b].

But wait a second, Professor Dewar. (Actually, Dewar is both a professor and a CEO. He co-founded AdaCore, whose clients include Boeing and Lockheed Martin, so his experience includes decades in private industry.) I wanted to ask him, since this list of popular programming languges puts Java at No. 1 – ahead of biggies like C, C++ and Visual Basic – doesn’t that negate his theory?

I mean, if Java is this popular, maybe universities should teach it first. It called “being in touch with the real world,” isn’t it?

“This list is pretty meaningless in my opinion,” he says. “Using YouTube and Google to measure popularity just means that you pick up the buzz factor. Many serious application developers are not even present on the Web, which tends to overemphasize academic and hobbyist views. As the list itself says, this has nothing to do with quality of languages or level of usage.”

“Furthermore, Java is mainly used in Web applications that are mostly fairly trivial,” Dewar says, with his characteristic candor. “If all we do is train students to be able to do simple Web programming in Java, they won't get jobs, since those are the jobs that can be easily outsourced. What we need are software engineers who understand how to build complex systems.”

“By the way Java has almost no presence in such systems. At least as of a few months ago, there was not a single line of safety-critical Java flying in commercial or military aircraft. [b]I recently talked to a customer who had a medium-sized application in Java, which was to be adapted to be part of a safety-critical avionics system. They immediately decided that this meant it would have to be recoded in a suitable language, probably either C or Ada.[/b]” (Ada, by the way, is down at No. 19 in the list of popular programming languages.)


em essencia, java nao eh uma linguagem ruim, muito pelo contrario, eh uma opcao muito melhor para evitar as armadilhas de sistemas proprietarios como VB e delphi, que amarram o desenvolvedor a uma plataforma particular.

por outro lado, a vasta maioria dos desenvolvedores que escolhem java ou VB (#1 e #3 na lista citada na entrevista) o faz pela facilidade, de modo que, quando confrontados no trabalho com situacoes extremamente complexas, adotam solucoes erroneas ou ineficientes. desenvolvedores C (#2 na lista citada na entrevista), por outro lado, costumam se sair melhor quando confrontados no trabalho com as mesmas situacoes complexas.

indo mais adiante, percebi tambem que a maioria dos desenvolvedores que usam C estudaram em universidades publicas e aprenderam a linguagem em alguma disciplina aleatoria, da mesma forma que aprenderam assembler, pascal e ateh mesmo fortran. outra caracteristica eh que constantemente "prototipam" o algoritmo em uma segunda linguagem interpretada (awk, perl, python, etc) e depois transportam para C.

eu acho que essa formacao mais variada e ampla auxilia a resolucao de problemas complexos e eh algo antigo e bastante utilizado em aplicacoes criticas. por exemplo, os primeiros microcontroladores para aeronaves costumavam usar cores diferentes (68k e x86) rodando softwares diferentes (C e ADA), de forma redundante, para solucionar o mesmo problema. a logica disso eh que sistemas diferentes implicam em solucoes diferentes por parte dos programadores e eles nao cometem os mesmos erros sistematicos.

comparativamente, sobre os colegas que trabalham com java, eu percebi que vieram em sua vasta maioria de universidades particulares que adotam java como unica linguagem de desenvolvimento. como todos recebem a mesma formacao, falhas de formacao se propagam sistematicamente, pq as pessoas implementam solucoes sempre da mesma forma padronizada, tornando inutil os esforcos de uma revisao de codigo ou mesmo tentativas de redundancia.

mas ok, para mostrar q eu nao sou uma pessoa com visao miope das coisas, vou iniciar uma imensa e gigantesca campanha para incentivar TODOS os meus amigos a aprenderem java! eu soh nao vou entrar na onda pq cachorro velho nao aprende truques novos neh, daqui a pouco me aposento mesmo, dae vou jogar domino com os caras que programam em cobol e fortran.
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor ivan » 24 Ago 2008 23:04

Flying Systems?
Apresento o mesmo link anterior. Ou será que uma conferência anual que envolve alguns míseros milhares de dólares, talvez milhões, em passagens, hotéis, patrocinadores, locação de espaço, etc; iria apresentar uma matéria "fake" ?

Java One 2008
http://java.sun.com/javaone/sf/2008/art ... ngmars.jsp

De quando é esta entrevista? Lembro de um post antigo aki no fórum que relaciona alguns erros de avaliação cometidos por pessoas importantes do mundo dos negócios de tecnologia sobre:
- quem utilizaria uma equipamento que apenas duas pessoas podem se comunicar por vêz(telefone),
- + comentários infelizes sobre o rádio, computação, etc...

Se as universidades americanas, principalmente, estão formando mal os seus estudantes, ÓTIMO! Pq esta entrevista não é destinada a países de 3o mundo.
A reutilização de código em bibliotecas prontas tb existe em C(vide STL, MD5, criptografia). Isso não é novidade na informática. Agora, quem faz essas bibliotecas, seja em C, Java, Cobol, é que detêm o conhecimento. Ou seja, essas pessoas são, e sempre serão, a minoria em qq linguagem q seja.

Assim como não é escola que faz o estudante, e sim, o estudante que faz a escola! Não é o Java que forma leigos!

Ass,
Leigo51
Editado pela última vez por ivan em 25 Ago 2008 00:13, em um total de 4 vezes.
"A mente que se abre a uma nova idéia jamais volta ao seu tamanho original." (Albert Einstein).
Avatar do usuário
ivan
Word
 
Mensagens: 618
Registrado em: 12 Out 2006 21:27

Mensagempor ivan » 24 Ago 2008 23:35

Ah! Mais umas coisas...

Java é "open source".

Se alguém quiser estudar:
- A JVM - A especificação é divulgada e o código da JVM da Sun em C tb.
http://java.sun.com/products/hotspot/2.0/download.html

- As bibliotecas Java tb são escritas em Java e tem os fontes publicados.

"JDK 6 source code is available for those interested in exploring the details of the JDK. This includes schools, universities, companies, and individuals who want to examine the source code for personal interest or research & development. The licensing does not impose restrictions upon those who wish to work on independent open-source projects."
(extraido de http://java.sun.com/javase/downloads/index.jsp)

http://download.java.net/jdk6/

Onde é que aprender Java o transforma em um "limitado por excelência"???? Ferramentas não têm inteligencia, pessoas é que deveriam tê-la!
Olha o texto abaixo!
"A mente que se abre a uma nova idéia jamais volta ao seu tamanho original." (Albert Einstein).
Avatar do usuário
ivan
Word
 
Mensagens: 618
Registrado em: 12 Out 2006 21:27

Mensagempor msamsoniuk » 25 Ago 2008 01:53

ivan escreveu:Flying Systems?
Apresento o mesmo link anterior. Ou será que uma conferência anual que envolve alguns míseros milhares de dólares, talvez milhões, em passagens, hotéis, patrocinadores, locação de espaço, etc; iria apresentar uma matéria "fake" ?

Java One 2008
http://java.sun.com/javaone/sf/2008/art ... ngmars.jsp


pare de viajar na maionese ivan, o link que vc passou cita um projeto de sistema para visualizacao de imagens que estao armazenadas em uma database aqui na terra. obviamente as caixinhas com rodinhas nao tem lugar para java nas suas entranhas, dah uma olhada:

http://www.space.com/businesstechnology ... 40128.html

http://techworld.idg.se/2.2524/1.119061

sao artigos que mostram a tecnologia embarcada nos rovers, construidos em torno de um backplane VME e processadores powerpc rodando vxworks a miseros 20MHz, com apenas 128MB de memoria ram e 256MB de memoria flash. ou seja, java ainda nao chegou em marte! :)

uma coisa interessante que eu encontrei sobre como as memorias sao utilizadas:

http://www.devsource.com/c/a/Techniques ... ars-Rover/

ou seja, o negocio de formatar flashes com FAT por default as vezes pode ser arriscado hehehe fucando um pouco mais, descobri que os rovers enviam as imagens em alguns formatos meio bizarros e isso eh processado em maquinas linux rodando um software chamado VIZ, implementado em C++, e nao o jmars como divulgado por ae:

http://www.unixreview.com/documents/s=9083/ur0403j/

De quando é esta entrevista? Lembro de um post antigo aki no fórum que relaciona alguns erros de avaliação cometidos por pessoas importantes do mundo dos negócios de tecnologia sobre:

- quem utilizaria uma equipamento que apenas duas pessoas podem se comunicar por vêz(telefone),
- comentários infelizes sobre o rádio, computação, etc...

Se as universidades americanas, principalmente, estão formando mal os seus estudantes, ÓTIMO! Pq esta entrevista não é destinada a países de 3o mundo.


nao sei nao, acho que eh bem valido para o brasil. um amigo meu deu um relato realmente preocupante sobre o curso que ele fez (sistemas de informacao). de forma geral, a faculdade ensinou java para os alunos a maior parte do tempo.

em uma certa disciplina foi ensinado C e em outra VHDL, onde 2 ou 3 alunos apenas passaram (este meu colega passou sem problemas) e os outros alunos, enfurecidos, fizeram uma abaixo-assinado requerendo a extincao das duas disciplinas. segundo ele, muitos alunos sairam sabendo nao muito mais do que sabiam quando entraram!

jah ouvi relatos similares de muitas faculdades particulares com cursos de engenharia da computacao e ciencia da computacao!

A reutilização de código em bibliotecas prontas tb existe em C(vide STL, MD5, criptografia). Isso não é novidade na informática. Agora, quem faz essas bibliotecas, seja em C, Java, Cobol, é que detêm o conhecimento. Ou seja, essas pessoas são, e sempre serão, a minoria em qq linguagem q seja.

Assim como não é escola que faz o estudante, e sim, o estudante que faz a escola! Não é o Java que forma leigos!


claro, meu amigo do exemplo acima nao ficou burro aprendendo java.

mas ele tambem aprendeu C e VHDL na faculdade. embora nao seja um bom programador C e jah tenha esquecido tudo de VHDL, ele jah me disse que aprender C nao apenas foi essencial para compreender melhor alguns aspectos de java, como tambem aumentou consideravelmente suas possibilidades na sua profissao: quando ele precisa fazer algo novo, faz em java, mas quando precisa consertar algo jah feito em C, ele conserta.

casos complementares a isso eu vi em alguns alunos meus que nao aprenderam C na faculdade. o imenso interesse deles em aprender C era justamente poder utilizar sistemas embarcados baseados em microcontroladores de baixo custo e eles nao tiveram essa oportunidade por uma questao de "visao" (ou falta dela) quando os curriculos principais foram elaborados.
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor msamsoniuk » 25 Ago 2008 02:18

ivan escreveu:Ah! Mais umas coisas...

Java é "open source".

Se alguém quiser estudar:
- A JVM - A especificação é divulgada e o código da JVM da Sun em C tb.
http://java.sun.com/products/hotspot/2.0/download.html

- As bibliotecas Java tb são escritas em Java e tem os fontes publicados.

"JDK 6 source code is available for those interested in exploring the details of the JDK. This includes schools, universities, companies, and individuals who want to examine the source code for personal interest or research & development. The licensing does not impose restrictions upon those who wish to work on independent open-source projects."
(extraido de http://java.sun.com/javase/downloads/index.jsp)

http://download.java.net/jdk6/


isso eh bastante estranho, pq isso cria duas consideracoes importantes:

a) java nao eh uma linguagem realmente completa: enquanto o compilador C eh escrito em C, linka bibliotecas escritas em C e roda em um sistema operacional escrito em C, a aplicacao java roda em uma JVM que nao eh escrita em java, usa recursos de bibliotecas que nao sao escritas em java e roda em um sistema operacional que nao eh escrito em java... isso significa que quanto mais programadores java tivermos, menos java teremos, pq os recursos necessarios para o java funcionar bem sao supridos por outra linguagem que os mesmos consideram obsoleta! parece um tiro no peh, nao eh nao ?

b) enquanto um desenvolvedor C pode desenvolver aplicacoes que rodam dentro do nucleo do sistema operacional, em bibliotecas ou na forma de aplicacoes nativas, o desenvolvedor java desenvolve apenas aplicacoes que rodam dentro da jvm, ou seja, eles ignoram completamente o resto do sistema a sua volta e tratam o computador como um todo tal qual um usuario windows: um monte de caixas pretas escritas em uma linguagem enigmatica orientada a ponteiros. isso me parece mais uma conspiracao por parte de administradores unix do mal (a sun esta cheia deles e eles programam em C) para colocar usuarios desatentos que nao querem aprender C em caixinhas de areia, onde nao possam fazer muitos estragos no sistema...sinistro!

Onde é que aprender Java o transforma em um "limitado por excelência"???? Ferramentas não têm inteligencia, pessoas é que deveriam tê-la!
Olha o texto abaixo!


ueh! olhe o texto acima! :)
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor chipselect » 25 Ago 2008 07:42

Marcelo

Concordo que o java não é "completa" e não vai substituir o C, tanto é que ela roda sobre máquinas virtuais e containers, geralmente escritas em C/C++. O foco principal dela, para os programadores, é outro.

Na universidade, java geralmente é a quinta linguagem cobrada, no penúltimo ano, somente depois de C/C++, pascal, assembly e outra como lisp, após um bom embasamento teórico em algoritmos. O problema seria se o aluno só estudasse utilizando java, daí concordo que seria um problema.

Também não acho que o reaproveitamento massivo de código pregado pelo java vá culminar em profissonais pouco preparados, como acontece no Delphi. Programadores java não gostam muito de recursos drag & drop, preferem escrever no XML mesmo. Pra quem não gosta do XML, tem Annotations.

Eu estou comparando C e java porque dá a impressão que você acha java um monte de esterco, que o mundo seria melhor sem ela, e nisso eu não concordo. Eu sei que java e C não são para o mesmo nicho de mercado, por isso acho java interessante, senão eu ficaria só com o C.

Não discordo que java é mais lento que C, mas alcançar o desempenho que ela conseguiu é uma excelente façanha, já que ela usa máquina virtual, e recursos como jit deixa ela mais ágil. Mesmo assim, se eu for programar um jogo usando Open GL, java não é a primeira opção que eu pensaria em utilizar, mas sistemas empresariais com interface web, ela é a primeira que eu coloco em foco.

Java também não depende só do Apache, existem outros containers que são compatíveis com J2EE. E, no outro extremo, a KVM não é pequena o suficiente para microcontroladores como o PIC, mas é muito boa para celulares, onde a portabilidade do software é necessária.
chipselect
Word
 
Mensagens: 744
Registrado em: 16 Out 2006 18:50

AnteriorPróximo

Voltar para Linux ( x86 ou x64 )

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x