Jump to content
pedrotuga

Qual a ferramenta que mais facilita a construcao de um GUI?

Recommended Posts

pedrotuga

Epa... lá está uma coisa que nunca usei mas virá o tempo.

Experimentei fazer um gui com o netbeans... é estupidamente fácil, se bem que não me oriento com programacao DESorietada a objectos. Nunca experimentei o borland ou o da microsoft (o que vem com o visual studio)

Qual é que voces acham a melhor opcao para principiantes que querem por as suas brincadeias num GUIzito?

"botem" aí respostas... é impressao minha ou isto tem andado morninho?

Share this post


Link to post
Share on other sites
UnKnowN

Desculpa a ignorância mas o que é um GUI ? :\

EDIT: Já sei o que é  :cheesygrin:GUI = Graphical User Interface

Vais fazer uma coisa simples certo ? Quando houver resultados posta aí  :cheesygrin:

Share this post


Link to post
Share on other sites
Destineo

Depende o que queres fazer, mas uma das melhores ferramentas é :

Papel e tesoura  😲 ... Não, não é nenhuma aplicação que só correr em Dos ou Mac ou Win Xpto, é mesmo papel e tesoura. Passo a explicar.

Se queres simplesmente fazer um ecrã que terá uns botões e umas janelas de texto para escrever e aparecer, até podes usar algo mais sofisticado, como o Paintbrush ou o Gimp.

No entanto, se quiseres fazer várias janelas, que podem passar de umas para as outras, com vários aspectos/tamanhos e queres ver como ficam as janelas sem ter trabalho de fazer o GUI, e onde podes querer mudar os botões de sitio etc, sugiro que se façam umas pequenas maquetes em papel, onde podes facilmente mudar o aspecto shiftando os bocados de um sitio para o outro.

É claro que isto que estou a explicar é "qual a melhor forma de desenhar um GUI". Com isto poderás ter uma maquete sem teres que estar a perceber como funciona o NetBeans, ou como incluir mais um resource de Web no Visual Studio.

Para depois fazeres mesmo o teu GUI (gerar o código necessário), deves usar a ferramenta mais apropriada à linguagem que queres usar. Se for algo para .NET, não vais usar o Netbeans nem Eclipse (embora consigas com mais ou menos trabalho), e se for para java, a não ser que seja para J++, ou .NETJ ou sei lá o que possam chamar, não usas o Visual Studio.

Portanto, a primeira pergunta é :

Em que linguagem queres desenhar uma GUI ?

E continua-se dai ...


- Destineo

Share this post


Link to post
Share on other sites
pedrotuga

Depende o que queres fazer, mas uma das melhores ferramentas é :

Papel e tesoura  😲 ... Não, não é nenhuma aplicação que só correr em Dos ou Mac ou Win Xpto, é mesmo papel e tesoura. Passo a explicar.

Se queres simplesmente fazer um ecrã que terá uns botões e umas janelas de texto para escrever e aparecer, até podes usar algo mais sofisticado, como o Paintbrush ou o Gimp.

No entanto, se quiseres fazer várias janelas, que podem passar de umas para as outras, com vários aspectos/tamanhos e queres ver como ficam as janelas sem ter trabalho de fazer o GUI, e onde podes querer mudar os botões de sitio etc, sugiro que se façam umas pequenas maquetes em papel, onde podes facilmente mudar o aspecto shiftando os bocados de um sitio para o outro.

É claro que isto que estou a explicar é "qual a melhor forma de desenhar um GUI". Com isto poderás ter uma maquete sem teres que estar a perceber como funciona o NetBeans, ou como incluir mais um resource de Web no Visual Studio.

Para depois fazeres mesmo o teu GUI (gerar o código necessário), deves usar a ferramenta mais apropriada à linguagem que queres usar. Se for algo para .NET, não vais usar o Netbeans nem Eclipse (embora consigas com mais ou menos trabalho), e se for para java, a não ser que seja para J++, ou .NETJ ou sei lá o que possam chamar, não usas o Visual Studio.

Portanto, a primeira pergunta é :

Em que linguagem queres desenhar uma GUI ?

E continua-se dai ...

Carago.. não percebi nada.

Essa do papel e tesoura... supostamente os editores graficos de gui servem para fazer o mesmo que o papel e a tesoura mas sem papel e tesouras... só precisas do teu pc.

Depois pareceu-me que és demasiado agarrado as tecnologias microsoft.

o que queres dizer com "algo para .NET".

Aliás.... acho k isso do .NET anda a confundir o pessoal todo. Alguem me explicao o que é o .NET

é o nome do IDE mais recente da microsoft, ou é o nome da microsoft, ou é só uma ferramente que vem com o ide da microsoft? Acho que o pessoal se confunde todo.. cada pessoa me diz uma coisa diferente

Agora... claro que a pergunta nao pode ser... em que linguagem desenhar o GUI. A pergunta é exactamente a oposta a essa.

Qual a melhor forma? incluindo isso a libguagem e a aplicacao que gerará o código.

O objectivo desta thread é que o ppl partilhe as experiencias e que diga o que gosta mais, pesando a linguagem preferida com a poupança de esforço proporcionada pela ferramenta de geração de GUI.

Share this post


Link to post
Share on other sites
Destineo

Carago.. não percebi nada.

Hehe, as vezes tenho esse efeito :thumbsup:

Por acaso até nem estou "agarrado" às tecnologias Microsoft, mas estou mais virado para Java. Estive durante MUITOS anos, "agarrado" sim, e usei INTENSIVAMENTE o resource editor do Microsoft Visual Studio 6.0.

Em relação a criar um GUI numa ferramenta, é claro que precisas de saber em que linguagem queres fazer esse GUI, porque, por exemplo, criar um GUI no visual studio, gera-te código para Visual C++ (supondo que o projecto é de C++) para poderes interagir com esse GUI. Por esta razão é que eu disse que não existe, pelo menos não conheço, nenhuma ferramenta no mercado que onde tu crias um GUI e depois dizes que queres usar isso num projecto Java ou C++.

.NET é uma "plataforma" que te permite teres programas em várias linguagens, como por exemplo C#, VB.NET etc, todos a falarem entre si de uma forma fácil. Permitindo-te assim criares um projecto MAIOR que seja um aglomerado de outros projectos feitos em linguagens diferentes. No entanto permitindo que trabalhes nesses diferentes projectos dentro do mesmo IDE (Integrated Development Environment - Ambiente Integrado de Desenvolvimento). Ou seja, abres o Visual Studio, e podes abrir e trabalhar com ficheiro VB.NET ou C# sem mudar de aplicação.

Agora... claro que a pergunta nao pode ser... em que linguagem desenhar o GUI. A pergunta é exactamente a oposta a essa.

Qual a melhor forma? incluindo isso a libguagem e a aplicacao que gerará o código.

O objectivo desta thread é que o ppl partilhe as experiencias e que diga o que gosta mais, pesando a linguagem preferida com a poupança de esforço proporcionada pela ferramenta de geração de GUI.

Não existe uma melhor forma de desenhar uma GUI, sem saber em que linguagem vais programar.

Ninguém se chega ao pé de ti e diz ... preciso de um GUI, eles chegam-se ao pé de ti e dizem, preciso de uma aplicação que faca ISTO, AQUILO e ACOLOUTRO. Tu depois tens de ver o que vais fazer, com que linguagem (porque algumas linguagens são melhores que outras para resolver certos problemas) e só ai é que podes pensar em desenhar o GUI numa aplicação que te vai gerar o código para essa mesma GUI.

As aplicações de desenho de GUIs costumam estar integradas nos IDEs, ou então existem plugins para te permitir ter a vida facilitada para os desenhares. O Eclipse por exemplo não tem nenhum editor de GUI por base, mas existem plugins para isso.


- Destineo

Share this post


Link to post
Share on other sites
pedrotuga

Pá mas alguem aki já criou 1 GUI ? :|

Já criei guis no matlab e já experimentei em java com o netbeans e funcionou, mas nunca fiz uma aplicacao digna desse nome com o gui.

Destineo,

chegam ao pé de mim e dizem: faz uma aplicacao que faca isto e que o faca em modo gráfico. Como só programar o gui dá muito trabalho acho k a facilidade com que este se constroi pode entrar como factor de decisao sem problema nenhum. De resto ninguem programa apenas uma linguagem.

Tipo... o gui pode ser facilmente criado com esta ferramenta... mas depois o código é mais facil numa linguagem que ela nao suporta...

Share this post


Link to post
Share on other sites
pedrotuga

Pah posta aí ScreenShots do teu GUI :| agora fikei interessado :D

Epa... o guide do matlab dá para criares guis em segundos... a porra é que só correm no matlab, nao correm em sistema operativo... topas?

Já ouvi falar em compiladores de matlab... de qq modo o matlab não serve para tudo.

anyway... aqui vai o screenshot para o mr céptico. :thumbsup:

guimatlab2od.th.png

Share this post


Link to post
Share on other sites
Destineo

Há aqui qualquer coisa que me está a escapar, ou então algo que não estou a perceber ...

GUI = Graphical User Interface, ou seja, uma interface grafica para o utilizador poder interagir com uma aplicação  ... Um GUI é "desenhado" numa aplicação X para ser utilizado pela linguagem Y. Não EXISTE nenhuma ferramenta que desenha GUIs pura e simplesmente. O que tu fizeste no Matlab foi desenhar um GUI para ser usado no MATLAB usando a linguagem do MATLAB.

Epa... o guide do matlab dá para criares guis em segundos... a porra é que só correm no matlab, nao correm em sistema operativo... topas?

Já construi inumeros GUIs, em Java e Visual C++ (e também podes considerar páginas HTML ou PHP como tendo GUIs), e o que tu vês no "editor" de GUIs é no fundo uma representação gráfica do código (Java ou Visual C++) que dá origem à GUI. O que tu vês no Matlab é uma interface para um programa feito no Matlab. Não podes usar isso como GUI para uma aplicação Java ou outra linguagem qualquer.

Um GUI não é nada sem uma linguagem por baixo ... E cada linguagem tem as suas ferramentas para construir GUIs.

Para terminar, fica aqui um link de um gajo que tem um livro fantastico sobre desenvolvimento de software chamado Joel On Software. Este link fala exactamente sobre a construção de GUIs e os problemas à volta disso :

http://www.joelonsoftware.com/uibook/fog0000000249.html


- Destineo

Share this post


Link to post
Share on other sites
brink@ero

Pah posta aí ScreenShots do teu GUI :| agora fikei interessado :D

Epa... o guide do matlab dá para criares guis em segundos... a porra é que só correm no matlab, nao correm em sistema operativo... topas?

Já ouvi falar em compiladores de matlab... de qq modo o matlab não serve para tudo.

anyway... aqui vai o screenshot para o mr céptico. :thumbsup:

guimatlab2od.th.png

A base do matlab é c++, por isso qdo tens algo em matlab podes converter isso para C++\C e compilar.

http://www.codeproject.com/samples/mexFunction.asp

Share this post


Link to post
Share on other sites
pedrotuga

Já ouvi falar em compiladores de matlab... de qq modo o matlab não serve para tudo.

anyway... aqui vai o screenshot para o mr céptico. :thumbsup:

guimatlab2od.th.png

A base do matlab é c++, por isso qdo tens algo em matlab podes converter isso para C++\C e compilar.

http://www.codeproject.com/samples/mexFunction.asp

Conheces algum compilador de matlab?

é que aquilo nao é um compilador, é um interpretador de comandos.. nao permite por exemplo usar recursividade.

Aquilo pode ser maioritariamente escrito em C++ mas aquilo foi inicialmente escrito em fortran, e isso até se nota bem.

Mas tamos a afastar-nos do tema inicial

Share this post


Link to post
Share on other sites
teckV

Um GUI é apenas uma componente da programação, o Layout, o Layer de Apresentação na estrutura N-Tier...

N-Tier refere-se aos diversos niveis de programação (antes eram 3 mas agora são N - um valor abstrato, podem ser 2,3,50, etc) , isto é, para melhor desenvolver aplicações destribuidas (correm divididas em várias maquinas, varias redes ou não) e para melhor facilitar o trabalho de equipe (separa-se claramente onde cada um mexe e fexa-se tudo em blocos que comunicam entre si segundo padrões pre-definidos)

As linhas divisórias não são claras e têm muito haver com o toque pessoal das equipes de dev...

Data Layer - Objectos que acedem a bases de dados - Podem ser classes personalizadas para gerir o acesso às bases de dados, mas eu hoje em dia considero o OleDB, o ADO e todas essas tretas como Data Layer, pois abstraiem toda a manipulação de dados... Algumas das coisas que se incluiam no Data Layer incluem-se hoje no Business Layer (Nivel de Negócio)

Bussiness Layer (Nivel de Negocio) - Aqui inserem-se todas as regras de manipulação dos dados, as operações a fazer com os dados, os calculos, etc - Este layer comunica com o data layer para receber e introduzir dados e com o Presentation Layer para apresentar os resultados da manipulação desses dados.

Presentation Layer - Nivel de Apresentação (Layout) - Aqui está o GUI, a forma como se apresenta a informação e como o user pode manipular a mesma.

Isto é só para entenderes o que é um GUI e podes ter um GUI numa linguagem e todo o resto da aplicação noutra... trabalho em apps que operam sobre diversas linguagens e até tecnologias como OS400, Unix e Windows  - Um exemplo são as aplicações Home Banking

OK - Queres desenhar layouts... na web é em HTML, DHTML e CSS - Procura mais info sobre isso - Para editar estas coisas existem muitissimas ferramentas à escolha do gosto de cada um...

Mas eu acho que quem quer mexer nestas coisas deve no minimo saber mexer em dois IDE - Integrated Dev. Interface (um GUI para programar):

O Visual Studio (sim, a nivel profissional é muito importante mexer nessa coisa) É muito simples e separa de uma forma muito boa os diversos niveis de desenvolvimento,  apesentação (para fazer GUI´s) e todos os outros. No mesmo IDE podes ter o HTML, o CSS e o códgio C# ou VB... muito fixe apesar de ser M$ - O melhor para começar e até têm montes de wizards que fazem quase tudo sozinho, basta juntar cliques (usem isto só para brincar, nunca em produção)

O Eclipse - http://www.eclipse.org/ -

Eclipse has formed an independent open eco-system around royalty-free technology and a universal platform for tools integration. Eclipse based tools give developers freedom of choice in a multi-language, multi-platform, multi-vendor environment. Eclipse provides a plug-in based framework that makes it easier to create, integrate and utilize software tools, saving time and money. By collaborating and exploiting core integration technology, tool producers can leverage platform reuse and concentrate on core competencies to create new development technology. The Eclipse Platform is written in the Java language and comes with extensive plug-in construction toolkits and examples. It has already been deployed on a range of development workstations including Linux, HP-UX, AIX, Solaris, QNX, Mac OS X and Windows based systems. A full description of the Eclipse community and white papers documenting the design and use of the Eclipse Platform are available at http://www.eclipse.org.

mas a vida não acaba aqui.. que tal procurarem no google por +GUI +dev +(linguagem de escolha) +IDE....

eu pessoalmente aconselho a começarem com o Python e podem usar o Eclipse, o Boa Constructor, etc

dá uma vista de olhos neste post

http://www.portugal-a-programar.pt/index.php?showtopic=495

inté

Share this post


Link to post
Share on other sites
pedrotuga

Carago... claro que um gui tem que ser feito numa linguagem qq e depois compilado.

Agora..."um gui sem uma linguagem de programação n é nada"... esta afirmação não está correcta nem incorrecta, mas acho k não faz sentido.

O gui só te aparece depois do o compilares... e aí já não está na linguagem em que foi escrito. Uma ferramenta de construção de um gui gera código automaticamente que depois é compilado de forma a que o SO mostre um gui.

Agora... vamos ver se percebem o que está em discussão aqui:

Imaginemos que eu tenho um projecto de um programa que possa correr no windows ( o uso de javaRE, gtk, etc etc incluidos) e que estou na fase inicial e que ainda não escolhi qual a linguagem que vou usar. Vamos supor: um cliente de FTP por exemplo.

A pergunta é: na vossa opiniao quel é a forma mais facil e eficiente de fazer um cliente de FTP para windows usando uma ferramenta que me gere o código para o GUI?

A resposta deve incluir a linguagem utilizada, as ferramentas de desenvolvimento e tudo o que é necessário par a aplicação correr.

Dêm a vossa opiniao. É dessa que estou à procura.

Sim... eu sei bem o que é um IDE, um compilador, um GUI, uyma linguagem de prog, etc etc. Parem com isso que nao foi isso que perguntei e para isso há outros tópicos. Não me leve a mal

Share this post


Link to post
Share on other sites
teckV

tas muito confuso o que dificulta ajudar-te... queres um wizard que faça o código para ti?...

ou queres arranjar na net o código fonte completo de uma aplicação?

ou queres programar como todos os outros programadores fazem?

Agora..."um gui sem uma linguagem de programação n é nada"... esta afirmação não está correcta nem incorrecta, mas acho k não faz sentido.

tendo em conta que estamos todos a falar de programação e não wizards de Access, etc, a afirmação está correcta... Um GUI é um interface para um aplicação e não sei nenhuma forma de criar aplicações sem programar... como estou sempre a aprender gostava que explicasses como se faz uma app sem programar... (não estou interessado em wizards)

O gui só te aparece depois do o compilares...

muito errado.. HTML cria GUI´s e não é compilado (entre muitas outras)

se sabes programar sobre SOCKS com o protocolo FTP acho estranho não saberes programar um GUI... ou será que fazes ideia do que é criar um programa cliente FTP?

pelo que me parece queres fazer programação sem programar... hummm... um objectivo muito interessante...

se quiseres fazer GUI como um programador a resposta está dada nos posts em cima...

se só queres chatear.. hummm.. má ideia...

look at the window

Share this post


Link to post
Share on other sites
pedrotuga

assim não gosto de discutir.

Ia continuar, mas assim não. acho que nao há necessidade disto.

Share this post


Link to post
Share on other sites
Dabubble

Bem depende muito da linguagem que queres utilizar.

Se estas a trabalhar com Java aconselho muuuuuito usares o SWT Designer que te ajuda a criar GUI's com muito bom aspecto (quase nativo apesar de ser em Java) com o apoio da Lib SWT que e a lib utilizada para fazer o Eclipse, um dos mais conhecidos IDE's para Java (o DWT Designer e um plugin para o Eclise). Se pretendes outra linguagem de programação o Visual Studio tb faz GUI's muito bons desde que depois tenhas paciencia para descodificar o codigo que esta por tras.

Claro que se estas a trbalhar com uma aplicacao real (e ainda por cima uma aplicacao destribuida como um cliente FTP) vais passar muito mais tempo a tratar da camada de comunicacao do que do GUI mas acho que estas ferramentas te podem ajudar...

Share this post


Link to post
Share on other sites
elementsky

Podem me explicar uma coisa?, eu comecei por aprender PASCAL, na escola, e actualmente estou a aprender VB6. Ora como a maioria de nós se não todos sabemos o VB6 é uma linguagem muito fácil de aprender, principalmente(na minha opinião) por ser visual, eu queria compreender como é que com programas do tipo do dev c++ posso construir um programa em janelas, como o faço com qualquer programa do VISUAL STUDIO?

Share this post


Link to post
Share on other sites
Dabubble

O que acontece e que programas como visual studio geram o codigo enquanto tu desenhas as forms todas bunitinhas, o codigo gerado e normalmente uma barafunda. Com programas como DevC++ tens de sabes utilizar cada um dos componentes e escrever tu o codigo todo, ams se souberres trabalhar bem assim o resultado e tao com ou melhor.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.