1 |
Depois deste testimonial :-) quem leu até o fim, vai querer usar a wx. |
2 |
A alguns anos atrás (coloca uns 6 a 7 anos) eu estava querendo iniciar |
3 |
uma aplicação gráfica, e fui orientado a usar wx na época. Vou voltar |
4 |
a pensar nesta alternativa agora para esta minha próxima aplicação. |
5 |
|
6 |
[ ]'s |
7 |
Claudio Pereira |
8 |
|
9 |
2008/10/21 Fabiano - deStilaDo <fabianoengler@×××××.com>: |
10 |
> http://www.wxwidgets.org/ |
11 |
> |
12 |
> Pra mim, definitivamente wx é "A" api programação com interface |
13 |
> gráfica, é muito mais simples do que programar direto em gtk, é muito |
14 |
> fácil fazer layouts bons, funcionais e redimensionaveis baseados em |
15 |
> sizers, e é completamente multiplataforma. |
16 |
> |
17 |
> Se vc compilar no linux, ele usa gtk, (existe uma opção de usar apenas |
18 |
> x11, porém não tem todos os widgets, seria uma opção adicional pra |
19 |
> máquinas muito limitadas que não podem ter nem gtk, como dispositivos |
20 |
> embarcados), se vc compilar no windows, ele usa a win api nativa e não |
21 |
> fica aquela cara nojenta de fake como os aplicativos em java, se |
22 |
> compilar no mac, fica com o look and feel nativo tmb, etc. |
23 |
> |
24 |
> WxWidgets é bem otimizada, escrita em C++, mas tem bindings pra outras |
25 |
> linguagens, sendo a principal python, mas tem pra outras como perl, |
26 |
> java, lua, eiffel, C# (.NET), basic, ruby e até javascript. |
27 |
> |
28 |
> Eu gosto de programar em C++, mas se vc precisa desenvolver algo |
29 |
> rápido, python é a linguagem. |
30 |
> |
31 |
> Quando comecei estudar o desenvolvimento de aplicativos gráficos no |
32 |
> Linux, eu aprendi um pouco de gtk e um pouco de qt, só não me |
33 |
> interessei por tcl/tk que eu tmb acho horrivel, mas achei complicado |
34 |
> de mais e antiprodutivo, muito trabalho pra fazer coisas simples. Aí |
35 |
> trombei com essa api, wxWidgets, fiquei impressionado com a |
36 |
> simplicidade que é trabalhar nela perto das outras opções e com a |
37 |
> qualidade dos programas do resultado final. |
38 |
> |
39 |
> Ainda mais pra mim que fazia tudo no vim e os makefiles na mão, wx |
40 |
> caiu como uma luva. Depois eu achei uma IDE muito boa, Code::Blocks, |
41 |
> ela mesma escrita em wx, e que tem um plugin com um editor visual de |
42 |
> wx (a la delphi/builder) chamado wxSmith. |
43 |
> |
44 |
> Dê uma olhada: http://www.codeblocks.org/ |
45 |
> |
46 |
> Eu testei programar em wx com o eclipse também e o codeblocks que, na |
47 |
> minha opinião, deixou no chinelo, sendo multiplataforma também, mas |
48 |
> muito muito mais rápido. |
49 |
> |
50 |
> E existem outros editores visuais pra wx, como o wxFormBuilder e o |
51 |
> wxGlade que são livres e mais um monte proprietários. Nesses editores |
52 |
> visuais vc pode salvar o layout em XRC que é basicamente uma descrição |
53 |
> xml do layout e carregá-lo em runtime, podendo mudar o layout sem |
54 |
> recompilar o programa. |
55 |
> |
56 |
> Mas eu ainda prefiro fazer os layouts hardcoded pq é muito simples |
57 |
> fazer com sizers e fica bom em todas as plataformas, por exemplo, uma |
58 |
> janela de diálogo simples com um listbox flexivel, com tamanho minimo |
59 |
> e que se redimensione junto com a janela, com dois botoes do lado |
60 |
> direto, de tamanho fixo mas que fiquem centralizados em relacao a |
61 |
> altura do listbox (ou alinhados com o topo se preferir) e em baixo um |
62 |
> "OK" e "Cancelar" de tamanho fixo e que ficam sempre no centro da |
63 |
> janela: eu fiz isso em 7 linhas de código =) |
64 |
> |
65 |
> Pra você ter uma idéia do poder da api, dá uma olhada em alguns |
66 |
> programas feitos com ela: |
67 |
> http://www.wxwidgets.org/about/screensh.htm |
68 |
> |
69 |
> E nessa lista não consta o codeblocks que eu citei a cima, que tem uma |
70 |
> interface muito boa, e nem o que talvez seja um dos programas mais |
71 |
> famosos feito em wx: o aMule http://www.amule.org/screenshots.php |
72 |
> |
73 |
> Veja também alguns screen shots do wxFormBuilder que eu comentei, um |
74 |
> editor visual de wx multi-plataforma escrito em wx: |
75 |
> http://wxformbuilder.org/?page_id=38 |
76 |
> |
77 |
> Outro aspecto positivo também que eu levei muito em conta foi a |
78 |
> documentação, além da referência em que é bem fácil entender todos os |
79 |
> componentes e suas propriedades, tem bastante exemplos, tutorias e uma |
80 |
> wiki mto boa. Pelo menos comparando com gtk e qt eu levei um décimo do |
81 |
> tempo pra fazer os hello worlds... |
82 |
> |
83 |
> Eu, sem nunca ter feitos programas gráficos multi-plataforma (mexido |
84 |
> apenas no delphi/builder a muuuuitos anos atrás) fiz um sistema pra |
85 |
> controle de delivery com banco de dados sqlite e multiplataforma e |
86 |
> coloquei em produção em cerca de um mes!! =) |
87 |
> |
88 |
> Sério, vale muito a pena experimentar, mesmo que vc não vá fazer nada |
89 |
> em multiplataforma, é melhor fazer em wx do que em gtk direto só pela |
90 |
> facilidade, eficiência, documentacao, qualidade e velocidade final. Wx |
91 |
> também é usado por algumas empresas como a Red Hat, NASA, AMD, |
92 |
> Xerox... =) |
93 |
> |
94 |
> |
95 |
> |
96 |
> 2008/10/21 Fernando Farias <fernnf@×××××.com>: |
97 |
>> Podias utilizar ruby+gtk2 simplificaria bem as coisas, mas se vc gosta de |
98 |
>> programa utiliza a biblioteca gtkmm (C++/GTK) é muito bom. |
99 |
>> |
100 |
>> Fernando Farias |
101 |
>> |
102 |
>> 2008/10/21 Diogo Dutra <diogo.comp@×××××.com> |
103 |
>>> |
104 |
>>> Bom cara, se vc quer produtividade eu recomendo vc usar o glade com a |
105 |
>>> libglade... |
106 |
>>> Basicamente oq a libglade faz é o seguinte: |
107 |
>>> Pega um arquivo XML com as marcações de todos os widgets e suas |
108 |
>>> propriedades (widgets são os elementos gráficos, por exemplo botão, |
109 |
>>> label, textentry, etc), e tb atribui um nome de função a cada widget |
110 |
>>> desse para ser sua callback (a função callback é a função q vai ser |
111 |
>>> chamada toda vez q vc executar um determinado evento). |
112 |
>>> Aí no seu código vc só precisa abrir o xml, q a libglade faz |
113 |
>>> praticamente td pra vc! |
114 |
>>> Então vc só precisa basicamente se preocupar em escrever as suas |
115 |
>>> funções callback, isso aumenta mto a produtividade =) |
116 |
>>> |
117 |
>>> Tem um monte de tutorial na internet! |
118 |
>>> |
119 |
>>> Eu recomendo a vc a boa dupla de briga pygtk usando glade, ou seja, |
120 |
>>> python+gtk+glade, na minha opnião é a forma mais produtiva de se ter |
121 |
>>> aplicações gráficas. |
122 |
>>> |
123 |
>>> Mas se vc realmente quiser se aventurar no mundo das aplicações |
124 |
>>> gráficas, eu recomendo vc estudar Evas/Edje, q é uma alternativa mto |
125 |
>>> legal tb! |
126 |
>>> |
127 |
>>> Qualquer coisa estamos aqui =) |
128 |
>>> |
129 |
>>> 2008/10/21 Davi Vidal <davividal@×××××××××××××.br>: |
130 |
>>> > |
131 |
>>> > Boa tarde a todos. |
132 |
>>> > |
133 |
>>> > Estou começando a estudar o desenvolvimento de aplicativos |
134 |
>>> > desktop no Linux e |
135 |
>>> > acabei optando por usar a Gtk2 ao invés da Tcl, Tk e Qt. Se eu for |
136 |
>>> > desenvolver |
137 |
>>> > em Perl, eu perco em portabilidade usando a Qt. Eu acho a Tcl e a Tk |
138 |
>>> > feias. |
139 |
>>> > Por isso optei pela Gtk. |
140 |
>>> > |
141 |
>>> > Qual linguagem vocês recomendam: C++ ou Perl? |
142 |
>>> > Alguém tem qualquer documentação introdutória a esse assunto? |
143 |
>>> > |
144 |
>>> > Eu sou totalmente leigo em aplicações gráficas. Tudo o que eu sei |
145 |
>>> > é dos meus |
146 |
>>> > tempos de Borland C++ Builder, mas quero evitar uma IDE até aprender |
147 |
>>> > como as |
148 |
>>> > coisas funcionam, se possível. |
149 |
>>> > |
150 |
>>> > Resumindo: que linguagem você me recomenda usar? C++ ou Perl? |
151 |
>>> > Você me |
152 |
>>> > recomenda algum site ou livro? |
153 |
>>> > |
154 |
>>> > Obrigado, |
155 |
>>> > -- |
156 |
>>> > Davi Vidal |
157 |
>>> > -- |
158 |
>>> > E-mail: davividal arroba siscompar ponto com ponto br |
159 |
>>> > MSN : davividal arroba msn ponto com |
160 |
>>> > GTalk : davividal arroba gmail ponto com |
161 |
>>> > Skype : davividal |
162 |
>>> > YIM : davi_vidal |
163 |
>>> > ICQ : 138815296 |
164 |
>>> > |
165 |
>>> > |
166 |
>>> > |
167 |
>>> |
168 |
>>> |
169 |
>>> |
170 |
>>> -- |
171 |
>>> ======================= |
172 |
>>> |
173 |
>>> Diogo Dutra Albuquerque |
174 |
>>> |
175 |
>>> Meu Curriculum Lattes: http://lattes.cnpq.br/3624796077679922 |
176 |
>>> |
177 |
>> |
178 |
>> |
179 |
>> |
180 |
>> -- |
181 |
>> "A computer is like air conditioning: it becomes useless when you open |
182 |
>> windows." - Linus Torvalds |
183 |
>> |
184 |
>> Fernando N. N. Farias |
185 |
>> IT Analyst CTIC/UFPA |
186 |
>> Computer Engineer M.Sc. Student |
187 |
>> GERCOM/UFPA Team Member |
188 |
>> Federal University of Pará |
189 |
>> |
190 |
>> |
191 |
> |
192 |
> |
193 |
> |
194 |
> -- |
195 |
> Fabiano. |
196 |
> |
197 |
> |
198 |
|
199 |
|
200 |
|
201 |
-- |
202 |
-- |
203 |
Claudio Pereira aka IndioX |
204 |
GentooBR - http://gentoobr.org |
205 |
mailto: indiox@××××××××.org |
206 |
--------------------------------------------- |
207 |
Gentoo Documentation Member |
208 |
http://gdp.gentoo.org |