Portugol Online - Software livre para facilitar o estudo de algoritmos

Este artigo apresenta um interpretador online para a linguagem Portugol, desenvolvido com o intuito de facilitar o processo de ensino-aprendizagem de programação de computadores.

[ Hits: 75.467 ]

Por: Antônio Vinícius Menezes Medeiros em 17/03/2015 | Blog: http://www.vinyanalista.com.br/


Próximos passos



Essa não foi bem uma aula de programação, mas a apresentação de uma ferramenta que pode facilitar os estudos!

Agora que você já está apresentado à ferramenta Portugol Online, sugiro que confira no site a especificação do Portugol, que apresenta as regras da linguagem e exemplos de algoritmos.
Linux: Portugol Online - Software livre para facilitar o estudo de algoritmos
Os exemplos apresentados na especificação da linguagem podem ser facilmente testados com a ferramenta. Não é necessário nem digitá-los. Na ferramenta, basta ir ao menu "Arquivo", submenu "Abrir" exemplo e clicar em um dos exemplos para que o código do exemplo seja carregado para o editor de código.
Linux: Portugol Online - Software livre para facilitar o estudo de algoritmos
Se tiver dúvida ou curiosidade sobre como o computador interpreta seus códigos-fonte, clique em "Exibir" e depois em "Relatório da análise":
Linux: Portugol Online - Software livre para facilitar o estudo de algoritmos   Linux: Portugol Online - Software livre para facilitar o estudo de algoritmos   Linux: Portugol Online - Software livre para facilitar o estudo de algoritmos   Linux: Portugol Online - Software livre para facilitar o estudo de algoritmos
Esse recurso pode ser útil não só para iniciantes em programação, mas também para quem está estudando compiladores.

Se você é aluno e deseja aprender a programar, há vários textos e livros bons na Internet, nas livrarias e até aqui mesmo no Viva o Linux (esse aqui, por exemplo), opções não faltam, é só pesquisar.

Em particular, recomendo a leitura do livro Fundamentos da Programação de Computadores [1], que apresenta exemplos quase que totalmente compatíveis com a ferramenta e a linguagem aqui apresentadas.

Se você é professor, experimente explorar essa ferramenta em sala de aula de modo que os alunos possam verificar os algoritmos que eles elaboram em funcionamento.

Se você gostou (ou não) da ferramenta, se conseguiu (ou não) utilizá-la bem, se encontrou um defeito ou pensou em algo que poderia melhorá-la, peço que deixe um comentário no site, pois estou coletando opiniões sobre a ferramenta para finalizar meu trabalho. Em especial, se gostou da ferramenta, considere a possibilidade de compartilhar o link para o site nas redes sociais.

Vale lembrar que o Portugol Online é Software Livre: seu código-fonte está disponível no GitHub.

No mais, obrigado por ter lido esse texto e por se interessar pelo meu trabalho! Apresento aqui mais algumas telas da aplicação e as referências que utilizei para elaborar a introdução. Abraço e até a próxima!

Mais algumas telas

Localizar/substituir:
Linux: Portugol Online - Software livre para facilitar o estudo de algoritmos
Temas:
Linux: Portugol Online - Software livre para facilitar o estudo de algoritmos
Executando no Windows:
Linux: Portugol Online - Software livre para facilitar o estudo de algoritmos
Executando no Mac OS X:
Linux: Portugol Online - Software livre para facilitar o estudo de algoritmos

Referências

  • [1] ASCENCIO, A. F. G.; CAMPOS, E. A. V. Fundamentos da programação de computadores. 2a. ed. São Paulo: Pearson Prentice Hall, 2007.
  • [2] MONTEIRO, Mário A. Introdução à Organização de Computadores. 5a. ed. Rio de Janeiro: LTC Editora, 2007.
  • [3] BINI, E. M.; KOSCIANSKI, A. O ensino de programação de computadores em um ambiente criativo e motivador. In: VII Enpec - Encontro Nacional de Pesquisa em Educação em Ciências, 2009, Florianópolis. Atas do VII Enpec - Encontro Nacional de Pesquisa em Educação em Ciências, Florianópolis: ABRAPEC, 2009. ISSN: 2176-6940.
  • [4] MOREIRA, M. P.; FAVERO, E. L. Um Ambiente para Ensino de Programação com Feedback Automático de Exercícios. 2009. In: XVII Workshop sobre Educação em Informática, 2009, Bento Gonçalves. Anais do XXIX Congresso da Sociedade Brasileira de Computação, Bento Gonçalves: UFRGS, 2009, p. 429-438.
  • [5] RAABE, A. L. A.; SILVA, J. M. C. Um Ambiente para Atendimento as Dificuldades de Aprendizagem de Algoritmos. In: XIII Workshop sobre Educação em Informática, São Leopoldo, 2005. Anais do XXV Congresso da Sociedade Brasileira de Computação, São Leopoldo: UNISINOS, 2005, p. 2326-2337.
  • [6] ROCHA, P. S.; FERREIRA, B.; MONTEIRO, D.; NUNES, D. S. C.; GOÉS, H. C. N. Ensino e Aprendizagem de Programação: Análise da Aplicação de Proposta Metodológica Baseada no Sistema Personalizado de Ensino. In: Revista Novas Tecnologias na Educação, v. 8, n. 3, dez. 2010. ISSN: 1679-1916.
  • [7] SOUZA, C. M. VisuAlg - Ferramenta de Apoio ao Ensino de Programação. In: Revista TECCEN, v. 2, n. 2, p. 1-9, set. 2009. ISSN: 1984-0993.

Página anterior    

Páginas do artigo
   1. Apresentação
   2. Do que preciso para usar o Portugol Online?
   3. Iniciando o Portugol Online
   4. Um pequeno problema
   5. Meu primeiro programa
   6. Próximos passos
Outros artigos deste autor

Desmistificando a instalação do Dazuko

Guia de referência do ISOLINUX (parte 2)

Incrementando o visual do KDE 4

Guia de referência do ISOLINUX (parte 1)

Instalação do ClamAV com DazukoFS

Leitura recomendada

As novidades do Java 1.5

Introdução ao framework Mentawai

Introdução ao Desenvolvimento Android

Desenvolvendo aplicações em J2ME no Linux

Construindo uma aplicação JDialog

  
Comentários
[1] Comentário enviado por fabio em 17/03/2015 - 14:54h

Excelente projeto! Meus parabéns pelo trabalho.

[2] Comentário enviado por mcnd2 em 17/03/2015 - 20:17h

10!

Comecei a estudar algoritmo e esse seu projeto com certeza me ajudará.

Parabéns pelo ótimo trabalho.

[3] Comentário enviado por hrcerq em 17/03/2015 - 21:30h

Olá, Antônio.

Gostei muito do seu artigo, primeiramente porque está muito bem escrito, de forma clara, bem estruturado e com as devidas referências. "Segundamente" eu também gostei porque o seu projeto ficou bem bacana. A primeira linguagem de programação com que tive contato foi o Portugol e ela me ajudou muito a entender como funcionam os algoritmos.

A maioria das linguagens de programação usam a língua inglesa como base e para algumas pessoas isso pode até ser uma barreira. O Portugol, além de quebrar essa barreira é uma linguagem bem simples e fácil de escrever, com um mínimo de burocracia para facilitar o aprendizado. Dessa forma, separa-se a preocupação de conhecer a sintaxe da linguagem da preocupação de entender a lógica do programa.

Iniciativas como essa são sempre louváveis porque fomentam o aprendizado da programação por mais e mais brasileiros. Enfim, parabéns pelo artigo e pelo projeto.
---

Atenciosamente,
Hugo Cerqueira

[4] Comentário enviado por danniel-lara em 18/03/2015 - 08:25h


Parabéns ótimo artigo

[5] Comentário enviado por mathiasaulo em 24/03/2015 - 00:01h

Meus parabéns Antônio, iniciativa muito boa e sem contar que já podemos introduzir um ambiente linux nas instituições de ensino, visando o aprendizado da lógica de programação com base no Portugol.

Meus parabéns!!

"Ninguém além de nós mesmos pode libertar nossa mente." - Bob Marley

[6] Comentário enviado por luisroo em 25/03/2015 - 13:49h

Parabéns Vínicius, muito bom o software, ajuda bastante, porém alguns 'alunos' vão se aproveitar para fins não didáticos kkkk ... mas faz parte.
Vou baixar o fonte e dar uma estuda para ver como foi o desenvolvimento, curti muito.

[7] Comentário enviado por pherde em 28/03/2015 - 11:17h

Parabéns!! Funciona perfeitamente e é muito bom!!!

[8] Comentário enviado por pherde em 31/03/2015 - 00:09h

Viny,

Estou tentando executar o .jar num notebook com processador arm, a versão do java é a seguinte:
java version "1.7.0_75"
OpenJDK Runtime Environment (IcedTea 2.5.4) (7u75-2.5.4-1~precise1)
OpenJDK Zero VM (build 24.75-b04, mixed mode)

Quando eu executo: java -jar portugol.jar
aparece o seguinte erro:
(precise)[email protected]:~/Downloads$ java -jar portugol.jar
Exception in thread "main" java.lang.ExceptionInInitializerError
at org.fife.ui.rsyntaxtextarea.RSyntaxTextAreaUI.<clinit>(RSyntaxTextAreaUI.java:37)
at org.fife.ui.rsyntaxtextarea.RSyntaxTextArea.createRTextAreaUI(RSyntaxTextArea.java:740)
at org.fife.ui.rtextarea.RTextAreaBase.init(RTextAreaBase.java:647)
at org.fife.ui.rtextarea.RTextArea.init(RTextArea.java:854)
at org.fife.ui.rsyntaxtextarea.RSyntaxTextArea.init(RSyntaxTextArea.java:1838)
at org.fife.ui.rtextarea.RTextAreaBase.<init>(RTextAreaBase.java:118)
at org.fife.ui.rtextarea.RTextArea.<init>(RTextArea.java:215)
at org.fife.ui.rsyntaxtextarea.RSyntaxTextArea.<init>(RSyntaxTextArea.java:372)
at br.com.vinyanalista.portugol.ide.TelaPrincipalMinima.<init>(TelaPrincipalMinima.java:129)
at br.com.vinyanalista.portugol.ide.TelaPrincipalCompleta.<init>(TelaPrincipalCompleta.java:38)
at br.com.vinyanalista.portugol.ide.TelaPrincipalCompletaDesktop.<init>(TelaPrincipalCompletaDesktop.java:14)
at br.com.vinyanalista.portugol.ide.Aplicativo.<init>(Aplicativo.java:21)
at br.com.vinyanalista.portugol.ide.Aplicativo.main(Aplicativo.java:47)
Caused by: java.util.MissingResourceException: Can't find bundle for base name org.fife.ui.rsyntaxtextarea.RSyntaxTextArea, locale en_US
at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1499)
at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1322)
at java.util.ResourceBundle.getBundle(ResourceBundle.java:721)
at org.fife.ui.rsyntaxtextarea.RSyntaxTextAreaEditorKit.<clinit>(RSyntaxTextAreaEditorKit.java:76)
... 13 more
Caused by: java.lang.ClassCastException: org.fife.ui.rsyntaxtextarea.RSyntaxTextArea cannot be cast to ResourceBundle
at java.util.ResourceBundle$Control.newBundle(ResourceBundle.java:2574)
at java.util.ResourceBundle.loadBundle(ResourceBundle.java:1436)
at java.util.ResourceBundle.findBundle(ResourceBundle.java:1400)
at java.util.ResourceBundle.findBundle(ResourceBundle.java:1354)
at java.util.ResourceBundle.findBundle(ResourceBundle.java:1354)
at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1296)
... 15 more

Alguma orientação do que pode estar ocorrendo errado!?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts