Blog tecnológico mantido pelos alunos da disciplina de Aplicações Informáticas (12º Ano) da Escola Secundaria José Gomes Ferreira em Lisboa.
sábado, 9 de janeiro de 2021
Amazon drone delivery
Realidade Virtual e Realidade Aumentada
A pesquisa Global Realidade Aumentada e Realidade Virtual Hardware market 2021 fornece uma visão geral básica da indústria, incluindo definições, classificações, aplicações e estrutura da cadeia da indústria. O relatório de mercado Global Realidade Aumentada e Realidade Virtual Hardware é fornecido para os mercados internacionais, bem como tendências de desenvolvimento, análise de cenário competitivo e status de desenvolvimento de regiões-chave. Políticas e planos de desenvolvimento são discutidos, bem como processos de manufatura e estruturas de custos também são analisados. Este relatório apresenta adicionalmente o consumo de importação / exportação, dados de oferta e demanda, custo, preço, receita e margens brutas.
A lista dos PRINCIPAIS JOGADORES no Relatório de Mercado Realidade Aumentada e Realidade Virtual Hardware são:
-Google
-Oculus Rift
-Leap Motion
-Sony
-Avegant Glyph
-CyberGlove Systems
-Pokémon Company
-Zeiss VR One
-Razer OSVR
-Facebook
-Microsoft
-GoPro
-Vuzix Corporation
-FOVE VR
-Vuzix
-HTC
-Meta
-Samsung Electronics
-Eon Reality
-Augementa
Linguagens de Programação: Entrada 19 - Vale a pena pagar por um curso online de Python?
Grandes projectos para Blender em 2021
1º Submarino Nuclear(USS Nautilus)
Submarinos Nucleares
A importância da tecnologia em sumbarinos militares
Dual Extrusion - Pros
Pros:
Dual Extruder - Impressão 3D
Dual Extrusion:
QGroundControl
QGroundControl roda em Windows, OS X, Linux, iOS e Android, suporta vários pilotos automáticos: PX4 Pro, ArduPilot ou qualquer veículo que se comunique usando o protocolo MAVLink e funciona com todos os tipos de veículos suportados pelo PX4 Pro e ArduPilot (multi-rotor, asa fixa, VTOL, etc.)
MAVLink
MAVLink é um protocolo de mensagens muito leve para comunicação com drones (e entre componentes de drones integrados).
O MAVLink segue um padrão de design híbrido moderno de publicação-assinatura e ponto a ponto: Os fluxos de dados são enviados / publicados como tópicos, enquanto os subprotocolos de configuração, como protocolo de missão ou protocolo de parâmetro, são ponto a ponto com retransmissão. As mensagens são definidas em arquivos XML. Cada arquivo XML define o conjunto de mensagens suportado por um sistema MAVLink específico, também conhecido como "dialeto". O conjunto de mensagens de referência que é implementado pela maioria das estações de controle de solo e pilotos automáticos é definido em common.xml (a maioria dos dialetos é construída sobre esta definição). O conjunto de ferramentas MAVLink usa as definições de mensagem XML para gerar bibliotecas MAVLink para cada uma das linguagens de programação suportadas. Drones, estações de controle de solo e outros sistemas MAVLink usam as bibliotecas geradas para se comunicar. Eles são normalmente licenciados pelo MIT e, portanto, podem ser usados sem limites em qualquer aplicativo de código fechado sem publicar o código-fonte do aplicativo de código fechado.
O que é PX4?
sexta-feira, 8 de janeiro de 2021
Realidade virtual Hardware tamanho do mercado.
Realidade Aumentada e Realidade Virtual Hardware Tamanho do
Mercado, Análise da Participação em 2021 e pesquisa aprofundada sobre Dinâmicas de Mercado
Prevê-se que o mercado global Realidade Aumentada e Realidade Virtual Hardware aumentará a uma taxa considerável durante o período de previsão, entre 2021 e 2026. Em 2021, o mercado estava a crescer a uma taxa constante e com a crescente adoção de estratégias pelos principais participantes, o mercado deverá crescer .
O relatório também rastreia as últimas dinâmicas do mercado, como fatores impulsionadores, fatores restritivos e notícias do setor, como fusões, aquisições e investimentos. Tamanho do mercado global Realidade Aumentada e Realidade Virtual Hardware (valor e volume), participação de mercado, taxa de crescimento por tipos, aplicações e combina métodos qualitativos e quantitativos para fazer previsões micro e macro em diferentes regiões ou países.
O relatório final adicionará a análise do impacto do COVID-19 nesta indústria.
– No surto de COVID-19, este relatório fornece uma análise do impacto do COVID-19 na economia global e na indústria Realidade Aumentada e Realidade Virtual Hardware.
– Abrange a análise do impacto do COVID-19 sob a ótica da cadeia da indústria.
– Além disso, considere o impacto do COVID-19 na economia regional.
amostra do relatório : www.marketreportsworld.com/enquiry/request-covid19/16103730
[IDS] Groovy: O que é?
Definição
Apache Groovy é uma linguagem de programação compatível com a sintaxe Java e orientada a objetos desenvolvida para a plataforma Java. Esta linguagem dinâmica possui muitos recursos semelhantes a Python, Ruby, Smalltalk e Pero. O código-fonte do Groovy é compilado em Java Bytecode para que possa ser executado em qualquer plataforma que tenha o JRE instalado. O Groovy também executa muitas tarefas nos bastidores, o que o torna mais ágil e dinâmico.
A linguagem Groovy pode ser usada como linguagem de script para a plataforma Java. É quase como uma super versão do Java que oferece recursos empresariais do Java. Ele também oferece muitos recursos de produtividade, como suporte DSL, encerramentos e digitação dinâmica. Ao contrário de algumas outras linguagens, ele foi projetado como um companheiro, não um substituto do Java.
[IDS] Docker + Jenkins: Como iniciar o serviço do Jenkins em docker container
docker run -p 8080:8080 --name=containercomjenkins jenkins/jenkins
- "docker run" : O docker executa processos em containers individuais. Um container é um processo executado em um host qualquer - podendo este ser local ou remoto (no exemplo do artigo o host é local). Quando um operador é executado "docker run", o processo do container que é executado é isolado por ter seu próprio sistema de arquivos, sua própria rede e sua própria árvore de processo isolada/separada do host.
- "--name=[ARG]" : É uma forma de identificar o container através de um nome, sem ser pelo UUID.
- "-p PORTA_HOST:PORTA_CONTAINER": Define as portas que devem estar abertas e qual sentido as informações devem ir.
- "jenkins/jenkins" : É o nome da imagem. Uma vez que não existe localmente, ele vai fazer o pull da imagem ao Docker Hub.
[IDS] Pipeline: O que é?
Agência da União Europeia de Cibersegurança
PHP vs JavaScript - o que escolher ao entrar no mundo da programação?
Atualmente, existem mais de 600 linguagens de programação completamente diferentes no mercado. Portanto, não é de se estranhar que se queremos começar a aprender um deles, queiramos escolher aquele que tem uma ampla gama de aplicações que serão úteis em um setor de alta demanda. Quais são as diferenças básicas entre PHP e JavaScript?
Qual é a linguagem PHP?
PHP é uma linguagem de programação conhecida como script. Geralmente é usado para criar um site. É caracterizado pela viabilidade do lado do servidor e, conseqüentemente, não é visível para o usuário. Permite a geração dinâmica de páginas, criando e modificando um arquivo no servidor, limitando a disponibilidade de dados de subpágina no site, criptografando dados e utilizando cookies.
PHP não é difícil de aprender, graças à sua dinâmica ele se torna bastante flexível ao escrever código e não é fortemente tipado. Sua sintaxe é bastante simples. Especialmente a última versão do PHP7, que elimina muitos bugs, tornou-se muito mais adequada para iniciantes.
Embora o PHP seja uma linguagem bastante antiga, não há sinais de que sua popularidade começará a declinar. Isso provavelmente ocorre porque a maioria dos sites mais populares o usa. Além disso, está em constante aperfeiçoamento, como prova a última versão do PHP7.
O que é JavaScript?
JavaScript é uma linguagem de alto nível tipada dinamicamente. É utilizado para criar um website, garantindo a sua interatividade e tratamento de eventos, validação de formulários e construção de elementos de navegação. Usar a linguagem dessa forma é facilitado por uma biblioteca como a jQuery. Ao usar JavaScript, o TypeScript também é frequentemente usado, o que permite mais digitação estática e programação orientada a objetos mais fácil. Esta linguagem também é usada na criação de jogos de computador para navegadores.
JavaScript não é uma linguagem complicada para aprender programação, especialmente porque é caracterizada por um alto nível. Ele pode ser escrito com um bloco de notas comum ou navegador. No entanto, o problema pode ser que o código funcione de maneira diferente em navegadores diferentes. Porém, com o seu desenvolvimento, essas diferenças diminuem, principalmente devido à padronização muito dinâmica. Além disso, é uma linguagem de thread único. Na prática, isso significa que apenas uma operação pode ser realizada por vez. Este é um problema no caso de aplicativos grandes porque as operações subsequentes serão bloqueadas pelas anteriores. Como resultado, quanto maior o aplicativo, mais problemas aparecem. Aprender a língua em si não é difícil, mas aprendê-la mais tarde na prática pode ser uma tarefa exigente.
No entanto, esta é uma linguagem que você deve conhecer se estiver interessado em páginas de programação. O JavaScript se desenvolve extremamente dinâmico, principalmente considerando as bibliotecas e frameworks, que aparecem com bastante frequência.
Qual a melhor escolha - PHP ou JavaScript?
No entanto, cada uma dessas linguagens tem suas vantagens e desvantagens, além de nos servir antes para outras atividades. Portanto, é melhor usar os dois idiomas ao mesmo tempo. Às vezes acontece que, por motivos de segurança, o JavaScript está desabilitado. Isso torna cada linha de código escrita em JavaScript fora do alcance do usuário. Além disso, o código escrito nesta linguagem é facilmente visível. Porém, a vantagem é a velocidade, que não é afetada pela velocidade do link. No caso do PHP, os scripts são interpretados pelo servidor, mas isso causa um grande atraso. Outra desvantagem é a carga na unidade de computação do servidor. Mas o PHP é uma linguagem invisível para os outros, então nosso código é mais seguro. Somente usando os dois idiomas, podemos criar um aplicativo seguro e totalmente funcional.
Como criar um mecanismo de modelo usando JavaScript
O design
O design inicial do mecanismo de template será bastante simples. Ele simplesmente interpola valores de um
data
objeto. Vai usar{{valueName}}
para interpolar valores.Renderização Simples
Primeiro, vamos criar uma função de renderização simples que pega o modelo e os dados e renderiza o valor.
var render = (template, data) => {
return template.replace(/{{(.*?)}}/g, (match) => {
return data[match.split(/{{|}}/).filter(Boolean)[0]]
})
}
Basicamente, tudo o que faz é pesquisar qualquer coisa que esteja entre colchetes e substitui-o pelo nome dentro
data
. Você pode escrever seus modelos como este e irá retirá-los do objeto de dados.Hi, my name is {{name}}!
render("Hi, my name is {{name}}!", {
name: "shadowtime2000"
});
Mas há um problema, você não pode ter espaços nas interpolações.
render("Hi, my name is {{ name }}!", {
name: "shadowtime2000"
})
/*
Hi, my name is undefined!
*/
Isso requer que você tenha espaços dentro do objeto de dados, o que não é tão limpo. Podemos fazer com que permita espaços cortando os espaços em branco iniciais e finais do nome dos dados antes da interpolação.
var render = (template, data) => {
return template.replace(/{{(.*?)}}/g, (match) => {
return data[match.split(/{{|}}/).filter(Boolean)[0].trim()]
})
}
Isso é muito bom, mas para modelos maiores não seria tão rápido porque tem que analisá-lo o tempo todo. É por isso que muitos motores de template suportam compilação, onde o template é compilado em uma função JS mais rápida que pode pegar os dados e interpolar. Vamos adicionar compilação ao nosso mecanismo de template, mas antes disso, precisamos adicionar uma função de análise especial.
Análise
Já que a análise pode ser um pouco entediante, vamos apenas reutilizar algum código de outro mecanismo de modelo JS. Eu teria usado o mecanismo de análise Eta, mas ele foi extremamente otimizado e pode ser muito confuso para as pessoas. Portanto, vamos usar outro código de análise de mecanismo de modelo JS popular, mde / ejs . Lembre-se de atribuí-los ao mecanismo de análise.
var parse = (template) => {
let result = /{{(.*?)}}/g.exec(template);
const arr = [];
let firstPos;
while (result) {
firstPos = result.index;
if (firstPos !== 0) {
arr.push(template.substring(0, firstPos));
template = template.slice(firstPos);
}
arr.push(result[0]);
template = template.slice(result[0].length);
result = /{{(.*?)}}/g.exec(template);
}
if (template) arr.push(template);
return arr;
}
O que isso basicamente faz é repetir a execução do padrão regex no modelo e adicionar as coisas a uma estrutura de dados. Esta é a aparência dessa estrutura de dados:
["Hi my name is ", "{{ name }}", "!"]
Agora que a análise foi concluída, vamos prosseguir para a compilação.
Compilação
Vamos dar uma rápida visão geral do resultado da compilação. Imagine que você insira este modelo:
Hi my name is {{ name }}!
Ele lhe dará esta função:
function (data) {
return "Hi my name is "+data.name+"!";
}
Vamos primeiro criar uma função para analisar e, em seguida, criar uma string que pode ser usada. Primeiro, temos que analisar o modelo.
const compileToString = (template) => {
const ast = template;
}
Também temos que criar uma string que será usada como função.
const compileToString = (template) => {
const ast = template;
let fnStr = `""`;
}
O motivo pelo qual estamos usando aspas no início é porque quando ele está compilando os modelos e outros, todos eles começarão com um
+
. Agora temos que iterar no AST.const compileToString = (template) => {
const ast = template;
let fnStr = `""`;
ast.map(t => {
// checking to see if it is an interpolation
if (t.startsWith("{{") && t.endsWith("}}")) {
// append it to fnStr
fnStr += `+data.${t.split(/{{|}}/).filter(Boolean)[0].trim()}`;
} else {
// append the string to the fnStr
fnStr += `+"${t}"`;
}
});
}
A parte final desta função é retornar a string da função.
const compileToString = (template) => {
const ast = template;
let fnStr = `""`;
ast.map(t => {
// checking to see if it is an interpolation
if (t.startsWith("{{") && t.endsWith("}}")) {
// append it to fnStr
fnStr += `+data.${t.split(/{{|}}/).filter(Boolean)[0].trim()}`;
} else {
// append the string to the fnStr
fnStr += `+"${t}"`;
}
});
return fnStr;
}
Então, se for este o modelo:
Hi my name is {{ name }}!
Ele retornará este:
""+"Hello my name is "+data.name+"!"
Agora que isso está feito, criar uma função de compilação é relativamente simples.
const compile = (template) => {
return new Function("data", "return " + compileToString(template))
}
Agora concluímos a compilação de nosso mecanismo de modelo.