segunda-feira, 28 de julho de 2014

Paradigmas da Programação - Continuação .........

Bom galera, conforme prometido segue segundo trecho da matéria sobre paradigmas!!!



- PROGRAMAÇÃO MULTIPARADIGMA
Uma linguagem de programação multiparadigma é uma linguagem que suporta mais de um paradigma de programação. A ideia de uma linguagem multiparadigma é fornecer um framework no qual o programador possa trabalhar com vários estilos, misturando livremente construtores de diferentes paradigmas. O objetivo em se projetar linguagens deste tipo é reservar aos programadores a melhor ferramenta para determinado trabalho, admitindo que nenhum paradigma resolva todos os problemas da maneira mais elegante, ou mesmo eficiente.
As características da programação multiparadigma pode ser relaciona com a junção dos paradigmas de programação que ela reúne, ou seja, ela une todas as características dos paradigmas de programação que ela engloba.
Algumas linguagens com esse paradigma:
- Scala

- Oz


- PROGRAMAÇÃO ESTRUTURADA
Não existe uma definição universalmente  aceita para a programação estruturada; ao 
contrário, existem várias escolas de pensamento que a conceituam.
No sentido mais restrito, o conceito de programação estruturada diz respeito à forma do programa e do processo de codificação. É um conjunto de convenções que o programador pode seguir para produzir o código estruturado. As regras de codificação impõem limitações sobre o uso das estruturas básicas de controle, estruturas de composição modular e documentação.
Características:
- Programação sem GO TO (eliminação completa ou parcial do comando GO TO)
- Programação com apenas três estruturas básicas de controle: seqüência, seleção e iteração 
- Forma de um programa estruturado
- Aplicação de convenções de codificação estruturada a uma linguagem de programação específica
Algumas linguagens com esse paradigma:
- Pascal
- C


QUAL PARADIGMA ESCOLHER PARA O MEU PROJETO?
O universo computacional é complexo. Desta forma, este universo foi divido em partes, para que a complexidade pudesse ser trabalhada ("dividir para conquistar"). A existência de diversos paradigmas de programação justifica-se apenas pela existência de diversas classes de problemas. A escolha de um paradigma depende do tipo de problema a ser solucionado. Procurar a solução para um problema consiste em escolher o paradigma que permita a expressão da solução com o mínimo de esforço. No entanto, certos problemas não permitem uma solução concisa com a utilização de apenas uma paradigma, isto é, necessitam de uma forma de expressão mais ampla para serem solucionados. Também é sempre necessário lembrar que o paradigma de programação é totalmente independente da linguagem de programação, ou seja, a orientação a objetos é um paradigma criado para a solução de problemas para desenvolvedores e não tem uma ligação de necessidade com nenhuma linguagem, quem aborda esses paradigmas são as linguagens de programação, e também podemos vemos que varias linguagens de programação abordam vários tipos de paradigma de programação.


Texto extraído de  "http://protocoloti.blogspot.com.br/2012/04/paradigmas-de-programacao.html" em 26/07/14.
 
TECNOLOGIA MÓVEL: UMA TENDÊNCIA, UMA REALIDADE

Atualmente a mobilidade (Mobile), apresenta-se como uma das grandes inovações históricas da revolução tecnológica. A partir da primeira década do século XXI, presencia se um impacto profundo e fundamental em boa parte dos setores econômicos, mas nada comparado ao que ocorreu no setor de Tecnologia da Informação (TI) que, vem acrescentando ao mercado, uma gama de novidades relativas à infraestrutura da
computação móvel como hardwares, softwares, redes de computadores, etc. A partir de um equipamento de mão, como um dispositivo celular, iPad, Smartphone, é possível conectar se ao mundo digital, pessoas, clientes, parceiros de negócios, etc. Tendo em vista a infinita gama de informações, serviços e recursos disponíveis no mundo eletrônico, considera-se que poucos são aqueles, mercados e pessoas, que querem ficar para trás. O interesse neste canal de comunicação se transforma em uma nova estratégia não só de
comercialização como de comunicação.

Os dispositivos móveis estão cada vez mais sofisticados e permite o acesso a WEB.
Pensando nesse contexto, é que os fabricantes de componentes eletrônicos se enfrentam numa guerra tecnológica pela disputa de um ambiente competitivo que se abre para quem colocar no mercado, o produto mais atraente, interativo e versátil.

Conteúdo removido de: "http://arxiv.org/ftp/arxiv/papers/1105/1105.3715.pdf" , um trabalho de Carlos Augusto Almeida Alcantara e Anderson Luiz Nogueira Vieira.
Web Social - Conceito do Wikipedia e explanação:

Web social é um conjunto de relações sociais que ligam as pessoas através da World Wide Web.1 A web social engloba como os sites e softwares são projetados e desenvolvidos para apoiar e promover a interação social (http://pt.wikipedia.org/wiki/Web_social).

A Web social é, como comentada por vários jornais, uma das novas ferramentas de comunicação rápida, nem sempre eficaz, nem sempre útil. Essa nova teoria sobre a forma social de comunicação acaba afastando os presentes enquanto aproxima os distantes.

Essa ferramenta assim como comentado também no conceito de comunicação é qualquer forma de interação realizada por interações em rede local ou não, privada ou pública em sites de compras, de compartilhamento de fotos, arquivos e etc...

Os primórdios desta nova ferramente partiu-se da necessidade de comunicação das primeiras guerras com auxílio tecnológico, chegando hoje à comunicação em tempo real por pequenos aparelhos portáteis.


domingo, 27 de julho de 2014

Conectividade

Em termos gerais, a conectividade é a capacidade de conectar sistemas ou programas de aplicação. Idealmente, essas conexões são estabelecidas sem a necessidade de muitas mudanças para as aplicações ou os sistemas em que eles são executados. Os programas de aplicação pode precisar se comunicar uns com os outros para completar transações ou para equilibrar eficazmente os recursos em uma instalação.
                                                               http://publib.boulder.ibm.com/infocenter/zvm/v5r4/topic/com.ibm.zvm.v54.hcpa6/hcsc9b3103.htm

Podemos vê-la do uma forma organizacional também : Imagine uma rede de trabalho numa organização onde cada um de nós representa um ponto de ligação a outras pessoas. A velocidade, frequência e a intensidade com que essas conexões se realizam é a conectividade.

  http://www.josebaldaia.com/intuinovare/tag/conectividade/

Foi-se o tempo em que as coisas serviam para apenas uma só função, hoje é muito mais fácil ouvir sua musica favorita no smartphone onde também é posível ler seus e-mails, ver tv, localizar uma rua, enviar uma mensagem para sua secretária e até ler um livro. Alguns anos atrás você precisaria de meia duzia de dispositivos para isso. há uma tendencia para que todos dispositivos que usamos sejam conectados e alguns deles já não são mais novidades como os carros e as tvs, outros ainda causam estranheza como uma geladeira que pode conectar-se a internet procurar receitas usando conteúdo dela ou tuitar para você se faltar o leite, parece coisa de ficção científica ou ter saído de episódio dos Jetsons mas é verdade.
  
geladeira samsung conectada à internet
















 O Índice Qualcomm da Sociedade da Informação é um estudo realizado pela Qualcomm com o objetivo de analisar os dados de conectividade do Brasil e do México com outros 72 países.Segundo o levantamento, divulgado nesta segunda-feira (17), o país ainda precisa investir em infraestrutura, já que aparece em 44ª lugar em conectividade, atrás do Uruguai, Argentina e Chile.

Banda larga fixa

A média mundial de habitantes com acesso à banda larga é de 17,7% e o índice constatou que pouco mais de 10% dos brasileiros têm acesso à banda larga, aproximadamente 10 milhões de acessos ativos. Além disso, a velocidade de conexão também está abaixo da média mundial de 4,48 Mbps, com 2,3 Mbps.

Banda larga móvel

Na banda larga móvel, o Brasil ocupa a 39ª posição nos serviços móveis, com cerca de 48 milhões de acessos ativos. A média da velocidade de conexão móvel é de 1,1 Mbps – também abaixo da média mundial, que registra 2,28 Mbps.
O presidente da Qualcomm para a América Latina, Rafael Steinhauser afirma que “Talvez essa questão da velocidade baixa possa explicar um menor consumo de banda larga no Brasil”. O executivo diz que o acesso à banda larga ainda falha no 3G, apesar da migração dos usuários para os smartphones. Para ele, “Muitos ainda buscam o Wi-Fi como o oxigênio das suas conexões. Onde não têm wi-fi, eles não acessam a rede. O 3G precisa popularizar”. Seinhauser admite ainda que o público brasileiro está cada vez mais exigente e não vê problema em pagar taxas mais altas, desde que vejam resultado.

Redes sociais

No Brasil, 89% dos usuários utilizam a Internet para acessar as redes sociais, enquanto 82% fazem isso no México. Diferentemente do que se pode imaginar, em países mais desenvolvidos como Estados Unidos e Reino Unido, os índices ficam em 65% e 51%.

No total, o Índice Qualcomm da Sociedade da Informação foi desenvolvido a partir de 1.400 entrevistas com usuários de internet e telefonia móvel no Brasil. Aproximadamente 36% dos pesquisados possuem um feature phone – celular sem conexão 3G -, enquanto 41% dos entrevistados têm smartphones e outros dispositivos e 21% têm um smartphone e  utilizam pelo menos três aparelhos diferentes para acessar a internet.
http://www.futurecom.com.br/blog/brasil-ainda-precisa-melhorar-sua-conectividade-aponta-qualcomm/

sábado, 26 de julho de 2014

Paradigmas da Programação


Boa noite, galerinha! Confesso a vocês que está é minha primeira postagem em um blog, nunca me interessei muito por este assunto, porém realizando as buscas a respeito do tema que abordo neste. Visitei muitos blogs bem interessantes e com um conteúdo muito sólido. Inclusive este do qual retirei o tópico tratado. Sem mais delongas, segue.





O QUE É?
O paradigma de programação é o conceito que pressupõe a forma que programador tem sobre a programação e execução de um programa. 
Paradigmas diferem nos conceitos e abstrações utilizadas para representar os elementos de um programa (como objetos, funções, variáveis, restrições, etc) e as etapas que compõem um cálculo (atribuição, avaliação, continuações, fluxos de dados, etc.).
Mais claramente falando é a forma de estrutura que você vai usar para programar e executar o seu software, é um conceito que todas as linguagens tem que abordar, porém existem muitos tipos de paradigmas de programação.

VAMOS CONHECER ALGUNS:


- PROGRAMAÇÃO PROCEDURAL
É um paradigma de programação baseado no conceito de chamadas a procedimentos, também conhecidos como rotinas, subrotinas, métodos, ou funções, que simplesmente contém um conjunto de passos computacionais a serem executados. Um dado procedimento pode ser chamado a qualquer hora durante a execução de um programa, inclusive por outros procedimentos ou por si mesmo.
Esse paradigma ainda é muito usado, por ser mais fácil de compreender e normalmente programadores aprendem a desenvolver usando esse paradigma, ele pode ser eficiente para problemas simples e até para o aprendizado, mas não se prenda a esse tipo de paradigma, existem outros que são muito melhores do que esse.
Características:
- Conjunto de instruções organizado em blocos para executar determinada tarefa(funções).
- Conjuntos de funções agrupadas por funcionalidades em bibliotecas.
- Modelagem por meio de fluxograma e grande utilização de algorítimos.
- Extremamente técnico.
Algumas linguagens com esse paradigma:
- C
- Pascal
- Basic
- C++
- PHP
- Python
- Visual Basic
- Perl


- PROGRAMAÇÃO ORIENTADA A OBJETOS
A orientação a objetos é o paradigma de programação predominante atualmente e está, aos poucos, substituindo a programação procedural, criada no inicio da década de 1960.
Nesse paradigma o programa é composto por objetos com propriedades (atributos) e operações (métodos) que podem ser executados por eles.
Todas as funcionalidades e atributos de cada entidade do sistema são armazenados em classe que representam essa entidade.
Normalmente, utilizamos a Unified Modeling Language (UML) para modelar soluções orientadas a objetos.
Características:
- Podemos definir objeto como abstração de um particular aspecto de interesse, incluindo não somente sua estrutura, como nos métodos tradicionais, mas também comportamento, regras, conhecimento, responsabilidades, ciclo de vida, intrínsecos ao aspecto em questão. Objetos com características comuns são agrupados em classes.
- Uma característica derivada da forma muito comum de hierarquia "é um", é a herança. Subclasses herdam estrutura e comportamento das subclasses às quais estão ligadas, evitando assim redundâncias e inconsistências. Deve-se observar a possibilidade de herança múltipla no caso em que uma subclasse pode ter relacionamento "é um" com mais de uma superclasse.
- Os objetos existem em convívio com outros objetos, e não isoladamente. Assim, chama-se comportamento às ações e reações de um objeto, mudando de estado e trocando mensagens, em contato com os demais objetos. É sua atividade visível. É representado pelos chamados métodos, descritos para cada classe de objetos.
- Outras características bastante interessantes, provenientes da área de inteligência artificial, são a representação de conhecimento e a definição de regras sobre objetos ou classes de objetos. É crescente a colaboração entre as áreas de orientação a objetos e de inteligência artificial, trazendo grandes contribuições a ambas.
Algumas linguagens com esse paradigma:
- C++
- C#
- VB.NET
- Java
- Python
- Ruby
- Smalltalk



No próximo post, irei apresentar a programação "Multiparadigma" e a programação "Estruturada", e qual o tipo você deve escolher. Não deixem de acompanhar nosso blog! Boa noite!