O documento discute a introdução à programação, explicando como os computadores executam instruções passo a passo e como a programação fornece essas instruções. Também lista várias tecnologias comuns usadas em programação como HTML, CSS, JavaScript e linguagens como C#, Java e Python. Discute fatores importantes para aprender programação como interação do usuário, armazenamento de dados e conectividade.
El documento presenta el sistema de numeración romano, incluyendo las letras y sus valores equivalentes en decimal, las reglas para sumar y restar valores, y cómo escribir números mayores de 3999. También incluye ejemplos prácticos de cómo descomponer números para escribirlos en romano y ejercicios de conversión entre los sistemas romano y decimal.
Los romanos usaban letras mayúsculas para representar números, con cada letra teniendo un valor. Había reglas para repetir letras y para sumar, restar o multiplicar valores dependiendo de si las letras estaban a la izquierda o derecha de otras letras o si tenían una raya encima.
O documento discute como aplicativos conectados funcionam, usando uma rede social como exemplo. Ele explica que aplicativos precisam de três componentes: (1) um navegador para mostrar informações, (2) um servidor de aplicação para processar requisições e (3) um servidor de dados para armazenar dados. O documento também fornece instruções sobre como começar a programar usando HTML no Bloco de Notas e o Visual Studio.
1. O documento apresenta as credenciais acadêmicas e experiência profissional do professor João Marcos, incluindo pós-graduações, certificações e anos de experiência com diferentes linguagens de programação.
2. A aula irá apresentar o conteúdo de Algoritmos e Técnicas de Programação, incluindo explicações sobre o que são algoritmos, resolução do problema da Torre de Hanói, e introdução à linguagem de programação Portugol.
3. As formas de avaliação, bibliografias utilizadas e esclarec
Desenvolvimento de Aplicações para Dispositivos Móveis: Aplicativos Nativos, ...Pedro Edson Silva Barros
10/2017 - Ministrei palestra com o tema: “Desenvolvimento de Aplicações para Dispositivos Móveis: Aplicativos Nativos, Híbridos ou Web Apps. Qual utilizar?”, durante o VII Congresso Acadêmico da Uncisal - CACUN, realizado no Hotel Best Western Premier;
O documento descreve como usar a ferramenta Google App Inventor para criar aplicativos Android sem programação. Ele explica o que é o App Inventor, por que usá-lo, o que pode ser criado e não pode ser criado com ele. Também fornece instruções passo a passo para criar três aplicativos simples: um que mostra uma saudação, uma calculadora básica e um jogo de pintura.
Dicas, truques, experiências de uma equipe desenvolvendo projetos mobile nos últimos 4 anos. O que deu certo, o que deu errado, as armadilhas, os sucessos e problemas.
12/2017 - Ministrei palestra com o tema: “Aplicativos Móveis: PWA, Instants Apps. Vamos entender?”, durante o Alagoas Developers, realizado na Faculdade da Cidade de Maceió - FACIMA.
El documento presenta el sistema de numeración romano, incluyendo las letras y sus valores equivalentes en decimal, las reglas para sumar y restar valores, y cómo escribir números mayores de 3999. También incluye ejemplos prácticos de cómo descomponer números para escribirlos en romano y ejercicios de conversión entre los sistemas romano y decimal.
Los romanos usaban letras mayúsculas para representar números, con cada letra teniendo un valor. Había reglas para repetir letras y para sumar, restar o multiplicar valores dependiendo de si las letras estaban a la izquierda o derecha de otras letras o si tenían una raya encima.
O documento discute como aplicativos conectados funcionam, usando uma rede social como exemplo. Ele explica que aplicativos precisam de três componentes: (1) um navegador para mostrar informações, (2) um servidor de aplicação para processar requisições e (3) um servidor de dados para armazenar dados. O documento também fornece instruções sobre como começar a programar usando HTML no Bloco de Notas e o Visual Studio.
1. O documento apresenta as credenciais acadêmicas e experiência profissional do professor João Marcos, incluindo pós-graduações, certificações e anos de experiência com diferentes linguagens de programação.
2. A aula irá apresentar o conteúdo de Algoritmos e Técnicas de Programação, incluindo explicações sobre o que são algoritmos, resolução do problema da Torre de Hanói, e introdução à linguagem de programação Portugol.
3. As formas de avaliação, bibliografias utilizadas e esclarec
Desenvolvimento de Aplicações para Dispositivos Móveis: Aplicativos Nativos, ...Pedro Edson Silva Barros
10/2017 - Ministrei palestra com o tema: “Desenvolvimento de Aplicações para Dispositivos Móveis: Aplicativos Nativos, Híbridos ou Web Apps. Qual utilizar?”, durante o VII Congresso Acadêmico da Uncisal - CACUN, realizado no Hotel Best Western Premier;
O documento descreve como usar a ferramenta Google App Inventor para criar aplicativos Android sem programação. Ele explica o que é o App Inventor, por que usá-lo, o que pode ser criado e não pode ser criado com ele. Também fornece instruções passo a passo para criar três aplicativos simples: um que mostra uma saudação, uma calculadora básica e um jogo de pintura.
Dicas, truques, experiências de uma equipe desenvolvendo projetos mobile nos últimos 4 anos. O que deu certo, o que deu errado, as armadilhas, os sucessos e problemas.
12/2017 - Ministrei palestra com o tema: “Aplicativos Móveis: PWA, Instants Apps. Vamos entender?”, durante o Alagoas Developers, realizado na Faculdade da Cidade de Maceió - FACIMA.
Aula 3.1 análise de sistemas homem-máquinaDaniel Moura
O documento discute interfaces homem-máquina, definindo interfaces como a superfície de contato entre o usuário e o sistema. Ele ressalta a importância de estudar interfaces para garantir que os usuários aceitem e usem sistemas de forma eficaz, e discute como as expectativas e comportamentos dos usuários devem ser levados em conta no projeto de interfaces.
Aula 3.1 análise de sistemas homem-máquinaDaniel Moura
O documento discute interfaces homem-máquina, definindo interfaces como a superfície de contato entre o usuário e o sistema e analisando porque é importante estudar interfaces para melhorar a usabilidade e a aceitação dos sistemas pelos usuários. O texto também descreve os desafios de projetar interfaces intuitivas considerando as expectativas e limitações dos diferentes tipos de usuários.
O documento descreve a ferramenta App Inventor, desenvolvida pela Google, que permite criar aplicativos para Android sem conhecimento de programação. Explica que o App Inventor é fácil de usar por ter uma interface clique-e-arraste e blocos de programação encaixáveis, e que pode ser usado para criar diversos tipos de aplicativos, como jogos e aplicativos educacionais.
O documento discute o desenvolvimento de aplicativos híbridos usando o framework Ionic. Descreve um projeto de aplicativo móvel para votação em tempo real desenvolvido com Ionic e as vantagens e desafios encontrados. Também fornece detalhes sobre como configurar e usar o Ionic, incluindo templates, plugins, build e publicação.
Desenvolvimento de aplicações móveis, IOS, Android, Windows Phone 7Dirceu Belém
Este documento discute o desenvolvimento de aplicativos móveis para plataformas como iPad, iPhone, Android, BlackBerry, Symbian, Windows Mobile e Phone 7. Ele também aborda tópicos como tipos de aplicativos, quanto pode ser ganho com aplicativos e como começar a aprender a desenvolver aplicativos móveis.
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhoneHenrique Perticarati
Usuários de Android interagem com seu smartphone de outra forma. Ok, é parecido, mas não é nem de longe igual.
Com 66% de mercado no Brasil e crescendo a cada mês, o Android possui um Design de Interação consistente e que é usado por Facebook, Evernote, Dropbox, Whatsapp e pelos apps mais bem avaliados na PlayStore.
Na hora de planejar seu app, tome corretamente a decisão que pode levá-lo à boa aceitação, ou ao fracasso total! Por que não aderir e oferecer ao seu usuário a melhor experiência?
Apostila informática básica e introdução à internetBudu Serra
O documento descreve um curso de informática básica para servidores municipais de Maricá, Rio de Janeiro. O curso abordará sistemas operacionais Windows, navegadores da internet, e aplicativos do Microsoft Office como Word, Excel e PowerPoint. O curso será ministrado de forma teórico-prática utilizando computadores e materiais institucionais.
As vantagens de se tornar um desenvolvedor mobileDirceu Belém
O documento apresenta as vantagens de se tornar um desenvolvedor mobile, discutindo: (1) a alta demanda por profissionais na área e salários maiores; (2) como as habilidades de desenvolvimento web podem ser aplicadas em aplicativos móveis; (3) o crescimento do mercado mobile e sua importância. É recomendado estudar muito sobre linguagens, ferramentas, APIs e guidelines para aplicativos antes de iniciar a carreira.
Explorando o Mundo Apple, Desenvolvendo Aplicativos para IOS - Felipe Martins...Impacta Eventos
• Público-alvo :
Estudantes de cursos de graduação e cursos técnicos de tecnologia que desejam explorar a linguagem de programação iOS.
Profissionais da área de desenvolvimento de aplicativos móveis, incluindo jogos e aplicativos para celulares, com experiência prévia.
Profissionais autônomos com alguma familiaridade em programação orientada a objetos.
• Objetivo: apresentar conceitos e técnicas relativos ao ambiente de desenvolvimento iOS e sua aderência no cenário tecnológico atual.
• Conteúdo programático:
Apresentação;
Cenário de celulares no Brasil e no mundo;
Participação da plataforma iOS no Mercado;
Áreas de atuação;
Ambiente de programação "xcode";
Programa Apple Developer;
Cases de mercado;
O documento fornece uma introdução ao App Inventor, uma plataforma online para criação de aplicativos Android sem necessidade de código. Discute como o App Inventor permite desenvolver aplicativos de forma visual arrastando e soltando componentes, e como os blocos de programação são usados para adicionar comportamento. Também mostra um exemplo simples de um aplicativo criado no App Inventor que exibe uma mensagem quando um botão é clicado.
Primeiros passos Windows Phone - 3º Campo Grande Game ShowLeandro Borges
O documento fornece uma introdução sobre desenvolvimento para Windows Phone, cobrindo tópicos como o sistema operacional, hardware necessário, ferramentas de desenvolvimento gratuitas como Visual Studio e SDK, registro de dispositivos, frameworks XNA e Silverlight, ciclo de vida de um jogo, publicação de aplicativos e monetização.
O documento discute o desenvolvimento de aplicativos para o Apple Watch, destacando que estes devem ser extensões leves de aplicativos para iPhone, focadas em ações rápidas. Apresenta os recursos do Apple Watch como notificações, visualização de passes de ingresso e informações de eventos pelo app Ingresse, além de dicas sobre compartilhamento de dados, navegação e uso do Handoff entre dispositivos.
If baiano ihc - aula 06 - comunicabilidadeIFBaiano
O documento discute a importância da comunicabilidade na interface entre humanos e computadores. Apresenta vários tipos de "expressões da comunicabilidade" que descrevem falhas comuns na interação, como "Cadê?", "E agora?" e "Para mim está bom...". Discute a detecção de falhas de comunicabilidade por meio de testes de usabilidade para melhorar a interface e a compreensão do usuário.
O documento apresenta a plataforma OpenDevice para Internet das Coisas (IoT), que fornece ferramentas e APIs para construção de soluções IoT. A plataforma permite monitorar e controlar dispositivos como Arduino e Raspberry Pi de forma independente de linguagem e plataforma, abstraindo detalhes de comunicação. Exemplos demonstram como usar OpenDevice com Java, JavaScript e Arduino para controlar LEDs de forma interativa e em tempo real.
Prototipação é um processo fundamental no desenvolvimento de interfaces. Existem diferentes tipos de protótipos como cenários, storyboards e protótipos de baixa e alta fidelidade que podem ser usados em diferentes estágios para comunicar ideias, testar funcionalidades e obter feedback dos usuários antes do desenvolvimento final.
O documento apresenta um roteiro para um curso sobre Phonegap e desenvolvimento mobile. No primeiro dia é feita uma introdução à computação móvel e ao desenvolvimento para Android. No segundo dia é apresentado o Phonegap, como instalá-lo e configurá-lo, além dos recursos da Phonegap API. No terceiro dia é mostrado um exemplo de aplicação.
O documento discute interfaces homem-máquina de três formas:
1) Define interfaces como a interação entre usuários e sistemas, sendo importante projetá-las de forma a facilitar a conversação entre ambos.
2) Explica que usuários têm diferentes perfis e experiências, trazendo expectativas que devem ser levadas em conta ao desenvolver interfaces.
3) Aponta problemas comuns em interfaces como instruções pouco claras e tentativa-e-erro, enfatizando a necessidade de entender os usuários para criar soluções amigáveis.
Este documento apresenta conceitos básicos de informática para estudos on-line, abordando:
1) Partes de um computador como hardware, software, periféricos e suas funções;
2) Sistema operacional Windows 10, área de trabalho e navegadores;
3) Ferramentas para estudo on-line como armazenamento na nuvem e boas práticas para aulas virtuais.
As classes de modelagem podem ser comparadas a moldes ou
formas que definem as características e os comportamentos dos
objetos criados a partir delas. Vale traçar um paralelo com o projeto de
um automóvel. Os engenheiros definem as medidas, a quantidade de
portas, a potência do motor, a localização do estepe, dentre outras
descrições necessárias para a fabricação de um veículo
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...Faga1939
Este artigo tem por objetivo apresentar como ocorreu a evolução do consumo e da produção de energia desde a pré-história até os tempos atuais, bem como propor o futuro da energia requerido para o mundo. Da pré-história até o século XVIII predominou o uso de fontes renováveis de energia como a madeira, o vento e a energia hidráulica. Do século XVIII até a era contemporânea, os combustíveis fósseis predominaram com o carvão e o petróleo, mas seu uso chegará ao fim provavelmente a partir do século XXI para evitar a mudança climática catastrófica global resultante de sua utilização ao emitir gases do efeito estufa responsáveis pelo aquecimento global. Com o fim da era dos combustíveis fósseis virá a era das fontes renováveis de energia quando prevalecerá a utilização da energia hidrelétrica, energia solar, energia eólica, energia das marés, energia das ondas, energia geotérmica, energia da biomassa e energia do hidrogênio. Não existem dúvidas de que as atividades humanas sobre a Terra provocam alterações no meio ambiente em que vivemos. Muitos destes impactos ambientais são provenientes da geração, manuseio e uso da energia com o uso de combustíveis fósseis. A principal razão para a existência desses impactos ambientais reside no fato de que o consumo mundial de energia primária proveniente de fontes não renováveis (petróleo, carvão, gás natural e nuclear) corresponde a aproximadamente 88% do total, cabendo apenas 12% às fontes renováveis. Independentemente das várias soluções que venham a ser adotadas para eliminar ou mitigar as causas do efeito estufa, a mais importante ação é, sem dúvidas, a adoção de medidas que contribuam para a eliminação ou redução do consumo de combustíveis fósseis na produção de energia, bem como para seu uso mais eficiente nos transportes, na indústria, na agropecuária e nas cidades (residências e comércio), haja vista que o uso e a produção de energia são responsáveis por 57% dos gases de estufa emitidos pela atividade humana. Neste sentido, é imprescindível a implantação de um sistema de energia sustentável no mundo. Em um sistema de energia sustentável, a matriz energética mundial só deveria contar com fontes de energia limpa e renováveis (hidroelétrica, solar, eólica, hidrogênio, geotérmica, das marés, das ondas e biomassa), não devendo contar, portanto, com o uso dos combustíveis fósseis (petróleo, carvão e gás natural).
Aula 3.1 análise de sistemas homem-máquinaDaniel Moura
O documento discute interfaces homem-máquina, definindo interfaces como a superfície de contato entre o usuário e o sistema. Ele ressalta a importância de estudar interfaces para garantir que os usuários aceitem e usem sistemas de forma eficaz, e discute como as expectativas e comportamentos dos usuários devem ser levados em conta no projeto de interfaces.
Aula 3.1 análise de sistemas homem-máquinaDaniel Moura
O documento discute interfaces homem-máquina, definindo interfaces como a superfície de contato entre o usuário e o sistema e analisando porque é importante estudar interfaces para melhorar a usabilidade e a aceitação dos sistemas pelos usuários. O texto também descreve os desafios de projetar interfaces intuitivas considerando as expectativas e limitações dos diferentes tipos de usuários.
O documento descreve a ferramenta App Inventor, desenvolvida pela Google, que permite criar aplicativos para Android sem conhecimento de programação. Explica que o App Inventor é fácil de usar por ter uma interface clique-e-arraste e blocos de programação encaixáveis, e que pode ser usado para criar diversos tipos de aplicativos, como jogos e aplicativos educacionais.
O documento discute o desenvolvimento de aplicativos híbridos usando o framework Ionic. Descreve um projeto de aplicativo móvel para votação em tempo real desenvolvido com Ionic e as vantagens e desafios encontrados. Também fornece detalhes sobre como configurar e usar o Ionic, incluindo templates, plugins, build e publicação.
Desenvolvimento de aplicações móveis, IOS, Android, Windows Phone 7Dirceu Belém
Este documento discute o desenvolvimento de aplicativos móveis para plataformas como iPad, iPhone, Android, BlackBerry, Symbian, Windows Mobile e Phone 7. Ele também aborda tópicos como tipos de aplicativos, quanto pode ser ganho com aplicativos e como começar a aprender a desenvolver aplicativos móveis.
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhoneHenrique Perticarati
Usuários de Android interagem com seu smartphone de outra forma. Ok, é parecido, mas não é nem de longe igual.
Com 66% de mercado no Brasil e crescendo a cada mês, o Android possui um Design de Interação consistente e que é usado por Facebook, Evernote, Dropbox, Whatsapp e pelos apps mais bem avaliados na PlayStore.
Na hora de planejar seu app, tome corretamente a decisão que pode levá-lo à boa aceitação, ou ao fracasso total! Por que não aderir e oferecer ao seu usuário a melhor experiência?
Apostila informática básica e introdução à internetBudu Serra
O documento descreve um curso de informática básica para servidores municipais de Maricá, Rio de Janeiro. O curso abordará sistemas operacionais Windows, navegadores da internet, e aplicativos do Microsoft Office como Word, Excel e PowerPoint. O curso será ministrado de forma teórico-prática utilizando computadores e materiais institucionais.
As vantagens de se tornar um desenvolvedor mobileDirceu Belém
O documento apresenta as vantagens de se tornar um desenvolvedor mobile, discutindo: (1) a alta demanda por profissionais na área e salários maiores; (2) como as habilidades de desenvolvimento web podem ser aplicadas em aplicativos móveis; (3) o crescimento do mercado mobile e sua importância. É recomendado estudar muito sobre linguagens, ferramentas, APIs e guidelines para aplicativos antes de iniciar a carreira.
Explorando o Mundo Apple, Desenvolvendo Aplicativos para IOS - Felipe Martins...Impacta Eventos
• Público-alvo :
Estudantes de cursos de graduação e cursos técnicos de tecnologia que desejam explorar a linguagem de programação iOS.
Profissionais da área de desenvolvimento de aplicativos móveis, incluindo jogos e aplicativos para celulares, com experiência prévia.
Profissionais autônomos com alguma familiaridade em programação orientada a objetos.
• Objetivo: apresentar conceitos e técnicas relativos ao ambiente de desenvolvimento iOS e sua aderência no cenário tecnológico atual.
• Conteúdo programático:
Apresentação;
Cenário de celulares no Brasil e no mundo;
Participação da plataforma iOS no Mercado;
Áreas de atuação;
Ambiente de programação "xcode";
Programa Apple Developer;
Cases de mercado;
O documento fornece uma introdução ao App Inventor, uma plataforma online para criação de aplicativos Android sem necessidade de código. Discute como o App Inventor permite desenvolver aplicativos de forma visual arrastando e soltando componentes, e como os blocos de programação são usados para adicionar comportamento. Também mostra um exemplo simples de um aplicativo criado no App Inventor que exibe uma mensagem quando um botão é clicado.
Primeiros passos Windows Phone - 3º Campo Grande Game ShowLeandro Borges
O documento fornece uma introdução sobre desenvolvimento para Windows Phone, cobrindo tópicos como o sistema operacional, hardware necessário, ferramentas de desenvolvimento gratuitas como Visual Studio e SDK, registro de dispositivos, frameworks XNA e Silverlight, ciclo de vida de um jogo, publicação de aplicativos e monetização.
O documento discute o desenvolvimento de aplicativos para o Apple Watch, destacando que estes devem ser extensões leves de aplicativos para iPhone, focadas em ações rápidas. Apresenta os recursos do Apple Watch como notificações, visualização de passes de ingresso e informações de eventos pelo app Ingresse, além de dicas sobre compartilhamento de dados, navegação e uso do Handoff entre dispositivos.
If baiano ihc - aula 06 - comunicabilidadeIFBaiano
O documento discute a importância da comunicabilidade na interface entre humanos e computadores. Apresenta vários tipos de "expressões da comunicabilidade" que descrevem falhas comuns na interação, como "Cadê?", "E agora?" e "Para mim está bom...". Discute a detecção de falhas de comunicabilidade por meio de testes de usabilidade para melhorar a interface e a compreensão do usuário.
O documento apresenta a plataforma OpenDevice para Internet das Coisas (IoT), que fornece ferramentas e APIs para construção de soluções IoT. A plataforma permite monitorar e controlar dispositivos como Arduino e Raspberry Pi de forma independente de linguagem e plataforma, abstraindo detalhes de comunicação. Exemplos demonstram como usar OpenDevice com Java, JavaScript e Arduino para controlar LEDs de forma interativa e em tempo real.
Prototipação é um processo fundamental no desenvolvimento de interfaces. Existem diferentes tipos de protótipos como cenários, storyboards e protótipos de baixa e alta fidelidade que podem ser usados em diferentes estágios para comunicar ideias, testar funcionalidades e obter feedback dos usuários antes do desenvolvimento final.
O documento apresenta um roteiro para um curso sobre Phonegap e desenvolvimento mobile. No primeiro dia é feita uma introdução à computação móvel e ao desenvolvimento para Android. No segundo dia é apresentado o Phonegap, como instalá-lo e configurá-lo, além dos recursos da Phonegap API. No terceiro dia é mostrado um exemplo de aplicação.
O documento discute interfaces homem-máquina de três formas:
1) Define interfaces como a interação entre usuários e sistemas, sendo importante projetá-las de forma a facilitar a conversação entre ambos.
2) Explica que usuários têm diferentes perfis e experiências, trazendo expectativas que devem ser levadas em conta ao desenvolver interfaces.
3) Aponta problemas comuns em interfaces como instruções pouco claras e tentativa-e-erro, enfatizando a necessidade de entender os usuários para criar soluções amigáveis.
Este documento apresenta conceitos básicos de informática para estudos on-line, abordando:
1) Partes de um computador como hardware, software, periféricos e suas funções;
2) Sistema operacional Windows 10, área de trabalho e navegadores;
3) Ferramentas para estudo on-line como armazenamento na nuvem e boas práticas para aulas virtuais.
As classes de modelagem podem ser comparadas a moldes ou
formas que definem as características e os comportamentos dos
objetos criados a partir delas. Vale traçar um paralelo com o projeto de
um automóvel. Os engenheiros definem as medidas, a quantidade de
portas, a potência do motor, a localização do estepe, dentre outras
descrições necessárias para a fabricação de um veículo
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...Faga1939
Este artigo tem por objetivo apresentar como ocorreu a evolução do consumo e da produção de energia desde a pré-história até os tempos atuais, bem como propor o futuro da energia requerido para o mundo. Da pré-história até o século XVIII predominou o uso de fontes renováveis de energia como a madeira, o vento e a energia hidráulica. Do século XVIII até a era contemporânea, os combustíveis fósseis predominaram com o carvão e o petróleo, mas seu uso chegará ao fim provavelmente a partir do século XXI para evitar a mudança climática catastrófica global resultante de sua utilização ao emitir gases do efeito estufa responsáveis pelo aquecimento global. Com o fim da era dos combustíveis fósseis virá a era das fontes renováveis de energia quando prevalecerá a utilização da energia hidrelétrica, energia solar, energia eólica, energia das marés, energia das ondas, energia geotérmica, energia da biomassa e energia do hidrogênio. Não existem dúvidas de que as atividades humanas sobre a Terra provocam alterações no meio ambiente em que vivemos. Muitos destes impactos ambientais são provenientes da geração, manuseio e uso da energia com o uso de combustíveis fósseis. A principal razão para a existência desses impactos ambientais reside no fato de que o consumo mundial de energia primária proveniente de fontes não renováveis (petróleo, carvão, gás natural e nuclear) corresponde a aproximadamente 88% do total, cabendo apenas 12% às fontes renováveis. Independentemente das várias soluções que venham a ser adotadas para eliminar ou mitigar as causas do efeito estufa, a mais importante ação é, sem dúvidas, a adoção de medidas que contribuam para a eliminação ou redução do consumo de combustíveis fósseis na produção de energia, bem como para seu uso mais eficiente nos transportes, na indústria, na agropecuária e nas cidades (residências e comércio), haja vista que o uso e a produção de energia são responsáveis por 57% dos gases de estufa emitidos pela atividade humana. Neste sentido, é imprescindível a implantação de um sistema de energia sustentável no mundo. Em um sistema de energia sustentável, a matriz energética mundial só deveria contar com fontes de energia limpa e renováveis (hidroelétrica, solar, eólica, hidrogênio, geotérmica, das marés, das ondas e biomassa), não devendo contar, portanto, com o uso dos combustíveis fósseis (petróleo, carvão e gás natural).
A linguagem C# aproveita conceitos de muitas outras linguagens,
mas especialmente de C++ e Java. Sua sintaxe é relativamente fácil, o que
diminui o tempo de aprendizado. Todos os programas desenvolvidos devem
ser compilados, gerando um arquivo com a extensão DLL ou EXE. Isso torna a
execução dos programas mais rápida se comparados com as linguagens de
script (VBScript , JavaScript) que atualmente utilizamos na internet
Em um mundo cada vez mais digital, a segurança da informação tornou-se essencial para proteger dados pessoais e empresariais contra ameaças cibernéticas. Nesta apresentação, abordaremos os principais conceitos e práticas de segurança digital, incluindo o reconhecimento de ameaças comuns, como malware e phishing, e a implementação de medidas de proteção e mitigação para vazamento de senhas.
2. Como funciona um computador?
• O computador é um aparelho que talvez pareça mais
complexo do que outros, mas depende das instruções para
saber o que fazer. Por exemplo, quando você pressiona o
botão de ligação, o computador mostra seu logo, depois
carrega o Windows, depois de uns minutos aparece o
ponteiro do mouse para poder começar a usá-lo, depois
carrega a área de trabalho e assim por diante.
• Parece que ele é inteligente, mas quase sempre faz a
mesma coisa, na mesma ordem. Ele está cumprindo
ordens.
• A programação é simplesmente as ordens que o
computador precisa para fazer alguma coisa, do mais
simples até o mais complexo, mas todas elas são ordens.
3. Como forneço essas ordens?
• Ao longo do curso, vamos aprender como
fornecer essas ordens e você vai encontrar
muitos termos estranhos para denominar cada
uma das formas de fornecer essas ordens.
• Você vai começar a escutar termos como HTML,
CSS, Javascript, C#, MVC, Java, SQL, Ruby, Python,
C, C++, WPF, Android, IOS, Windows Phone,
Windows 8 , Serviços REST, JSON, XML, AJAX,
AJAJ.
4. Dominar a Matrix
• Vamos começar por aqui. Você está lendo este
curso, neste computador, devido a que
alguém escreveu um programa que
chamaram Sistema Operacional e a que outras
pessoas escreveram o programa chamado
Internet Explorer para navegar na Internet e
chegar até aqui. Alguém também programou
este site para que você encontre este
documento.
5. Dominar a Matrix (continuação)
• Você usou o telefone hoje para uma
mensagem ou para falar? Você pode se
comunicar porque na companhia telefônica
existem programas informáticos que verificam
quem é você, se você tem saldo na conta para
realizar a ligação, através do número que você
marcou detecta para quem está ligando,
localiza onde está essa pessoa, envia um sinal
para que toque o telefone do destinatário e
estabelece a ligação.
6. Como funcionam as coisas?
• Já dissemos que os aparelhos não são
inteligentes, só sabem fazer uma tarefa
repetidamente de forma muito eficiente.
• Cada vez que vemos que uma tarefa é realizada
sempre da mesma forma, ela é candidata para
criar um programa para que seja feita
automaticamente.
• Portanto, devemos compreender que programar
é simplesmente dizer para o computador como é
a sequência de passos para conseguir realizar
uma tarefa.
7. Exemplo com um jogo
• Temos um jogo com uma personagem. Ao
pressionar o botão do joystick, ele pula.
• Se o botão é pressionado repetidamente, a
personagem pula da mesma forma que a vez
anterior.
• Vamos pensar só na personagem pulando,
sem considerar o que acontece no resto do
jogo.
8. Exemplo com um jogo (continuação)
• A personagem pula porque alguém escreveu, com uma linguagem de
programação, como deve se comportar a personagem. Os passos seriam:
– Desenhar a personagem na tela
– Ficar esperando que o usuário realize alguma coisa com o joystick
– Receber um sinal do joystick, o usuário pressionou um botão
– Qual botão pressionou? Se pressionou acima, continuar
– Ler a posição atual da personagem na tela
– Calcular a distância de pulo, 20 pixels, 30 pixels
– Carregar a sequência de imagens com cada quadro de personagem pulando
– Imprimir na tela cada uma das sequências, mudando a posição na tela
– Voltar para o passo 2.
• Aliás, um jogo não é só uma personagem que pode pular. Há muitas coisas
que acontecem ao mesmo tempo, mas elas são... mais linhas de código
realizadas por um programador.
9. Primeira regra do programador:
"Todo comportamento repetitivo e predizível
pode ser programável."
10. Um braço robótico
• Se descrevemos a sequência de passos para dirigir um
braço robótico, como no exemplo do jogo, há uma
semelhança:
• Ambos os dois estão executando uma série de passos
lógicos, ordenados e sequenciais.
• Diante da mesma ação, o mesmo resultado.
• Isso é devido a uma codificação em um programa
informático, na linguagem que for, mas há uma grande
diferença:
• Enquanto o braço robótico interage com o mundo físico,
movendo parte de um lado para outro, o outro programa
só interage com um mundo virtual, imprimindo imagens na
tela.
11. Um braço robótico (continuação)
• Ambos os processos precisam de um programa informático que os
controle e o programador é quem escreve essa série de passos.
• A única diferença é a interação com o mundo exterior.
• No caso da robótica, além de executar os passos, é necessário que
o resultado da sequência de passos ative mecanismos físicos para
mover cada uma das engrenagens do braço.
• Entretanto, o sistema informático para consultar o álbum só teve
que interagir com o mundo exterior, imprimindo o resultado na
tela.
• A chave para desenhar qualquer sistema é levar em conta como
serão as interações com o mundo exterior.
• Nesse curso, vamos tratar dos processos virtuais, aqueles que não
têm interação física além de ler valores de uma interface de
usuário e processar essa interação para atingir um resultado.
12. Aplicativos conectados ou
desconectados
• Na hora de realizar um aplicativo, é importante
decidir se precisamos que o programa dependa
de uma conexão a Internet ou que funcione
mesmo quando não houver conexão.
• O primeiro ponto para diferenciar é se os
aplicativos são conectados ou desconectados.
• Os aplicativos conectados são aqueles que para
funcionar precisam uma conexão a Internet. Do
contrário, eles não funcionam.
• Um exemplo podem ser os jogos em rede. Sem
conexão, eles não funcionam.
13. Web sites
• Então... um web site é um aplicativo?
• Se o web site permite realizar alguma coisa, ele é um
aplicativo conectado, já que só funciona com Internet.
• Quando um web site serve para realizar alguma coisa
concreta, ele interage com o usuário, realiza alguma coisa
com as informações e fornece um resultado, então ele é
um aplicativo.
• A diferença principal entre um web site e um aplicativo
web é que no aplicativo web o usuário pode interagir e
alterar o resultado conforme essa interação.
• Os web sites que permitem realizar alguma coisa são
aplicativos web conectados.
14. Aplicativos conectados
• O aplicativo desconectado deve ser instalado
ou rodado de algum meio presente
fisicamente para poder ser utilizado, enquanto
o aplicativo conectado pode ser usado
diretamente acessando a Internet.
• Exemplo: Microsoft Word, Visual Studio, etc.
15. O que preciso para aprender a
programar?
• Para saber programar você precisa saber duas ou três
linguagens de programação e duas ou três tecnologias
adicionais, e considerar 4 fatores principais:
• Como vou interagir com o usuário?
Devo decidir como quero que o usuário se comunique com o
aplicativo.
– O usuário utiliza o smartphone, pressiona botões, usa a
câmera.
– O usuário acessa um site para utilizar meu aplicativo.
– O usuário utiliza sensores físicos, teclados especiais,
joysticks ou telas tácteis.
16. O que preciso para aprender a
programar? (continuação)
• Preciso lembrar informações?
Devo decidir se o aplicativo salva meus dados, se
mantém estatísticas, escores, se salva informações
que podem ser recuperadas em qualquer momento.
– O usuário não salva nenhum tipo de informações.
Cada vez que usa o aplicativo é como começar de
novo.
– O usuário salva informações e pode recuperá-las.
17. O que preciso para aprender a
programar? (continuação)
• Preciso conexão permanente para funcionar?
Devo decidir se meu aplicativo precisa se comunicar
com outros usuários para funcionar ou se depende
da existência de conexão à Internet para ser
executado.
– O usuário interage com outros usuários, e vê
informações deles ou se comunica com eles.
– O usuário não instala nada para executar o
aplicativo, simplesmente acessa um site.
18. O que preciso para aprender a
programar? (continuação)
• Se o aplicativo precisa se conectar com outros
aplicativos
– O aplicativo utiliza mapas de Internet ou conexão com
outros aplicativos para compartilhar informações.
– O aplicativo acessa servidores com stats de usuários.
– O aplicativo não precisa se conectar com ninguém.
A tecnologia que usaremos dependerá do que
precisarmos realizar.
19. Tecnologias
• O usuário acessa através de uma página web?
– HTML + CSS + Javascript
– Adobe Air + Java
• O usuário acessa através de um aplicativo em um
telefone celular?
– PhoneGap + HTML + CSS + Javascript
– O telefone é Windows Phone?
• Windows Mobile WPF + Window Phone + C# .NET
– O telefone é Android?
• Android Development Kit + Java
– O telefone é IPhone?
• IOS SDK + Objective C
20. Tecnologias
• O usuário acessa através de um tablet?
– PhoneGap + HTML + CSS + Javascript
– O tablet tem Windows 8?
• Windows WPF + Window 8 + C# .NET
– O tablet tem Android?
• Android Development Kit + Java
– O tablet é IPad?
– IOS SDK + Objective C
• O usuário utiliza o GPS, câmera, acelerômetro?
– IOS SDK, Android Development Kit
21. Tecnologias
• O usuário utiliza intensivamente componentes externos
como joystick, sensor de movimento, gráficos 3D ou
áudio?
– O aplicativo é um jogo?
• C# .NET ou C++ ou Java
• Preciso realizar gráficos complexos.
– Unity, Adobe Air
• Não preciso realizar gráficos complexos.
– LimeJS, CSS
– O aplicativo não é um jogo?
• C++ ou C# .NET ou Java
• O aplicativo é para Windows?
– WPF + C#.NET
• Ele é para Mac?
– Java, C++, etc
22. Tecnologias
• Preciso armazenar e recuperar informações?
– SQL, SQL Server Express ou My SQL
• Não tenho muita certeza ainda sobre quais dados preciso armazenar?
– Banco de dados documentais
• Aplicativo conectado ou desconectado
– Preciso de conexão com outros?
– O aplicativo precisa de conexão permanente para ser executado?
• Javascript, C#.NET, Java, WCF, Servidor Web
– O aplicativo só funciona através de uma página web?
– O aplicativo precisa da rede, mas deve ser instalado ?
• Serviços Rest, JSON, WCF
• O aplicativo não precisa se conectar e funciona na área de trabalho?
– C#.NET ou Java
23. Tecnologias
• O aplicativo precisa interagir com outros
aplicativos?
– Java, C#.NET, WCF, Serviços REST
• O aplicativo trabalha com componentes
eletrônicos ou robóticos?
– Arduino
24. O que usamos?
• O que escolhem os programadores?
– HTML, CSS, Javascript, Adobe Air, Java, C++, C#.NET, WPF,
WCF, Serviços Rest, Windows Phone SDK, IOS SDK,
Android SDK, Unity, SQL, PHP
• O que vamos ensinar nesse curso?
• HTML, CSS, Javascript, jQuery, C#, SQL, LINQ, Serviços
Rest
Não é necessário aprender todas as linguagens de
programação que existem ao mesmo tempo. É
suficiente entender para que servem e usar a mais
conveniente.