Para entendermos melhor a programação, devemos de tempos em tempos estudar novas linguagens e tecnologias. Podemos aprender com o passado para não cometermos erros no futuro. No caso, com a linguagem Delphi, conseguimos assimilar como era feito o trabalho no começo da história sobre programação.
Um dos grandes pilares no desenvolvimento de softwares é a inovação. No começo dos anos 90, tínhamos uma grande gama de tecnologias em ascensão sendo uma delas a linguagem Delphi. Por razões comerciais, foi criado uma série de novas versões e até outros programas que acabaram confundindo um pouco a cabeça de quem trabalha com desenvolvimento na época.
No fim, Delphi acabou ganhando muita força no mercado de tecnologia e continua com alguma parcela de desenvolvimento nos dias de hoje. Nesse texto, mostraremos a história completa dessa tecnologia, suas vantagens e se ainda podemos utilizá-la para o desenvolvimento, continue lendo!
- O que é Delphi?
- Delphi morreu? Conheça a história!
- Para que serve o Delphi?
- Confira as principais características do Delphi
- O que é Object pascal
- Símbolos especiais usados em Delphi
- Vale a pena aprender Delphi?
- Quais as vantagens e desvantagens do Delphi?
O que é Delphi?
O início da linguagem de programação Delphi vem de uma extensão da linguagem de programação Pascal, que foi arquitetada para uso na área de programação orientada a objetos, chamada Object Pascal.
No fim dos anos 80, uma empresa americana chamada Borland introduziu algumas extensões do Object Pascal para o Turbo Pascal no MacOS e Turbo Pascal 5.5 no DOS. Então, no meio dos anos 90, quando a Borland aumentou seus esforços de desenvolvimento do DOS para o Windows, o Turbo Pascal deu lugar ao Delphi. Nesse tempo, o Delphi introduziu uma nova coleção de extensões, criando o que conhecemos como a linguagem de programação Delphi.
Atualmente é conhecida como Embarcadero Delphi, também é lembrado como CodeGear Delphi e Borland Delphi, uma IDE para desenvolver aplicativos baseados no Microsoft Windows.
Afinal, Delphi é uma IDE ou uma linguagem de programação?
Não há uma solução definitiva para isso, até o momento de escrita deste artigo. No entanto, podemos dizer que Delphi talvez seja um pacote completo de linguagem, IDE e algumas ferramentas que têm bibliotecas.
Existem diversas controvérsias, alguns sites confirmam que é uma IDE e outros que é apenas uma linguagem de programação. Isso tem pouca importância na prática, mas vale a curiosidade, especialmente porque ajuda a entender um pouco melhor o que você está mexendo e fazendo.
A linguagem Object Pascal foi criada originalmente pela Apple para melhorar o que o Pascal fazia, sendo um dos objetivos principais adicionar a orientação a objetos.
Object Pascal nunca foi padronizada e acabou sendo abandonada. A empresa que citamos anteriormente, Borland, tinha o melhor produto em cima da linguagem Pascal, o Turbo Pascal. Com isso, eles usaram a criação da Apple para melhorar o seu produto que foi usado como base pela empresa. Então, ela mesma melhorou o Object Pascal, se afastando do que a Apple tinha concebido.
Por causa disso tudo, não fazia mais sentido continuar chamando essa linguagem de Object Pascal e acabaram a chamando de Delphi, confundindo com a então IDE que tinha o mesmo nome. Assim, temos uma confusão generalizada sobre o que é realmente a linguagem e a IDE. No próprio site da Embarcadero ainda se usa o termo Object Pascal.
Delphi é uma marca comercial da Embarcadero, atual proprietária do produto.
O que é IDE?
Uma IDE, ou Ambiente de Desenvolvimento Integrado, permite que os programadores criem diferentes projetos em uma certa linguagem de programação.
IDEs aumentam a produtividade do programador ou programadora, combinando as ações comuns de escrever programas em um único aplicativo: edição do código-fonte, construção de executáveis e depurações.
Delphi morreu? Conheça a história!
Delphi tem uma comunidade muito viva e ainda está longe de morrer.
O problema com o Delphi é que por ser um produto/linguagem muito bom, as empresas não veem a necessidade de atualizar para as novas versões. Muitas dessas empresas utilizam ainda versões muito antigas do Delphi, simplesmente porque ainda funcionam bem. A versão 7 do Delphi é um exemplo disso, lançado em 2001 e ainda se mantém firme e forte para o desenvolvimento de aplicativos avançados win32.
Podemos dizer que Delphi estará vivo até que a última pessoa que desenvolve em Delphi morra. Isso porque não há uma cultura de aprendizagem de Delphi entre a nova geração de pessoas programadoras. Afinal, além de ser muito caro, não existe uma versão gratuita ou para estudantes, com isso se tem uma percepção que é uma linguagem antiga que está muito perdida. A geração mais recente simplesmente não conhece o Delphi e não têm culpa disso.
Para muitas pessoas desenvolvedoras “old school”, a linguagem Delphi é incrível, tanto pela eficiência, quanto pelo salário. O verdadeiro poder do Delphi é a compatibilidade com versões anteriores.
Em 1995, todas as pessoas imaginavam que o Visual Basic da Microsoft era um produto que não envelheceria com o tempo. No entanto, acabou sendo o contrário. O Delphi tem um excelente retorno do investimento e uma base de código estável.
Delphi ainda existirá por mais alguns anos, mas infelizmente o encanto acabou: agora quase todas as linguagens utilizam o “jeito Delphi”. Não é mais algo muito especial. No entanto, o poder ainda está lá, de alguma forma.
Para que serve o Delphi?
A linguagem de programação Delphi é um kit de desenvolvimento de software amplamente utilizado para a criação de programas no Windows. No entanto, também pode ser utilizado para a criação de sites na web, aplicativos de aprendizado de máquina, programas de desktop, programas Windows e aplicativos móveis para os sistemas OS X, iOS e Android. Ele é distribuído como parte de uma IDE junto com o C++ Builder.
Confira as principais características do Delphi
Para utilizarmos uma nova linguagem de programação, devemos sempre entender as suas principais características que diferem das outras tecnologias. E essas são:
Legibilidade
A legibilidade é uma característica fundamental de qualquer linguagem. A partir do momento que escrevemos muitas linhas de códigos, devemos ter uma legibilidade de toda a base do código.
A manutenção dos programas está diretamente ligada à legibilidade do código. Também podemos associar a legibilidade de um programa com o domínio do problema em questão, caso uma linguagem de programação não foi projetada para um determinado tipo de problema, é bastante provável que o código final acabe ficando muito confuso, tornando ele difícil de ser lido e interpretado.
Exemplificando, se precisarmos utilizar o Delphi para criar um grande aplicativo web, temos uma noção que seria bem difícil, isso porque o Delphi não foi criado com esse propósito. No entanto, se quisermos criar vários programas de Desktop complexos, teremos um algoritmo mais simples e nítido, pois é aqui que o Delphi se destaca desde a sua criação.
Simplicidade
A partir da legibilidade, temos a simplicidade. Isso se deve ao fato de que uma linguagem de programação com uma sintaxe complexa é muito mais difícil de ser aprendida do que uma linguagem que possui uma sintaxe mais enxuta.
A maioria dos desenvolvedores e desenvolvedoras iniciantes geralmente aprende apenas uma parte de uma linguagem de programação, ignorando todo o resto. Esse tipo de estratégia é utilizado para que não seja preciso um estudo mais aprofundado da linguagem, tornando assim o início de desenvolvimento mais rápido, trazendo rápidos resultados.
O único problema dessa abordagem é a comparação do aprendizado que uma pessoa possa ter sobre a outra, tornando os códigos muito mais difíceis de serem compreendidos.
Um outro ponto que podemos falar é a simplificação para se realizar uma única tarefa, como no caso da linguagem C, que permite incrementar uma variável numérica a partir de várias maneiras.
Tipos de dados
Os sistemas que contêm informação produzem resultados processando dados. O item decisivo, mostrando que eles podem facilmente executar essa tarefa, envolve o tipo de dados fornecidos em uma linguagem adequada para o domínio do problema real. Por esse motivo, é muito importante que a linguagem tenha uma gama muito ampla de tipos e estruturas de dados.
Os tipos de dados primitivos são os mais básicos e comuns nas linguagens, esses não são construídos a partir de nenhum tipo de dado. O fato de que as linguagens de programação fornecem tipos de dados primitivos adequados para variáveis é outro recurso que melhora a legibilidade.
Novamente, tendo como exemplo a linguagem C, não temos um tipo de dado booleano e precisamos implementar essa funcionalidade. Por causa disso, acabamos não sabendo o que exatamente é ou não uma variável booleana no nosso programa, já que não temos uma documentação oficial com essa informação.
Além de todos os tipos de dados primitivos comuns, temos também os dados não escaláveis, registros e vetores.
Suporte a abstração
A abstração, além de ser um item de suma importância no desenvolvimento de um novo programa, também nos dá a oportunidade de criar estruturas e operações complexas de uma maneira a permitir que muitas das particularidades sejam ignoradas. O grau de abstração que conseguimos obter através de uma linguagem e a simplicidade como ela é escrita tem uma grande influência na facilidade de escrita. Conseguimos ter dois tipos de abstrações: dados e processos.
Um exemplo que podemos dar para a abstração de processos é a possibilidade de criação de classes e métodos para realizar tarefas de exportação de um conjunto de informações para um Excel. Sem a abstração, teríamos que recriar a mesma tarefa em cada canto do nosso sistema, deixando assim o nosso código bem mais poluído.
O que é Object pascal
É uma linguagem criada pela Apple e posteriormente utilizada para criação do Delphi, mostraremos um pouco mais sobre essa tecnologia:
Sintaxe
A sintaxe do Object Pascal é muito semelhante à do seu antecessor Pascal. Nele, temos as variáveis, funções e comentários. Object Pascal também é uma linguagem não sensitiva, logo, você consegue escrever suas variáveis, funções e procedures de qualquer forma. Podemos escrever variáveis como A_variavel, a_variavel e A_VARIAVEL, todas vão ser reconhecidas pela linguagem.
Palavras reservadas
Como qualquer outra linguagem, em Object Pascal temos a elaboração dos algoritmos a partir de algumas palavras específicas, essas são denominadas palavras reservadas. Como exemplo, as palavras: program, input, output, var, real, begin, readline, writeline e end são todas palavras reservadas.
A seguir temos uma lista com todas essas palavras.
and | array | begin | case | const |
div | do | downto | else | end |
file | for | function | goto | if |
in | label | mod | nil | not |
of | or | packed | procedure | program |
record | repeat | set | then | to |
type | until | var | while | with |
Números
Os números são, por padrão, indicados em notação decimal. Os números reais (ou decimais) são escritos usando notação de engenharia ou científica (por exemplo, 0,314E1).
Para os números inteiros, Object Pascal suporta 4 tipos:
- Normal – Números decimais (base 10). Esse é o formato padrão.
- Hexadecimal – Números hexadecimais (base 16). Para especificar um valor hexadecimal deve-se prefixar o símbolo de dólar ($) antes do valor, como por exemplo $FF.
- Octal – Números octais (base 8). Para especificar um valor octal, tem que prefixar o e comercial (&) em um valor. Por exemplo, &17.
- Binário – Notação binária (base 2). Um número binário pode ser especificado prefixando o símbolo de porcentagem (%). Com isso, para termos o valor 255 temos que ter a notação binária de &11111111.
Constantes
Object Pascal também permite a declaração de constantes para nomear valores que não mudam durante a execução do aplicativo. Para declarar uma constante não precisamos especificar nenhum tipo de dados, apenas atribuir um valor inicial. A partir disso, o compilador examinará o valor e usará automaticamente seu tipo de dados apropriado.
Podemos ver um exemplo disso a seguir:
const
Mil = 1000;
Pi = 3.14;
NomeAutor = "Trybe";
Nesse exemplo, com base no valor do tipo de dados, o compilador escolhe o tipo da variável. No exemplo acima, a constante Mil vai ser alocada com o tipo SmallInt, o menor tipo de integral que pode segurar. se você quiser declarar o tipo de variável, apenas adicione o nome do tipo na declaração, dessa forma:
const
Mil: Integer = 1000;
Quando você declara uma constante, o compilador pode escolher se deseja atribuir um local de memória à constante e salvar seu valor ali, ou duplicar o valor real cada vez que a constante for usada. A segunda abordagem faz mais sentido para constantes simples.
expressões, operadores e operandos
As expressões ocorrem em instruções de atribuição ou em testes.
As expressões são feitas com apenas operadores e seus operandos. A maioria dos operadores são binários, ou seja, que requerem dois operandos. Operadores binários ocorrem sempre entre os operandos (como em 4 / 2). Poucos operadores são unários, ou seja, que requer apenas um operando. Um operador unário ocorre sempre antes do operando, como no caso de -10.
Uma expressão é resolvida em um valor de um determinado tipo. O tipo resultante é determinado pelos tipos dos valores na expressão e pelos operadores na expressão.
A seguir temos uma tabela com os operadores:
Operador | Prioridade | Categoria |
Not, unary +, unary -, @, ** | Altíssima (Primeiro) | Operadores unários |
*, /, div, mod, and, shl, shr, as, <<, >> | Segundo | Operadores de multiplicação |
+, -, or, xor, >< | Terceiro | Operadores de adição |
=, <>, <, >, <=, >=, in, is | Mais baixo (Último) | Operadores de relação |
Símbolos especiais usados em Delphi
Os símbolos especiais presentes na programação são caracteres não alfanuméricos, ou pares de tais caracteres, que têm significados fixos. Os seguintes caracteres únicos são símbolos especiais:
# $ & ‘ ( ) * + , – . / : ; < = > @ [ ] ^ { } |
Os seguintes pares de caracteres também são considerados como símbolos especiais:
(* (. *) .) .. // := <= >= <> |
A tabela a seguir mostra pares de símbolos usados em Delphi que têm significados semelhantes (os pares de símbolos {} e (* *) são caracteres de comentário):
Símbolo especial | Símbolo especial equivalente |
[ ] | (. .) |
{ } | (* *) |
O colchete esquerdo [ é equivalente ao par de caracteres do parêntese esquerdo e ponto final (..
O colchete direito ] é equivalente ao par de caracteres de ponto e parêntese direito.).
A chave esquerda { é semelhante ao par de caracteres do parêntese esquerdo e asterisco (*.
A chave direita } é semelhante ao par de caracteres de asterisco e parêntese direito *).
Vale a pena aprender Delphi?
Se você precisa criar programas para o Windows, o Delphi será a ferramenta perfeita para isso. No entanto, a quantidade de tempo que você precisa gastar para aprender a programar com Delphi é muito custoso, e na indústria moderna quase não há a utilização de Delphi, então, o retorno do investimento para sua carreira pode não estar aqui.
Entretanto, caso você seja uma pessoa com certa estabilidade na sua carreira e com bastante experiência em várias linguagens ou ferramentas, então, como hobby, você poderia aprender a programar em Delphi, sem nenhum problema.
Lembre-se, se você é um desenvolvedor iniciante ou está apenas com pouco tempo de carreira, você precisa pensar primeiramente na sua carreira! Estude algo que você provavelmente vai utilizar no seu próximo emprego, como desenvolvimento web.
Quais as vantagens e desvantagens do Delphi?
Como qualquer outra linguagem de programação, o Delphi tem pontos fortes e pontos fracos, logo abaixo falaremos sobre eles e você poderá tirar a sua própria conclusão.
Vantagens
- Sintaxe objetiva, o que torna o código muito mais legível
- Facilidade na implementação de interfaces gráficas. No Delphi, temos um sistema de arrastar e soltar, que nos permite construir a interface com muita agilidade.
- Suporte a todos os recursos nativos do Windows.
- Permite a comunicação com a linguagem C++
- Suporte ao desenvolvimento multiplataforma.
- Tem o mais rápido tempo de desenvolvimento de aplicativos para o Windows.
- Você pode desenvolver vários tipos de programas com o Delphi.
- A manutenção necessária é mínima, o que viabiliza projetos de longa data.
- Não precisa de tempo de execução DII (Dynamic Invocation Interface).
Desvantagens
- Você não pode escrever um VDX como você faria no C++
- O Delphi está muito estagnado no mercado de trabalho, o escopo para programadores é muito baixo. Isso faz com que os novos programadores escolham alguma linguagem que está em alta.
- Delphi não é gratuito.
- O Delphi XE7 era considerado lento e apresentava graves vazamentos de memória.
No mundo da programação, temos uma quantidade imensurável de linguagens e tecnologias que podem nos ajudar a criar novos programas e isso não necessariamente é um problema. A partir disso, podemos separar as linguagens em grupos: no grupo de desenvolvimento Web teríamos HTML, CSS e JavaScript, por exemplo. No desenvolvimento desktop Windows, o Delphi é uma escolha forte.
Por ser uma linguagem muito antiga e com uma comunidade relativamente baixa, Delphi sofre muitos ataques de jovens pessoas desenvolvedoras, que por um lado não estão totalmente equivocadas. Apesar de ser uma ferramenta de desenvolvimento poderosíssima, Delphi não nos oferece um caminho inicial interessante, e, com poucas orientações e suporte, fica difícil convencer novos desenvolvedores.
Ademais, não podemos perder a esperança nessa linguagem, pois ela ainda existe e exerce um grande papel no desenvolvimento de softwares de longa data. Delphi é usado principalmente na criação de programas Windows e é de se esperar que o suporte a aplicação seja elevado por muitos anos.
Com o Delphi, temos a possibilidade de utilizar as interfaces do sistema interno do Windows para a criação de novos aplicativos, criando assim uma alternativa muito interessante para o desenvolvimento desktop.
Nesse texto mostramos todo o mundo do Delphi, a sua história, suas principais características e como ele conseguiu chegar nesse patamar. Agora, fica a seu critério decidir se quer saber mais ou não dessa tecnologia! Lembre-se de sempre procurar conteúdo nas documentações oficiais do Delphi, atualmente ele é um produto da empresa Embarcadero.
Ficou interessado sobre o Delphi mas não sabe como começar? Leia um pouco mais sobre Lógica de programação: o que é, importância e como aprender?