website view pt/doc/handbook/development.html @ rev 551

Fix c6b2d9c4e031, pt: localy browseable (with file://)
author Pascal Bellard <pascal.bellard@slitaz.org>
date Mon Oct 26 10:30:55 2009 +0100 (2009-10-26)
parents c6b2d9c4e031
children
line source
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt" lang="pt">
4 <head>
5 <title>Manual SliTaz (pt) - Desenvolvimento</title>
6 <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
7 <meta name="description" content="slitaz portuguese handbook" />
8 <meta name="expires" content="never" />
9 <meta name="modified" content="2008-07-16 23:00:00" />
10 <meta name="publisher" content="www.slitaz.org" />
11 <meta name="author" content="Christophe Lincoln"/>
12 <link rel="shortcut icon" href="favicon.ico" />
13 <link rel="stylesheet" type="text/css" href="book.css" />
14 </head>
15 <body bgcolor="#ffffff">
17 <!-- Header and quick navigation -->
18 <div id="header">
19 <div align="right" id="quicknav">
20 <a name="top"></a>
21 <a href="multimedia.html">Multimídia</a> |
22 <a href="index.html">Conteúdo</a>
23 </div>
24 <h1><font color="#3E1220">Manual SliTaz (pt)</font></h1>
25 </div>
27 <!-- Content. -->
28 <div id="content">
29 <div class="content-right"></div>
31 <h2><font color="#DF8F06">Desenvolvimento</font></h2>
33 <ul>
34 <li><a href="development.html#about">Sobre Desenvolvimento</a></li>
35 <li><a href="development.html#shell-scripts">SHell scripts</a> - #!/bin/sh</li>
36 <li><a href="development.html#dialog">Dialog</a> - Interface Gráfica para o console.</li>
37 <li><a href="development.html#geany">Geany</a> - IDE ou "Integrated Development Environment"
38 (Ambiente de Desenvolvimento Integrado).</li>
39 <li><a href="development.html#perl">Perl ou Microperl</a> - Scripts escritos em Perl .</li>
40 <li><a href="development.html#python">Python</a> - A linguagem python.</li>
41 <li><a href="development.html#ruby">Ruby</a> - A linguagem Ruby.</li>
42 <li><a href="development.html#toolchain">Toolchain</a> - Bibliotecas, compilador C e
43 ferramentas.</li>
44 </ul>
46 <a name="about"></a>
47 <h3>Sobre Desenvolvimento</h3>
48 <p>
49 O SliTaz fornece ferramentas de desenvolvimento para web design, edição de
50 scripts e código fonte. No website, a página
51 <a href="http://www.slitaz.org/pt/devel/">Desenvolvimento</a> traz informações
52 gerais sobre os desenvolvedores e as oportunidades de envolvimento.
53 </p>
55 <a name="shell-scripts"></a>
56 <h3>SHell scripts</h3>
57 <p>
58 Escrever SHell scripts é a forma mais fácil de se começar a escrever código:
59 eles podem prover resultados rápidos e os únicos pré-requisitos são saber abrir
60 o terminal e usar um editor de texto como o Nano, o Leafpad ou o Geany. SHell
61 scripts são capazes de fazer muitas coisas num sistema GNU/Linux - iniciar o
62 sistema, fazer backups, executar tarefas repetitivas, mostrar informações sobre
63 o sistema, criar ou modificar arquivos, etc. Em um SHell script pode-se usar
64 variáveis, funções ou chamados para incluir um arquivo. Note que você pode
65 nomear um script como quiser e a extensão .sh é largamente usada.
66 </p>
67 <h4>Crie um SHell script</h4>
68 <p>
69 Antes de iniciar um novo SHell script, deve-se prestar atenção ao interpretador
70 usado. A maioria dos SHell scripts usam o interpretador <code>/bin/sh</code> por
71 este ser mais portável, porém há muitos scripts que utilizam o
72 <code>/bin/bash</code> e este deve estar instalado no sistema. Para um SHell
73 script funcionar, ele deve ser tornado executável pelo usuário atual mudando-se
74 as permissões na linha de comando usando o comando <code>chmod</code>.
75 Para criar um script <code>script.sh</code> e torná-lo executável:
76 </p>
77 <pre>
78 $ touch script.sh
79 $ chmod +x script.sh
80 </pre>
81 <p>
82 Agora que você possui um arquivo executável, pode editá-lo. Pode-se optar por
83 continuar no terminal e usar o editor Nano (ctrl + x para salvar &amp; sair) ou
84 usar o IDE Geany para a edição:
85 </p>
86 <pre>
87 $ nano script.sh
88 Ou :
89 $ geany script.sh &amp;
90 </pre>
91 <p>
92 Exemplo de um script que contem a variável <code>NAME</code> e mostra
93 seu valor com o comando <code>echo</code>:
94 </p>
95 <pre class="script">
96 #!/bin/sh
98 NAME="kayam"
100 echo "$NAME is nice."
102 </pre>
103 <p>
104 Uma vez criado/modificado seu script <code>script.sh</code>, você pode
105 executá-lo para ver o resultado:
106 </p>
107 <pre>
108 $ ./script.sh
109 </pre>
110 <p>
111 Apenas demos uma breve introdução sobre SHell scripts. A internet é cheia de
112 informações que você pode encontrar se deseja conhecer o tema mais profundamente.
113 </p>
115 <a name="dialog"></a>
116 <h3>Dialog</h3>
117 <p>
118 O Dialog pode criar Interfaces Gráficas para ferramentas de linha de comando
119 como o 'tazkmap'. Os arquivos de configuração encontram-se em /etc/dialogrc e/ou
120 no diretório ~/dialogrc de cada usuário. Abaixo um simples exemplo de uso do
121 Dialog via um console ou terminal:
122 </p>
123 <pre>
124 $ dialog --title "Hello $USER" \
125 --msgbox "Message made by dialog." 5 54
126 </pre>
127 <p>
128 Pode-se encontrar vários scripts de exemplo no diretório /sample contido no
129 código fonte do Dialog, que pode ser obtido no endereço:
130 <a href="http://invisible-island.net/dialog/dialog.html">
131 invisible-island.net/dialog/dialog.html</a>. Baixe o código fonte e descompacte:
132 </p>
133 <pre>
134 $ wget ftp://invisible-island.net/dialog/dialog.tar.gz
135 $ tar xzf dialog.tar.gz
136 </pre>
138 <a name="geany"></a>
139 <h3>IDE Geany</h3>
140 <p>
141 Geany é um IDE ou Ambiente de Desenvolvimento Integrado (Integrated Development
142 Environment). Este aplicativo é simples, rápido e leve, oferecendo coloração de
143 sintaxe, abas e auto-completar. Foi usado para criar esta página e a maioria
144 da documentação encontrada no website (sendo o Nano usado também para algumas
145 partes).
146 </p>
147 <h4>Executar o Geany</h4>
148 <p>
149 Você encontra o Geany no menu --&gt; Development --&gt; Geany.
150 Após sua primeira execução, você pode ajustar suas preferências através da
151 opção de menu Edit --&gt; Preferences. Pode-se também iniciá-lo pelo terminal:
152 </p>
153 <pre>
154 $ geany &amp;
155 </pre>
156 <p>
157 Nota: ao compilar código fonte, o script <code>./configure</code> oferece a
158 opção: <code>-enable-the-force</code>... Que você pode usar se sentir a
159 necessidade de se tornar um Guerreiro Jedi!
160 </p>
162 <a name="perl"></a>
163 <h3><font color="#6c0023">Perl ou Microperl - Escreva/use scripts Perl</font></h3>
164 <p>
165 No SliTaz você pode usar a poderosa linguagem de scripts Perl via os binários
166 <code>perl</code> ou <code>microperl</code>. O Microperl é uma versão reduzida
167 do Perl: compilado a partir dos fontes oficiais, os scripts feitos nesta versão
168 são compatíveis com a versão completa do Perl.
169 Um dos pontos fortes do Perl é sua portabilidade - pode-se usá-lo em qualquer
170 sistema. Outro ponto de destaque é o fato de esta ser uma linguagem interpretada,
171 o que significa que o código não precisa ser compilado e pode ser usado
172 diretamente. No SliTaz tanto o Perl quanto o Microperl não são instalados por
173 padrão no LiveCD. Pode-se, porém, reconstruir a iso ou instalá-los pelo
174 gerenciador de pacotes. Nota: o Microperl possui apenas 1 Mb e não fornece
175 módulo algum:
176 </p>
177 <pre>
178 # tazpkg install perl
179 Ou :
180 # tazpkg install microperl
181 </pre>
183 <h4>Hello world!</h4>
184 <p>
185 O propósito deste script é mostrar na tela a frase <em>Hello World</em>. Você
186 pode começar criando o arquivo e tornando-o executável pela linha de comando e
187 então editá-lo com o IDE Geany. Note que o script é chamado <code>hello.pl</code>,
188 mas você pode chamá-lo como quiser ou não usar a extensão <code>.pl</code>:
189 </p>
190 <pre>
191 $ touch hello.pl
192 $ chmod +x hello.pl
193 $ geany hello.pl &amp;
194 </pre>
195 <p>
196 A primeira linha de um script Perl define o caminho para o interpretador Perl,
197 que geralmente se encontra em <code>/usr/bin/perl</code>. Para mostrar qualquer
198 texto, use o comando <code>print</code>. Deve-se notar que o Perl é "case
199 sensitive" (diferencia minúsculas de maiúsculas) e que cada linha de código
200 sempre deve terminar com um ponto-e-vírgula. Código de exemplo (você pode
201 copiar e colar):
202 </p>
203 <pre class="script">
204 #!/usr/bin/perl
205 #
207 print "Hello World!\n";
209 </pre>
210 <p>
211 Para executar e testar o script:
212 </p>
213 <pre>
214 $ ./hello.pl
215 </pre>
217 <h4>Scripts CGI e o Perl</h4>
218 <p>
219 Scripts CGI são projetados para mostrar páginas web geradas dinamicamente. A
220 linguagem Perl associada a um servidor web LightTPD permite a utilização de
221 scripts CGI em sua pasta pessoal de páginas web (public) ou em um host virtual.
222 O Perl é suficientemente adaptado à Web 2.0 e pode gerar páginas xHTML.
223 No SliTaz você deve possuir o Perl ou o Microperl instalados e o
224 <a href="web-server.html#cgi-perl">servidor LightTPD</a> configurado antes de
225 começar a codificar scripts CGI em Perl. Note que por padrão SHell scripts (.sh)
226 podem ser colocados na pasta /cgi-bin/.
227 </p>
228 <p>
229 Uma vez configurado o servidor, você pode colocar seu CGI em na sua pasta
230 <code>$HOME/Public/cgi-bin</code> usando as extensões <code>.pl</code> ou
231 <code>.cgi</code> e visualizá-los localmente ou remotamente. Exemplo de um script
232 CGI escrito em Perl:
233 </p>
234 <pre class="script">
235 #!/usr/bin/perl
236 #
237 print "content-type : text/html\n\n";
239 print "Hello World!\n";
241 </pre>
243 <a name="python"></a>
244 <h3>Python</h3>
245 <p>
246 A linguagem de programação Python está disponível como um pacote instalável.
247 Uma vez instalada, você pode criar seus próprios scripts/programas e usar
248 aplicações CGI juntamente com o servidor web LightTPD, atentando para
249 <a href="web-server.html#cgi-python">configurar o servidor</a> corretamente.
250 Os repositórios Mercurial oficiais do SliTaz são providos por uma interface web
251 escrita utilizando-se GCI/Python - algo perfeito para um produto confiável e
252 robusto. Para instalar o pacote <code>python</code> com o tazpkg:
253 </p>
254 <pre>
255 # tazpkg get-install python
256 </pre>
258 <a name="ruby"></a>
259 <h3>Ruby</h3>
260 <p>
261 A linguagem de programação Ruby está disponível como um pacote instalável. Ela
262 é (segundo o website oficial): "Uma linguagem de programação dinâmica e de
263 código fonte aberto focada em produtividade e simplicidade. Possui uma sintaxe
264 elegante que é natural de se ler e fácil de escrever". O Ruby trata exceções,
265 suporta Programação Orientada a Objetos (Object-Orientated Programming - OOP),
266 possui gerenciamento de memória automático e é altamente portável. Para instalar
267 o pacote <code>ruby</code> com o tazpkg:
268 </p>
269 <pre>
270 # tazpkg get-install ruby
271 </pre>
273 <a name="toolchain"></a>
274 <h3>Toolchain - Bibliotecas, compilador C e ferramentas</h3>
275 <p>
276 Para compilar programas a partir dos fontes ou o seu próprio código, você
277 precisa de pelo menos o <em>toolchain</em> básico, constituido do Binutils,
278 Glibc, compilador C, <em>headers</em> (cabeçalhos) do Kernel e o utilitário
279 Make. Note que o <em>toolchain</em> é usado pelos desenvolvedores do SliTaz
280 para compilar todo os sistema a partir dos fontes. Para instalar o meta-pacote
281 e todas suas dependências:
282 </p>
283 <pre>
284 # tazpkg get-install slitaz-toolchain
285 </pre>
286 <p>
287 A instalação do "toolchain" permite agora compilar aplicações básicas em modo
288 console sem problemas utilizando o SHell Ash do Busybox, mas alguns outros pacotes
289 não compilam sem o Bash. O GNU Bash está disponível como um
290 <a href="system-admin.html#bash">pacote</a> assim como várias outras ferramentas
291 de desenvolvimento como o Flex, o M4, bison ou o Pkg-config. Se você procura
292 pelo pkg-config, por exemplo:
293 </p>
294 <pre>
295 $ tazpkg search pkg-config
296 </pre>
297 <p>
298 Se você desejar compilar aplicativos que se utilizem da biblioteca Ncurses, deve
299 instalar o pacote <code>ncurses-dev</code>. Note que este pacote também
300 fornece uma variedade de pequenos programas como o <code>tic</code> ou o
301 <code>tack</code>:
302 </p>
303 <pre>
304 $ tazpkg search ncurses
305 </pre>
307 <!-- End of content -->
308 </div>
310 <!-- Footer. -->
311 <div id="footer">
312 <div class="footer-right"></div>
313 <a href="development.html#top">Topo da Página</a> |
314 <a href="index.html">Conteúdo</a>
315 </div>
317 <div id="copy">
318 Copyright &copy; 2008 <a href="http://www.slitaz.org/pt/">SliTaz</a> -
319 <a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>;<br />
320 Documentation is under
321 <a href="http://www.gnu.org/copyleft/fdl.html">GNU Free Documentation License</a>
322 and code is <a href="http://validator.w3.org/">valid xHTML 1.0</a>.
323 </div>
325 </body>
326 </html>