TRABALHAR COM WINFORM NA WEB É PROIBIDO?
Bom tarde,colegas!
Minha dúvida,pode ser um pouco estranha,mais é sincera.
Peço a orientação dos colegas,para opinar:
A tecnologia .NET nos permite criar, utilizando o Visual Studio.NET,
projetos para WEB (Utilizando os WEBForm[ô]s,etc...) e para aplicativos
em Desktop (Usando WinForm).Bom, eu me acostumei a criar a
interface gráfica (Camada de apresentação),usando WinForm.E estou,
tendo grande dificuldade em fazer o mesmo para WEBForm.Para
criar telas de boa qualidade, se tem que misturar várias tecnologias.
(Html,CSS,ASP.NET,etc...)Enquanto que criar interfaces de ótima qualidade
com WinForm é muito mais fácil .E o resultado muito melhor.
Minha dúvida:
Se eu tenho que criar uma aplicação, que deverá ser acessada de qualquer
local, usando a Internet,será que sou mesmo obrigado a criar um projeto usando
WEBForm.Digo isto,pois gostaria de fazer toda a aplicação para rodar na máquina em WinForm
e somente a BD deixar no servidor (Fazer o acesso com uma String, para acesso remoto a BD)
Obs:
Sei que alguns colegas irão, com razao, argumentar que :
- Com Aplicação WEBForm no servidor,não preciso instalar nada na máquina do usuário (Só o navegador)
Mais,a não ser por esta desvantagem,existe algum outro problema técnico muito importante que não
me permita criar aplicativos WinForm (Para redes locais), que possam funcionar de qualquer lugar,fazendo
o acesso a BD remotamente(Usando uma String de conexão adequada)?????
Minha dúvida,pode ser um pouco estranha,mais é sincera.
Peço a orientação dos colegas,para opinar:
A tecnologia .NET nos permite criar, utilizando o Visual Studio.NET,
projetos para WEB (Utilizando os WEBForm[ô]s,etc...) e para aplicativos
em Desktop (Usando WinForm).Bom, eu me acostumei a criar a
interface gráfica (Camada de apresentação),usando WinForm.E estou,
tendo grande dificuldade em fazer o mesmo para WEBForm.Para
criar telas de boa qualidade, se tem que misturar várias tecnologias.
(Html,CSS,ASP.NET,etc...)Enquanto que criar interfaces de ótima qualidade
com WinForm é muito mais fácil .E o resultado muito melhor.
Minha dúvida:
Se eu tenho que criar uma aplicação, que deverá ser acessada de qualquer
local, usando a Internet,será que sou mesmo obrigado a criar um projeto usando
WEBForm.Digo isto,pois gostaria de fazer toda a aplicação para rodar na máquina em WinForm
e somente a BD deixar no servidor (Fazer o acesso com uma String, para acesso remoto a BD)
Obs:
Sei que alguns colegas irão, com razao, argumentar que :
- Com Aplicação WEBForm no servidor,não preciso instalar nada na máquina do usuário (Só o navegador)
Mais,a não ser por esta desvantagem,existe algum outro problema técnico muito importante que não
me permita criar aplicativos WinForm (Para redes locais), que possam funcionar de qualquer lugar,fazendo
o acesso a BD remotamente(Usando uma String de conexão adequada)?????
Eu tenho algumas aplicações tudo com winforms desktop, com ótimo desempenho com banco mysql hospedado na web, isso desde 12 anos atras com o vb6, agora com o .net, melhor ainda,
não tive tempo para aprender via browser e como o que preciso, faço tudo, me resolve, então continuo assim.
uma das diferenças é que só utiliza onde estiver tudo instalado, mas isso dependendo o caso é o que cliente quer mesmo, repito, dependendo o caso.
Como eu disse, sou suspeito a falar, mas sem problemas.
não tive tempo para aprender via browser e como o que preciso, faço tudo, me resolve, então continuo assim.
uma das diferenças é que só utiliza onde estiver tudo instalado, mas isso dependendo o caso é o que cliente quer mesmo, repito, dependendo o caso.
Citação:Mais,a não ser por esta desvantagem,existe algum outro problema técnico muito importante que não
me permita criar aplicativos WinForm (Para redes locais), que possam funcionar de qualquer lugar,fazendo
o acesso a BD remotamente(Usando uma String de conexão adequada)?????
Como eu disse, sou suspeito a falar, mas sem problemas.
Colega,Nilson.
Eu vejo a situação do mesmo modo que você.
Claro,se você tem uma aplicação,que irá rodar em centenas,milhares de
máquinas,espalhadas em cidades e estados diferentesEu concordo que
o melhor é fazer WEB.Mas,no meu caso por exemplo,irá funcionar em
rede local, e somente algums poucos irão acessar remotamente.
Digo isto,pois fazer uma página com WEBForm simples é fácil.Mas,se você
quizer uma pagina com muitos controles e muito bonita estéticamente,é um
parto para fazer.
Se algum outro colega,quizer opinar,fico grato.
Eu vejo a situação do mesmo modo que você.
Claro,se você tem uma aplicação,que irá rodar em centenas,milhares de
máquinas,espalhadas em cidades e estados diferentesEu concordo que
o melhor é fazer WEB.Mas,no meu caso por exemplo,irá funcionar em
rede local, e somente algums poucos irão acessar remotamente.
Digo isto,pois fazer uma página com WEBForm simples é fácil.Mas,se você
quizer uma pagina com muitos controles e muito bonita estéticamente,é um
parto para fazer.
Se algum outro colega,quizer opinar,fico grato.
da para montar WebForms tão bom quanto WindowsForm.
Quando fui para WebForm eu queria em enforcar, não conseguir fazer WebForm bonito mas com CSS3, MetroUI CSS [Ô]http://metroui.org.ua/[Ô] fica muito bom.
A m#rd@ continua sendo o browser. Dependendo do que for feito, no IE fica um jeito, FireFox de outro jeito, Chrome outro jeito, Opera e Safari também de outro jeito.
Agora não me arrependo do WebForm até porque, quando o cliente formata a máquina não me liga mais para instalar o sistema e se o Windows não tiver browser o problema não é meu.....
Quando fui para WebForm eu queria em enforcar, não conseguir fazer WebForm bonito mas com CSS3, MetroUI CSS [Ô]http://metroui.org.ua/[Ô] fica muito bom.
A m#rd@ continua sendo o browser. Dependendo do que for feito, no IE fica um jeito, FireFox de outro jeito, Chrome outro jeito, Opera e Safari também de outro jeito.
Agora não me arrependo do WebForm até porque, quando o cliente formata a máquina não me liga mais para instalar o sistema e se o Windows não tiver browser o problema não é meu.....
Citação:Agora não me arrependo do WebForm até porque, quando o cliente formata a máquina não me liga mais para instalar o sistema e se o Windows não tiver browser o problema não é meu.....
Certinho, só que as vezes penso que algumas coisas é até bom o cliente depender de vc, pois quando ele fica 3 meses sem depender de vc, começa a chorar para pagar a mensalidade, rsrsr, claro que não são todos, só alguns sem noção.
Se o seu caso é realmente de poucos usuários acessando localmente e ainda menos remotamente, então winforms é uma alternativa viável, bastando apenas configurar o acesso ao banco. Agora ao caso especÃfico dos poucos usuários que irão acessar remotamente:
Você terá que configurar a sua rede de modo a permitir acesso EXTERNO ao seu banco de dados INTERNO. Isso implica em abrir portas externas, criando uma vulnerabilidade muito grande na sua rede. Além disso, para rodar winforms, a máquina que os roda, precisa necessariamente do .NET framework instalado, com a versão correta do mesmo.
Compreendo a dificuldade da grande sopa de letrinhas que é criar aplicações web com um visual bacana. Mas veja bem, dessa maneira, qualquer usuário, com qualquer dispositivo e qualquer sistema operacional, poderá ter acesso ao sistema sem grandes modificações na sua rede e ainda não se sujeitando à s vulnerabilidades que implicam na abertura de portas para acesso externo. Se seu sistema for baseado em WebAPI, ainda melhor, pois além de disponibilizar dados para a sua aplicação, é possÃvel disponibilizar também o seu banco de dados para futuras(ou presentes) integrações de clientes ou fornecedores.
Além disso, não se deve ficar preso aos simples padrões HTML/CSS/Javascript puros. Hoje em dia existem centenas de bibliotecas tanto de CSS(aparência), quanto de Javascript(funcionalidade) que facilitam em muito a criação de páginas HTML ricas e extremamente funcionais, muitas vezes até mais que WinForms. Como é o caso do JQuery, usado aqui mesmo no VBMania. Um framework maduro e com milhões de usuários no mundo todo. é até difÃcil encontrar alguma aplicação web que não faça uso dele. Além do JQuery, temos os componentes visuais do JQueryUI, que são muito úteis para o desenvolvimento de aplicações web ricas. Também temos o framework JQueryMobile, que facilita muito à vida para a criação de páginas web voltadas para dispositivos, como tablets e celulares. Ainda temos o componente DataTables, baseado em JQuery, que transforma qualquer elemento <TABLE> em um grid dinâmico com milhares de recursos e plug-ins. Existe também a biblioteca AngularJS, surpreendentemente poderosa, capaz de transformar uma simples página HTML em uma aplicação Web SPA(Single Page Application), sem nem mesmo a necessidade de se usar WebForms.
Aliás, WebForms é um conceito já bastante ultrapassado, o conceito de WebAPI, veio para ficar e muito provavelmente substituir o WebForms. WebAPI, [Ô]expõe[Ô], seu banco de dados, não para acesso via ADO.NET, mas sim disponibilizando objetos e métodos para serem criados e utilizados conforme a necessidade. Todos, absolutamente todos os grandes serviços de internet utilizam essa tecnologia para integração de aplicações, Google(incluindo todos os seus serviços como GMail, YouTube e também o serviço de pesquisa), Facebook, Twitter, MercadoLivre, PagSeguro, enfim, uma infinidade de serviços de internet que disponibilizam integrações sempre através de WebAPI.
Em uma explicação rápida, WebAPI tem seu funcionamento de modo parecido com um WebService. A diferença é que o acesso à funcionalidades se dá geralmente através de verbos HTTP(GET, POST, PUT...). Se chama WebAPI, por funcionar de modo parecido com uma API do windows, fornecendo dados e objetos de acordo com a demanda. A principal diferença de uma WebAPI e um webservice, é que no caso da WebAPI, não existe referenciamento para paridade de objetos como acontece com um webservice, mas sim os métodos e objetos são chamados via HTTP, permitindo grande escalonabilidade para uso com AJAX(disponÃvel no JQuery).
Em suma, desenvolve-se uma WebAPI utilizando tecnologia .NET. Ela será o serviço de dados, disponibilizando tudo que quiser que seja disponibilizado(cadastros, pesquisas, consultas...) e essa WebAPI pode ser acessada por qualquer tecnologia incluindo uma aplicação WebForms, se desejar, apesar de não recomendar. Com isso, pode ser feito a parte da WebAPI em .NET, a parte de UI com php, asp, java, winforms, VB6(sim, se pode consumir uma WebAPI usando VB6) ou até mesmo HTML puro, e nenhuma dessas tecnologias impede o uso de todos os componentes que citei acima, como JQuery, JQueryUI, DataTables, AngularJS. Se quiser, posso falar com detalhes como tudo isso pode ser posto junto.
Você terá que configurar a sua rede de modo a permitir acesso EXTERNO ao seu banco de dados INTERNO. Isso implica em abrir portas externas, criando uma vulnerabilidade muito grande na sua rede. Além disso, para rodar winforms, a máquina que os roda, precisa necessariamente do .NET framework instalado, com a versão correta do mesmo.
Compreendo a dificuldade da grande sopa de letrinhas que é criar aplicações web com um visual bacana. Mas veja bem, dessa maneira, qualquer usuário, com qualquer dispositivo e qualquer sistema operacional, poderá ter acesso ao sistema sem grandes modificações na sua rede e ainda não se sujeitando à s vulnerabilidades que implicam na abertura de portas para acesso externo. Se seu sistema for baseado em WebAPI, ainda melhor, pois além de disponibilizar dados para a sua aplicação, é possÃvel disponibilizar também o seu banco de dados para futuras(ou presentes) integrações de clientes ou fornecedores.
Além disso, não se deve ficar preso aos simples padrões HTML/CSS/Javascript puros. Hoje em dia existem centenas de bibliotecas tanto de CSS(aparência), quanto de Javascript(funcionalidade) que facilitam em muito a criação de páginas HTML ricas e extremamente funcionais, muitas vezes até mais que WinForms. Como é o caso do JQuery, usado aqui mesmo no VBMania. Um framework maduro e com milhões de usuários no mundo todo. é até difÃcil encontrar alguma aplicação web que não faça uso dele. Além do JQuery, temos os componentes visuais do JQueryUI, que são muito úteis para o desenvolvimento de aplicações web ricas. Também temos o framework JQueryMobile, que facilita muito à vida para a criação de páginas web voltadas para dispositivos, como tablets e celulares. Ainda temos o componente DataTables, baseado em JQuery, que transforma qualquer elemento <TABLE> em um grid dinâmico com milhares de recursos e plug-ins. Existe também a biblioteca AngularJS, surpreendentemente poderosa, capaz de transformar uma simples página HTML em uma aplicação Web SPA(Single Page Application), sem nem mesmo a necessidade de se usar WebForms.
Aliás, WebForms é um conceito já bastante ultrapassado, o conceito de WebAPI, veio para ficar e muito provavelmente substituir o WebForms. WebAPI, [Ô]expõe[Ô], seu banco de dados, não para acesso via ADO.NET, mas sim disponibilizando objetos e métodos para serem criados e utilizados conforme a necessidade. Todos, absolutamente todos os grandes serviços de internet utilizam essa tecnologia para integração de aplicações, Google(incluindo todos os seus serviços como GMail, YouTube e também o serviço de pesquisa), Facebook, Twitter, MercadoLivre, PagSeguro, enfim, uma infinidade de serviços de internet que disponibilizam integrações sempre através de WebAPI.
Em uma explicação rápida, WebAPI tem seu funcionamento de modo parecido com um WebService. A diferença é que o acesso à funcionalidades se dá geralmente através de verbos HTTP(GET, POST, PUT...). Se chama WebAPI, por funcionar de modo parecido com uma API do windows, fornecendo dados e objetos de acordo com a demanda. A principal diferença de uma WebAPI e um webservice, é que no caso da WebAPI, não existe referenciamento para paridade de objetos como acontece com um webservice, mas sim os métodos e objetos são chamados via HTTP, permitindo grande escalonabilidade para uso com AJAX(disponÃvel no JQuery).
Em suma, desenvolve-se uma WebAPI utilizando tecnologia .NET. Ela será o serviço de dados, disponibilizando tudo que quiser que seja disponibilizado(cadastros, pesquisas, consultas...) e essa WebAPI pode ser acessada por qualquer tecnologia incluindo uma aplicação WebForms, se desejar, apesar de não recomendar. Com isso, pode ser feito a parte da WebAPI em .NET, a parte de UI com php, asp, java, winforms, VB6(sim, se pode consumir uma WebAPI usando VB6) ou até mesmo HTML puro, e nenhuma dessas tecnologias impede o uso de todos os componentes que citei acima, como JQuery, JQueryUI, DataTables, AngularJS. Se quiser, posso falar com detalhes como tudo isso pode ser posto junto.
Citação::
....só alguns sem noção.
rs...isso existe no muito inteiro....
Citação::
da para montar WebForms tão bom quanto WindowsForm.
Quando fui para WebForm eu queria em enforcar, não conseguir fazer WebForm bonito mas com CSS3, MetroUI CSS [Ô]http://metroui.org.ua/[Ô] fica muito bom.
Quando você unir isso com AngularJS e seus muuuuuuitos controles prontos e transformar seu core de aplicação em uma WebAPI, você vai ficar estupefato com o poder de aplicações web e nunca mais, repito, nunca mais vai querer usar winforms. Com AngularJS, é possÃvel fazer [Ô]templates[Ô] de componentes para reutilização. Por exemplo, uma pesquisa de produtos. Com vários filtros, recursos, ordenações, integrações, e tudo mais, você faz um pequeno template disso e reutiliza o mesmo template em qualquer parte da sua aplicação em que uma consulta de produtos seja relevante. Uma tela de venda, criação de nota, compras, baixa de estoque. é o mesmo conceito de criação de componentes que se tem para WinForms, mas nesse caso, funciona muito bem. Eu uso vários templantes prontos nas minhas aplicações. Consulta de produtos, de clientes, fornecedores... AngularJS facilitou muita coisa. E com os componentes que ele mesmo tem, um exemplo o ng-grid e o ng-bootstrap, aliás a lista de componentes para ele é bem grande...
MYSQL COM UM HOST ONLINE E OUTRO LOCAL SE O ONLINE PARAR O Local comeca a rodar....
Eu agradeço, muito aos colegas!
inclusive ao kerplunk que fez uma detalhada defesa
do uso das tecnologias web no desenvolvimento de
aplicativos. todos os argumentos de kerplunk na minha
opiniao são corretos.no entanto, se o colega kerplunk
me permite,ao nos explicar a variedade de tecnologias web que temos disponiveis,
o amigo expos,a que na minha opiniao é uma desvantagem.
ou seja, para se criar a aplicação web de boa qualidade,é necessário lançar
mão de diferentes tecnologias, depois combinar tudo como se fosse um
grande quebra-cabeças.se você tem mais ou menos 25 anos,não tem filhos,é solteiro e
tem muitas horas a sua disposição para mergulhar na curva de aprendizado para aprender
a lidar com tudo isto,ai tudo bem.
eu sempre gostei de estudar desde cedo.mas, vou ser sincero com meu colega kerplunk.
qualquer homem (ou mulher), casado, com filhos ,que gasta 4 horas em transporte púbico, dificilmente terá tempo para se dedicar
a esta enorme variedade de tecnologias disponiveis hoje,para aplicativos web. principalmente
sabendo que em 2/3 anos , terá de jogar tudo fora e aprender novas tecnologias que vão
surgindo e tornando tudo obsoleto.
irei,fechar o tópico.agradeço as respostas.irei pontuar neste caso o kerplunk,pois apezar da resalva que fiz acima,
deu uma resposta completa,detalhada e bem fundamentada para minha dúvida.
obrigado,pessoal111
inclusive ao kerplunk que fez uma detalhada defesa
do uso das tecnologias web no desenvolvimento de
aplicativos. todos os argumentos de kerplunk na minha
opiniao são corretos.no entanto, se o colega kerplunk
me permite,ao nos explicar a variedade de tecnologias web que temos disponiveis,
o amigo expos,a que na minha opiniao é uma desvantagem.
ou seja, para se criar a aplicação web de boa qualidade,é necessário lançar
mão de diferentes tecnologias, depois combinar tudo como se fosse um
grande quebra-cabeças.se você tem mais ou menos 25 anos,não tem filhos,é solteiro e
tem muitas horas a sua disposição para mergulhar na curva de aprendizado para aprender
a lidar com tudo isto,ai tudo bem.
eu sempre gostei de estudar desde cedo.mas, vou ser sincero com meu colega kerplunk.
qualquer homem (ou mulher), casado, com filhos ,que gasta 4 horas em transporte púbico, dificilmente terá tempo para se dedicar
a esta enorme variedade de tecnologias disponiveis hoje,para aplicativos web. principalmente
sabendo que em 2/3 anos , terá de jogar tudo fora e aprender novas tecnologias que vão
surgindo e tornando tudo obsoleto.
irei,fechar o tópico.agradeço as respostas.irei pontuar neste caso o kerplunk,pois apezar da resalva que fiz acima,
deu uma resposta completa,detalhada e bem fundamentada para minha dúvida.
obrigado,pessoal111
Apenas antes de fechar nao pense em jogar seu estudo fora, wnts anos temos o vb6 em plena atividade? Logo apos entrou o visual studio q esta ai firme e forte faz mais de 10 anos.....
Se pensar em linguagem, com mais ou menos linhas se consegue resultados bem proximos entre vb, c# e afins
Se pensar em linguagem, com mais ou menos linhas se consegue resultados bem proximos entre vb, c# e afins
Tópico encerrado , respostas não são mais permitidas