quinta-feira, 3 de julho de 2014

        
   Um Pouco Mais Sobre o Paradigma orientado a Objetos!

https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRvQbgI1uLTc-ziY1WWd2lX3KNZ1_6-BPHw9-vhw-8_37c1UsPgec2lwN6Y1d8abs-btZu6MGsFdK0csyfDt0fWYWLIrwe8y6rGO8Nwr74nc7zceKkc8Gg6xI2xSp8sG9AbuLRTisy3vE/s1600/frases.jpg

Quem Nunca Viu na abertura dos Simpsons o Bart escrevendo coisas do Tipo que estão ai na imagem ? Bem se você Nunca Assistiu "Os Simpsons" na sua vida é sinal que você não é um retardado ou que você assistia a "Barbie Girl"(hahaha nada contra !). Brincadeiras a parte, vamos ao que realmente interessa! Programação Orientada a objetos, é aquele troço que agente pode criar imagens tridimensionais e jogos cheios de armas e personagens sinistros e uma interface gráfica de tirar o fôlego? Bem, Esse é um dos "pre-conceitos" que temos quando pensamos em POO não é verdade? Mas a programação orientada a objetos não é uma metodologia para desenvolvimento de interfaces gráficas amigáveis, ou seja, não está necessariamente ligada a programação visual.

Nessa altura no Campeonato ( Ou Copa Do mundo! se preferirem) Vocês devem estar se perguntando o que o nosso Bart Simpson tem a ver com nosso Assunto, não é ? Antes de explicar isso preciso que você entenda alguns conceitos que você já teve ter estudado em Biologia.

  • Classe : Vamos Considerar a Classe "Animal". Que características todo animal tem ? Bem, Todo animal é : Um ser vivo, precisa se alimentar, respira etc. 
  • Subclasse: De acordo Com o que você sabe quais seriam as subclasse da Classe Animal ? Pensou em alguma ? então talvez você tenha pensado no Ser Humano, Ou Nos Seres Aquáticos etc. 
  • Objeto ( O bicho em si): Cachorro, Gato, Cavalo, Leão ,  etc.
Se vocês Compreenderam isso vocês acabam de entender três princípios muito importantes em programação orientada a objetos que são Classes, subclasses e o objeto em si. A POO simula virtualmente os processos que acontecem na vida real e, a partir daí, vamos supor que queremos escrever um programa de banco usando POO. Vai existir uma classe Chamada de "Cliente" com as seguintes características: Nome, idade. E criaremos duas subclasses Chamadas de "PessoaJurídica" E "PessoasFísica" .  Em POO existe uma outra característica chamada "herança" na qual uma subclasse filha herda todas as características da classe PAI e mais algumas características específicas. No nosso exemplo anterior a Subclasse "SERHUMANO" Tem todas as características Da Classe animal e mais algumas especializações ( pensar, falar etc. ) Logo as Subclasses do nosso programa para o banco ficariam assim :

Pessoa Física :
  • Nome
  • idade
  • CPF
Pessoa Jurídica :
  • Nome
  • Idade
  • CNPJ
Temos Ainda As ações que esses Clientes poderiam desenvolver que poderiam ser :

  • SacarDinheiro
  • Pagarconta
  • DepositarDinheiro
Esse Ato de o Objeto Realizar ações são chamados de métodos em POO. Agora que vocês já tem uma ideia do que é a programação orientada a objetos vamos para o nosso Bart Simpson ! O Bart Geralmente Ficava de castigo na escola por fazer alguma MERDA na escola e dessa vez foi por desenhar garotas peladas na aula e o seu castigo , como sempre, foi escrever que não faria mais aquilo Sem vezes no Quadro negro. Mas e se o nosso Bart Soubesse POO ??? Iria poupar muito tempo dele não é ? O resultado Seria mais ou menos assim :

http://techblog.desenvolvedores.net/wp-content/uploads/2010/12/orientacao-a-objetos-index.jpg

Espero que Tenham entendido pelo menos informalmente o que é POO. Até a proxima !


Referências : Watt, David A., Findlay,William. (2004) Programing Language Design Concepts, John Wiley&Sons. Ltd,the Atrium,Southern Gate, Chichester, England.

http://www.hardware.com.br/artigos/programacao-orientada-objetos/
http://pt.wikipedia.org/wiki/Orienta%C3%A7%C3%A3o_a_objetos    


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!

terça-feira, 20 de maio de 2014

A Aplicação Ontológica em uma visão mais geral - A Web Semântica
Leandro P. G. Silva  21/05



                                            © Brightfire View


Bem, no meu último post falei sobre o XML e prometi trazer um pouco sobre o OWL para vocês leitores. Com a intenção de não cometer o mesmo erro e tornar essa leitura pouco interessante, vim com uma aplicação prática para a linguagem OWL, na chamada Web Semântica.

Já pensou que louco seria se ao invés de palavras chave os buscadores como Google trabalhassem interpretando suas perguntas e fornecendo respostas?

Esse é o trabalho da Web Semântica, ou "web 3.0" como preferir, modelo tecnológico de partilha de dados e, do uso ontológico nos mecanismos de busca da web, com uma maior interação onde há o cruzamento das tags de conteúdo com seus dados disponibilizados e interpretação semântica para uma experiência mais fluída de navegação.

Seu enfoque é a desambiguação dos termos, pesquisas condizentes com o seu negócio e visibilidade para os mecanismos de busca, ao mesmo tempo que beneficia a empresa em sua organização de conteúdo.


                                © Whitheoaksblog

Com foco em sua criação à aplicação, a última, tão recente quanto a revolução mobile da "maçã" (2007), trouxe um vídeo debate promovido pelo pessoal da Academia Tech para vocês, que entre outras coisas, da exemplos reais de algo saído da academia para ser aplicado diretamente nas empresas:

Web Semântica | Os desafios por trás da nova web


Dá para ver que discordo do colega Tiago sobre a importância da chamada Web 3.0, não é mesmo?

Veja mais com um expert: http://www.brightfire.co.uk/blog/2012/marketing-automation-2/tech-expert-prediction-a-web-3-0-boom-by-2014


Fontes: 
http://tableless.com.br/a-web-semantica/
http://pt.m.wikipedia.org/wiki/Web_sem%C3%A2ntica

domingo, 11 de maio de 2014

Plagio [citation needed]


O problema do plagio cresce cada vez mais, e segundo reportagem publicada no Estadão "O número de casos de 'má conduta' (termo que inclui desde um parágrafo plagiado até trabalhos inteiros forjados ou adulterados) na ciência está aumentando, e a pressão que os pesquisadores sofrem das instituições e das agências de fomento para publicar pode ser um dos principais fatores por trás deste aumento, segundo especialistas de vários países que discutiram o assunto ontem numa sessão plenária do Fórum Mundial de Ciência, no Rio de Janeiro." Porém não há motivo que justifique o plágio,  todo profissional deve ter ética em sua pesquisa e respeitar o trabalho dos outros.

Diferente do que muitos pensam plagio não é somente a copia integral de uma obra, há vários tipos de plagio.
Integral: Simplesmente copiar sem alterar e nem acrescentar nada e sem fazer citação ao autor original.
Parcial: Sair retirando vários trechos de diferentes obras e reunir tudo num texto só. Nesse caso mesmo citando a fonte de cada trecho se o trabalho consistir somente de trechos sem acrescentar nada novo continua sendo plagio.
Conceitual: Fazer igual, mas em outras palavras. Apenas mudar como o texto é escrito não faz as ideias do autor serem suas.

Crime de plagio é sério, muito comum em trabalhos acadêmicos e principalmente TCC, pode levar a reprovação e expulsão da instituição de ensino.
Pode ser evitado sempre citando a fonte das informações, além de permitir que o leitor busque mais conhecimento na fonte, dá credibilidade ao seu trabalho e estimula o pensamento critico ao questionar as informações e não apenas reproduzi-las.

Referencias:
http://www.puc-rio.br/sobrepuc/admin/vrac/plagio.html
http://cmsw.mit.edu/writing-and-communication-center/avoiding-plagiarism/
http://blogs.estadao.com.br/herton-escobar/ma-conduta-wsf/
http://www.estadao.com.br/noticias/geral,aumento-das-fraudes-em-pesquisas-preocupa-cientistas,1012713,0.htm

quarta-feira, 7 de maio de 2014

The web evolution

Foi Uma Explosão !!!


http://lh6.ggpht.com/_xsB_S57HMUM/SZonk8NwLrI/AAAAAAAACIk/uBr75RHOwX0/explosao-espacial-.jpg

De acordo com a teoria do Big bang foi á aproximadamente 13,3 bilhões de anos que o universo foi formado dando início a um lento processo de evolução natural. Analogamente, á aproximadamente 22 anos atrás explodiu uma "bomba" que modificou o modo de como vemos o mundo. E assim, surgiu a primeira pagina na internet. 

Exatamente no dia 6 de agosto de 1991 que o britânico Tim Berners-Lee criou a primeira página da web que se tratava de uma breve explicação  do conceito do hipertexto.
Nesta primeira página, Berners-Lee explicava o conceito da rede  global destacando em belos argumentos que a WWW – ou W3, é “uma grande área de hipermidia de iniciativa recíproca que tem por objetivo de dar acesso universal a um grande universo de documentos”. Este site está no ar até hoje e você pode acessá-lo no link a seguir : http://info.cern.ch/hypertext/WWW/TheProject.html 


http://www.achievement.org/achievers/ber1/headers/ber1_image.gif

                                Web 1.0 e 2.0 !
http://johnnyholland.org/wp-content/uploads/model.png

A Web 1.0 era caracterizada por não ter muita interatividade com o usuário. Basicamente era utilizada para trocar informação. De certo modo uma pagina na internet era algo parecido com um jornal pois ao ler um jornal não se tem interação/alteração com os elementos inseridos sejam eles imagens, anúncios, notícias etc. A Web 1.0  era aquele negócio quadrado e sem aplicação prática na vida dos usuários, ou seja, não havia o leque de opções que encontramos na internet hoje em dia, mas devemos lembrar que foi a partir daí que construímos quase com a velocidade da luz um mundo totalmente novo em vários aspectos. 


Comparando a Web 1.0  com a 2.0 o fatores são totalmente diferentes já que surgiram a partir daí sites como o google, msn, wikipedia que oferecem uma maneira de personalização como a troca do plano de fundo no caso do msn. Mecanismo de inserção de informação e de busca através do google e alteração de informação (wikipedia). A Web 2.0 não se diferencia muito do que temos hoje em dia, na verdade, a Web 3.0 e outras são apenas aperfeiçoamentos em minha opinião.

Bom Após uma breve aula de história estarei encerrando por aqui pra que vocês não fiquem com sono ( rsrsrs).
Então é isso ai pessoal depois falarei mais sobre o assunto.


Fonte : Folha de São paulo , BandTec , Descomplicando a tecnologia.

domingo, 4 de maio de 2014



XM O quê?
Por Leandro Gomes em 4 de Maio de 2014


XML - Linguagem de Marcação


XML, do inglês eXtensible Markup Language é uma fonte de códigos que podem ser usados em textos e dados, lidos por computadores ou pessoas. Um exemplo de linguagem do tipo que é mais conhecida é a do HTML, para formatar e organizar websites, mas no caso do XML, usada para padronizar uma sequência de dados, assim você os organiza e distingue conteúdos.


Características do XML:

_Sintaxe básica_ Usada comumente para compartilhar informações entre diferentes computadores ou aplicações, combinada a outros padrões a sintaxe torna possível separar 'formato' do 'conteúdo' de um documento, separando-os consegue se reaproveitar códigos escritos, em outras aplicações ou propósitos.


_Aplicações_ Na escrita e leitura de bancos de dados, compartilhamento em sistemas de informação (especialmente via internet), codificação de documentos e comparação de números seriais. O XML também é utilizado quando você recebe atualizações de suas assinaturas de RSS, o processo necessário advém de uma fonte que disponibilizou um arquivo XML para fornecer o feed ao programa que fez a leitura em seu device.


  
Além disso, o XML é a base do OWL, linguagem ontológica que falarei na próxima publicação do blog, dúvidas? Sugestões? Não esqueça de deixar seu comentário.



 Fonte: Tecmundo