MINHA POSIÇÃO, COMO DESENVOLVEDOR ESTA CORRETA?
Bom dia!
Colegas, a pouco tempo postei um tópico no qual mostrei minha
dificuldade como desenvolvedor, ao lidar com a infraestrutura.
Fiquei muito satisfeito com as respostas que recebi. Pois, aprendo
com cada resposta.
No entanto, eu tenho uma segunda dificuldade que quero compartilhar
com os colegas. Meu objetivo é descobrir com este tópico, se sou somente
eu, ou se outros tem a mesma dificuldade.
O caso:
Onde atuo temos projetos WEB, mas também muitos Aplicativos Desktop. Como
os colegas bem sabem, aplicativos Desktop, costumam ter vários pré- requisitos.
São DLL"s, ActiveX,etc... que tem de estar instalados na máquina do usuário para que
o aplicativo funcione. Quando desenvolvemos um aplicativo, fazemos geralmente usando
a versão mais recente destes pré-requisitos. Mas, com o tempo , os fabricantes destas
Dll"s, AcriveX,etc... começam a atualizar e "modificar" seus produtos.
E isto pode afetar em cheio nossa aplicação, que foi feita para lidar com aquela versão especÃÂfica
de DLL ou outro requisito qualquer na máquina.
Por isso, eu sempre peço ao pessoal da infraestrutura para não atualizar nada na máquina sem
me consultar. Pois não sei se isso , irá afetar meu aplicativo.
O problema:
Quando isto ocorre, sou severamente criticado, pois segundo eles, se meu aplicativo fosse realmente
bem feito, deveria se manter "constantemente" atualizado e pronto para funcionar , independente de qualquer
atualização ou mudança na máquina.
Minha posição:
Eu até gostaria, de ter tempo para ficar atualizando meu projeto, todas as vezes que um fornecedor de DLL, atualiza
seu produto. Mas, é comum eu ter aplicativo que depende de 7 ou 10 Dll"s de terceiros. Se eu ficar tendo que mudar
meus projetos todas as vezes que uma DLL é é atualizada no mercado, eu "não terei mais tempo para fazer nada" !!!
Peço a opinião dos colegas, para saber se meu posicionamento esta certo ou errado.
Colegas, a pouco tempo postei um tópico no qual mostrei minha
dificuldade como desenvolvedor, ao lidar com a infraestrutura.
Fiquei muito satisfeito com as respostas que recebi. Pois, aprendo
com cada resposta.
No entanto, eu tenho uma segunda dificuldade que quero compartilhar
com os colegas. Meu objetivo é descobrir com este tópico, se sou somente
eu, ou se outros tem a mesma dificuldade.
O caso:
Onde atuo temos projetos WEB, mas também muitos Aplicativos Desktop. Como
os colegas bem sabem, aplicativos Desktop, costumam ter vários pré- requisitos.
São DLL"s, ActiveX,etc... que tem de estar instalados na máquina do usuário para que
o aplicativo funcione. Quando desenvolvemos um aplicativo, fazemos geralmente usando
a versão mais recente destes pré-requisitos. Mas, com o tempo , os fabricantes destas
Dll"s, AcriveX,etc... começam a atualizar e "modificar" seus produtos.
E isto pode afetar em cheio nossa aplicação, que foi feita para lidar com aquela versão especÃÂfica
de DLL ou outro requisito qualquer na máquina.
Por isso, eu sempre peço ao pessoal da infraestrutura para não atualizar nada na máquina sem
me consultar. Pois não sei se isso , irá afetar meu aplicativo.
O problema:
Quando isto ocorre, sou severamente criticado, pois segundo eles, se meu aplicativo fosse realmente
bem feito, deveria se manter "constantemente" atualizado e pronto para funcionar , independente de qualquer
atualização ou mudança na máquina.
Minha posição:
Eu até gostaria, de ter tempo para ficar atualizando meu projeto, todas as vezes que um fornecedor de DLL, atualiza
seu produto. Mas, é comum eu ter aplicativo que depende de 7 ou 10 Dll"s de terceiros. Se eu ficar tendo que mudar
meus projetos todas as vezes que uma DLL é é atualizada no mercado, eu "não terei mais tempo para fazer nada" !!!
Peço a opinião dos colegas, para saber se meu posicionamento esta certo ou errado.
Citação:Dll"s, AcriveX
Por isso é importante não utilizar nada de terceiros.
Se eu não me engano, se as DLLs estiverem próximas aos executáveis, elas tomarão a frente das que estão na pasta windows.
Na boa ?
Voce está trazendo para si uma responsabilidade que deveria ser da equipe toda e que deveria ser mitigada nos dias de hoje.
Como o desenvolvimento WEB, sinceramente ficar compilando ocx e dll em 2022 é beeeem ultrapassado não acha ?
Mais do que nunca, e ainda mais com esse teu parceirão da infra, o melhor é planejar e migrar tudo que voce faz para soluções web, sem instalações em desktop.
O servidor hoje com uma camada web bem feita, da conta de qualquer recado que o desktop daria isoladamente.
No meu ponto de vista, seu posicionamento está 100% correto se essa conversa estivesse acontecendo há mais de 15 anos atrás, não há nada que uma aplicação web hoje em dia faça de forma centralizada e com qualidade e escalabilidade.
Eu mesmo não compilo uma aplicação desktop há pelo menos uns 7 anos, e a útlima foi só por causa da bendita impressora Zebra, ou seja, só exceções
Voce está trazendo para si uma responsabilidade que deveria ser da equipe toda e que deveria ser mitigada nos dias de hoje.
Como o desenvolvimento WEB, sinceramente ficar compilando ocx e dll em 2022 é beeeem ultrapassado não acha ?
Mais do que nunca, e ainda mais com esse teu parceirão da infra, o melhor é planejar e migrar tudo que voce faz para soluções web, sem instalações em desktop.
O servidor hoje com uma camada web bem feita, da conta de qualquer recado que o desktop daria isoladamente.
No meu ponto de vista, seu posicionamento está 100% correto se essa conversa estivesse acontecendo há mais de 15 anos atrás, não há nada que uma aplicação web hoje em dia faça de forma centralizada e com qualidade e escalabilidade.
Eu mesmo não compilo uma aplicação desktop há pelo menos uns 7 anos, e a útlima foi só por causa da bendita impressora Zebra, ou seja, só exceções
Conversando com os colegas aqui do Fórum, eu já me convenci a muito muito
tempo, de que o melhor é migrar para aplicações Web. Já tracei um plano para isto.
No entanto, a empresa é antiga e tem uma grande quantidade de aplicativos legados em Desktop.
Sem contar que tem aplicativos, que interagem com mini impressoras, leitores de
dados conectados a porta USB.
Obs: Aproveito a oportunidade, para perguntar aos colegas. Já existe tecnologia hoje, que permite
a uma aplicação Web, rodando num navegador, manipular mini impressoras locais, e periféricos
de leitura de cartão, etc... ?
tempo, de que o melhor é migrar para aplicações Web. Já tracei um plano para isto.
No entanto, a empresa é antiga e tem uma grande quantidade de aplicativos legados em Desktop.
Sem contar que tem aplicativos, que interagem com mini impressoras, leitores de
dados conectados a porta USB.
Obs: Aproveito a oportunidade, para perguntar aos colegas. Já existe tecnologia hoje, que permite
a uma aplicação Web, rodando num navegador, manipular mini impressoras locais, e periféricos
de leitura de cartão, etc... ?
Citação::
Conversando com os colegas aqui do Fórum, eu já me convenci a muito muito
tempo, de que o melhor é migrar para aplicações Web. Já tracei um plano para isto.
No entanto, a empresa é antiga e tem uma grande quantidade de aplicativos legados em Desktop.
Sem contar que tem aplicativos, que interagem com mini impressoras, leitores de
dados conectados a porta USB.
Obs: Aproveito a oportunidade, para perguntar aos colegas. Já existe tecnologia hoje, que permite
a uma aplicação Web, rodando num navegador, manipular mini impressoras locais, e periféricos
de leitura de cartão, etc... ?
vc pode criar uma aplicação/serviço, que fica ouvindo uma porta de rede localmente (no computador em questão) e a pagina web ser comunicar com essa aplicação via websocket,
Voltando a pergunta inicial, o ideal é não utilizar nada de terceiros, crie suas dllÂ's ocx e etc, desta forma não terá muitas dificuldades, quanto ao comentários dos colegas de certa maneira eles estão corretos, pois se vc oferece um bom sistema ele deve estar livre de empecilhos.
é uma mistura do q o marcelo-treze e o jaba disseram......
pode parecer reinventar a roda, mas precisei fazer um programa desktop tempos atrás pra gerenciar boletos, emitir, gerar remessa e ler o retorno, ok....fiz na unha pro banco especifico com a documentação do próprio banco, ah mas podia usar as dll serviços e tudo mais q tem na web, mas fiz pra ter o controle de tudo e não depender de terceiros, se da noite pro dia cortam o serviço, passam a cobrar, e essas coisas?
ainda gero um excel da movimentação e envio por e-mail ao departamento da contabilidade, tudo na unha tmb, sempre procurando desviar de recursos de terceiros......
é muito tempo q se leva fazendo, mas é muito menos dor de cabeça q essa novela de atualizar SO estragar, instalar algo q muda pra uma dll diferente e parar tudo...engracado q coisas web eu sou muito mais fazer em php
pode parecer reinventar a roda, mas precisei fazer um programa desktop tempos atrás pra gerenciar boletos, emitir, gerar remessa e ler o retorno, ok....fiz na unha pro banco especifico com a documentação do próprio banco, ah mas podia usar as dll serviços e tudo mais q tem na web, mas fiz pra ter o controle de tudo e não depender de terceiros, se da noite pro dia cortam o serviço, passam a cobrar, e essas coisas?
ainda gero um excel da movimentação e envio por e-mail ao departamento da contabilidade, tudo na unha tmb, sempre procurando desviar de recursos de terceiros......
é muito tempo q se leva fazendo, mas é muito menos dor de cabeça q essa novela de atualizar SO estragar, instalar algo q muda pra uma dll diferente e parar tudo...engracado q coisas web eu sou muito mais fazer em php
Por trabalhar sozinho, as vezes pegamos o q parece ser mais lógico (dlls de terceiros), passei por isso com NFe, CTe, Boleto... só stress. Fui criando minhas rotinas, umas direto no sistemas desktop, e outras um sistema a parte, porém ambos se comunicam com a mesma base de dados, e achei que foi a melhor solução. Pra algumas rotinas, principalmente voltadas a varejo, desktop é mais viável.
Agradeço muito aos colegas, por suas respostas.
Tópico encerrado , respostas não são mais permitidas