Sem resumo de edição
Etiqueta: visualeditor
Linha 8: Linha 8:


== Código fonte de exemplo==
== Código fonte de exemplo==
Exemplo de código chave de uma API do Google Maps:
<syntaxhighlight lang="python3">


    <meta-data
    <meta-data
        android:name="com.google.android.geo.API_KEY"
        android:name="com.google.android.geo.API_KEY"
        android:value="BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75"/>
        android:value="BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75"/>
<syntaxhighlight lang="python3">
Arquivo = "lista_contatos.txt" # Nome do arquivo
def ler_arquivo():              # Função que le o arquivo de texto
    try:                        # Tratamento de erro
        arq = open(Arquivo,"r+") # Abre o arquivo para leitura
        print( '\n'+arq.read() ) # Quebra linha e mostra o conteudo
        arq.close()              # Fecha o arquivo
    except IOError:              # Tratamento de erro
        print('\nArquivo não encontrado!')
def escrever_linhas(texto):        # Função que le e escreve no arquivo
    try:                          # Tratamento de erro
        arq = open(Arquivo,"a+")  # Abre o arquivo para gravação no final do arquivo
        arq.writelines('\n'+texto) # Escreve no arquivo o parametro 'texto'
        arq.close()                # Fecha o arquivo
        print('\nLinha gravada com sucesso')
    except IOError:                # Tratamento de erro
        print('\nErro ao abrir o arquivo!') # Mostra na tela uma mensagem de erro
def pesquisar_contato(nome):
    try:
        arq = open(Arquivo, "r+")
        dicionario = {'nome':'', 'telefone':'', 'email':''}
        achei = False
        # lógica ler arquivo e comparar nome
        for cont, s in enumerate(arq.readlines()):
           
            dicionario['nome'], dicionario['telefone'],dicionario['email'] = s.split(' - ')
            if dicionario['nome'] == nome:
                print(cont)
                print('Nome: %s'% dicionario['nome'])
                print('Telefone: %s'% dicionario['telefone'])
                print('Email: %s'% dicionario['email'])
                achei = True
               
        if not achei:
            print('Não existe %s' % (nome))
       
        # se achou imprime, se não mostra uma mensagem de nao encontrado
        arq.close
       
    except IOError:
        print('\nContato não encontrado')
def excluir_contatos():
    try:
        arq =open('lista_contatos.txt','r+')
        valores = arq.readlines()
        l = []
        splited =[]
        nome = input('Entre com um nome:')
        for x in valores:
            splited=x.split(' - ')
            if splited[0]==nome:
              pass
            else:
                l.append(splited)
       
        arq.close()
        novo_cadastro(l)
    except:
        print('erro')
def novo_cadastro(l):
    arq = open(Arquivo,'w')
    for x in l:
        #print("Nome:%s | Telefone:%s | Email:%s"%(x[0],x[1],x[2]))
        arq.write("%s - %s - %s" %(x[0],x[1],x[2]))
    arq.close()
while(True):
   
    print('\n        Opcões:')
    print(' ')
    print('1 - Cadastrar contato')
    print('2 - Listar dados')
    print('3 - Pesquisar contato')
    print('4 - Excluir contato')
    print('9 - Sair')
    print(' ')
    Op = int(input('Digite a opção desejada:')) # Entrada da opcao pelo teclado
    if Op == 1:                                    # Se a opcao for 1
        nome = input('\nDigite o nome do contato:')      # Entrada do nome pelo teclado
        fone = input('Digite o número do telefone:')# Entrada do telefone pelo teclado
        email = input('Digite o email:')            # Entrada do telefone pelo teclado
        contato = (nome+' - '+fone+' - '+email)    # Recebe o nome + o telefone
        escrever_linhas(str(contato))              # Chama a função que grava em arquivo
    elif Op == 2:                                  # Se a opcao for 2
        ler_arquivo()                              # Chama a função que le o arquivo
    elif Op == 9:                                  # Se a opcao for 0
        break                                      # Quebra o laço infinito
    elif Op == 3:
        nome = input("Digite o nome: ")
        pesquisar_contato(nome)
    elif Op == 4:
        #nome = input ("Digite o nome: ")
        excluir_contatos()
</syntaxhighlight>
</syntaxhighlight>



Edição das 19h24min de 14 de setembro de 2017

Especificação técnica

Descrição minuciosa das características da tecnologia, pormenorização com detalhes técnicos e precisos que esclareçam a destinação, ou uso ou operação. Incluir definições, concepções ou caracterizações

API é um acrônimo de Application Programming Interface, Interface de Programação de Aplicação, traduzindo ao português. Ela é composta de informações que podem ser utilizadas para extrair dados de um certo local e transportá-los para outro local, definindo comportamentos específicos de determinados objetos em uma interface para outras aplicações, para isso é necessário integrar com um software entrando com chave de acesso para ser permitido o fluxo de dados.


Código fonte de exemplo

Exemplo de código chave de uma API do Google Maps:

<syntaxhighlight lang="python3">

    <meta-data         android:name="com.google.android.geo.API_KEY"         android:value="BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75"/> </syntaxhighlight>

Funcionamento

Descrever a forma como a tecnologia funciona descendo nos detalhes de interfaceamento, conexões físicas, sinalização, tráfego de dados ou controle



Software

Explicar basicamente onde o software é utilizado nesta tecnologia informando possíveis linguagens e outras ferramentas como framqworks, banco de dados, etc. Se possível informar link de download ou referência.


Topologia ou Esquema funcional

Desenhar ou plotar  representações visuais estruturadas por meio de diagramas, esquemas, protocolos que exemplfoquem esse tema, logicamente colocando um rodapé explicativo


Conexões

Incluir links (internos ou externos) temas que tem relação com este, explicando detalhes sobre. Limite de 3 internos e 2 externos.


Informações adicionais

Descrever detalhes a mais sobre esse tema.


Referências bibiográficas

Relacionar aqui as referências bibliográficas no padrão ABNT. 
Bases de procura: Artigos, publicações acadêmicas, revistas e sites de fornecedores