iOS4 em Ação - Exemplos e Soluções para iPhone e iPad

VITRINE Os TOP de vendas !!

Semana do Consumidor

De: R$ 129,00Por: R$ 89,90

Preço a vista: R$ 89,90

Economia de R$ 39,10

+-
Comprar
Opções de Parcelamento:
  • à vista R$ 89,90
Outras formas de pagamento

Quem viu este produto , comprou

Quem viu este produto , também se interessou

  • Descrição
    iOS4 em Ação - Exemplos e Soluções para iPhone e iPad


    O iOS 4 em ação, escrito para Xcode 4, é um guia detalhado e prático, que vai desde a configuração do seu ambiente de desenvolvimento ? através de suas primeiras etapas de codificação ? até as maneiras para criar um aplicativo iOS 4 polido e comercial. Você percorrerá os exemplos a partir de uma variedade de áreas, incluindo um cliente de bate-papo, um vídeo game, um mapa interativo e áudio em segundo plano. Você também aprenderá como os novos recursos do iOS 4 se aplicam para os seus aplicativos existentes baseados em iOS 3. Este livro o ajudará a se tornar um desenvolvedor iOS 4 confiante e experiente.
  • Sobre o Autor
  • Especificação

    Características

    AssuntosIOS
    Tipo de LivroLivro Físico

    Especificações

    Sobre o Autor Jocelyn Harrington é uma desenvolvedora, em tempo integral, experiente em dispositivos móveis e com dezenas de participações na App Store.


    Brandon Trebitowski é profissional em desenvolvimento móvel e fundador da iCodeBlog.com.

    Christopher Allen é o anfitrião de iphonewebdev.com e organizador de iPhoneDevCamp.

    Shannon Appelcline é escritor, tecnólogo e desenvolvedor de jogos.
    Informações TécnicasSumário


    Capítulo 1 - Introdução ao iOS 4 para iPhone e iPad 1

    1.1 Todos por um e um por todos: a plataforma iOS - 2
    1.2 Compreendendo a interação de toque do iPhone e do iPad - 3
    1.3 Se preparando para o SDK - 5
    1.3.1 .Instalando o SDK - 5
    1.3.2 A anatomia do SDK - 8
    1.4 Introducão ao iOS - 10
    1.4.1 A anatomia do iOS - 10
    1.4.2 A hierarquia de objetos do iOS - 12
    1.4.3 Janelas e visualizações - 14
    1.5 Métodos do iOS -15
    1.5.1 Criação de Objetos - 15
    1.5.2 Gerenciamento de memória - 18
    1.5.3. Resposta a eventos - 20
    1.5.4 Gerenciamento do ciclo de vida - 22
    1.6 Como criar um aplicativo a partir de uma ideia - 23
    1.6.1 A lista de verificação - 24
    1.6.2 Qual é a categoria do seu aplicativo? - 24
    1.6.3 Ganhando dinheiro com seu aplicativo - 26
    1.7 Resumo - 27


    Capítulo 2 - Aprendendo Objective-C - 29
    2.1 Introduzindo o Objective-C - 30
    2.2 A mensagem - 32
    2.2.1 Mensagens com argumentos - 33
    2.2.2 Mensagens aninhadas - 33
    2.2.3 Receptores de mensagem - 34
    2.3 Definição de classe - 35
    2.3.1 A interface - 36
    2.3.2 A implementação - 37
    2.3.3 Instanciação de objetos - 38
    2.4 Propriedades - 38
    2.4.1 O objetivo das propriedades - 38
    2.4.2 Definindo uma propriedade - 39
    2.4.3 Usando os acessores - 40
    2.4.4 A sintax de ponto - 40
    2.4.5 Complexidades de propriedade - 41
    2.5 A diretiva @ - 41
    2.6 Categorias e protocolos - 42
    2.6.1 A categoria - 42
    2.6.2 O protocolo - 43
    2.7 Concluindo o Objective-C - 43
    2.8 Resumo - 45


    Capítulo 3 - Usando Xcode 4 - 47
    3.1 Introdução ao Xcode 4 - 48
    3.2 Usando Xcode 4 para criar o aplicativo HelloWorld - 49
    3.2.1 Criando um novo projeto - 49
    3.2.2 Familiarizando-se com a janela do espaço de trabalho - 52
    3.3 Um olhar mais atento aos arquivos na área de navegação - 54
    3.3.1 Pasta HelloWorld - 54
    3.2.2 Pasta Frameworks e Pasta Product - 60
    3.3.3 Criando e executando um aplicativo no Xcode - 60
    3.3.4. Escrevendo o código do HelloWorld - 62
    3.4 Usando o Interface Builder no Xcode 4 - 66
    3.4.1 A anatomia do Interface Builder - 67
    3.4.2 Criando o aplicativo AppleStock - 71
    3.5 Resumo - 84


    Capítulo 4 - Xcode e depuração - 85
    4.1 Criando uma nova classe em Xcode - 86
    4.1.1 Criando uma nova classe - 86
    4.1.2 O arquivo de cabeçalho - 89
    4.1.3 O arquivo de código fonte - 89
    4.1.4 Conectando - 93
    4.2 Criando objetos com Interface Builder - 94
    4.2.1 Criando novos arquivos nib - 94
    4.2.2 Inicializando objetos do Interface Builder - 95
    4.2.3 Acessando arquivos .xib - 96
    4.2.4 Mais dicas no Xcode - 97
    4.3 Debugger e Instruments - 99
    4.3.1 Função Fix-it - 99
    4.3.2 Analisar - 100
    4.3.3 Fundamentos do Debugger - 100
    4.3.4 Executando Instruments a partir do Xcode - 103
    4.4 Resumo - 105


    Capítulo 5 - Controles de visualização básicos - 107
    5.1 A família do controlador de visualização - 108
    5.2 O controlador de visualização padrão - 110
    5.2.1 A anatomia de um controlador de visualização - 110
    5.2.2 Criando um controlador de visualização - 111
    5.2.3 Criando outro controlador de visualização - 112
    5.2.4 Criando interface de controlador de visualização - 112
    5.2.5 Usando o seu controlador de visualização - 115
    5.3 O controlador de visualização de tabela - 122
    5.3.1 A anatomia de um controlador de visualização de tabela - 123
    5.3.2 Criando um controlador de visualização de tabela - 123
    5.3.4 Usando o seu controlador de visualização de tabela - 133
    5.4 Resumo - 134


    Capítulo 6 - Monitorando eventos e ações - 135
    6.1 Uma introdução a eventos - 136
    6.1.1 A cadeia de respondedores - 136
    6.1.2 Toques e eventos - 138
    6.2 Um exemplo de toque: o relator de eventos - 142
    6.2.1 Configurando as coisas no Interface Builder - 142
    6.2.2 Prepararando uma visualização para toques - 144
    6.2.3 Controlando seus eventos - 146
    6.3 Outra funcionalidade de evento - 149
    6.3.1 Controlando eventos - 150
    6.3.2 Outros métodos e propriedades de eventos - 152
    6.4 Uma introdução a ações - 153
    6.4.1 O objeto UIControl - 153
    6.4.2 Eventos e ações de controle - 154
    6.4.3 Usando addTarget:action:forControlEvents: - 157
    6.5 Adicionando um botão a um aplicativo - 158
    6.5.1 Usando addTarget:action:forControlEvents: com um botão - 158
    6.5.2 Usando um IBAction com um botão - 159
    6.6 Outra funcionalidade de ação - 161
    6.6.1 Aceitando entrada de texto com UITextField - 161
    6.6.2 Permite seleção de valor com UISlider - 164
    6.6.3 Um mashup de TextField/Slider - 164
    6.6.4 Facilitando ações - 167
    6.6.5 Ações em uso - 167
    6.7 Apresentando notificações 115 - 167
    6.8 Resumo - 169


    Capítulo 7 - Controladores de visualização avançados - 171
    7.1 O controlador de visualização de barra de abas - 172
    7.1.1. A anatomia de um controlador de visualização de barra de abas - 172
    7.1.2 Criando um controlador de visualização de barra de abas - 173
    7.1.3 Construção de uma interface de barra de abas - 176
    7.1.4 Usando o seu controlador de barra de abas - 181
    7.2 O controlador de navegação - 183
    7.2.1 A anatomia de um controlador de navegação - 183
    7.2.2 Criando um controlador de navegação - 185
    7.2.3 Concluindo o controlador de navegação - 186
    7.2.4 Usando o seu controlador de navegação - 191
    7.3 Usando o controlador de flipside - 195
    7.4 O controlador de visualização dividida - 198
    7.4.1 Criando um controlador de visualização dividida - 198
    7.4.2 Criando o controlador de visualização dividida - 200
    7.4.3 Usando o seu controlador de visualização dividida - 205
    7.4.4 Ajustando a interface para os modos de visualização retrato e paisagem - 207
    7.5 Controladores Popover e modal - 208
    7.5.1 Criando um controlador de visualização popover - 208
    7.5.2 Criando um controlador de visualização modal - 210
    7.6 Combinando controlador de visualização em aplicativos universais - 211
    7.6.1 Aplicativos de design universal para o iPhone e para o iPad - 211
    7.6.2 Combinando os controladores visualizações - 212
    7.7 Resumo - 214


    Capítulo 8 - Dados: ações, preferências e arquivos - 215
    8.1 Aceitando a ação do usuário - 216
    8.2 Mantendo as preferências do usuário - 218
    8.2.1 Criando suas próprias preferências - 219
    8.2.2 Usando as configurações do sistema - 227
    8.3 Abrindo arquivos - 233
    8.3.1 Acessando o seu pacote - 235
    8.3.2 Acessando outros diretórios - 236
    8.3.3 Manipulando arquivos - 237
    8.3.4 FileSaver: um exemplo UITextView - 240
    8.4 Resumo - 243


    Capítulo 9 - Dados: técnicas avançadas - 245
    9.1 Usando o SQLite - 246
    9.1.1 Criando um banco de dados SQLite - 247
    9.1.2 Acessando o SQLite - 249
    9.1.3 Acessando seu banco de dados de SQLite - 249
    9.1.4 Construindo um menu de navegação a partir de um banco de dados - 251
    9.1.5 Expandindo este exemplo - 261
    9.2 Acessando o Address Book - 261
    9.2.1 Uma visão geral dos frameworks - 261
    9.2.2 Acessando propriedades do Address Book - 263
    9.2.3 Consultando o Address Book - 265
    9.2.4 Usando a interface de usuário Address Book (UI) - 268
    9.3 Uma introdução ao Core Data - 275
    9.3.1 Informação preliminar sobre o Core Data - 276
    9.3.2 Configurando o Core Data em seu aplicativo - 277
    9.3.3 Inicializando objetos Core Data - 280
    9.3.4 Adicionando objetos ao banco de dados - 284
    9.3.5 Buscando (fetching), atualizando e excluindo objetos no Core Data - 285
    9.4 Resumo - 287


    Capítulo 10 - Posicionamento: acelerômetros, localização e a bússola - 289
    10.1 Os acelerômetros e a orientação - 290
    10.1.1 A propriedade de orientação - 290
    10.1.2 A notificação de orientação - 291
    10.2 Os acelerômetros e o movimento - 292
    10.2.1 Acessando o UIAccelerometer - 293
    10.2.2 Analisando sintaticamente o UIAcceleration - 293
    10.2.3 Verificando a gravidade - 294
    10.2.4 Verificando o movimento - 297
    10.2.5 Reconhecendo movimento simples do acelerômetro - 299
    10.3 Os acelerômetros e os gestos - 302
    10.3.1 Usando acelerômetros - 303
    10.3.2 Reconhecedor de gestos - 306
    10.4 Tudo sobre Core Location - 308
    10.4.1 As classes de localização - 309
    10.4.2 Um exemplo usando localização e distância - 312
    10.4.3 Um exemplo usando altitude - 316
    10.4.4 Usando a bússola - 320
    10.4.5 Recuperando dados através da bússola - 321
    10.4.6 Core Location e a internet - 322
    10.5 Resumo - 323


    Capítulo 11 - Mídia: Imagens e a câmera - 325
    11.1 Uma introdução a imagens - 326
    11.1.1 Carregando uma UIImage - 327
    11.1.2 Desenhando uma UIImageView - 328
    11.1.3 Modificando uma imagem dentro do UIKit - 330
    11.2 Desenhando imagens simples com Core Graphics - 331
    11.3 Acessando fotos - 333
    11.3.1 Usando um seletor de imagens - 334
    11.3.2 Tirando fotos - 335
    11.3.3 Salvando para o álbum de fotos - 336
    11.4 Colagem: um exemplo de imagem - 336
    11.4.1 O controlador de visualização da colagem - 337
    11.4.2 A visualização de imagem temporária da colagem - 342
    11.4.3 A visualização da colagem - 343
    11.4.4 Exploração posterior deste exemplo - 345
    11.5 Imprimindo imagens - 345
    11.5.1 O fluxo de trabalho de impressão - 346
    11.5.2 Simulando impressão - 348
    11.5.3 Criando uma imagem demonstrativa de impressão do aplicativo - 349
    11.5.4 Lançando o aplicativo da impressora no Simulador - 352
    11.6 Resumo - 353


    Capítulo 12 - Mídia: Áudio e gravação - 355
    12.1 Reproduzindo o áudio a partir da biblioteca iPod - 356
    12.1.1. Recuperando itens de áudio a partir da biblioteca de mídias do iPod. - 356
    12.1.2 Obtendo informação sobre um MPMediaItem - 359
    12.1.3 Reproduzindo itens de mídia usando MPMusicPlayerController - 360
    12.1.4 Exemplo: criando um aplicativo tocador de mídia simples - 363
    12.2 Gravando Áudio - 367
    12.2.1 Inicializando o gravador de áudio - 367
    12.2.2 Controlando o gravador de áudio - 369
    12.2.3 Respondendo a eventos do AVAudioRecorder - 370
    12.3 Tocando sons - 372
    12.3.1 Inicializando a AVAudioPlayer - 373
    12.3.2 A AVAudioPlayerDelegate - 373
    12.3.3 Controlando a AVAudioPlayer - 375
    12.4 Exemplo: criando um aplicativo simples para gravação e reprodução de áudio - 377
    12.4.1 Criando um aplicativo baseado na visualização - 377
    12.4.2 Adicionando os frameworks necessários - 377
    12.4.3 Configurando as IBActions - 377
    12.4.4 Criando a interface - 379
    12.4.5 Configurando o gravador de áudio e implementando as IBActions - 379
    12.5 Gravando, tocando e acessando vídeo - 381
    12.6 Resumo - 383


    Capítulo 13 - Gráficos: Quartz, Core Animation e OpenGL - 385
    13.1 Uma Introdução ao Quartz 2D - 386
    13.2 O Contexto do Quartz - 387
    13.2.1 Desenhando para uma UIView - 390
    13.2.2 Desenhando para um bitmap - 391
    13.3 Desenhando caminhos - 392
    13.3.1 Terminando um caminho - 394
    13.3.2 Desenhando retângulos - 397
    13.4 Configurando o estado gráfico - 398
    13.4.1 Definindo cores - 399
    13.4.2 Criando transformações - 400
    13.4.3 Definindo caminhos de recortes - 404
    13.4.4 Outras configurações - 405
    13.4.5 Gerenciando o estado - 406
    13.5 Desenhos avançados dentro do Quartz - 407
    13.5.1 Desenhando gradientes - 407
    13.5.2 Desenhando imagens - 410
    13.5.3 Desenhando palavras - 412
    13.5.4 O que nós não abordamos - 414
    13.6 Desenhando sobre uma imagem: um exemplo - 415
    13.6.1 O controlador de visualização do PhotoDraw - 416
    13.6.2 A visualização photodraw - 418
    13.6.3 Expandindo sobre o exemplo - 421
    13.7 Uma introdução à Core Animation - 422
    13.7.1 Os fundamentos da Core Animation - 423
    13.7.2 Dando início à Core Animation - 424
    13.7.3 Desenhando uma animação implícita simples - 424
    13.7.4 Desenhando uma animação explícita simples - 426
    13.8 Uma introdução a OpenGL - 427
    13.9 Resumo - 428


    Capítulo 14 - A web: visualizações web e protocolos de internet - 431
    14.1 A hierarquia da internet - 431
    14.2 Redes de baixo nível - 433
    14.3 Trabalhando com URLs - 435
    14.3.1 Criando um NSURL - 435
    14.3.2 Construindo uma NSURLRequest - 436
    14.3.3 Manipulando dados HTML manualmente - 437
    14.4 Usando UIWebView -439
    14.4.1 Chamando a visualização web - 439
    14.4.2 Gerenciando o delegado da visualização web - 441
    14.4.3 Thumbnails: um exemplo de visualização web - 442
    14.5 Analisando código (parsing) XML - 445
    14.5.1 Inicializando NSXMLParser - 446
    14.5.2 Atuando como delegado - 447
    14.5.3 Construindo um leitor RSS de exemplo - 448
    14.5.4 Altitude redux: um exemplo da Core Location - 455
    14.6 POSTando para a web - 458
    14.6.1 POSTando manualmente - 458
    14.6.2 Submetendo formulários - 460
    14.7 Acessando a web social - 462
    14.7.1 Usando protocolos web - 462
    14.7.2 Usando TouchJSON - 463
    14.8 Resumo - 466


    Capítulo 15 - Conexões ponto a ponto usando Game Kit - 469
    15.1 Visão Geral de um Game Kit - 469
    15.2 Criando aplicativos ponto a ponto usando o seletor de pontos. - 470
    15.2.1 Usando o seletor de pontos embutido da Apple - 471
    15.2.2 Implementando os métodos GKSessionDelegate - 476
    15.2.3 Enviando e recebendo dados entre os pontos - 478
    15.3 Exemplo: criando um jogo de tênis de mesa para múltiplos usuários - 481
    15.3.1 Iniciando o projeto GKTennis - 482
    15.3.2 Criando o arquivo de cabeçalho - 483
    15.3.3 Criando a interface do tênis de mesa - 485
    15.3.4 Inicialização do jogo - 486
    15.3.5 Configurando o seletor de pontos e fazendo a conexão - 487
    15.3.6 Implementando os métodos send e receive - 489
    15.3.7 A iteração do jogo - 492
    15.3.8 Interação do usuário - 496
    15.4 Resumo - 498


    Capítulo 16 - Usando Event Kit no iPhone e iPad - 499
    16.1 Uma visão geral dos frameworks de Event Kit - 500
    16.1.1 Adicionando frameworks de Event Kit ao seu projeto - 500
    16.1.2 Classes do Event Kit - 502
    16.2 Adicionando novos eventos ao Calendário de modo programado - 504
    16.2.1 Adicionando frameworks de Event Kit ao aplicativo de aniversário - 504
    16.2.2 Adicionando um evento ao Calendário - 505
    16.3 Criando um evento com o Controlador de visualização para Event Edit - 507
    16.4 Buscando eventos - 511
    16.4.1 Buscando eventos com o predicado - 511
    16.4.2 Exibindo eventos com o controlador de visualização de eventos - 513
    16.5 Buscando eventos com GCD - 517
    16.5.1 Visão geral do Grand Central Dispatch - 517
    16.5.2 Buscando eventos com GCD - 518
    16.6 Resumo - 519


    Capítulo 17 - Serviços de Notificação Local e de Impulsos - 521
    17.1 O que são notificações local e de impulsos? - 522
    17.2 Implementando notificações locais no aplicativo Timer - 525
    17.3 Uma visão geral do sistema de notificação de impulsos da Apple - 529
    17.4 Preparando o seu aplicativo para usar notificação de impulsos - 531
    17.4.1 Configurando o certificado do seu aplicativo - 531
    17.4.2 Configurando o seu perfil de provisionamento - 532
    17.4.3 O código para tratar notificação de impulsos - 534
    17.4.4 Preparando os arquivos de áudio - 537
    17.5 Criando um provedor de notificação de impulsos em PHP - 538
    17.5.1 Criando o Certificado SSL - 538
    17.5.2 Implementando o provedor PHP para notificação de impulsos - 540
    17.6 Resumo - 542


    Capítulo 18 - O Map Kit framework - 545
    18.1 Adicionar uma visualização do mapa para um aplicativo - 545
    18.1.1 Adicionar o mapa usando o Interface Builder - 546
    18.1.2 Adicionar a visualização do mapa programaticamente - 548
    18.1.3 Controlando o mapa - 548
    18.2 Geocodificação reversa - 553
    18.3 Fazendo anotações no mapa - 556
    18.3.1 Adicionando anotações básicas do mapa - 556
    18.3.2 Adicionando anotações customizadas em mapas - 558
    18.4 Resumo - 565


    Capítulo 19 - Aquisições dentro do aplicativo usando Store Kit - 567
    19.1 Configurando um ambiente de testes sandbox - 568
    19.1.1 Criando um teste do usuário para iTunes - 568
    19.1.2 Adicionando produtos - 571
    19.2 Criando uma interface store simples - 574
    19.2.1 Criando o aplicativo demonstrativo - 575
    19.2.2 Adicionando a Store Kit interface - 576
    19.2.3 Criando produto de papel de parede individual - 579
    19.2.4 Pagamento na Store Kit - 581
    19.3 Resumo - 587


    Capítulo 20 - Fazendo dinheiro com iAd - 589
    20.1 Adicionando um banner de anúncio em seu aplicativo - 590
    20.1.1 Criando um aplicativo simples para a visualização do banner de anúncio - 591
    20.1.2 Adicionando a visualização do banner ao controlador de visualização - 592
    20.2 Suportando tanto modo retrato como modo paisagem - 595
    20.3 Como tratar erros de download de anúncios - 599
    20.3.1 Adicionar um delegado ao controlador de visualização de ADBannerView. - 599
    20.3.2 Simulando tratamento de eventos - 602
    20.4 Indo para a vida real com o aplicativo - 604
    20.5 Resumo - 607


    Capítulo 21 - Introduzindo multitarefa - 609
    21.1 Visão geral sobre múltiplas tarefas - 610
    21.1.1 Ciclo de vida do aplicativo - 612
    21.1.2 Como habilitar multitarefa - 616
    21.2 Estado de segundo plano - 617
    21.2.1 Entendendo o estado de segundo plano - 617
    21.2.2 Selecionando a saída do estado de segundo plano - 618
    21.3 Usando o intercâmbio rápido de aplicativos - 619
    21.3.1 Construindo um aplicativo simples para o intercâmbio rápido de aplicativos - 619
    21.3.2 Atualizando a interface de usuário dentro do controlador de visualização - 621
    21.4 Finalização da tarefa dentro do segundo plano - 624
    21.4.1 A API de finalização de tarefas - 625
    21.4.2 Finalizando uma tarefa dentro do segundo plano. - 626
    21.5 Monitorando modificações de localização em segundo plano - 628
    21.5.1 Uma visão geral do serviço de localização em segundo plano - 629
    21.5.2 Monitorando mudança de localização significativa - 630
    21.5.3 Monitorando mudança de localização baseado na região - 631
    21.6 Resumo - 633


    Capítulo 22 - Multitarefa em profundidade - 635
    22.1 Usando o serviço de monitoramento de localizações - 636
    22.1.1 Atualizando a UI quando o aplicativo é relançado - 636
    22.1.2 Habilitando o serviço de localização de modificação significativa - 639
    22.2 Construindo um aplicativo para reprodução de áudio com o Audio Toolbox framework - 642
    22.3 Habilitando a reprodução de áudio em segundo plano - 652
    22.3.1 Adicionando os UIBackgroundModes dentro do Info.plist - 653
    22.3.2 Tratando os eventos para controle remoto - 654
    22.4 Construindo o aplicativo do áudio em segundo plano - 656
    22.5 Resumo - 659



    Apêndice A - Referência de classe iOS - 661
    A.1 Classes do UIKit framework - 661
    A.2 Classes da Foundation framework - 664
    A.3 Outras classes - 666

    Apêndice B - Fontes e referências externas - 667

    Apêndice C - Publicando o seu aplicativo - 669
    C.1 Fazendo inscrição na Apple - 669
    C.2 Compilando para o dispositivo - 670
    C.3 Preparando para distribuição por meio da App Store - 672

    Apêndice D - Atualizando aplicativos atuais para o iPad - 675
    D.1 Configurando Xcode - 676
    D.2 Atualizando Info.plist para suportar múltiplas orientações - 677
    D.3 Adicionando componentes de interface específicos do iPad - 679
    D.4 Atualizando as suas visualizações para o iPad - 680
    D.5 Adicionando suporte para múltiplas orientações - 683
    Índice - 685

    Informações Técnicas

    Nº de páginas:696
    Origem:Importado
    Editora:Editora Ciência Moderna
    Idioma:Português
    Edição:1ª Edição
    Ano:2012
    ISBN:9788539902743
    Encadernação:Brochura
    Autor:Jocelyn Harrington, Brandon Trebitowski , Christopher Allen, Shannon Appelcline
  • Informações

Avaliação técnica sobre o livro

Olá! Seja Bem Vindo (a)!

Eu sou o Moderninho , o Mascote da Ciência Moderna Online!
Além de bonito, o novo site tem Minhas Dicas :) #ficaadica

A 1ª Dica é -> Deixe aqui seu contato para receber nossas
NOVIDADES, PROMOÇÕES E CUPONS DE DESCONTOS ;)

Navegue SEM Moderação!