Então escreva um artigo e nos apresente a sua solução. [/quote]
Sem tempo.
Além do mais, todo segredo tem um preço.
Não subo apenas as posições (XY) para o client, eu subo tb todos os dados de telemetria que são apresentados no balão (infowindow) quando o usuário clica em cada veículo.
[/quote]
quanto você cobraria pra colocar o código aqui? ou era brincadeira ? 8)
Veja bem, esse foi um questionamento que eu levantei, se puder ler os comentários do artigo posteriormente:
[quote]
Quanto ao assunto faculdade, é óbvio q ela dá um empurrão, mas quanto mais Sênior um profissional é, mais dependência de seus méritos pessoais para se destacar…[/quote]
Mas o destaque sempre depende de méritos pessoais, independentemente da experiência do profissional ou do estudante. A questão é justamente essa: de tratar com seriedade as disciplinas oferecidas nas faculdades.
Me lembro de um artigo do Klauss Wuestefeld em que, apesar de ele aconselhar que o profissonal largue a faculdade, ele aconselha o seguinte:
Ou seja, não é a questão de fazer ou não faculdade. Até mesmo porque se for para fazer um curso que te ensine a fazer CRUD em 15 linguagens diferentes realmente, você não agrega nada. A questão é correr atrás do conhecimento que realmente valha a pena se aprofundar, para a maioria das pessoas, isso é conseguido mais facilmente através de um curso.
A solução apresentada no texto é incrivelmente ineficiente quando o número de posições é alto, isto porque a maioria das Threads ficam esperando ociosamente (mas consumindo recursos preciosos) enquanto não são processadas. Sem falar que ao criar seu próprio pool de Threads o autor poderia ter economizado tempo e preciosos neurônios usando uma solução já testada, como o Executor Framework, disponível no Java desde a versão 1.5.
Mas não culpo o autor por essa solução, pelo que entendi ele apenas tentou resolver, a culpa foi da consultoria que entregou o sistema com problemas.
A culpa dele foi só trabalhar para uma empresa que paga uma mixaria para os programadores da casa, mas rios de dinheiro pra uma consultoria fazer uma grande merda.
[quote=rmendes08][quote=andre_salvati]
A melhor parte é que tudo isso foi obtido de maneira bem simples (Keep It Simple Stupid) sem essas mirabolâncias de threads e semáforos.
[/quote]
Veja bem, esse foi um questionamento que eu levantei, se puder ler os comentários do artigo posteriormente:
Só uma pergunta, não seria possível que o WebService fosse alterado para receber uma lista de clientes e retornasse uma lista de coordenadas, podendo executar a operação em uma única requisição ?
Reply
CarlosEduardoXP says:
June 27, 2012 at 11:00 am
Concordo Rodolfo, se fosse feito dessa forma facilitaria bastante, porém o jar entregue pela empresa terceira com as interfaces da Web Service permitiam que fosse consultado apenas uma coordenada de cada vez.
[/quote]
Só lamento, vergonha pra ele e pro terceiro. Até os Web Services da TAM/Amadeus são melhores do que esses (retornam todas as opções de vôos para uma consulta).
[quote=rmendes08]
Ou seja, não é a questão de fazer ou não faculdade. Até mesmo porque se for para fazer um curso que te ensine a fazer CRUD em 15 linguagens diferentes realmente, você não agrega nada. A questão é correr atrás do conhecimento que realmente valha a pena se aprofundar, para a maioria das pessoas, isso é conseguido mais facilmente através de um curso.[/quote]
Honestamente,
depois dos 5 anos de experiência e com muita dedicação participando de fóruns/lendo livros em inglês a faculdade não valeu pra nada melhor do que ter os contatos dos colegas de turma.
Mas pelo que eu entendi no texto, a grandeza de informações que o sistema se propõe a mostrar é muito superior a 200 ou 500 posições. Talvez se fossem apenas 200 como a sua, seria muito menos do que 30 segundos ou até outra solução seria empregada, vai saber.
[/quote]
A solução apresentada no texto é incrivelmente ineficiente quando o número de posições é alto, isto porque a maioria das Threads ficam esperando ociosamente (mas consumindo recursos preciosos) enquanto não são processadas. Sem falar que ao criar seu próprio pool de Threads o autor poderia ter economizado tempo e preciosos neurônios usando uma solução já testada, como o Executor Framework, disponível no Java desde a versão 1.5.
Mas não culpo o autor por essa solução, pelo que entendi ele apenas tentou resolver, a culpa foi da consultoria que entregou o sistema com problemas.
A culpa dele foi só trabalhar para uma empresa que paga uma mixaria para os programadores da casa, mas rios de dinheiro pra uma consultoria fazer uma grande merda.
[/quote]
Mas como resolver isso da forma KISS, sem threads, como nosso amigo andre_salvati apresentou? Vamos todos fazer uma vaquinha e depositar para ele mostrar o código :lol:
Do ponto de vista de Bill Gates, Mark Zuckerberg, etc, que abandonaram nada mais, nada menos que HARVARD, faculdade não serve para nada mesmo…[/quote]
Mas aí você está tomando a exceção como regra. Uma coisa é largar a faculdade para tocar o próprio negócio, com perspectiva para ganhar bilhões, outra coisa é largar a faculdade por pura ignorância.
Além disso, muitos empreendedores abrem empresas com base na sua pesquisa acadêmica, como foi o caso do Google e a 3Com. De qualquer maneira, a inovação está no centro do empreendedorismo, e para inovar é preciso conhecimento.
Se ainda assim você não está convencido, mande um currículo para a Microsoft ou para o Facebook nos EUA com um UNIESQUINA da vida no currículo e veja se você tem alguma chance contra currículos de Harvard ou do MIT, por exemplo.
Confesso que estou curioso, mas acho que se ele quisesse já teria postado no blog dele…
Agora na minha solução, eu carregaria as posições sob demanda compartilhando a mesma Thread ao invés de disparar um monte de Threads zumbis, além de mais simples é boa prática no uso de Threads em Java.
[quote=rmendes08]
Mas aí você está tomando a exceção como regra. Uma coisa é largar a faculdade para tocar o próprio negócio, com perspectiva para ganhar bilhões, outra coisa é largar a faculdade por pura ignorância.
Além disso, muitos empreendedores abrem empresas com base na sua pesquisa acadêmica, como foi o caso do Google e a 3Com. De qualquer maneira, a inovação está no centro do empreendedorismo, e para inovar é preciso conhecimento.
Se ainda assim você não está convencido, mande um currículo para a Microsoft ou para o Facebook nos EUA com um UNIESQUINA da vida no currículo e veja se você tem alguma chance contra currículos de Harvard ou do MIT, por exemplo.[/quote]
Que inovação Bill Gates e Mark Suckerberg criou eu não sei, mas isso não impede de serem grandes capitalistas.