E aí pessoal, tudo bom? Pokemaobr aqui novamente e hoje falando sobre um tema que muita gente acredita que não deveria ser falado no ano de 2022: Desenvolvimento para desktop.

É engraçado como falar sobre desse tema me liga muito com o início da minha trajetória com desenvolvimento. Minha primeira linha de código foi entre 1999 e 2000, e adivinhem? Utilizando Delphi.

Tinha uma revista de um Curso IBM e Programação da Editora Planeta, que vinha com um CD com o instalador do Delphi 2. Só que como na época eu não tinha dinheiro (devia ter no máximo 12 anos) e não pude comprar os demais fascículos, sendo assim só fiz mesmo um botão que trocava o texto quando clicava nele.

linguagem para desenvolvimento desktop
Navegue pelo índice

    O que é desenvolvimento desktop?

    O desenvolvimento para desktop é basicamente o desenvolvimento de aplicações para rodar em computadores (PCs, laptops (notebooks) e coisas do tipo).

    Em 1999, o desenvolvimento desktop era muito forte, a web como conhecemos ainda estava engatinhando. Basicamente os sites web que tínhamos nessa época era algo com um visual muito baseado no que se tinha nos tipos de aplicações que desenvolvíamos para desktop.

    Naquela época, tínhamos muitos motivos para desenvolver para desktop. Já que pouquíssimas pessoas tinham acesso à internet, o custo de hardware era caro, então era mais complicado desenvolver coisas que performavam bem na web.

    Os navegadores estavam também no seu início, logo o acesso dos navegadores à algumas coisas do sistema operacional e de hardware como um todo eram bem restritos, o acesso a banco de dados e o total de storage que tínhamos também dificultava armazenar muitos dados na web, a indústria de armazenamento estava em plena expansão com disquetes e CD-ROMs :), entre outras coisas. 

    Além de que tudo foi inicialmente feito para rodar fisicamente. Não existia cloud e tudo era armazenado em servidores físicos dentro das empresas. Grandes pacotes de programas como o pacote Office e o pacote Macromedia (hoje Adobe). ERPs, CRMs e a maioria das aplicações corporativas também eram só desktop. As aplicações de controle de estoque e outras coisas também. E, não podemos esquecer dos jogos.

    Era interessante como por exemplo o Java cresceu naquela época. A ideia de ser uma linguagem que “rodava” basicamente em qualquer sistema operacional com “o mesmo código e executável”. Tanto que o slogan era “Write once, run everywhere” (Escreva uma vez, rode em qualquer lugar).

    programação desktop

    O que aconteceu com o desenvolvimento desktop?

    Com o passar do tempo a web foi tomando mais forma, passou a ser muito mais requisitada como meio de desenvolvimento. Depois vieram os celulares e smartphones que deram um boom com o desenvolvimento mobile e o desenvolvimento desktop foi deixado um pouco de lado.

    Beleza, pokemão, entendi que naquele tempo fazia todo sentido desenvolver para desktop. Mas, estamos em 2022, a internet e o desenvolvimento mobile tomam conta de quase tudo. Hoje, temos armazenamento e hardware muito mais baratos, navegadores que acessam grande parte dos recursos dos computadores, uma infinidade de aplicações web robustas, quase ninguém sabe o que é disquete ou CD-ROM, nem pendrive a galera tem usado, tudo é na “cloud”… Por que eu deveria me preocupar em desenvolver para desktop?

    6 motivos para ainda acreditar no desenvolvimento desktop

    1) Embora os navegadores tenham melhorado e muito o acesso aos recursos dos computadores, a programação desktop consegue acessar basicamente todos os recursos do computador. E isso é muito bom para aplicações que exigem alta performance como jogos, por exemplo;

    2) Aplicações de console também é desenvolvimento desktop, então, caso você for mexer com DevOPS, por exemplo, basicamente tudo o que você desenvolver é para desktop;

    3) Alguns tipos de aplicações por força de lei devem ser desktop (por exemplo no Brasil até um tempo atrás (não sei se mudou) as aplicações de frente de caixa (PDV) só podiam ser desktop, por isso toda vez que você vai no mercado vê um Delphi show lá rodando);

    4) Aplicações que mexem/manipulam uma grande quantidade de arquivos performam muito melhor no desktop do que na web, a facilidade de acessar e manipular arquivos dentro de um computador é muito maior em um sistema desktop que você arrastar muitos arquivos para um sistema web;

    5) Navegadores são aplicações desktop, e entender como eles funcionam, por exemplo, pode ajudar muito a você entender como funcionam APIs de sistemas operacionais e a web ao mesmo tempo;

    6) Aplicações como IDEs de desenvolvimento e de “escritório” como um todo tem ainda uma grande utilização através do desenvolvimento desktop.

    Quais tecnologias você pode usar para desenvolver para desktop?

    Basicamente você pode desenvolver para Desktop utilizando a grande maioria das linguagens de programação. Algumas é mais fácil criar os binários para execução e outras você roda facilmente pelo console ou terminal. Você pode usar diversas linguagens:

    • Linguagens de mais baixo nível como: Assembly;
    • Linguagens clássicas como: Cobol, FORTRAN, C, C++, etc;
    • Linguagens mais voltadas a orientação a objetos como Java, C#, etc;
    • Linguagens mais “visuais” como: Delphi e VB;
    • Linguagens mais matemáticas como Python, R, Julia, matlab;
    • Linguagens Web como JavaScript, PHP, Ruby;
    • Linguagens mais modernas como Go, Rust.

    E até mesmo hoje temos algumas “plataformas” para desenvolvimento desktop que usam outras linguagens por trás como: Electron (JavaScript) e Flutter (Dart).

    E o estranho é que hoje em dia as aplicações mais novas tem muito a cara do que a gente vê como aplicação web, ou seja, o jogo mudou não é mesmo?

    Uma coisa que sempre falo para quem desenvolve é: com o passar do tempo o ideal é você ser uma pessoa DEV. Ou seja, que você conheça e experimente algumas tecnologias durante a sua experiência como DEV e com certeza desenvolver para Desktop é uma skill técnica muito legal para você entender melhor como funciona o acesso de algumas linguagens de desenvolvimento diretamente aos componentes do seu computador.

    Até a próxima!

    A VPS da Locaweb tem a autonomia que você precisa para os seus projetos!

    CONFIRA