quinta-feira, 26 de junho de 2014



Paradigmas De programação. Por que Estudar ?

          Quando o assunto é programação podemos afirmar que todo nosso esforço em desenvolver programas, de uma forma geral, é com o objetivo de resolver problemas e/ou otimizar processos. A ferramenta que usamos na construção de softwares são as linguagens de programação e, cada linguagem, por sua vez, tem suas vantagens e desvantagens. Podemos utilizar varias linguagens diferentes para resolver o mesmo problema e, é a partir desse ponto que surge a importância de se estudar os paradigmas nos quais essas linguagens são baseadas. Estudando os paradigmas de programação podemos entender melhor os processos por trás das LP's e descobrir quais linguagens podem ser mais adequadas para resolver determinados problemas. 

                       Paradigma Imperativo

        A programação imperativa é baseada em comandos que gerenciam, basicamente, a maneira com que os dados serão armazenados e usados no decorrer do programa. O nome vem do latim "imperare" que significa "Comandar". As linguagens imperativas estão intimamente relacionadas ao design ou a arquitetura dos computadores(A maquina de Von Neuman). A CPU ( Unidade central de processamento) é responsável por todo processamento de dados em um computador e, é baseado na forma como as CPU'S funcionam que foram desenvolvidas linguagens tais  Como C e ADA.

                                      http://www.instrutorkleber.blogger.com.br/TEORIA_DE_VON_NEWMAN.jpg

Então como podemos ver muitas coisas são possíveis na programação imperativa devido a sua relação com a arquitetura de Von Neumann(mais informações). As linguagens imperativas tem algumas importantes características : Variáveis, comandos de atribuição e sequência (ordem).


  • Variáveis : As variáveis estão ligadas a um endereço de memória,ou seja, todo valor atribuído a uma variável é armazenada nesses endereços de memória e quando precisa-se usar o valor armazenado na variável a  CPU vai naquele determinado endereço e pega o valor para, a partir daí, processá-lo.
  • Comandos de atribuição: Tais comandos permitem que possamos alterar o estado de variáveis e, consequentemente, do programa. Com isso as variáveis mudam com o tempo.Veja o exemplo abaixo:

       Neste exemplo temos uma variável "a" do tipo inteiro e atribuímos a ela o valor que ela tinha anteriormente mais cinco. Existem ainda o que chamamos de "laços" e que também é muito útil quando se quer acumular determinados valores em uma variável ou quando queremos que o programa execute um determinado número de vezes e etc. Exemplo:


  • Sequência : Por ultimo e não menos importante é a ordem do programa. O computador Executa as instruções que fornecemos como uma sequência de comandos, portanto, devemos especificar o que queremos que ele faça primeiro no programa. É como se no programa existisse uma hierarquia. Por exemplo se vamos fazer uma vitamina e ligamos o liquidificador primeiro para só depois colocar os ingredientes isso vai dar M...(hahahaha).
Então é isso Ai Pessoal espero que tenham entendido algum conceitos que são utilizados na programação imperativa.


Referências : Watt, David A., Findlay,William. (2004) Programing Language Design Concepts, John Wiley&Sons. Ltd,the Atrium,Southern Gate, Chichester, England.
http://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_imperativa
http://informacaocomdiversao.blogspot.com.br/2006/01/programao-imperativa-versus-programao.html
http://www.codingunit.com/c-tutorial-for-loop-while-loop-break-and-continue

segunda-feira, 9 de junho de 2014

Tecnologia revolucionando a educação.

           

Vamos Mudar???


http://noticias.universia.com.br/br/images/docentes/c/co/con_/conselhos-para-quem-quer-mudar-de-area-noticias.png


             Olá novamente pessoal! Como todos  sabem semana passada aconteceu o IV ciclo de conferências (gepied) aqui na Ufs. As palestras foram baseadas na tese de doutorado do professor Schneider que,  por sua vez, apresenta varias críticas ao nosso sistema de educação vigente e apresenta maneiras de como podemos mudar esse sistema educacional conservador e arcaico. Surge então as perguntas: Como faremos tal mudança? de que maneira? Com quais ferramentas? E a resposta todos estes questionamentos:
Tecnologia !!!

              A área de TI é uma área "meio", ou seja, serve de suporte a todas as outras. Podemos ver isso na medicina, meteorologia, administração mas e na educação? Servimos atualmente de suporte á educação de nosso país? 
              Infelizmente vi uma escola utópica na tese do professor Schneider mas não pelas idéias da tese e sim pelo fato de nosso sistema atual não permitir que tais mudanças sejam aplicadas para que tenhamos educação de qualidade. Porém, deixando um pouco de lado a política venho enfatizar algumas tecnologias que me chamaram a atenção e que se aplicadas trariam benefícios á educação( Não por acaso essas tecnologias são partes dos temas de nossos grupos).

  • Inteligência artificial : O aluno aprende através do computador e, com o computador pois existe um personagem interativo que se adapta ao perfil do aluno no decorrer do curso. O aluno passa a ser um pesquisar e formador de seu conhecimento e não somente ouvinte passivo. O professor por sua vez torna-se um orientador da jornada de seus alunos.
  • Redes e Internet : Cria-se um banco de dados dos alunos e do material utilizado em aula assim o alunos poderão ter os materiais com mais praticidade. E haveria também uma rede na qual professores poderia tirar dúvidas de alunos( assim alunos tímidos poderiam sanar suas duvidas também) e alunos e professores poderiam fazer videos conferências e etc.
Além dessas ferramentas também foram apresentados cartazes de alunos envolvendo programação ubíqua, computação inteligente, internet das coisas e etc. Quem não foi perdeu muita coisa interessante . Minha expectativa é que no futuro não irá existir diferença entre ser de escola pública ou privada se é você mesmo que constrói seu conhecimento! Vale ressaltar que as pessoas que futuramente podem ser responsáveis por tais mudanças podem ser nós! Então vamos como futuros profissionais  fazer nosso papel e mudar esse País!