# data[].attributes.headline
Algoritmos e Lógica de programação: O que é isso e por quê é importante?

# data[].attributes.subject
Algoritmos e Lógica de programação: O que é isso e por quê é importante?

# data[].attributes.attachment_link.readable_text
Sempre que decidimos fazer qualquer atividade em nosso dia a dia, acabamos seguindo uma sequência lógica. Na maior parte do tempo, fazemos isso de maneira tão natural que nem nos damos conta, mas, quando percebemos, conseguimos enxergar passos que levaram ao resultado final.

Visualize a seguinte situação, você precisa fazer um bolo:

1.. Selecionar os ingredientes da receita; 2. Selecionar tigela; 3. Colocar farinha, de acordo com a medida; 4. Selecionar ovos; 5. Colocar manteiga e açúcar a gosto; 6. Colocar leite; 7. Misturar todos os ingredientes na tigela; 8. Despejar a massa na forma; 9. Levar ao forno; 10. Aguardar 40 minutos; 11. Retirar do forno; 12. Servir o bolo.

Cada pessoa define uma sequência de passos para fazer um bolo, podendo incluir ou remover alguns já definidos. Essa lógica é aplicada a qualquer coisa que fazemos diariamente e muitas das vezes não nos damos conta.

Em atividades rotineiras, não costumamos prestar atenção quando seguimos uma mesma ordem para executar tarefas. Mas, quando o assunto é programar, definir as etapas do que deve ser feito assume uma grande importância, uma vez que instruir um computador ainda é bem diferente do que instruir uma pessoa.

Quando a necessidade é desenvolver um programa ou rotina a ser executada pelo computador, precisamos deixar bem claro a sequência que deve ser seguida para atingir o resultado esperado. A esse encadeamento lógico na programação, chamamos de lógica de programação, e a descrição de como fazer, definimos como algoritmos.

Quer saber um pouco mais? Vem comigo ler esse artigo.😉

O que são Algoritmos ?

Algoritmos são sequências de passos que seguimos com a intenção de atingir um objetivo, pode ser desde atravessar uma rua, fazer um bolo ou definir qual critério usar para aprovar ou reprovar um aluno, por exemplo.

No desenvolvimento de um algoritmo, devemos definir com clareza e forma precisa o conjunto de regras ou instruções que serão utilizadas para resolver aquele problema em específico.

Portanto, antes de programar, precisamos saber o que deve ser feito e planejar o passo a passo, ou seja, criar o algoritmo e avaliar se o resultado obtido é a solução esperada. Entendendo isso, aí sim, definimos uma linguagem de programação para implementar nossos algoritmos.

Existem algumas maneiras de representar algoritmos, que entram como um passo de preparação antes da programação. Podemos criar, por exemplo, uma narrativa semelhante ao exemplo do bolo, em que se descreve a sequência de execução até a obtenção do resultado desejado ou esperado. Para mostrar as formas de representar um algoritmo, vamos usar como exemplo um algoritmo de cálculo da média, em que precisa-se analisar as notas de 3 bimestres para a disciplina de matemática e verificar se o aluno foi aprovado ou reprovado para uma média maior ou igual a 7:

1. Obter a nota do 1º bimestre; 2. Obter a nota do 2º bimestre; 3. Obter a nota do 3º bimestre; 4. Realizar o cálculo da média para cada aluno (maior ou igual a 7 para aprovação); 5. Informar se o aluno foi "aprovado ou reprovado"; 6. Informar a média obtida pelo aluno.

Note que, na forma de um texto narrativo, ou mesmo nas outras formas de representação, deseja-se que o algoritmo seja objetivo e preciso na descrição de cada passo. Existe também a opção de usar um modelo visual, como um fluxograma, veja na imagem abaixo:

Outra forma bem interessante de representar algoritmos é utilizando uma pseudo-linguagem, que escrevemos em português (também chamado de português estruturado) sem ambiguidades e sem toda a rigidez de uma linguagem de programação.

Importante notar que um pseudo-código é escrito com frases que correspondem a estruturas utilizadas em uma linguagem de programação, destacadas em negrito no exemplo abaixo:

Algoritmo CalcularMediaAlunos LER Nota1 LER Nota2 LER Nota3 media = (Nota1+Nota2+Nota3)/3 SE MEDIA >= 6 ENTÃO IMPRIME "Aprovado" SENÃO IMPRIME "Reprovado" FIM-SE IMPRIME o valor da média Fim-Algoritmo CalcularMediaAlunos

Lógica de Programação

Na lógica de programação é onde aplicamos todos os conceitos de algoritmos, a definição do passo a passo e transferimos toda a lógica do algoritmo desenvolvido para uma linguagem de programação.

Em linhas gerais, lógica de programação é todo conjunto de regras e conceitos que precisamos aplicar para criar códigos que serão interpretados e executados por um computador.

Para conseguirmos o objetivo de instruir o computador a fazer alguma coisa, precisamos de uma linguagem de programação, que é um meio estruturado para passar instruções para a máquina.

Para fazer isso, temos à disposição uma gama muito grande de linguagens como: C, Java, PHP, Python, JavaScript, entre outras. Cada uma delas tem suas características, particularidades e cenários de aplicação.

Vamos agora a um exemplo da codificação do algoritmo de médias usando uma linguagem de programação. A escolhida para a representação foi a linguagem C.

//linguagem C int main(int argc, char *argv[]) { setlocale(LC_ALL, "Portuguese"); float nota1=0; float nota2=0; float nota3=0; float media=0; printf("Insira nota 1: "); scanf("%f",&nota1); printf("Insira nota 2: "); scanf("%f",&nota2); printf("Insira nota 3: "); scanf("%f",&nota3); media = (nota1+nota2+nota3)/3; if(media>=6){ printf("Aluno aprovado.\n"); } else{ printf("Aluno reprovado.\n"); } printf("Média do aluno é: %f",media); }

Na codificação em C, temos a implementação do algoritmo desenvolvido anteriormente, mas agora, após escolher uma linguagem de programação, devemos nos atentar às suas próprias regras de sintaxe (estrutura para escrita) e semântica (significado dado aos símbolos e comandos).

É importante ressaltar que a linguagem de programação escolhida é somente mais uma ferramenta que você, enquanto pessoa desenvolvedora, precisará conhecer. A ideia do algoritmo não é ligada a nenhuma linguagem em específico, observe o mesmo algoritmo do cálculo da média usando a linguagem C#:

// Linguagem C# static void Main(string[] args) { float nota1; float nota2; float nota3; float media; Console.WriteLine("Digite nota 1:"); nota1 = float.Parse(Console.ReadLine()); Console.WriteLine("Digite nota 2:"); nota2 = float.Parse(Console.ReadLine()); Console.WriteLine("Digite nota 3:"); nota3 = float.Parse(Console.ReadLine()); media = (nota1 + nota2 + nota3) / 3; if(media>=6) { Console.WriteLine("APROVADO"); } else { Console.WriteLine("REPROVADO"); } Console.WriteLine("A média do aluno é: " + media); }

Notem que o algoritmo é o mesmo, o passo a passo está ali, contudo, escrito em uma linguagem diferente. Portanto, após definida a sequência de instruções, escolha a linguagem que você mais se identifica para implementar o algoritmo.

A lógica de programação utilizada para desenvolver uma solução, como um sistema web, desktop ou mobile, é toda estruturada a partir da definição dos algoritmos, daí a importância e o relacionamento entre estes dois temas. 😉

Conclusão

Estudar algoritmos e lógica de programação é o passo inicial para quem deseja entrar no mundo de desenvolvimento de software e começar a criar suas primeiras aplicações. Com esses conceitos bem consolidados você passa a ter bem mais preparo na utilização de uma linguagem de programação.

E aí, querendo se aprofundar mais em algoritmos e lógica de programação? Então confira nossos cursos e formações:

# data[].attributes.attachment_link.title
Algoritmos e Lógica de programação: O que é isso e por quê é importante? | Alura

# data[].attributes.attachment_link.description
Sempre que decidimos fazer qualquer atividade em nosso dia a dia, acabamos seguindo uma sequência lógica. Na maior parte do tempo, fazemos isso de maneira tão natural que nem nos damos conta, mas, quando percebemos, conseguimos enxergar passos que levaram ao resultado final. Visualize a seguinte situação, você precisa fazer um bolo: 1..

# data[].attributes.headline
Programação Orientada a Objetos: Por que você deveria aprender POO?

# data[].attributes.subject
Programação Orientada a Objetos: Por que você deveria aprender POO?

# data[].attributes.attachment_link.authors[].name
Por Jackson Pires Carreira, Estratégia, Processos, Tecnologia, Updates Publicado em 24 de novembro de 2021 4 min de leitura

# data[].attributes.attachment_link.title
Programação Orientada a Objetos: Por que você deveria aprender POO?

# data[].attributes.attachment_link.description
O objetivo será te ajudar a entender a importância de ter a Programação Orientada a Objetos como algo definitivamente certo em seu currículo.

# data[].attributes.headline
O que é uma linguagem de programação e quais os tipos existem?

# data[].attributes.subject
O que é uma linguagem de programação e quais os tipos existem?

# data[].attributes.attachment_link.readable_text
Saber como funciona uma linguagem de programação e como os relacionamos com ela por meio de softwares nos permite melhorar nossa produtividade e conquistar vantagens competitivas frente a concorrência.

Ao longo dos anos, as linguagens de programação aumentaram seu poder e flexibilidade para executar tarefas complexas exigidas pela inovação e pelas novas tecnologias da informação e comunicação (TIC).

Todas as máquinas e dispositivos requerem uma linguagem de programação para cumprir suas funções. Ao conhecê-la você consegue alcançar seus objetivos em menos tempo. Deseja saber mais? Continue lendo para aprender sobre este tema tão interessante quanto necessário.
Neste artigo você vai ver:
O que é uma linguagem de programação?

É uma linguagem formal que, através de uma série de instruções, permite que um programador escreva um conjunto de ordens, ações consecutivas, dados e algoritmos para criar programas que controlam o comportamento físico e lógico de uma máquina.

Programador e máquina se comunicam por meio dessa linguagem, permitindo especificar, com precisão, aspectos como:

quais dados um software deve operar;

como esses dados devem ser armazenados ou transmitidos;

quais ações o software deve executar, de acordo com cada circunstância variável.

Para explicar melhor (e com menos palavras), a linguagem de programação é um sistema de comunicação estruturado, composto por conjuntos de símbolos, palavras-chave, regras semânticas e sintáticas que permitem o entendimento entre um programador e uma máquina.

É importante enfatizar que é um erro comum usar a linguagem de programação e a linguagem de computação como sinônimos. Mas por que não devemos confundi-las?

Bem, é porque a linguagem de programação obedece a um conjunto de regras que permitem expressar as instruções que serão interpretadas pelo programador. Já a linguagem de computação inclui outras linguagens que formatam um texto, mas não podemos considerá-la uma programação em si mesma.

Portanto, nem todas as linguagens computacionais são de programação, mas todas as linguagens de programação são computacionais.

Que tipos de linguagem de programação existem?

A linguagem de programação é a base para a construção de todos os aplicativos digitais usados ​​no dia a dia e são classificados em dois tipos principais: linguagem de baixo e alto nível. Continue lendo para aprender tudo sobre eles!

Linguagem de programação de baixo nível

São linguagens totalmente orientadas à máquina. Esse idioma serve como uma interface e cria um link inseparável entre hardware e software.

Além disso, exerce controle direto sobre o equipamento e sua estrutura física. Para aplicá-la adequadamente, é necessário que o programador conheça muito bem o hardware. Essa categoria pode ser subdividido em dois tipos. Confira a seguir.

Linguagem de máquina

É o mais primitivo dos idiomas e é uma coleção de dígitos ou bits binários (0 e 1) que o computador lê e interpreta e é o único idioma que os computadores entendem.

Exemplo: 10110000 01100001

Não dá para entender muito bem o que ele diz, certo? Portanto, a linguagem Assembly nos permite entender melhor a que se refere esse código.

Linguagem Assembly

A linguagem Assembly é a primeira tentativa de substituir a linguagem de máquina por uma mais próxima da usada por seres humanos.

Um programa escrito nessa linguagem é armazenado como texto (como nos programas de alto nível) e consiste em uma série de instruções que correspondem ao fluxo de pedidos executáveis ​​por um microprocessador.

No entanto, essas máquinas não entendem a linguagem Assembly. Portanto, devem ser convertidas em linguagem de máquina por meio de um programa chamado Assembler.

Ele gera códigos compactos, rápidos e eficientes criados pelo programador que tem controle total da máquina.

Exemplo: MOV AL, 61h (atribui o valor hexadecimal 61 ao registro "AL")

Linguagem de programação de alto nível

Elas visam facilitar o trabalho do programador, pois usam instruções que são mais fáceis de serem entendidas.

Além disso, a linguagem de alto nível permite que você escreva códigos usando os idiomas que conhece (português, espanhol, inglês etc.) traduzindo-os em seguida para o idioma da máquina por tradutores ou compiladores.

Tradutor

Eles traduzem programas escritos em uma linguagem de programação para a linguagem de máquina do computador e são executados à medida que são traduzidos.

Compilador

Ele permite que você traduza um programa inteiro de uma só vez, tornando-o mais rápido e pode ser armazenado para uso posterior sem a necessidade de uma nova tradução.

Para que servem as linguagens de programação?

Em geral, uma linguagem de programação é usada para programar. No entanto, cada um tem um escopo e forma de comunicação diferente.

Em resumo, o idioma de baixo nível permite a comunicação interna da máquina e cada instrução tem seu código de operação exclusivo.

A linguagem de alto nível facilita a aquisição das instruções que o programador fornece à máquina. Enquanto o profissional insere dados no idioma conhecido, a máquina os absorve na linguagem de máquina através de tradutores ou compiladores, permitindo:

reduzir o tempo de programação;

entender mais facilmente a tarefa a ser executada;

permitir que o programador se desconecte da operação interna da máquina, entre outros.

Em outras palavras, a linguagem de baixo nível está próxima das linguagens de máquina, enquanto a linguagem de alto nível está mais próxima da compreensão e da linguagem humana.

Quais softwares de programação existem?

Por software de programação entendemos o conjunto de todas as ferramentas que permitem ao programador criar, escrever códigos, depurar, manter e empacotar projetos.

Conheça a seguir alguns dos diferentes programas pelos quais o projeto deve passar para ser administrado.

Editores de código ou texto

Ao escrever os códigos, eles se completam marcando os erros sintáticos e a refatoração.

Compiladores

Como mencionado acima, eles convertem o código digitado à linguagem de máquina, gerando um código binário executável.

Eles servem para otimizar o tempo de desenvolvimento e ajudam a corrigir erros por meio do monitoramento da execução de um programa, dos valores de determinadas variáveis e da referência a objetos na memória.

Linkers

Este programa pega objetos gerados nas primeiras etapas do processo de compilação e os recursos necessários da biblioteca, remove os processos e dados de que não precisa e vincula o código à referida biblioteca para aumentar seu tamanho e extensão.

Intérpretes ou tradutores

Conforme você lê este artigo, o tradutor (ou intérprete) carrega o código digitado e converte as instruções para que o programa possa ser executado.

IDE

O IDE ( Integrated Development Environment) ou Entorno de Desenvolvimento Integrado, é um aplicativo de computador que fornece uma série de serviços que facilitam a programação de software, como:

funções de preenchimento automático;

um editor de código fonte;

gerenciamento de conexão com banco de dados;

integração com sistemas de controle de versão;

simuladores de dispositivos;

um depurador para acelerar o processo de desenvolvimento de software, entre outros.

Sem a linguagem de programação, a programação seria impossível porque não haveria regras (semânticas e sintáticas), expressões (como a estrutura e o significado de todos os elementos que as compõem) ou uma maneira estabelecida de como programador e máquina deveriam "falar" entre si.

Além disso, algumas das funções que permitem ao programador criar essa linguagem são: criar um site e fazê-lo funcionar, desenvolver aplicativos para sistemas operacionais e muitos outros.

Atualmente, o conhecimento e o uso do mundo digital e computacional são duas das principais armas de qualquer empresa.

Por isso e muito mais, é extremamente importante que você esteja na vanguarda e tenha fome de conhecimento. Se quiser aprender mais leia nosso artigo sobre como usar NGINX !

# data[].attributes.attachment_link.title
O que é uma linguagem de programação e quais os tipos existem?

# data[].attributes.attachment_link.description
Saber como funciona uma linguagem de programação e como os relacionamos com ela por meio de softwares nos permite melhorar nossa produtividade e conquistar vantagens competitivas frente a concorrência. Ao longo dos anos, as linguagens de programação aumentaram seu poder e flexibilidade para executar tarefas complexas exigidas pela inovação e pelas novas tecnologias da informação e comunicação (TIC).

# data[].attributes.headline
Tecnologia em Análise e Desenvolvimento de Sistemas, a profissão do momento

# data[].attributes.subject
Tecnologia em Análise e Desenvolvimento de Sistemas, a profissão do momento

# data[].attributes.attachment_link.readable_text
Aplicativos e programas de computador têm mudado a maneira como as pessoas ganham dinheiro, cuidam da saúde e se relacionam. A necessidade de produtos da Tecnologia da Informação (TI) em diversas áreas faz com que profissionais com essas capacidades estejam entre os mais requisitados atualmente no mercado de trabalho.

As soluções desenvolvidas por esse profissional visam aprimorar as atividades humanas e é possível vislumbrar a possibilidade de que ele venha a resolver uma gama de problemas da sociedade em âmbito mundial.

Empresas mudaram a maneira como o mercado se comporta e como as pessoas consomem determinados produtos, como os meios de transporte e hospedagem. Mudaram também a economia de países em crise e deram opções complementares de renda. Sem falar em aplicativos que auxiliam na locomoção de pessoas com necessidades especiais, de relacionamento e muitos outros que têm propósitos dos simples aos mais complexos.

Análise de Desenvolvimento de Sistemas - Foto: Divulgação

Os tecnólogos em Análise de Desenvolvimento de Sistemas são profissionais muito procurados pelo mercado em decorrência de sua capacidade de analisar, projetar, documentar, especificar, testar e implementar sistemas computacionais. "Esse profissional tem um espaço garantido no mercado de trabalho e isso só aumentará, graças à grande demanda desse tipo de serviço, que tende a amplificar seu campo de abrangência e até mesmo criar novas áreas para trabalhar", fala Edelclayton Ribeiro, professor da PUCPR.

Segundo o professor, seria muito limitado relacionar a integração da Tecnologia da Informação com apenas uma ou duas áreas. Para tentar ilustrar a abrangência das possibilidades, essas funções vêm integrando recursos que permitem a criação de cenários, simulações e oportunidades em áreas como comércio, prestação de serviços e indústria. "Permitem, também, socializar de forma ágil e rápida dados e experiências para criar soluções que podem servir à nossa sociedade", comenta Edelclayton.

Na PUCPR, o curso foi pensado e estruturado para que o estudante desenvolva todas as competências necessárias para criar sistemas de informação que possam ser utilizados nos diversos segmentos da Tecnologia da Informação, principalmente para o apoio das atividades humanas, em qualquer organização. A Universidade busca formar profissionais éticos, preocupados com a repercussão dos produtos criados, com a privacidade de informações às quais se tem acesso e que, em muitos casos, são sigilosas.

Ao final do curso, o estudante estará apto a desenvolver e aprimorar sistemas computacionais para a Web e para aplicativos de dispositivos móveis, para uso em empresas de qualquer segmento de mercado. "Será capaz de desenvolver atividades como avaliação, especificação, seleção e utilização de metodologias e tecnologias de engenharia de software, linguagem de programação e bancos de dados, bem como a coordenação de equipes de produção de software", explica o professor.

O profissional com essa formação poderá atuar em empresas de tecnologia de pequeno, médio ou grande porte, como consultor ou colaborador, em qualquer companhia que utilize tecnologia e, ainda, poderá participar de concursos públicos.

"Além de toda a infraestrutura ofertada pela PUCPR, devo ressaltar que o apoio da tutoria competente, personificada por profissionais com formação/atuação no setor (mestres e doutores), propicia feedbacks mais oportunos, qualificados e aderentes às realidades encontradas no mercado", conclui o professor.

# data[].attributes.attachment_link.title
Tecnologia em Análise e Desenvolvimento de Sistemas, a profissão do momento

# data[].attributes.attachment_link.description
Aplicativos e programas de computador têm mudado a maneira como as pessoas ganham dinheiro, cuidam da saúde e se relacionam. A necessidade de produtos da Tecnologia da Informação (TI) em diversas áreas faz com que profissionais com essas capacidades estejam entre os mais requisitados atualmente no mercado de trabalho.