Documento de padrões de codificação

Tamanho: px
Começar a partir da página:

Download "Documento de padrões de codificação"

Transcrição

1 Documento de padrões de codificação CAPÍTULO 6 NESTE CAPÍTULO Introdução Regras gerais de formatação sobre o código-fonte Object Pascal Arquivos Formulários e módulos de dados Pacotes Componentes O texto completo deste capítulo aparece no CD-ROM que acompanha este livro. EDITORA CAMPUS DELPHI CAPÍTULO 1 2ª PROVA

2 Introdução Este documento descreve os padrões de codificação para a programação em Delphi, conforme usados no Guia do Programador Delphi 5. Em geral, o documento segue as orientações de formatação constantemente não-pronunciadas, usadas pela Borland International com algumas poucas exceções. A finalidade de incluir este documento no Guia do Programador Delphi 5 é apresentar um método pelo qual as equipes de desenvolvimento possam impor um estilo coerente para a codificação realizada. A intenção é fazer isso de modo que cada programador em uma equipe possa entender o código sendo escrito pelos outros programadores. Isso é feito tornando-se o código mais legível através da coerência. Este documento de maneira alguma inclui tudo o que poderia existir em um padrão de codificação. No entanto, ele contém detalhes suficientes para que você possa começar. Fique à vontade para usar e modificar esses padrões de acordo com as suas necessidades. No entanto, não recomendamos que você se desvie muito dos padrões utilizados pelo pessoal de desenvolvimento da Borland. Recomendamos isso porque, à medida que você traz novos programadores para a sua equipe, os padrões com que eles provavelmente estarão mais acostumados são os da Borland. Como a maioria dos documentos de padrões de codificação, este documento será modificado conforme a necessidade. Portanto, você encontrará a versão mais atualizada on-line, em Este documento não aborda padrões de interface com o usuário. Esse é um tópico separado, porém igualmente importante. Muitos livros de terceiros e documentação da própria Microsoft aborda tais orientações, e por isso decidimos não replicar essas informações, mas sim indicarmos a Microsoft Developers Network e outras fontes onde essa informação se encontra à sua disposição. Regras gerais de formatação sobre o código-fonte Endentação A endentação será de dois espaços por nível. Não salve caracteres de tabulação nos arquivos-fonte. O motivo para isso é que os caracteres de tabulação são expandidos para diferentes larguras, conforme as diferentes configurações dos usuários e de acordo com os utilitários de gerenciamento de código-fonte (impressão, arquivamento, controle de versão etc.). Você pode desativar o salvamento de caracteres de tabulação desmarcando as caixas de seleção Use Tab Character (usar caracter de tabulação) e Optimal Fill (preenchimento ideal) na página General da caixa de diálogo Editor Properties (propriedades do editor), acessada por meio de Tools, Editor Options. Margens As margens serão definidas em 80 caracteres. Em geral, o código-fonte não deve exceder esse limite, com a exceção para terminar uma palavra. No entanto, essa orientação é um tanto flexível. Sempre que possível, as instruções que excedem uma linha devem ser quebradas após uma vírgula ou um operador. Quando uma instrução é quebrada, ela deve ser recuada em dois caracteres à direita do início da linha da instrução original. Par..end A instrução aparece na sua própria linha. Por exemplo, a primeira linha a seguir está incorreta; a segunda linha está correta: for I := 0 to 10 do // Errado, na mesma linha de for for I := 0 to 10 do // Correto, em uma linha separada Uma exceção a essa regra é quando a instrução aparece como parte de uma cláusula else. Veja 2 um exemplo:

3 if alguma instrução = then end else AlgumaOutraInstrução; A instrução end sempre aparece em sua própria linha. Quando a instrução não fizer parte de uma cláusula else, a instrução end correspondente sempre será recuada para corresponder à sua parte. Object Pascal Parênteses Nunca deverá haver espaço em branco entre um parêntese inicial e o caractere seguinte. Da mesma forma, nunca deverá haver espaço em branco entre um parêntese final e o caractere anterior. O exemplo a seguir ilustra o espaçamento incorreto e correto com relação aos parênteses: CallProc( AParameter ); // incorreto CallProc(AParameter); // correto Nunca inclua parênteses desnecessários em uma instrução. Os parênteses só devem ser usados onde for necessário para gerar o significado desejado no código-fonte. Os exemplos a seguir ilustram o uso incorreto e correto: if (I = 42) then // incorreto parênteses desnecessários if (I = 42) or (J = 42) then // correto parênteses necessários Palavras reservadas e palavras-chave As palavras reservadas e as palavras-chave da linguagem Object Pascal sempre deverão estar completamente em minúsculas. Procedimentos e funções (rotinas) Nomeação/formatação Os nomes de rotinas sempre deverão começar com uma letra maiúscula e utilizar maiúsculas nas palavras intermediárias, para melhorar a legibilidade. A seguir vemos um exemplo de um nome de procedimento formatado incorretamente: procedure estenomederotinaestáformatadoincorretamente; Agora veja um exemplo de um nome de rotina com iniciais maiúsculas apropriadas: procedure EsteNomeDeRotinaEstáMuitoMaisLegível; As rotinas deverão receber nomes significativos para o seu conteúdo. As rotinas que causam uma ação terão como prefixo o verbo da ação. Veja um exemplo: procedure FormatarDiscoRígido; As rotinas que definem valores de parâmetros de entrada deverão ter como prefixo a palavra set (definir): procedure SetNomeUsuário; As rotinas que recuperam um valor deverão ter como prefixo a palavra get (obter): function GetNomeUsuário: string; 3

4 Parâmetros formais Formatação Onde for possível, os parâmetros formais do mesmo tipo deverão ser combinados em uma instrução: procedure Foo(Param1, Param2, Param3: Integer; Param4: string); Nomeação Todos os nomes de parâmetros formais deverão ser indicativos de sua finalidade, e normalmente serão baseados no nome do identificador que foi passado para a rotina. Quando for apropriado, os nomes de parâmetro deverão ter como prefixo o caracter A: procedure AlgumProced(AnomeUsuário: string; AidadeUsuário: integer); O prefixo A é uma convenção usada para retirar a ambigüidade quando o nome do parâmetro for igual ao nome de uma propriedade ou campo na classe. Ordenação de parâmetros A ordenação de parâmetros formais a seguir enfatiza o aproveitamento das convenções de chamada de registro. Os parâmetros mais usados (por quem chama) deverão estar nos primeiros lugares. Os parâmetros menos usados deverão ser listados depois, na ordem da esquerda para a direita. As listas de entrada deverão vir antes das listas de saída, na ordem da esquerda para a direita. Coloque os parâmetros mais genéricos antes dos parâmetros mais específicos, na ordem da esquerda para a direita. Por exemplo: AlgumProced(Aplaneta, Acontinente, Apaís, Aestado, Acidade). Existem exceções à regra de ordenação, como no caso dos manipuladores de evento, onde um parâmetro chamado Sender do tipo TObject normalmente é passado como primeiro parâmetro. Parâmetros constantes Quando parâmetros do tipo de registro, array, ShortString ou interface não são modificados por uma rotina, os parâmetros formais para essa rotina deverão marcar o parâmetro como const. Isso garante que o compilador gerará código para passar esses parâmetros não modificados da maneira mais eficiente. Os parâmetros dos outros tipos podem opcionalmente ser marcados como const se não forem modificados por uma rotina. Embora isso não tenha efeito sobre a eficiência, oferece mais informações sobre o uso do parâmetro para quem chamou a rotina. Colisões de nomes Ao usar duas unidades que contêm rotinas do mesmo nome, a rotina que reside na unidade que aparece por último na cláusula uses será chamada se você chamar essa rotina. Para evitar essas ambigüidades dependentes da cláusula uses, sempre use como prefixo dessas chamadas de método o nome da unidade desejada. Veja dois exemplos: SysUtils.FindClose(SR); e Windows.FindClose(Handle); Variáveis Nomeação e formatação de variáveis As variáveis deverão ter nomes que indicam sua finalidade. Variáveis de controle de loop geralmente recebem um único caracter, como I, J ou K. Também é 4 aceitável usar um nome mais significativo, como ÍndiceUsuário.

5 Os nomes de variáveis Booleanas deverão ser descritivos o suficiente para que o significado dos valores True e False seja claro. Variáveis locais As variáveis locais usadas dentro dos procedimentos seguem as mesmas convenções de uso e nomeação de todas as outras variáveis. As variáveis temporárias deverão ter nomes apropriados. Quando for necessário, a inicialização de variáveis locais ocorrerá imediatamente na entrada da rotina. As variáveis AnsiString locais são inicializadas automaticamente com uma string vazia, variáveis locais do tipo interface e dispinterface são inicializadas automaticamente como nil, e variáveis locais do tipo Variant e OleVariant são inicializadas automaticamente como Unassigned. Uso de variáveis globais O uso de variáveis globais é desencorajado. No entanto, elas podem ser usadas quando for necessário. Quando isso acontecer, você deverá manter as variáveis globais dentro do contexto em que são usadas. Por exemplo, uma variável global poderá ser global apenas dentro do escopo da seção de implementação de uma única unidade. Os dados globais a serem usados por diversas unidades deverão ser movidos para uma unidade comum, usada por todas. Os dados globais podem ser inicializadas com um valor diretamente na seção var. Lembre-se de que todos os dados globais são automaticamente inicializados com zero; portanto, não inicialize variáveis globais como valores vazios, como 0, nil,, Unassigned e assim por diante. Um motivo para isso é que os dados globais inicializados com zero não ocupam espaço no arquivo EXE. Dados inicializados com zero são armazenados em um segmento de dados virtual alocado apenas na memória quando a aplicação é inicializada. Dados globais inicializados com valor diferente de zero ocupam espaço no arquivo EXE do disco. Tipos Convenção para uso de maiúsculas Os nomes de tipo que são palavras reservadas ficarão completamente em minúsculas. Os tipos da API do Win32 geralmente aparecem totalmente em maiúsculas, e você deverá seguir a convenção para um nome de tipo em particular, mostrado na unidade Windows.pas ou outra unidade da API. Para outros nomes de variáveis, a primeira letra deverá ser maiúscula e o restante deverá usar maiúsculas no início de cada palavra intermediária. Veja alguns exemplos: var MyString: string; // palavra reservada WindowHandle: HWND; // tipo da API do Win32 I: Integer; // identificador de tipo introduzido na unidade System Tipos de ponto flutuante O uso do ripo Real é desencorajado, pois só existia por compatibilidade com o código mais antigo do Pascal. Embora agora ele seja o mesmo que Double, esse fato poderá ser confuso para outros programadores. Use Double para as necessidades gerais de ponto flutuante. Além disso, as instruções e os barramentos do processador são otimizados para trabalhar com Double, sendo também o formato de dados padrão definido pelo IEEE. Use Extended apenas quando for necessária uma faixa maior do que a oferecida por Double. Extended é um tipo específico da Intel, e não é aceito em Java. Use Single apenas quando o tamanho físico dos bytes da variável de ponto flutuante for significativo (como ao usar DLLs de outras linguagens). 5

6 Tipos enumerados Os nomes para tipos enumerados deverão ser significativos para a finalidade da enumeração. O nome do tipo deve ter como prefixo o caracter T para anotá-lo como uma declaração de tipo. A lista de identificadores do tipo enumerado deverá conter um prefixo de dois ou três caracteres minúsculos, que o relacione com o nome do tipo enumerado original. Veja um exemplo: TTipoMúsica = (strock, stclassical, stcountry, stalternative, stheavymetal, stgospel); As instâncias de variável de um tipo enumerado receberão o mesmo nome do tipo, sem o prefixo T (TipoMúsica), a menos que haja um motivo para dar à variável um nome mais específico, como em TipoMúsicaFavorita1, TipoMúsicaFavorita2 etc. Tipos Variant e OleVariant O uso dos tipos Variant e OleVariant é desencorajado em geral, mas esses tipos são necessários à programação quando os tipos de dados são conhecidos apenas em runtime, como normalmente acontece no desenvolvimento COM e de banco de dados. Use OleVariant para a programação baseada em COM, como controles Automation e ActiveX, e use Variant para a programação que não seja COM. O motivo é que uma Variant pode armazenar de modo eficiente as strings nativas do Delphi (como uma string var), mas OleVariant converte todas as strings em strings OLE (strings WideChar) e não são contadas como referência; em vez disso, elas são sempre copiadas. Tipos estruturados Tipos de array Os nomes para os tipos de array devem ser indicativos da finalidade do array. O nome do tipo deverá ter como prefixo o caracter T. Se for declarado um ponteiro para o tipo de array, ele deverá ter como prefixo o caracter P e deverá ser declarado antes da declaração de tipo. Veja um exemplo: type PArrayCiclo = ^TArrayCiclo; TArrayCiclo = array[1..100] of integer; Quando for prático, as instâncias de variáveis do tipo array deverão receber o mesmo nome do tipo sem o prefixo T. Tipos de registro Um tipo de registro deverá receber um nome indicativo de sua finalidade. A declaração de tipo deverá ter como prefixo o caracter T. Se for declarado um ponteiro para o tipo de registro, ele deverá ter como prefixo o caracter P e deverá ser declarado antes da declaração de tipo. A declaração de tipo para cada elemento poderá ser alinhada opcionalmente em uma coluna à direita. Veja um exemplo: type PFuncionário = ^Tfuncionário; TFuncionário = record NomeFunc: string SalárioFunc: Double; 6

7 Instruções Instruções if O caso mais provável de ser executado em uma instrução if/then/else deverá ser colocado na cláusula then, com os casos menos prováveis residindo na(s) cláusula(s) else. Tente evitar o encadeamento de instruções if e use instruções case sempre que possível. Não aninhe instruções if com mais de cinco níveis de profundidade. Crie um método mais claro para o código. Não use parênteses desnecessários em uma instrução if. Se várias condições estiverem sendo testadas em uma instrução if, as condições deverão ser organizadas da esquerda para a direita na ordem de intensidade de cálculos, da menor para a maior. Isso permite que o seu código aproveite a lógica de avaliação Boolean de curto circuito embutida no compilador. Por exemplo, se a Condição1 for mais rápida do que a Condição2, e a Condição2 for mais rápida do que a Condição3, então a instrução if deverá ser construída da seguinte forma: if Condição1 and Condição2 and Condição3 then Instruções case Tópicos gerais Os casos individuais em uma instrução case deverão ser ordenados pela constante de caso, seja numérica ou alfabeticamente. As instruções de ações de cada caso deverão ser simples e geralmente não deverão exceder quatro ou cinco linhas de código. Se as ações forem mais complexas, o código deverá ser colocado em um procedimento ou função separada. A cláusula else de uma instrução case deverá ser usada apenas para padrões legítimos ou para detectar erros. Formatação As instruções case seguem as mesmas regras de formatação das outras construções com relação às convenções de endentação e nomeação. Instruções while O uso do procedimento Exit para sair de um loop while é desencorajado; sempre que possível, você deverá sair do loop usando apenas a condição do loop. Todo o código de inicialização de um loop while deverá ocorrer diretamente antes da entrada do loop [whiletn] e não deverá ser separado por outras instruções não relacionadas. Qualquer trabalho de encerramento deverá ser feito imediatamente após o loop. Instruções for As instruções for deverão ser usadas no lugar das instruções while quando o código tiver de ser executado por um número conhecido de incrementos. Instruções repeat As instruções repeat são semelhantes aos loops while e deverão seguir as mesmas orientações gerais. 7

8 Instruções with Tópicos gerais A instrução with deverá ser usada com reservas e com considerável atenção. Evite o uso demasiado de instruções with e cuidado com o uso de vários objetos, registros etc. na instrução with. Por exemplo: with Registro1, Registro2 do pode confundir o programador e facilmente levar a bugs difíceis de se detectar. Formatação As instruções with seguem as mesmas regras de formatação em relação às convenções de nomeação e endentação, descritas anteriormente neste documento. Tratamento estruturado de exceções Tópicos gerais O tratamento de exceções deverá ser usado abundantemente para correção de erro e proteção de recursos. Isso significa que, em todos os casos em que são alocados recursos, um try..finally deverá ser usado para garantir a desalocação correta do recurso. A exceção a essa regra envolve casos nos quais os recursos são alocados/liberados na inicialização/finalização de uma unidade ou do construtor/destruidor de um objeto. Uso de try..finally Sempre que possível, cada alocação deverá ser combinada com uma construção try..finally. Por exemplo, o código a seguir poderia levar a possíveis bugs: AlgumaClasse1 := TAlgumaClasse.Create; AlgumaClasse2 := TAlgumaClasse.Create; try { realiza algum código } finally AlgumaClasse1.Free; AlgumaClasse2.Free; Um método mais seguro para a alocação anterior seria este: AlgumaClasse1 := TAlgumaClasse.Create try AlgumaClasse2 := TAlgumaClasse.Create; try { realiza algum código } finally AlgumaClasse2.Free; finally AlgumaClasse1.Free; Uso de try..except Use try..except apenas quando você quiser realizar alguma tarefa se surgir alguma exceção. Em geral, 8 você não deverá usar try..except simplesmente para mostrar uma mensagem de erro na tela, pois isso será

9 feito automaticamente no contexto de uma aplicação pelo objeto Application. Se você quiser chamar o tratamento padrão de exceção depois de ter realizado alguma tarefa na cláusula except, use raise para levantar a exceção novamente para o próximo manipulador. Uso de try..except..else O uso da cláusula else com try..except é desencorajado, pois bloqueará todas as exceções, até mesmo aquelas para as quais você pode não estar preparado. Classes Nomeação/formatação Os nomes de tipo para as classes deverão indicar claramente a finalidade da classe. O nome do tipo deverá ter o prefixo T para indicá-lo como uma definição de tipo. Veja um exemplo: type TCliente = class(tobject) Os nomes de instância para as classes geralmente combinarão com o nome do tipo da classe, mas sem o prefixo T: var Cliente: TCliente; NOTA Consulte a seção Padrões de nomeação de tipo de componente para obter mais informações sobre a nomeação de componentes. Campos Nomeação/formatação Os nomes de campo de classe seguem as mesmas convenções de nomeação dos identificadores de variável, exceto por terem a indicação F como prefixo, indicando que são nomes de campo (field). Visibilidade Todos os campos deverão ser privados. Os campos que são acessíveis fora do escopo da classe deverão se tornar acessíveis através do uso de uma propriedade. Métodos Nomeação/formatação Os nomes de métodos seguem as mesmas convenções de nomeação descritas para procedimentos e funções neste documento. Uso de métodos estáticos Use métodos estáticos quando você não quiser que um método seja modificado por classes descendentes. Uso de métodos virtuais/dinâmicos Use métodos virtuais quando quiser que um método seja modificado por classes descendentes. Os métodos dinâmicos só deverão ser usados em classes das quais haverá muitos descendentes (diretos ou indire- 9

10 tos). Por exemplo, ao trabalhar com uma classe que contenha um método pouco modificado e 100 classes descendentes, você deverá tornar o método dinâmico, a fim de reduzir o uso de memória pelas 100 classes descendentes. Uso de métodos abstratos Não use métodos abstratos sobre classes das quais serão criadas instâncias. Use métodos abstratos apenas sobre classes básicas que nunca serão criadas. Métodos de acesso a propriedades Todos os métodos de acesso deverão aparecer nas seções private ou protected da definição de classe. As convenções de nomeação para os métodos de acesso a propriedades seguem as mesmas regras dos procedimentos e funções. O método de acesso de leitura (método leitor) deverá ter como prefixo a palavra Get. O método de acesso de escrita (método escritor) deverá ter como prefixo a palavra Set. O parâmetro para o método escritor deverá ter o nome Value, e seu tipo deverá ser o da propriedade que ele representa. Veja um exemplo: TAlgumaClasse = class(tobject) private FAlgumCampo: Integer; protected function GetAlgumCampo: Integer; procedure SetAlgumCampo( Valor: Integer); public property AlgumCampo: Integer read GetAlgumCampo write SetAlgumCampo; Propriedades Nomeação/formatação As propriedades que servem como acessos para campos privados terão nomes iguais aos campos que elas representam, sem o indicador F. Os nomes de propriedade deverão ser substantivos, e não verbos. As propriedades representam dados; os métodos representam ações. Os nomes de propriedade de array deverão estar no plural. Os nomes de propriedade normais deverão estar no singular. Uso de métodos de acesso Embora não seja obrigatório, encoraja-se o uso de no mínimo um método de acesso de escrita para as propriedades que representam um campo privado. Arquivos Arquivos de projeto Nomeação Os arquivos de projeto deverão ter nomes descritivos. Por exemplo, o Delphi 5 Developer s Guide Bug Manager recebeu o nome de projeto DDGBugs.dpr. Um programa de informações do sistema poderá ter um 10 nome como InfoSis.dpr.

11 Arquivos de formulário Nomeação Um arquivo de formulário deverá ter um nome descritivo da finalidade do formulário, finalizado com os caracteres Frm. Por exemplo, o formulário Sobre teria o nome de arquivo SobreFrm.dpr, e um formulário Principal teria o nome de arquivo PrincipalFrm.dpr. Arquivos de módulo de dados Nomeação Um módulo de dados deverá receber um nome que descreva a finalidade desse módulo. O nome deverá ser finalizado com os caracteres DM. Por exemplo, um módulo de dados Clientes terá o nome de arquivo ClientesDM.dfm. Arquivos remotos de módulo de dados Nomeação Um módulo de dados remoto deverá receber um nome que descreva a finalidade do módulo de dados remoto. O nome deverá ser finalizado com os caracteres RDM. Por exemplo, um módulo de dados remoto Clientes teria o nome de arquivo ClientesRDM.dfm. Arquivos de unidade Estrutura geral da unidade Nome da unidade Os arquivos de unidade receberão nomes descritivos. Por exemplo, a unidade contendo o formulário principal de uma aplicação poderia ser chamada MainFrm.pas. A cláusula uses Uma cláusula uses na seção interface deverá conter apenas unidades exigidas pelo código na seção interface. Remova quaisquer nomes de unidade desnecessários, que possam ter sido inseridos automaticamente pelo Delphi. Uma cláusula uses na seção implementation deverá conter apenas as unidades exigidas pelo código na seção implementation. Remova quaisquer nomes de unidade desnecessários. A seção interface A seção interface deverá conter declarações apenas para os tipos, variáveis, declarações de encaminhamento de procedimento/função e outros que precisarem ser acessíveis a unidades externas. Caso contrário, essas declarações deverão entrar na seção implementation. A seção implementation A seção implementation deverá conter quaisquer declarações de tipos, variáveis, procedimentos/funções e outros que sejam privados à unidade que a contém. 11

12 A seção inicialization Não inclua código demorado na seção inicialization de uma unidade. Isso fará com que a aplicação pareça ser lenta logo na partida. A seção finalization Não se esqueça de desalocar quaisquer itens que tenham sido alocados na seção inicialization. Unidades de formulário Nomeação Um arquivo de unidade para um formulário deverá receber o mesmo nome do seu arquivo de formulário correspondente. Por exemplo, um formulário Sobre teria o nome de unidade SobreFrm.pas, e um formulário Principal teria o nome de arquivo de unidade PrincipalFrm.pas. Unidades de módulo de dados Nomeação Os arquivos de unidade ou módulos de dados deverão receber os mesmos nomes de seus arquivos de formulário correspondentes. Por exemplo, uma unidade de módulo de dados Clientes teria o nome de unidade ClientesDM.pas. Unidades de uso geral Nomeação Uma unidade de uso geral receberá um nome indicativo da finalidade da unidade. Por exemplo, uma unidade de utilitários receberia o nome BugUtilitários.pas, e uma unidade contendo variáveis globais receberia o nome ClienteGlobais.pas. Lembre-se de que os nomes de unidade precisam ser exclusivos em todos os pacotes usados por um projeto. Nomes de unidade genéricos ou comuns não são recomendados. Unidades de componentes Nomeação As unidades de componentes deverão ser incluídas em um diretório separado para distingui-las como unidades definindo componentes ou conjuntos de componentes. Elas nunca deverão ser colocadas no mesmo diretório do projeto. O nome da unidade deverá indicar o seu conteúdo. NOTA Consulte a seção Componentes definidos pelo usuário para obter mais informações sobre padrões de nomeação de componentes. Cabeçalhos de arquivo O uso de cabeçalhos de arquivo informativos é encorajado para todos os arquivos de código-fonte, arquivos de projeto, unidades etc. Um cabeçalho de arquivo apropriado deverá incluir a seguinte informação: { Copyright ANO by AUTORES 12 }

13 Formulários e módulos de dados Formulários Padrão de nomeação de tipo de formulário Os tipos de formulário deverão ter nomes que descrevam a finalidade do formulário. A definição de tipo deverá ter o prefixo T, e um nome descritivo deverá aparecer após o prefixo. Finalmente, From deverá ser inserido no final do nome descritivo. Por exemplo, o nome de tipo para um formulário Sobre seria: TSobreForm = class(tform) A definição de um formulário principal seria: TPrincialForm class(tform) O formulário de entrada de clientes teria um nome como: TEntradaClientesForm = class(tform) Padrão de nomeação de instância de formulário As instâncias de formulário deverão ter o mesmo nome de seus tipos correspondentes, porém sem o prefixo T. Por exemplo, para os tipos de formulário anteriores, os nomes de instância são os seguintes: Nome do tipo TSobreForm TPrincipalForm TEntradaClientesForm Nome da instância SobreForm PrincipalForm EntradaClientesForm Criação automática de formulários Somente o formulário principal deverá ser criado automaticamente, a menos que haja um bom motivo para se fazer de outra forma. Todos os outros formulários deverão ser removidos da lista Autocreate na caixa de diálogo Project Options (opções do projeto). Veja mais informações na próxima seção. Funções de instanciação de formulário modal Todas as unidades de formulário deverão conter uma função de instanciação de formulário que cria, configura e exibe o formulário de forma modal, além de liberar o formulário. Essa função deverá retornar o resultado modal retornado pelo formulário. Os parâmetros passados a essa função deverão seguir o padrão de passagem de parâmetros, especificado neste documento. Essa funcionalidade deverá estar encapsulada dessa maneira para facilitar a reutilização e a manutenção do código. A variável de formulário deverá ser removida da unidade e declarada localmente na função de instanciação de formulário. (Observe que isso exige que o formulário seja removido da lista Autocreate na caixa de diálogo Project Options. Ver Criação automática de formulários, anteriormente neste documento.) Por exemplo, a unidade a seguir ilustra tal função para um formulário GetUserData: unit UserDataFrm; interface 13

14 uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TUserDataForm = class(tform) edtusername: Tedit; edtuserid: Tedit; private { declarações privadas } public { declarações públicas } function GetuserData(var ausername: String; var auserid: Integer): Word; implementation {$R *.DFM} function GetUserData(var ausername: String; var auserid: Integer): Word; var UserDataForm: TUserDataForm; UserDataForm := TUserDataForm.Create(Application); try UserDataForm.Caption := Getting User Data ; Result := UserDataForm.ShowModal; if ( Result = mrok ) then ausername := UserDataForm.edtUserName.Text; auserid := StrToInt(UserDataForm.edtUserID.Text); finally UserDataForm.Free; end. Módulos de dados Padrão de nomeação de módulo de dados Um tipo DataModule receberá um nome descritivo da finalidade do módulo de dados. A definição de tipo terá um prefixo T, e um nome descritivo deverá acompanhar o prefixo. Finalmente, o nome será finalizado com a palavra DataModule. Por exemplo, o nome do tipo para um módulo de dados Cliente seria algo assim: TMóduloDadosCliente = class(tdatamodule) De modo semelhante, o módulo de dados de Pedidos poderia ter o seguinte nome: TMóduloDadosPedidos = class(tdatamodule) Padrão de nomeação de instância do módulo de dados As instâncias do módulo de dados terão nomes iguais aos seus tipos correspondentes, porém sem o prefixo T. Por exemplo, para os tipos de formulário anteriores, os nomes de instância são os 14 seguintes:

15 Nome do tipo TMóduloDadosCliente TMóduloDadosPedidos Nome da instância MóduloDadosCliente MóduloDadosPedidos Pacotes Uso de pacotes de runtime ou projeto Os pacotes de runtime terão apenas as unidades/componentes exigidos por outros componentes nesse pacote. Outras unidades contendo editores de propriedade/componente e outro código apenas de projeto deverá ser colocado em um pacote de projeto. Unidades de registro também deverão ser colocadas em um pacote de projeto. Padrões de nomeação de arquivo Os pacotes terão nomes de acordo com os seguintes modelos: iiilibvv.dpk (pacote de projeto) iiistdvv.dpk (pacote de runtime) Aqui, os caracteres iii significam um prefixo de identificação de três caracteres. Esse prefixo poderá ser usado para identificar uma empresa, pessoa ou qualquer outra entidade de identificação. Os caracteres vv significam uma versão para o pacote correspondente à versão do Delphi para a qual o pacote é visado. Observe que o nome do pacote contém lib ou std para representá-lo como um pacote de runtime ou em tempo de projeto. Em casos em que existem pacotes tem tempo de projeto e runtime, os arquivos terão nomes semelhantes. Por exemplo, os pacotes para o Guia do Programador Delphi 5 têm os seguintes nomes: DdgLib50.dpk (pacote de projeto) DdgStd50.dpk (pacote de runtime) Componentes Componentes definidos pelo usuário Padrões de nomeação de tipo de componente Os componentes terão nomes semelhantes às classes definidas na seção Classes, com a exceção de que os componentes recebem um prefixo de identificação de três caracteres. Esse prefixo poderá ser usado para identificar uma empresa, pessoa ou qualquer outra entidade. Por exemplo, um componente de clock escrito para o Guia do Programador Delphi 5 seria definido da seguinte forma: TddgClock = class(tcomponent) Observe que o prefixo de três caracteres está em letras minúsculas. Unidades de componentes As unidades de componentes deverão conter apenas um componente principal. Um componente principal é qualquer componente que apareça na Component Palette (palheta de componentes). Quaisquer componentes/objetos auxiliares também poderão residir na mesma unidade do componente principal. 15

16 Uso de unidades de registro O procedimento de registro para os componentes deverá ser removido da unidade de componentes e colocado em uma unidade separada. Essa unidade de registro será usada para registrar quaisquer componentes, editores de propriedade, editores de componentes, experts e assim por diante. O registro de componentes deverá ser feito apenas nos pacotes de projeto; portanto, a unidade de registro deverá estar contida no pacote de projeto e não no pacote de runtime. Sugere-se que as unidades de registro tenham o seguinte nome: XxxReg.pas Aqui, Xxx é um prefixo de três caracteres usado para identificar uma empresa, pessoa ou qualquer outra entidade. Por exemplo, a unidade de registro para os componentes do Guia do Programador Delphi 5 se chamariam DdgReg.pas. Convenções de nomeação de instância de componente Todos os componentes deverão ter nomes descritivos. Nenhum componente ficará sem os nomes padrão atribuídos a eles pelo Delphi. Os componentes serão nomeados por meio de uma variação da convenção de nomeação húngara. De acordo com esse padrão, o nome do componente consistirá em duas partes: um prefixo de tipo de componente e um nome qualificador. Prefixos de tipo de componente O prefixo de tipo de componente é um conjunto de letras minúsculas que representam o tipo de componente. Por exemplo, a seguir vemos prefixos de tipo de componente válidos para os componentes especificados. TButton btn TEdit edt TSpeedButton spdbtn TListBox lstbx Como vimos, o prefixo de tipo de componente é criado modificando-se o nome do tipo de componente (por exemplo, TButton, TEdit) para um prefixo. As regras a seguir ilustram como definir um prefixo de tipo de componente. 1. Remova quaisquer prefixos T do tipo de nome de componente. Por exemplo, TButton torna-se Button. 2. Remova quaisquer vogais do nome formado na etapa 1, exceto quando a vogal inicia o nome. Por exemplo, Button torna-se bttn e Edit torna-se edt. 3. Suprima consoantes duplas. Por exemplo, bttn torna-se btn. 4. Se ocorrer um conflito de nome, comece incluindo vogais ao prefixo para um dos componentes. Por exemplo, se um novo componente TBatton for incluído, ele entrará em conflito com TButton. portanto, o prefixo para TBatton poderia ser batn. Nome de qualificador de componente O nome do qualificador de componente deverá descrever a finalidade do componente. Por exemplo, um componente TButton com a finalidade de fechar um formulário teria o nome btnfechar. Um componente TEdit usado para editar o nome de uma pessoa teria o nome edtnome. 16

17 Controles ActiveX com Delphi CAPÍTULO 7 NESTE CAPÍTULO O que é um controle ActiveX? Quando um controle ActiveXdeve ser utilizado Incluindo um controle ActiveX na Component Palette O wrapper de componentes do Delphi Usando controles ActiveX em suas aplicações Distribuindo aplicações equipadas com controle ActiveX Registro do controle ActiveX BlackJack: um exemplo de aplicação OCX Resumo EDITORA CAMPUS DELPHI CAPÍTULO 2 2ª PROVA

18 O Delphi oferece a grande vantagem de integrar com facilidade os controles ActiveX padrão da indústria (anteriormente conhecidos como controles OCX ou OLE) em suas aplicações. Ao contrário dos próprios componentes personalizados do Delphi, os controles ActiveX são projetados para serem independentes de qualquer ferramenta de desenvolvimento em particular. Isso significa que você pode contar com muitos fornecedores para obter uma grande variedade de soluções ActiveX que abrem um grande leque de recursos e funcionalidade. O suporte para controle ActiveX no Delphi de 32 bits funciona de modo semelhante ao suporte para VBX no Delphi 1 de 16 bits. Você seleciona uma opção para incluir novos controles ActiveX a partir do menu principal do IDE do Delphi ou do editor de pacotes, e o Delphi cria um wrapper do Object Pascal para o controle ActiveX, que é então compilado em um pacote e incluído na Component Palette do Delphi. Estando lá, o controle ActiveX é integrado de modo transparente à Component Palette, junto com os seus outros componentes da VCL e ActiveX. A partir desse ponto, você está a apenas um clique e um arrasto da inclusão do controle ActiveX em qualquer uma de suas aplicações. Este capítulo discute a integração de controles ActiveX no Delphi, o uso de um controle ActiveX na sua aplicação e a distribuição de aplicações equipadas com ActiveX. NOTA O Delphi 1 foi a última versão do Delphi a dar suporte para controles VBX (Visual Basic Extension). Se você tiver um projeto do Delphi 1 que se baseie em um ou mais controles VBX, verifique com os fornecedores de VBX para saber se eles fornecem uma solução ActiveX compatível para usar em suas aplicações Delphi de 32 bits. O que é um controle ActiveX? Controles ActiveX são controles personalizados para aplicações de 16 bits e 32 bits do Windows, que tiram proveito das tecnologias OLE e ActiveX baseadas em COM. Ao contrário dos controles VBX, que são projetados para o Visual Basic de 16 bits (e, portanto, compartilham as limitações do Visual Basic), os controles ActiveX foram projetados desde o início visando à independência de aplicativo. Resumidamente, você pode pensar nos controles ActiveX como uma mistura da tecnologia VBX de fácil utilização com o padrão ActiveX aberto. Para fins deste capítulo, você pode pensar no OLE e no ActiveX como a mesma coisa. Se você estiver procurando maiores distinções entre esses termos, dê uma olhada no Capítulo 23. Debaixo da superfície, um controle ActiveX é na realidade um servidor ActiveX que, em um pacote, pode oferecer todo o poder do ActiveX incluindo todas as funções e serviços do OLE, edição visual, arrastar e soltar e OLE Automation. Assim como todos os servidores ActiveX, os controles ActiveX são registrados no Registro do Sistema. Os controles ActiveX podem ser desenvolvidos através de diversos produtos, incluindo Delphi, Borland C++Builder, Visual C++ e Visual Basic. A Microsoft está promovendo ativamente os controles ActiveX como o meio escolhido para os controles personalizados independentes do aplicativo; a Microsoft afirmou que a tecnologia VBX não será diretamente aceita nos sistemas operacionais Win32 em diante. Por esse motivo, os programadores deverão utilizar controles ActiveX em vez de controles VBX quando desenvolverem aplicações de 32 bits. NOTA Para obter uma descrição mais completa sobre a tecnologia de controle ActiveX, consulte o Capítulo 25. Quando um controle ActiveX deve ser utilizado Geralmente existem dois motivos para você usar um controle ActiveX em vez de um controle nativo do 18 Delphi. O primeiro deles é que nenhum componente do Delphi disponível atende à sua necessidade em

19 particular. Como o mercado de controle ActiveX é maior do que o de controles da VCL, você provavelmente encontrará uma maior variedade de controles de peso industrial e com todos os recursos, como processadores de textos, browsers da World Wide Web e planilhas, sob a forma de controles ActiveX. O segundo motivo para você usar um controle ActiveX em vez de um controle nativo do Delphi é se você desenvolve em várias linguagens de programação e deseja aproveitar seu trabalho com determinado controle ou controles entre as várias plataformas de desenvolvimento. Embora os controles ActiveX sejam integrados de modo transparente no IDE do Delphi, lembre-se de algumas desvantagens inerentes ao uso de controles ActiveX nas suas aplicações. O aspecto mais óbvio é que, embora os componentes do Delphi sejam montados diretamente no executável de uma aplicação, os controles ActiveX geralmente exigem um ou mais arquivos de runtime adicionais, que precisam ser distribuídos junto com o executável. Outro problema é que os controles ActiveX se comunicam com as aplicações por meio da camada COM, enquanto os componentes do Delphi se comunicam diretamente com as aplicações e outros componentes. Isso significa que um componente do Delphi bem escrito funciona melhor do que um controle ActiveX bem escrito. Uma desvantagem mais sutil dos controles ActiveX é que eles são uma solução do tipo denominador comum, de modo que não explorarão todos os recursos da ferramenta de desenvolvimento em que são utilizados. Inclusão de um controle ActiveX na Component Palette A primeira etapa no uso de um controle ActiveX em particular na sua aplicação do Delphi é a inclusão desse controle na Component Palette do IDE do Delphi. Isso coloca um ícone para o controle ActiveX na Component Palette, entre seus outros controles do Delphi e ActiveX. Depois de incluir um controle ActiveX qualquer na Component Palette, você poderá colocá-lo em qualquer formulário e usá-lo como faria com qualquer outro controle do Delphi. Para incluir um controle ActiveX na Component Palette, siga estas etapas: 1. Escolha Component, Import ActiveX Control (importar controle ActiveX) a partir do menu principal. A caixa de diálogo Import ActiveX (importar ActiveX) aparece (ver Figura 7.1). FIGURA 7.1 A caixa de diálogo Import ActiveX. 2. A caixa de diálogo Import ActiveX é dividida em duas partes: a parte superior contém uma caixa de listagem com controles ActiveX registrados e oferece botões Add (adicionar) e Remove (remover) que lhe permitem registrar ou retirar os controles do registro. A parte inferior da caixa de diálogo lhe permite especificar parâmetros para a criação de um componente e unidade do Delphi que encapsule o controle. 3. Se o nome do controle ActiveX que você deseja usar estiver listado na parte superior da caixa de diálogo, prossiga para a etapa 4. Caso contrário, dê um clique no botão Add para registrar um novo 19

20 controle com o sistema. Um clique no botão Add faz surgir a caixa de diálogo Register OLE Control (registrar controle OLE; ver Figura 7.2). Selecione o nome do arquivo OCX ou DLL que representa o controle ActiveX que você deseja incluir no sistema e dê um clique no botão Open. Isso registra o controle ActiveX selecionado com o Registro do Sistema e fecha a caixa de diálogo Register OLE Control. 4. Na parte superior da caixa de diálogo Import ActiveX, selecione o nome do controle ActiveX que você deseja incluir na Component Palette. A parte inferior da caixa de diálogo contém controles de edição para o nome do diretório da unidade, a página da palheta e o caminho de consulta, além de um controle memo que lista as classes contidas dentro do arquivo OCX. O nome do caminho mostrado na caixa de edição Unit Dir Name (nome do diretório da unidade) é o caminho do componente de wrapper do Delphi criado para realizar a interface com o controle ActiveX. O nome do arquivo usa como padrão o nome do arquivo OCX (com uma extensão pas); o caminho usa como padrão o subdiretório \Delphi5\Imports. Embora o padrão seja indicado para uso, você pode editar o caminho do diretório como desejar. FIGURA 7.2 A caixa de diálogo Register OLE Control. 5. O controle de edição Palette Page (página da palheta) na caixa de diálogo Import ActiveX contém o nome da página na Component Palette onde você deseja que esse controle resida. O padrão é a página ActiveX. Você pode escolher outra página existente; como alternativa, se você criar um nome novo, uma página correspondente será criada na Component Palette. 6. O controle de memo Class Names (nomes de classe) na caixa de diálogo Import ActiveX contém os nomes dos novos objetos criados nesse controle. Você normalmente deverá deixar esses nomes definidos com o padrão, a menos que tenha um motivo específico para fazer de outra forma. Por exemplo, um motivo seria se o nome da classe padrão entrar em conflito com outro componente já instalado no IDE. 7. Nesse ponto, você poderá dar um clique no botão Install (instalar) ou Create Unit (criar unidade) da caixa de diálogo Import ActiveX. O botão Create Unit gerará o código-fonte da unidade para o wrapper do componente de controle ActiveX. O botão Install gerará o código do wrapper e depois chamará a caixa de diálogo Install, que lhe permite escolher um pacote em que o componente poderá ser instalado (ver Figura 7.3). 8. Na caixa de diálogo Install, você poderá incluir o controle em um pacote existente ou criar um novo pacote que será instalado na Component Palette. Dê um clique em OK nessa caixa de diálogo e o componente será instalado na palheta. Agora o seu controle ActiveX está na Component Palette e pronto para cumprir seu papel. 20

Adicionando Propriedades e Funcionalidades aos Componentes

Adicionando Propriedades e Funcionalidades aos Componentes Adicionando Propriedades e Funcionalidades aos Componentes Você já não precisou de uma determinada propriedade (que não foi implementada) num componente? Por exemplo: Quem nunca precisou de uma propriedade

Leia mais

Neste capítulo discutiremos o que é uma DLL, seus aspectos e tipos e ainda, porquê é tão importante para as aplicações Windows

Neste capítulo discutiremos o que é uma DLL, seus aspectos e tipos e ainda, porquê é tão importante para as aplicações Windows DINAMIC LINK LIBRARIES Capítulo 7 Neste capítulo discutiremos o que é uma DLL, seus aspectos e tipos e ainda, porquê é tão importante para as aplicações Windows O QUE É UMA DLL? Dinamic Link Libraries

Leia mais

Centro de Computação - Unicamp Gerência de Atendimento ao Cliente (e-mail:apoio@turing.unicamp.br) Sumário

Centro de Computação - Unicamp Gerência de Atendimento ao Cliente (e-mail:apoio@turing.unicamp.br) Sumário Sumário Conceitos Microsoft Access 97... 01 Inicialização do Access... 02 Convertendo um Banco de Dados... 03 Criando uma Tabela... 06 Estrutura da Tabela... 07 Propriedades do Campo... 08 Chave Primária...

Leia mais

PROJECT 1 Delphi Project (Extensão. DPR)

PROJECT 1 Delphi Project (Extensão. DPR) CAPÍTULO2 1. A ESTRUTURA DE UM APLICATIVO Quando iniciamos uma aplicação em Delphi ele interpreta que iremos desenvolver um projeto. Este gerencia um conjunto de recursos como Forms, Units, objetos, funções

Leia mais

Framework InterLattes Construção de Módulos. Marcelo Domingos

Framework InterLattes Construção de Módulos. Marcelo Domingos Construção de Módulos Marcelo Domingos Sumário 1 INTRODUÇÃO... 3 2 PRÉ-REQUISITOS... 5 2.1 Perfil da equipe... 5 2.2 Infra-estrutura... 5 3 TECNOLOGIA... 6 4 AÇÕES E EVENTOS INTERLATTES... 12 4.1 Eventos

Leia mais

Microsoft Visual Studio Express 2012 for Windows Desktop

Microsoft Visual Studio Express 2012 for Windows Desktop Microsoft Visual Studio Express 2012 for Windows Desktop Apresentação da ferramenta Professor: Danilo Giacobo Página pessoal: www.danilogiacobo.eti.br E-mail: danilogiacobo@gmail.com 1 Introdução Visual

Leia mais

Tutorial de Computação Introdução a Programação Gráfica em Lazarus Para MEC 1100 v2010.10

Tutorial de Computação Introdução a Programação Gráfica em Lazarus Para MEC 1100 v2010.10 Tutorial de Computação Introdução a Programação Gráfica em Lazarus Para MEC 1100 v2010.10 Linha de Equipamentos MEC Desenvolvidos por: Maxwell Bohr Instrumentação Eletrônica Ltda. Rua Porto Alegre, 212

Leia mais

AMBIENTE. FORMULÁRIO: é a janela do aplicativo apresentada ao usuário. Considere o formulário como a sua prancheta de trabalho.

AMBIENTE. FORMULÁRIO: é a janela do aplicativo apresentada ao usuário. Considere o formulário como a sua prancheta de trabalho. DELPHI BÁSICO VANTAGENS Ambiente de desenvolvimento fácil de usar; 1. Grande Biblioteca de Componentes Visuais (VCL - Visual Component Library), que são botões, campos, gráficos, caixas de diálogo e acesso

Leia mais

O processo de distribuição

O processo de distribuição A criação de um aplicativo para distribuição é parecida com o desenvolvimento de um aplicativo padrão do Visual FoxPro. Você trabalha no ambiente de desenvolvimento do Visual FoxPro normalmente, mas cria

Leia mais

Adicionando Propriedades e Funcionalidades aos Componentes Parte II

Adicionando Propriedades e Funcionalidades aos Componentes Parte II Adicionando Propriedades e Funcionalidades aos Componentes Parte II Quantas vezes eu não lamentei por este componente não ter uma propriedade que guardasse uma lista paralela a lista que é mostrada em

Leia mais

Interface para Regras de Negócios em Multi-Banco

Interface para Regras de Negócios em Multi-Banco 1 Interface para Regras de Negócios em Multi-Banco MARCELO JALOTO (marcelo@jaloto.net) é graduado no curso superior Projetos e Gestão de Redes de Computadores e formado no curso Técnico em Processamento

Leia mais

END OF FILE: Tutorial Chat Em Delphi

END OF FILE: Tutorial Chat Em Delphi END OF FILE: Tutorial Chat Em Delphi fórum: http://offile.umforum.net site: http://fts315.xp3.biz autor: kõdo no kami (www.facebook.com/hacker.fts315) - skype: hackefts315 greetz: mmxm, sir.rafiki, suspeit0@virtual,

Leia mais

Primeiramente lemos a seguinte citação, copiada de Excel-Ajuda:

Primeiramente lemos a seguinte citação, copiada de Excel-Ajuda: 33 Capítulo 3 Procedimentos (macros) Primeiramente lemos a seguinte citação, copiada de Excel-Ajuda: O objetivo de uma macro é automatizar as tarefas usadas com mais freqüência. Embora algumas macros sejam

Leia mais

Conceitos de Linguagens de Programação

Conceitos de Linguagens de Programação Conceitos de Linguagens de Programação Aula 07 Nomes, Vinculações, Escopos e Tipos de Dados Edirlei Soares de Lima Introdução Linguagens de programação imperativas são abstrações

Leia mais

INTRODUÇÃO OBJECT PASCAL/DELPHI

INTRODUÇÃO OBJECT PASCAL/DELPHI Introdução Object Pascal/Delphi 1 INTRODUÇÃO OBJECT PASCAL/DELPHI Objetivo Demonstrar a sintaxe e a semântica do Object Pascal e a forma como esse linguagem de programação será aplicada na disciplina de

Leia mais

Excel 2010 Modulo II

Excel 2010 Modulo II Excel 2010 Modulo II Sumário Nomeando intervalos de células... 1 Classificação e filtro de dados... 3 Subtotais... 6 Validação e auditoria de dados... 8 Validação e auditoria de dados... 9 Cenários...

Leia mais

4 Criação de macros e introdução à linguagem VBA

4 Criação de macros e introdução à linguagem VBA 4 Criação de macros e introdução à linguagem VBA Vinicius A. de Souza va.vinicius@gmail.com São José dos Campos, 2011. 1 Sumário Tópicos em Microsoft Excel 2007 Introdução à criação de macros...3 Gravação

Leia mais

EMENTA DO CURSO. Tópicos:

EMENTA DO CURSO. Tópicos: EMENTA DO CURSO O Curso Preparatório para a Certificação Oracle Certified Professional, Java SE 6 Programmer (Java Básico) será dividido em 2 módulos e deverá ter os seguintes objetivos e conter os seguintes

Leia mais

Iniciando o Word 2010. Criar um novo documento. Salvando um Documento. Microsoft Office Word

Iniciando o Word 2010. Criar um novo documento. Salvando um Documento. Microsoft Office Word 1 Iniciando o Word 2010 O Word é um editor de texto que utilizado para criar, formatar e imprimir texto utilizado para criar, formatar e imprimir textos. Devido a grande quantidade de recursos disponíveis

Leia mais

Índice. Tutorial para Desenvolvimento de Conduits em Delphi

Índice. Tutorial para Desenvolvimento de Conduits em Delphi Índice Índice...1 Desenvolvendo Conduits...2 (Passo a Passo)...2 Criando um Arquivo.mdb... 2 Arquivos...6 Instalando os componentes... 7 Recompilando os Comonentes do Delphi...13 Configurando a Conexão

Leia mais

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos TUTORIAL Memória Flash Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br contato@maxwellbohr.com.br

Leia mais

Display de 7. PdP. Autor: Tiago Lone Nível: Básico Criação: 16/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

Display de 7. PdP. Autor: Tiago Lone Nível: Básico Criação: 16/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos TUTORIAL Display de 7 Segmentos Autor: Tiago Lone Nível: Básico Criação: 16/12/2005 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br contato@maxwellbohr.com.br

Leia mais

Java Como Programar, 8/E

Java Como Programar, 8/E Capítulo 2 Introdução aos aplicativos Java Java Como Programar, 8/E (C) 2010 Pearson Education, Inc. Todos os 2.1 Introdução Programação de aplicativo Java. Utilize as ferramentas do JDK para compilar

Leia mais

Manual de Utilização

Manual de Utilização Se ainda tiver dúvidas entre em contato com a equipe de atendimento: Por telefone: 0800 642 3090 Por e-mail atendimento@oisolucoespraempresas.com.br Introdução... 3 1. O que é o programa Oi Backup Empresarial?...

Leia mais

1 Apostila de Delphi 1.1 A LINGUAGEM OBJECT PASCAL

1 Apostila de Delphi 1.1 A LINGUAGEM OBJECT PASCAL 1 1 Apostila de Delphi 1.1 A LINGUAGEM OBJECT PASCAL Por mais recursos gráficos que as linguagens orientadas a objetos possuam, em determinado momento não há como fugir do código. A programação em Delphi

Leia mais

Curso de Iniciação ao Access Basic (I) CONTEÚDOS

Curso de Iniciação ao Access Basic (I) CONTEÚDOS Curso de Iniciação ao Access Basic (I) CONTEÚDOS 1. A Linguagem Access Basic. 2. Módulos e Procedimentos. 3. Usar o Access: 3.1. Criar uma Base de Dados: 3.1.1. Criar uma nova Base de Dados. 3.1.2. Criar

Leia mais

Mozart de Melo Alves Júnior

Mozart de Melo Alves Júnior Mozart de Melo Alves Júnior WORD 2000 INTRODUÇÃO: O Word é um processador de texto com recursos de acentuação, formatação de parágrafo, estilo de letras diferentes, criação de tabelas, corretor ortográfico,

Leia mais

Algoritmos em Javascript

Algoritmos em Javascript Algoritmos em Javascript Sumário Algoritmos 1 O que é um programa? 1 Entrada e Saída de Dados 3 Programando 4 O que é necessário para programar 4 em JavaScript? Variáveis 5 Tipos de Variáveis 6 Arrays

Leia mais

Delphi 7 Aula 01 Área do Triângulo

Delphi 7 Aula 01 Área do Triângulo Delphi 7 Aula 01 Área do Triângulo Prof. Gilbert Azevedo da Silva I. Objetivos Conhecer o Ambiente Integrado de Desenvolvimento (IDE) do Delphi 7, Desenvolver a primeira aplicação no Delphi 7, Aprender

Leia mais

Capítulo 7 O Gerenciador de Arquivos

Capítulo 7 O Gerenciador de Arquivos Capítulo 7 O Gerenciador de Arquivos Neste capítulo nós iremos examinar as características da interface do gerenciador de arquivos Konqueror. Através dele realizaremos as principais operações com arquivos

Leia mais

AFS para Windows. Iniciação Rápida. Versão 3.6 S517-6977-00

AFS para Windows. Iniciação Rápida. Versão 3.6 S517-6977-00 AFS para Windows Iniciação Rápida Versão 3.6 S517-6977-00 AFS para Windows Iniciação Rápida Versão 3.6 S517-6977-00 Nota Antes de utilizar estas informações e o produto a que elas se referem, leia as

Leia mais

Evitando conflitos em aplicações multi-thread no Delphi/Kylix

Evitando conflitos em aplicações multi-thread no Delphi/Kylix LABORATÓRIO DE ORIENTAÇÃO A OBJETOS - OOLAB Evitando conflitos em aplicações multi-thread no Delphi/Kylix Edmilson dos Santos de Jesus Salvador, março de 2002. ÍNDICE Agradecimentos............ 2 Aplicações

Leia mais

Oracle PL/SQL Overview

Oracle PL/SQL Overview Faculdades Network Oracle PL/SQL Overview Prof. Edinelson PL/SQL Linguagem de Programação Procedural Language / Structured Query Language Une o estilo modular de linguagens de programação à versatilidade

Leia mais

Usando o evento OnFilterRecord para filtrar ClientDataSets

Usando o evento OnFilterRecord para filtrar ClientDataSets Usando o evento OnFilterRecord para filtrar ClientDataSets O objetivo mais importante no desenvolvimento de um programa é fornecer ao cliente maior liberdade para usar as interfaces e ao mesmo tempo tornar

Leia mais

AVISO. Treinamento GVcollege Módulo Ficha Complementar

AVISO. Treinamento GVcollege Módulo Ficha Complementar AVISO O conteúdo deste documento é de propriedade intelectual exclusiva da GVDASA Sistemas e está sujeito a alterações sem aviso prévio. Nenhuma parte desta publicação pode ser reproduzida nem transmitida

Leia mais

Estruturando um aplicativo

Estruturando um aplicativo Com o Visual FoxPro, é possível criar facilmente aplicativos controlados por eventos e orientados a objetos em etapas. Esta abordagem modular permite que se verifique a funcionalidade de cada componente

Leia mais

Elementos do IDE do Delphi

Elementos do IDE do Delphi Capítulo 2 Um Tour pelo Ambiente de Programação do Delphi Ao final deste capítulo, você estará apto a: Identificar os elementos do IDE do Delphi Identificar os elementos essenciais que formam uma aplicação

Leia mais

Especificação do Trabalho Prático

Especificação do Trabalho Prático Especificação do Trabalho Prático O trabalho prático da disciplina consiste em desenvolver um programa utilizando a linguagem de programação C. A seguir, encontram-se a descrição do problema, a forma de

Leia mais

Centro Universitário do Triângulo Introdução ao Ambiente Delphi

Centro Universitário do Triângulo Introdução ao Ambiente Delphi Centro Universitário do Triângulo Introdução ao Ambiente Delphi A figura abaixo mostra a tela inicial do Delphi 7 e nos dá uma visão geral de seu ambiente de desenvolvimento, composto de múltiplas janelas

Leia mais

Padrões de Codificação Java

Padrões de Codificação Java Padrões de Codificação Java João Carlos Pinheiro jcpinheiro@cefet-ma.br Versão: 1.0 Última Atualização: Março / 2005 1 Objetivos Apresentar os padrões de codificação Java da SUN 2 Introdução Um padrão

Leia mais

Criação de Objetos ASP em Delphi 5.0

Criação de Objetos ASP em Delphi 5.0 Criação de Objetos ASP em Delphi 5.0 Por Adenilton Rodrigues Aden@aden.com.br Belo Horizonte MG 2001 Este documento pode ser livremente copiado e distribuído. Sua modificação só será permitida mediante

Leia mais

DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO. PROFa. GILENE BORGES GOMES. Home page: http://www.gomeshp.com E-mail: gilene@gomeshp.com

DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO. PROFa. GILENE BORGES GOMES. Home page: http://www.gomeshp.com E-mail: gilene@gomeshp.com APOSTILA DE DELPHI 7.0 DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO. PROFa. GILENE BORGES GOMES. Home page: http://www.gomeshp.com E-mail: gilene@gomeshp.com 1. INTRODUÇÃO Delphi possui um ambiente de desenvolvimento

Leia mais

Sumário. Ambiente de Trabalho... Erro! Indicador não definido.

Sumário. Ambiente de Trabalho... Erro! Indicador não definido. Sumário Ambiente de Trabalho... Erro! Indicador não definido. Introdução ao Project Um projeto é uma seqüência bem definida de eventos, com um início e um final identificável. O foco de um projeto é obter

Leia mais

MANUAL DO ADMINISTRADOR DO MÓDULO

MANUAL DO ADMINISTRADOR DO MÓDULO MANUAL DO ADMINISTRADOR DO MÓDULO ÍNDICE Relatórios Dinâmicos... 3 Requisitos de Sistema... 4 Estrutura de Dados... 5 Operadores... 6 Tabelas... 7 Tabelas x Campos... 9 Temas... 13 Hierarquia Relacionamento...

Leia mais

Conhecendo o Visual FoxPro 8.0 Parte 3

Conhecendo o Visual FoxPro 8.0 Parte 3 AULA Conhecendo o Visual FoxPro 8.0 Parte 3 Continuando nossa saga pelas ferramentas do Visual FoxPro 8.0, hoje vamos conhecer mais algumas. A Ferramenta Class Designer A Class Designer é a ferramenta

Leia mais

ETEC DR. EMÍLIO HENRNANDEZ AGUILAR PROGRAMAÇÃO DE COMPUTADORES II PROFESSOR RAFAEL BARRETO

ETEC DR. EMÍLIO HENRNANDEZ AGUILAR PROGRAMAÇÃO DE COMPUTADORES II PROFESSOR RAFAEL BARRETO ETEC DR. EMÍLIO HENRNANDEZ AGUILAR PROGRAMAÇÃO DE COMPUTADORES II PROFESSOR RAFAEL BARRETO DELPHI CRIANDO UMA AUTENTICAÇÃO DE USUÁRIO UTILIZANDO O COMPONENTE QUERY A autenticação de usuários serve para

Leia mais

KM-NET for Accounting. Guia de Operação

KM-NET for Accounting. Guia de Operação KM-NET for Accounting Guia de Operação Informações legais e gerais Aviso É proibida a reprodução não autorizada deste guia ou parte dele. As informações neste guia estão sujeitas a alterações sem aviso

Leia mais

Introdução ao C# . Visão geral do.net Framework

Introdução ao C# . Visão geral do.net Framework Introdução ao C# Microsoft.NET (comumente conhecido por.net Framework - em inglês: dotnet) é uma iniciativa da empresa Microsoft, que visa uma plataforma única para desenvolvimento e execução de sistemas

Leia mais

O Primeiro Programa em Visual Studio.net

O Primeiro Programa em Visual Studio.net O Primeiro Programa em Visual Studio.net Já examinamos o primeiro programa escrito em C que servirá de ponto de partida para todos os demais exemplos e exercícios do curso. Agora, aprenderemos como utilizar

Leia mais

Fluxo de trabalho do Capture Pro Software: Indexação de OCR e separação de documentos de código de correção

Fluxo de trabalho do Capture Pro Software: Indexação de OCR e separação de documentos de código de correção Este procedimento corresponde ao fluxo de trabalho de Indexação de OCR com separação de código de correção no programa de treinamento do Capture Pro Software. As etapas do procedimento encontram-se na

Leia mais

Software de gerenciamento do sistema Intel. Guia do usuário do Pacote de gerenciamento do servidor modular Intel

Software de gerenciamento do sistema Intel. Guia do usuário do Pacote de gerenciamento do servidor modular Intel Software de gerenciamento do sistema Intel do servidor modular Intel Declarações de Caráter Legal AS INFORMAÇÕES CONTIDAS NESTE DOCUMENTO SÃO RELACIONADAS AOS PRODUTOS INTEL, PARA FINS DE SUPORTE ÀS PLACAS

Leia mais

Disparando o interpretador

Disparando o interpretador Capítulo 2: Usando o interpretador Python Disparando o interpretador O interpretador é frequentemente instalado como /usr/local/bin/python nas máquinas onde está disponível; adicionando /usr/local/bin

Leia mais

Centro de Computação - Unicamp Gerência de Atendimento ao Cliente (e-mail:apoio@turing.unicamp.br) Sumário

Centro de Computação - Unicamp Gerência de Atendimento ao Cliente (e-mail:apoio@turing.unicamp.br) Sumário Sumário Conceitos Microsoft Access 97... 01 Inicialização do Access... 02 Convertendo um Banco de Dados... 03 Criando uma Tabela... 06 Estrutura da Tabela... 07 Propriedades do Campo... 08 Chave Primária...

Leia mais

Solução de gerenciamento de sistemas Dell KACE K1000 Versão 5.5. Guia de gerenciamento de ativos. Julho de 2013

Solução de gerenciamento de sistemas Dell KACE K1000 Versão 5.5. Guia de gerenciamento de ativos. Julho de 2013 Solução de gerenciamento de sistemas Dell KACE K1000 Versão 5.5 Guia de gerenciamento de ativos Julho de 2013 2004-2013 Dell, Inc. Todos os direitos reservados. Qualquer forma de reprodução deste material

Leia mais

ARQUIVOS. Os arquivos criados em meios magnéticos poderão ser acessados para leitura e escrita na forma seqüencial, direta ou indexada.

ARQUIVOS. Os arquivos criados em meios magnéticos poderão ser acessados para leitura e escrita na forma seqüencial, direta ou indexada. Texto retirado e adaptado da apostila A Linguagem Pascal, disponível no site http://www.portaldaprogramacao.com (autor: desconhecido) ARQUIVOS Anteriormente, foi estudado o conceito de tabelas em memória

Leia mais

CRIANDO UM BANCO DE DADOS

CRIANDO UM BANCO DE DADOS CRIANDO UM BANCO DE DADOS Bem, antes de iniciarmos propriamente no delphi, devemos aprender a usar sua ferramentas, sendo uma das mais importantes o Database Desktop, pois é com esta que construímos nossos

Leia mais

A multimídia para ambiente Windows foi desenvolvida a poucos anos atrás e hoje é lugar comum, nesta seção discutimos alguns itens genéricos.

A multimídia para ambiente Windows foi desenvolvida a poucos anos atrás e hoje é lugar comum, nesta seção discutimos alguns itens genéricos. MULTIMÍDIA Capítulo 8 Neste capítulo apresentaremos alguns elementos de multimídia, tais como: sons e vídeos e também como utilizar os recursos usando o controle de multimídia do ambiente Delphi. O Delphi

Leia mais

Impressão e Fotolito Oficina Gráfica da EDITORA VIENA. Todos os direitos reservados pela EDITORA VIENA LTDA

Impressão e Fotolito Oficina Gráfica da EDITORA VIENA. Todos os direitos reservados pela EDITORA VIENA LTDA Autores Karina de Oliveira Wellington da Silva Rehder Consultores em Informática Editora Viena Rua Regente Feijó, 621 - Centro - Santa Cruz do Rio Pardo - SP CEP 18.900-000 Central de Atendimento (0XX14)

Leia mais

MS-Excel 2010 Essencial (I)

MS-Excel 2010 Essencial (I) MS-Excel 2010 Essencial (I) Carga Horária: 20 horas Objetivos: Este curso destina-se a todos os profissionais que atuam nas áreas financeiras e administrativas, e que necessitem agilizar os seus cálculos,

Leia mais

ROBERTO OLIVEIRA CUNHA

ROBERTO OLIVEIRA CUNHA LEIAME Apresentação Nenhuma informação do TUTORIAL DO MICRO- SOFT OFFICE POWER POINT 2003 poderá ser copiada, movida ou modificada sem autorização prévia e escrita do Programador Roberto Oliveira Cunha.

Leia mais

Microsoft Excel 2003

Microsoft Excel 2003 Associação Educacional Dom Bosco Faculdades de Engenharia de Resende Microsoft Excel 2003 Professores: Eduardo Arbex Mônica Mara Tathiana da Silva Resende 2010 INICIANDO O EXCEL Para abrir o programa Excel,

Leia mais

ETEC DR. EMÍLIO HENRNANDEZ AGUILAR PROGRAMAÇÃO DE COMPUTADORES I PROFESSOR RAFAEL BARRETO

ETEC DR. EMÍLIO HENRNANDEZ AGUILAR PROGRAMAÇÃO DE COMPUTADORES I PROFESSOR RAFAEL BARRETO ETEC DR. EMÍLIO HENRNANDEZ AGUILAR PROGRAMAÇÃO DE COMPUTADORES I PROFESSOR RAFAEL BARRETO DELPHI - UTILIZANDO OPENDIALOG PARA ARMAZENAR IMAGENS EM BANCO DE DADOS Criaremos uma solução simples para criar

Leia mais

Aula 01 - Formatações prontas e condicionais. Aula 01 - Formatações prontas e condicionais. Sumário. Formatar como Tabela

Aula 01 - Formatações prontas e condicionais. Aula 01 - Formatações prontas e condicionais. Sumário. Formatar como Tabela Aula 01 - Formatações prontas e Sumário Formatar como Tabela Formatar como Tabela (cont.) Alterando as formatações aplicadas e adicionando novos itens Removendo a formatação de tabela aplicada Formatação

Leia mais

Introdução... 1. Instalação... 2

Introdução... 1. Instalação... 2 ONTE DO Introdução... 1 O que é IPP?... 1 Qual é a função de um software Samsung IPP?... 1 Instalação... 2 Requisitos do sistema... 2 Instalar o software Samsung IPP... 2 Desinstalar o software Samsung

Leia mais

2. ENTRADA DE DADOS 2.1. TEXTOS

2. ENTRADA DE DADOS 2.1. TEXTOS 2. ENTRADA DE DADOS Os dados digitados em uma célula são divididos em duas categorias principais: constantes ou fórmulas. Um valor constante é um dado digitado diretamente na célula e que não é alterado.

Leia mais

Linguagens de programação

Linguagens de programação Prof. André Backes Linguagens de programação Linguagem de Máquina Computador entende apenas pulsos elétricos Presença ou não de pulso 1 ou 0 Tudo no computador deve ser descrito em termos de 1 s ou 0 s

Leia mais

Lógica de Programação

Lógica de Programação Lógica de Programação Unidade 4 Ambiente de desenvolvimento Java QI ESCOLAS E FACULDADES Curso Técnico em Informática SUMÁRIO A LINGUAGEM JAVA... 3 JVM, JRE, JDK... 3 BYTECODE... 3 PREPARANDO O AMBIENTE

Leia mais

Escolhendo recursos de Ajuda

Escolhendo recursos de Ajuda Você pode dar um toque profissional ao aplicativo adicionando um arquivo de Ajuda gráfica. A Ajuda gráfica pode incluir gráficos e texto formatado; a Ajuda no estilo.dbf limita-se a uma única fonte sem

Leia mais

Delphi IDE. Jocélio Passos joceliodpassos@bol.com.br. Delphi - IDE. Integrad Development Enviroment Ambiente de Desenvolvimento Integrado

Delphi IDE. Jocélio Passos joceliodpassos@bol.com.br. Delphi - IDE. Integrad Development Enviroment Ambiente de Desenvolvimento Integrado Delphi Integrad Development Enviroment Ambiente de Desenvolvimento Integrado IDE Jocélio Passos joceliodpassos@bol.com.br Iniciar Programas Borland Delphi X Delphi X 2/2/2007 2 Primeiro Projeto Menu File

Leia mais

Digitalização. Copiadora e Impressora WorkCentre C2424

Digitalização. Copiadora e Impressora WorkCentre C2424 Digitalização Este capítulo inclui: Digitalização básica na página 4-2 Instalando o driver de digitalização na página 4-4 Ajustando as opções de digitalização na página 4-5 Recuperando imagens na página

Leia mais

Representação de Algoritmos - Linguagens de Programação

Representação de Algoritmos - Linguagens de Programação Representação de Algoritmos - Linguagens de Programação A representação de algoritmos em uma pseudo-linguagem mais próxima às pessoas é bastante útil principalmente quando o problema a ser tratado envolve

Leia mais

INTRODUÇÃO INICIANDO O WORD INSERIR TEXTO

INTRODUÇÃO INICIANDO O WORD INSERIR TEXTO SUMÁRIO 01 - INTRODUÇÃO 02 - INICIANDO O WORD 03 - INSERIR TEXTO 04 - SALVAR UM DOCUMENTO 05 - FECHAR UM DOCUMENTO 06 - INICIAR UM NOVO DOCUMENTO 07 - ABRIR UM DOCUMENTO 08 - SELECIONAR TEXTO 09 - RECORTAR,

Leia mais

Tutorial de Computação Robô Bípede Programa de Controle em Delphi v2010.10

Tutorial de Computação Robô Bípede Programa de Controle em Delphi v2010.10 Tutorial de Computação Robô Bípede Programa de Controle em Delphi v2010.10 Linha de Equipamentos MEC Desenvolvidos por: Maxwell Bohr Instrumentação Eletrônica Ltda. Rua Porto Alegre, 212 Londrina PR Brasil

Leia mais

Software de Gerência de Dados de Música. Data Manager para Windows. Guia do Usuário

Software de Gerência de Dados de Música. Data Manager para Windows. Guia do Usuário P Software de Gerência de Dados de Música Data Manager para Windows Guia do Usuário Use este manual em combinação com o guia do usuário que acompanha o instrumento. DATAMANAGERP1C Sumário Introdução...3

Leia mais

Vendas. Manual do Usuário. Copyright 2014 - ControleNaNet

Vendas. Manual do Usuário. Copyright 2014 - ControleNaNet Manual do Usuário Copyright 2014 - ControleNaNet Conteúdo A Ficha de Vendas...3 Os Recibos...6 Como imprimir?...7 As Listagens...9 Clientes... 10 Consulta... 11 Inclusão... 13 Alteração... 14 Exclusão...

Leia mais

CONVENÇÃO DE CÓDIGO JAVA

CONVENÇÃO DE CÓDIGO JAVA CONVENÇÃO DE CÓDIGO JAVA Eligiane Ceron - Abril de 2012 Versão 1.0 Conteúdo Considerações iniciais... 2 Introdução... 2 Extensão de arquivos... 2 Arquivos de código Java... 2 Comentários iniciais... 2

Leia mais

Instalação do IBM SPSS Modeler Server Adapter

Instalação do IBM SPSS Modeler Server Adapter Instalação do IBM SPSS Modeler Server Adapter Índice Instalação do IBM SPSS Modeler Server Adapter............... 1 Sobre a Instalação do IBM SPSS Modeler Server Adapter................ 1 Requisitos de

Leia mais

Curso Básico de Delphi Por Edwar Saliba Júnior. Índice:

Curso Básico de Delphi Por Edwar Saliba Júnior. Índice: Índice: - Escopo... 3 - Apresentação e Introdução ao Delphi... 4 o Exemplo_1 (Projeto ShowMessage)... 4 - Conceitos Básicos da Linguagem Obejct Pascal... 6 o Exemplo_2 (Projeto Frase)... 7 o Exemplo_3

Leia mais

Fiery Network Controller para Xerox WorkCentre 7800 Series. Bem-vindo

Fiery Network Controller para Xerox WorkCentre 7800 Series. Bem-vindo Fiery Network Controller para Xerox WorkCentre 7800 Series Bem-vindo 2013 Electronics For Imaging. As informações nesta publicação estão cobertas pelos termos dos Avisos de caráter legal deste produto.

Leia mais

ÍNDICE. Microsoft Excel. Informações Gerais. Pasta de Trabalho. Formatando Página. Formatar Células. Gráficos. Criando Operações Básicas

ÍNDICE. Microsoft Excel. Informações Gerais. Pasta de Trabalho. Formatando Página. Formatar Células. Gráficos. Criando Operações Básicas ÍNDICE Microsoft Excel Informações Gerais Pasta de Trabalho Formatando Página Formatar Células Gráficos Criando Operações Básicas Sobre as Funções de Planilha Operadores em Fórmulas do Excel Operadores

Leia mais

Excel Macros e Programação em VBA

Excel Macros e Programação em VBA são formulários personalizados pelo programador para criar uma interface entre a pasta de trabalho do Excel e o usuário da aplicação. Abra o Editor do VBA; No menu Inserir, escolha UserForm; A figura mostra

Leia mais

Construindo e Codificando o Projeto Conversor de Números

Construindo e Codificando o Projeto Conversor de Números Criando um Add-In no Visual Basic 6 Por John P. Cunningham Definindo um diretório, renomeando o formulário e salvando o projeto Passo 1: Crie um subdiretório na diretório do Visual Basic chamado ConverterAddIn.

Leia mais

- A preparação do modelo, que consiste na confecção de um arquivo de texto que vai servir de base para criar um novo documento;

- A preparação do modelo, que consiste na confecção de um arquivo de texto que vai servir de base para criar um novo documento; Criando documentos de texto no BrOffice com macros e formulários Introdução Como forma de compartilhar a experiência acumulada no processo de criação de formulários e macros do BrOffice.org, para confecção

Leia mais

Resumo da Introdução de Prática de Programação com C. A Linguagem C

Resumo da Introdução de Prática de Programação com C. A Linguagem C Resumo da Introdução de Prática de Programação com C A Linguagem C O C nasceu na década de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC PDP-11 rodando o sistema operacional

Leia mais

Manual de referência do Device Storage Manager

Manual de referência do Device Storage Manager Manual de referência do Device Storage Manager Avisos sobre direitos autorais e marcas comerciais Copyright 2003 Hewlett-Packard Development Company, L.P. É proibida a reprodução, adaptação ou tradução

Leia mais

Podemos agora ver no IDE do Morfik os objetos que já incorporamos ao nosso projeto :

Podemos agora ver no IDE do Morfik os objetos que já incorporamos ao nosso projeto : Podemos agora ver no IDE do Morfik os objetos que já incorporamos ao nosso projeto : O form Index A tabela Fotos A query Q_seleção_de_fotos Vide figura 46. Figura 46 O próximo passo é criar um form que

Leia mais

Criando documentação com javadoc

Criando documentação com javadoc H Criando documentação com javadoc H.1 Introdução Neste apêndice, fornecemos uma introdução a javadoc ferramenta utilizada para criar arquivos HTML que documentam o código Java. Essa ferramenta é usada

Leia mais

O que há de novo no QuarkXPress 2015

O que há de novo no QuarkXPress 2015 O que há de novo no QuarkXPress 2015 CONTEÚDO Conteúdo Novidades do QuarkXPress 2015...3 Novos recursos...4 Aplicativo de 64 bits...4 Variáveis de conteúdo...4 Tabelas alinhadas...5 Notas de rodapé e notas

Leia mais

Microsoft Office Excel

Microsoft Office Excel 1 Microsoft Office Excel Introdução ao Excel Um dos programas mais úteis em um escritório é, sem dúvida, o Microsoft Excel. Ele é uma planilha eletrônica que permite tabelar dados, organizar formulários,

Leia mais

Parte 5 LibreOffice Base

Parte 5 LibreOffice Base Parte 5 LibreOffice Base 1. Criação do banco de dados 1. Abra o LibreOffice Base; 2. Escolha Criar um novo banco de dados e clique em Concluir; 3. Salve o banco de dados em alguma pasta do computador.

Leia mais

GUIA DE AUXÍLIO PARA GERENCIAMENTO DE PROJETOS METODOLOGIA IFES

GUIA DE AUXÍLIO PARA GERENCIAMENTO DE PROJETOS METODOLOGIA IFES GUIA DE AUXÍLIO PARA GERENCIAMENTO DE PROJETOS METODOLOGIA IFES SUMÁRIO 1. PREENCHIMENTO DA PLANILHA DE GERENCIAMENTO DE PROJETOS...3 1.1 Menu...3 1.2 Termo de Abertura...4 1.3 Plano do Projeto...5 1.4

Leia mais

Dell Server PRO Management Pack 4.0 para o Microsoft System Center Virtual Machine Manager Guia de instalação

Dell Server PRO Management Pack 4.0 para o Microsoft System Center Virtual Machine Manager Guia de instalação Dell Server PRO Management Pack 4.0 para o Microsoft System Center Virtual Machine Manager Guia de instalação Notas, avisos e advertências NOTA: uma NOTA indica informações importantes que ajudam você

Leia mais

Dicas para usar melhor o Word 2007

Dicas para usar melhor o Word 2007 Dicas para usar melhor o Word 2007 Quem está acostumado (ou não) a trabalhar com o Word, não costuma ter todo o tempo do mundo disponível para descobrir as funcionalidades de versões recentemente lançadas.

Leia mais

DESENVOLVENDO SOLUÇÕES COM VISUAL FOXPRO 8 E 9

DESENVOLVENDO SOLUÇÕES COM VISUAL FOXPRO 8 E 9 DESENVOLVENDO SOLUÇÕES COM VISUAL FOXPRO 8 E 9 Í N D I C E Capítulo 1 - O Início de Tudo 1 Reunindo todas as informações necessárias 2 Instalando o Visual FoxPro 2 Configurando o Visual FoxPro 7 Capítulo

Leia mais

1. NOÇÕES BÁSICAS... 1.1. Iniciando o Excel... 1.1.1. Abrindo o Excel... 1.1.2. Encerrando o Excel... 1.2. A tela do Excel 7.0... 1.2.1.

1. NOÇÕES BÁSICAS... 1.1. Iniciando o Excel... 1.1.1. Abrindo o Excel... 1.1.2. Encerrando o Excel... 1.2. A tela do Excel 7.0... 1.2.1. 1. NOÇÕES BÁSICAS... 1.1. Iniciando o Excel... 1.1.1. Abrindo o Excel... 1.1.2. Encerrando o Excel... 1.2. A tela do Excel 7.0... 1.2.1. Partes da tela do Excel... Barra de fórmulas... Barra de status...

Leia mais

Identificação das variáveis de entrada; resultados/variáveis de saída e método ou solução. (procedimentos e funções)

Identificação das variáveis de entrada; resultados/variáveis de saída e método ou solução. (procedimentos e funções) Aulas anteriores... Formulação adequada do problema Identificação das variáveis de entrada; resultados/variáveis de saída e método ou solução Definição do algoritmo Método de decomposição hierárquica utilizando

Leia mais

Manual de Atualização Versão 3.6.4.

Manual de Atualização Versão 3.6.4. Manual de Atualização Versão 3.6.4. Sumário 1. AVISO... 1 2. INTRODUÇÃO... 2 3. PREPARAÇÃO PARA ATUALIZAÇÃO... 3 4. ATUALIZANDO GVCOLLEGE E BASE DE DADOS... 7 5. HABILITANDO NOVAS VERSÕES DO SISTEMA....

Leia mais

DESENVOLVIMENTO DE SOFTWARE

DESENVOLVIMENTO DE SOFTWARE VARIAÁ VEL Antes de iniciarmos os comandos referentes a Banco de Dados, precisamos de uma breve descrição técnica sobre Variáveis que serão uma constante em programação seja qual for sua forma de leitura.

Leia mais

Banco de Dados Microsoft Access: Criar tabelas. Vitor Valerio de Souza Campos

Banco de Dados Microsoft Access: Criar tabelas. Vitor Valerio de Souza Campos Banco de Dados Microsoft Access: Criar tabelas Vitor Valerio de Souza Campos Objetivos do curso 1. Criar uma tabela no modo de exibição Folha de Dados. 2. Definir tipos de dados para os campos na tabela.

Leia mais