O que são linguagens de programação? 

No mundo cada vez mais digital em que vivemos, as linguagens de programação são recursos fundamentais para o desenvolvimento das tecnologias que utilizamos em nosso dia a dia.

De smartphones a sistemas bancários, de redes sociais a jogos eletrônicos, todo software que conhecemos nasceu através de uma ou mais linguagens de programação.

Mas afinal, o que são essas linguagens e como elas funcionam? Neste artigo, vamos explorar os fundamentos das linguagens de programação, entender suas diferentes classificações e conhecer as principais linguagens utilizadas atualmente no mercado de tecnologia. 

1 – O que é uma linguagem de programação? 

Linguagens de programação são um conjunto de regras léxicas, sintáticas e semânticas utilizadas para escrever o código fonte de softwares. São linguagens formais, semelhantes aos idiomas (linguagens naturais) que conhecemos e usamos para nos comunicar com outras pessoas, como por exemplo, inglês, português, espanhol etc.  

Porém, apesar das linguagens de programação possuírem muitas semelhanças com as linguagens naturais, elas não foram criadas para comunicação entre seres humanos. Seu propósito é ser o instrumento utilizado por programadores para transformar suas ideias em códigos que computadores e dispositivos eletrônicos podem interpretar e processar.  

Aplicativos, jogos, sites, sistemas operacionais, absolutamente todos os tipos de softwares que usamos em nosso dia a dia foram desenvolvidos através de 1 ou mais linguagens de programação.  

Existem muitas linguagens de programação disponíveis atualmente, cada uma delas com suas características e finalidades próprias. Há também diferentes formas de classificar as linguagens de programação, como veremos no tópico a seguir. 

2 – Tipos de linguagens de programação 

Existem várias formas de classificar uma linguagem de programação. Uma classificação muito popular é quanto ao seu nível de proximidade com a linguagem humana:

2.1 – Linguagens de alto nível e baixo nivel

Linguagens de alto nível: são mais próximas da linguagem humana, o que as torna mais fáceis de aprender e usar. Exemplos incluem Python, PHP, Javascript, Java e C#. Elas são ideais para o desenvolvimento de sites e aplicativos em geral. 

Linguagens de baixo nível: são mais próximas do código binário da máquina, permitindo um controle mais preciso do hardware. Exemplos incluem Assembly e C. Essas linguagens são frequentemente usadas para desenvolvimento de sistemas operacionais, drivers e software embarcado. 

2.2 – Paradigmas de programação

Outra forma de classificar as linguagens é quanto aos paradigmas de programação que ela é compatível

Imperativas: focam em “como” resolver um problema, descrevendo passo a passo o que deve ser feito. Exemplos: C, Python, Java. 

Declarativas: focam em “o que” resolver, sem especificar como deve ser feito. Essas linguagens possuem uma série de comandos prontos que são aplicados de forma lógica e sequencial. Exemplo: SQL e Prolog. 

Funcionais: baseiam-se na aplicação de funções matemáticas para resolver os problemas e evitam estados mutáveis. Exemplos: Haskell, Scala, JavaScript, PHP, TypeScript.  

Orientadas a Objetos: estruturam o código em torno de objetos que possuem atributos e métodos, replicando aquilo que existe no mundo real em códigos de computador. Exemplos: Java, C#, Python. 

2.3 – Formas de execução dos códigos

Além das classificações acima, outra forma interessante e popular, é a classificação pela forma de execução dos códigos: 

Compiladas: o código fonte é traduzido para código de máquina antes da execução. Exemplo: C, C++. 

Interpretadas: o código fonte é executado, em tempo real, linha a linha por um interpretador. Exemplo: Python, Ruby. 

Híbridas: são linguagens que combinam compilação e interpretação. Exemplos: Java e Kotlin. 

Essas são as classificações mais comuns e aceitas, sendo úteis para conhecermos as características de cada linguagem de programação e entender para qual finalidade ela melhor se aplica. 

3 – Principais linguagens de programação existentes 

Desde o início da computação moderna, em meados dos anos 1940, centenas de linguagens de programação foram criadas. Estima-se que, atualmente, exista um pouco mais de 1300 linguagens de programação. Enquanto algumas linguagens foram criadas para usos mais generalistas, outras possuem finalidades específicas e se aplicam a contextos bem definidos.  

Considerando o índice da TIOBE e a pesquisa anual do StackOverflow, apresentamos a seguir uma lista com as principais linguagens de programação utilizadas no desenvolvimento de softwares, com dados do início do ano de 2025:

3.1 – As linguagens de programação mais populares

C: é uma linguagem de programação de baixo nível e alto desempenho, conhecida por sua eficiência e controle direto sobre hardware. Amplamente utilizada para o desenvolvimento de sistemas operacionais, drivers e softwares embarcados, é a base de muitas outras linguagens modernas. 

C++: evolução do C, o C++ adiciona suporte à programação orientada a objetos, além de recursos como templates e bibliotecas padrão poderosas. É popular no desenvolvimento de jogos, sistemas operacionais e sistemas embarcados. 

C#: criada pela Microsoft, é uma linguagem moderna e orientada a objetos, amplamente usada no desenvolvimento de aplicativos para Windows, jogos com Unity e aplicações web com o framework .NET.  

Go: desenvolvida pelo Google, é uma linguagem de programação eficiente e minimalista, focada em simplicidade e desempenho. Ideal para aplicações em nuvem, sistemas distribuídos e serviços back-end, combina desempenho com um gerenciamento de memória moderno. 

Java: é uma linguagem de programação versátil e orientada a objetos, famosa por sua portabilidade graças ao lema “escreva uma vez, rode em qualquer lugar”. É amplamente usada no desenvolvimento de aplicativos corporativos, aplicativos Android e sistemas web robustos. 

JavaScript: uma das linguagens mais populares para desenvolvimento web, JavaScript permite criar interfaces dinâmicas e interativas. É essencial para front-end e, com Node.js, também pode ser usada no back-end, consolidando sua popularidade entre os desenvolvedores. 

PHP: é uma linguagem de script do tipo server-side amplamente usada para desenvolvimento web. Sua simplicidade e facilidade de integração com bancos de dados fazem dela uma boa escolha para sites dinâmicos e sistemas de gerenciamento de conteúdo. 

Python: é uma linguagem de alto nível conhecida por sua legibilidade e simplicidade. Possui uma ampla gama de bibliotecas open source e é usada em áreas como ciência de dados, inteligência artificial, automação, desenvolvimento web e ensino de programação. 

SQL: é a linguagem padrão para gerenciamento e manipulação de bancos de dados relacionais. Com seu conjunto de comandos simples e poderosos, é possível consultar, atualizar e organizar grandes volumes de dados. 

TypeScript: uma extensão do JavaScript, essa linguagem adiciona tipagem estática opcional e recursos modernos que tornam o código mais robusto e fácil de manter em longo prazo. É amplamente usada no desenvolvimento de aplicações front-end. 

Certamente, além das linguagens acima, você já deve ter ouvido falar de muitas outras como Kotlin, Delphi, Ruby, Swift, Rust, Fortran, Assembly, etc. Mas neste artigo não irei além das linguagens listadas acima, para que ele não fique excessivamente longo. Em ocasiões oportunas falarei sobre essas e muitas outras linguagens. Fique atento as postagens do blog! 

Conclusão 

Como vimos ao longo deste artigo, as linguagens de programação são instrumentos essenciais no desenvolvimento tecnológico, cada uma com suas características e propósitos específicos.  

Embora existam mais de 1300 linguagens documentadas, é importante entender que não existe uma linguagem “melhor” que outra – existe aquela mais adequada para cada tipo de projeto ou objetivo. E à medida que a tecnologia evolui, novas linguagens surgem e as existentes se atualizam.   

Por isso, é importante compreendermos que, em uma área ampla e em constante mudança como o desenvolvimento de sistemas, devemos estar, permanentemente, atentos as novas tecnologias e buscando aprofundar cada vez mais, nossos conhecimentos e habilidades nas linguagens que utilizamos no dia a dia. 

Espero que este conteúdo seja útil de alguma forma para você. Em caso de dúvidas, sugestões ou reclamações fique à vontade para entrar em contato.  

E se você quiser aprender mais sobre programação, não deixe de conferir os outros artigos que tenho aqui no site sobre esse assunto, clicando aqui

O que é LGPD?

A Lei Geral de Proteção de Dados Pessoais, conhecida como LGPD, é um marco regulatório que revolucionou a forma como os dados pessoais são tratados no Brasil. Desde sua implementação, em 2020, a LGPD tem trazido mudanças significativas para empresas e cidadãos, promovendo uma cultura de privacidade e segurança de dados no Brasil.

Neste artigo, vamos conhecer um pouco mais sobre essa lei e sua importância para o nosso dia a dia. Vamos começar respondendo o que é essa lei, após vamos entender o que são dados pessoais e quais são os principais tópicos da LGPD.  

1 – O que é a LGPD? 

A LGPD, ou Lei nº 13.709/2018, é a legislação brasileira que regulamenta o tratamento de dados pessoais coletados e armazenados por empresas (públicas ou privadas), tanto em ambientes físicos quanto digitais.  

Inspirada na regulamentação europeia (GDPR), a LGPD foi sancionada em 2018, e entrou em vigor no Brasil em 18/09/2020, estabelecendo diretrizes para a coleta, armazenamento, uso, compartilhamento e eliminação de dados pessoais, visando proteger a privacidade dos cidadãos. 

2 – O que são dados pessoais? 

A LGPD define em seu texto, no artigo 5, o conceito de dados pessoais, fundamental para o entendimento desta lei.

Os dados pessoais são entendidos como aquelas informações relacionadas à pessoa identificada (nome completo, RG, CPF, etc.) ou identificável (dados de geolocalização (GPS), endereço IP, identificação de dispositivo, etc.). 

A LGPD ainda traz o conceito de dados pessoais sensíveis relacionados a aspectos como: origem racial ou étnica, convicção religiosa, opinião política, filiação sindical ou a organização de caráter religioso, filosófico ou político, dados genéticos ou biométrico, entre outros. 

Dados pessoais contemplam o objeto protegido pela regulamentação da LGPD e por isso é importante entender claramente o seu conceito. 

3 – Principais Tópicos da LGPD 

Os dados pertencem ao seu titular e não às empresas que os coletam, armazenam ou tratam. A LGPD trouxe a regulamentação necessária para garantir a privacidade dos indivíduos. Essa lei define as regras para o uso adequado e correto dos dados coletados e armazenados por terceiros e está baseada nos seguintes tópicos centrais: 

  1. Consentimento: o tratamento de dados deve ocorrer com o consentimento explícito do titular. 
  1. Transparência: as empresas devem ser claras sobre como e para qual finalidade os dados estão sendo coletados e utilizados. 
  1. Segurança: medidas técnicas e administrativas devem ser implementadas para proteger os dados contra vazamentos e acessos, alterações e exclusões não autorizadas. 
  1. Anonimização: é uma técnica que modifica ou remove trechos de informações que possam identificar uma pessoa. A anonimização torna as informações não associáveis a um indivíduo específico. Dados anonimizados só podem ser associados ao titular com o uso de informações adicionais mantidas separadamente e protegidas. Essa técnica é especialmente importante para reduzir riscos em casos de vazamento ou acessos indevidos, garantindo que os indivíduos não sejam identificados. 
  1. Direitos dos Titulares: os cidadãos possuem pleno direito de acessar, corrigir, excluir e transferir seus dados pessoais, bem como podem revogar o consentimento de uso e tratamento dos seus dados. 
  1. Sanções: penalidades podem ser aplicadas em caso de descumprimento da lei, incluindo a aplicação de multas. A Agência Nacional de Proteção de Dados, ANPD, é o órgão responsável por fiscalizar a aplicar eventuais penalidades por descumprimento da LGPD.  

Como é possível ver, a LGPD estabelece uma série de regras que promovem o uso responsável de informações por parte das empresas e garantem a privacidade dos indivíduos. 

A LGPD também promove a segurança jurídica ao estabelecer regras claras sobre como dados pessoais devem ser tratados, reduzindo incertezas para as empresas e proporcionando um ambiente mais estável e seguro para operações comerciais e tecnológicas. Com regras bem definidas, tanto os titulares quanto as organizações sabem quais são seus direitos e deveres, o que contribui para o fortalecimento da confiança mútua e o desenvolvimento sustentável da economia digital. 

Conclusão  

A LGPD representa um grande avanço na proteção de dados no Brasil. Ela garante direitos e obrigações claras aos titulares dos dados e para as empresas que tratam estes dados. Dessa forma, a legislação promove a privacidade e a segurança jurídica necessárias para o desenvolvimento de um ambiente econômico saudável e competitivo. 

Para os cidadãos, a LGPD significa mais controle sobre suas informações pessoais e maior segurança contra fraudes e vazamentos. Para as empresas, incentiva práticas de governança e gestão de dados, promovendo a confiança dos clientes e uma boa reputação corporativa. 

Espero que o conteúdo aqui apresentado seja útil de alguma forma para você. Em caso de dúvidas, sugestões ou reclamações fique à vontade para entrar em contato.

O que são linguagens de marcação?

No mundo da computação, as linguagens de marcação desempenham um papel fundamental na organização e apresentação de informações em ambientes digitais. Seja navegando em páginas web, lendo documentações técnicas ou compartilhando dados entre sistemas, estamos constantemente interagindo com documentos criados por meio dessas linguagens.

Este artigo apresenta uma visão geral sobre as linguagens de marcação, abordando suas características e as principais linguagens utilizadas atualmente, permitindo compreender sua importância e suas aplicações no dia a dia. 

1 – O que é uma linguagem de marcação? 

Uma linguagem de marcação (do inglês, markup language)  é  um conjunto de códigos e anotações padronizadas que descrevem a estrutura e a forma de apresentação de um documento.  

Linguagens de marcação são utilizadas na construção de interfaces gráficas de usuário e na transferência de dados entre diferentes dispositivos.  

A ideia central desse tipo de linguagem é a marcação padronizada de dados. Isto envolve a aplicação de um conjunto de códigos e regras simples em uma sequência de dados no formato de texto-puro. O resultado é um documento, estruturalmente, padronizado que é legível por pessoas e aplicações de diferentes dispositivos e sistemas operacionais. 

2 – Onde surgiram as linguagens de marcação? 

A primeira linguagem de marcação foi a SGML (Standard Generalized Markup Language ou Linguagem Padronizada de Marcação Genérica), criada na década de 60 por pesquisadores da IBM.  

A linguagem possuía dois objetivos básicos: 

– A marcação do documento deve descrever a sua estrutura e outros atributos pertinentes, em vez de especificar o processamento a ser feito no mesmo; 

– A marcação deve ser definida rigorosamente, de forma que diferentes sistemas possam ser usados para processar o documento. 

O SGML foi um marco na história da computação. A linguagem representa o primeiro padrão estrutural para documentos, permitindo uma fácil portabilidade (transferência) destes documentos entre diferentes sistemas e dispositivos. 

Nas décadas seguintes, surgiram novas linguagens de marcação derivadas do SGML, como o HTML, lançado no final da década de 1980, e o XML lançado em 1996. Ambas as linguagens fazem parte de nosso dia a dia e no próximo tópico vamos conhecer um pouco mais a respeito delas.

3 – As linguagens de marcação existentes

Nesse tópico vamos conhecer as principais linguagens de marcação existentes na atualidade. Começando pelo HTML:

3.1 HTML

Provavelmente, a linguagem de marcação mais conhecida que existe, o HTML é essencial para a construção de páginas web e interfaces gráficas de diversas aplicações. 

HTML é a sigla para Hypertext Markup Language, ou Linguagem de Marcação de Hipertexto.  Esta linguagem define a estrutura de um documento que será exibido ao usuário final. 

Através de um conjunto de marcações chamadas de tags, é possível definir a posição, o tipo e o comportamento de diversos elementos, como títulos, parágrafos, links, caixas de seleção, botões, entre outros. 

Para um melhor entendimento do tema, vamos ver um exemplo simples de um documento HTML: 

<!DOCTYPE HTML> 
<html> 
    <head> 
        <meta charset="utf-8"> 
        <title>Exemplo HTML</title> 
    </head> 
    <body> 
        <h1>Olá mundo!</h1> 
        <p>Eu sou um documento HTML!</p> 
    </body> 
</html>

Observe que cada tag geralmente possui uma abertura e um fechamento, delimitadas pelos símbolos < > e </ >. Além disso, cada tag desempenha uma função específica dentro da estrutura do documento. 

Documentos HTML possuem a extensão .html e compõem a base da internet. Eles são indispensáveis para a construção da estrutura de páginas web e desempenham um papel crucial no funcionamento da web moderna. 

3.2 – XML

Outra linguagem de marcação amplamente conhecida e utilizada e conhecida é o XML. Diferente do HTML, o XML não possui foco em exibir dados para os usuários. Sua finalidade é descrever e padronizar a estrutura dos documentos para facilitar sua transferência entre diferentes dispositivos e sistemas.  

XML é a sigla para eXtensible Markup Language, ou Linguagem de Marcação Extensível.  Esta linguagem também utilizada o conceito de tags em suas marcações. Porém, ao contrário do HTML que possui um conjunto pré-definido de tags, o XML não conta com tags pré-definidas. Dessa forma, os usuários podem criar suas próprias tags para representar os dados que desejam manipular. 

Ainda em comparação com o HTML, o XML possui uma estrutura mais rígida quanto a abertura e fechamento de tags e quanto a identação das tags para fins hierárquicos no documento. 

Para esclarecer as diferenças entre as linguagens, vamos ver um exemplo simples de um documento XML: 

<?xml version="1.0" encoding="UTF-8"?>  
<livro>  
       <titulo>O Senhor dos Anéis</titulo> 
       <autor>J.R.R. Tolkien</autor>  
       <ano>1954</ano>  
       <genero>Fantasia</genero>  
</livro>

No exemplo acima, observamos que o documento XML utiliza tags personalizadas para descrever informações específicas, como <titulo>, <autor>, <ano> e <genero>. Cada tag representa um dado, e a indentação define a estrutura hierárquica.

Documentos XML possuem a extensão .xml e são amplamente utilizados na integração entre diferentes plataformas, permitindo um formato padrão para transmissão de dados. 

3.3 – Markdown

O Markdown é uma linguagem de marcação leve e de fácil escrita. Diferente do HTML e do XML, ela não segue regras rigorosas, sendo uma linguagem de marcação leve e fácil de escrever, que permite que muitos desenvolvedores e escritores a usem para criar textos formatados de maneira simples e intuitiva.

O Markdown é um método de formatação de texto baseado em caracteres especiais, que transformam textos simples em documentos estilizados. Diferentemente de outras linguagens de marcação, ele não utiliza tags para definir os elementos do documento. Em vez disso, emprega caracteres como por exemplo #, * e [] para identificar e estruturar os elementos. Com esta linguagem, é possível criar títulos, listas, links, imagens, tabelas, blocos de código e muito mais, sem a complexidade de linguagens como HTML ou XML. 

Para ilustrar, vejamos um exemplo básico de um documento Markdown: 

# Olá, mundo!

Eu sou um **documento Markdown**. Aqui está um exemplo de algumas das coisas que você pode fazer:

## Lista não ordenada:
- Item 1
- Item 2
- Item 3

## Lista ordenada:
1. Primeiro item
2. Segundo item
3. Terceiro item

**Texto em negrito**
*Texto em itálico*
***Texto em negrito e com itálico***

## Link:
[Acesse o meu site](https://www.thiagogaelzer.com)

Observe no exemplo acima as peculiaridades dessa linguagem. Cada elemento segue uma sintaxe específica que o diferencia. Usamos o símbolo # para criar títulos, o traço - para listas não ordenadas e números seguidos de ponto para listas ordenadas. Para destacar textos em negrito ou itálico, usamos asteriscos * ou sublinhados _.

Documentos markdown possuem extensão .md ou .markdown. São amplamente utilizados na construção de documentações técnicas (como README e CHANGELOG). Postagens de blogs e até mesmo softwares de produtividade que usamos no dia a dia, como Slack, Discord e Notion, utilizam essa linguagem.

Além das linguagens de marcação mencionadas aqui, existem outras como, por exemplo, o SVG, o MathML e o LaTex, cada uma delas com uma aplicação específica. Neste artigo, não irei detalhar essas linguagens, deixando para postagens futuras. 

Conclusão 

As linguagens de marcação revolucionaram a forma de estruturar, compartilhar e apresentar informações em ambientes digitais. Desde sua origem com o SGML até as implementações modernas como HTML, XML e Markdown, estas linguagens continuam evoluindo para atender às crescentes demandas tecnológicas. 

Cada linguagem possui características e aplicações específicas: o HTML mantém-se como pilar fundamental da web, o XML garante a padronização na transferência de dados entre sistemas, e o Markdown oferece uma alternativa simplificada para criação de conteúdo estruturado. 

Compreender os usos e aplicações das linguagens de marcação é essencial para profissionais da área de tecnologia. Na prática, essas linguagens são ferramentas indispensáveis no desenvolvimento de sistemas eficientes e modernos. 

Espero que o conteúdo aqui apresentado seja útil de alguma forma para você. Em caso de dúvidas, sugestões ou reclamações fique à vontade para entrar em contato.