Carnaval

31 01 2008

carnaval

Neste sábado dia 02/02/08 eu junto com minha família vamos curtir um carnaval no sambodromo de São Paulo. Será minha primeira vez no sambodromo do Anhembi e estou muito entusiasmado com essa grande festa.

Confira as escolas que irão desfilar no carnaval de São Paulo no dia 01 e 02 de fevereiro:

Dia 1º de fevereiro (sexta-feira)

A partir das 21h

1-Gaviões da Fiel
Enredo: “Nas asas dos Gaviões, rumo ao portal dos sertões – Santana de Parnaíba: Berço de Bandeirantes”

2-Acadêmicos do Tucuruvi
Enredo: “Hummm…É tempo de sorvete, do oriente ao ocidente, o alimento refrescante e nutritivo“

3-Unidos de Vila Maria
Enredo: “Irashai-mase, milênios de cultura e sabedoria no Centenário da Imigração Japonesa“

4-Águia de Ouro
Enredo: “A Taça da Felicidade, uma viagem pelos sentidos às delícias do sorvete“

5-Tom Maior
Enredo: “Glória Paulista – São Paulo na Vanguarda da Economia Brasileira“

6-Rosas de Ouro
Enredo: “Rosaessência – O eterno aroma“

7-Nenê de Vila Matilde
Enredo: “Um vôo da águia como nunca se viu! Também somos folclore do Brasil. 110 anos aprendendo com Câmara Cascudo”

Dia 2 de fevereiro (sábado)

1-Camisa Verde e Branco
Enredo: “Da pré-história ao DNA: A história do cabelo eu vou contar! “

2- Mancha Verde
Enredo: “És imortal… Ariano Suassuna, sua vida, sua obra, patrimônio cultural“

3- X-9 Paulistana
Enredo: “O povo da terra está  abusando. O aquecimento global vem aí… A vida boa sustentável pede passagem“

4- Pérola Negra
Enredo: “A onça vai beber água. Jaguariúna: Qualidade de vida e desenvolvimento nos trilhos do tempo“

5- Vai-Vai
Enredo: “Vai-Vai, Acorda Brasil! A Saída é ter esperança! “

6-Mocidade Alegre
Enredo: “Bem-Vindo a São Paulo, Sabe por quê? Porque São Paulo é tudo de bom!!! “

7-Império de Casa Verde
Enredo: “Sambando e cantando e seguindo a canção… Vem, vamos embora para a festa da MPB!“

Bom é isso, ótimo carnaval a todos e dale samba no pé :)

UltraG





POO – Programação Orientada a Objetos

29 01 2008

Continuando com os posts sobre as matérias do meu 3° semestre de sistemas de informação, chegou a hora da POO.

O que é programar Orientado a Objetos?

Programar Orientado a Objetos é pensar em como criar seu código como você pensa na vida real. É você abstrair os objetos da vida real e leva-los para as linhas de código como eles são – com suas características, que são os atributos e suas ações, que são os métodos. Todo objeto tem características e ações.

A POO foi criada com o intuito de resolver os problemas da programação estruturada. A idéia era resolver problemas o mais rápido possivel e com a segurança que funcionaria em qualquer lugar a mesma solução. A grande vantagem disso é o reaproveitamento de código, isso traz uma redução no tempo que uma solução pode ser gerada. Tempo em programação pode ser muito caro, por isso a POO é tão bem aceita!

O que é um Objeto?

Um objeto é um elemento computacional que representa, no domínio da solução, alguma entidade (abstrata ou concreta) de interesse do sistema sob análise. Objetos similares são agrupados em classes. No paradigma da orientação a objetos, tudo pode ser potencialmente representado como um objeto. Sob o ponto de vista da programação, um objeto não é muito diferente de uma variável no paradigma de programação convencional.

Quando se define uma variável em Java, essa variável terá:

  • Um espaço em memória para registrar o seu estado atual (um valor)

  • Um conjunto de operações associadas que podem ser aplicadas a ela, através dos operadores definidos na linguagem que podem ser aplicados a valores inteiros (soma, subtração, inversão de sinal, multiplicação, divisão inteira, resto da divisão inteira, incremento, decremento).

Da mesma forma, quando se cria um objeto, esse objeto adiquire um espaço em memória para armazenar seu estado (os valores de seu conjunto de atributos, definidos pela classe) e um conjunto de operações que podem ser aplicadas ao objeto (o conjunto de métodos definidos pela classe).

Portanto um programa orientado a objetos é composto por um conjunto de objetos que interagem através de “trocas de mensagens” entre eles. Na prática, essa troca de mensagem traduz-se na chamada de métodos (funções) entre objetos.

Exemplo de um objeto:

Um Jaguar é um objeto. Ele tem como características a cor, peso, quantidade de portas, modelo, ano, etc. Também tem ações como frear, buzinar, acelerar, abrir os vidros, trocar de marchas, etc. Portanto programar Orientado a Objetos é você fazer essa abstração do mundo real e transforma-la em código. Mais adiante mostrarei um exemplo de código Orientado a Objetos.

A POO tem quatro pilares que a sustenta, seguindo:

Abstração:

É a capacidade de você pensar nos objetos da vida real e classifica-los. É o processo pelo qual modelamos sistemas reais ou imaginários, extraindo do seu contexto os seus principais elementos “Objetos”, e descrevemos cada objeto, com suas principais “características” de dados e funcionalidades.

Uma Ferrari por exemplo tem as mesmas características do objeto Jaguar citado acima, possui até mais, mas eles tem algo em comum, ou seja, ambos são carros, logo pertencem a classe carro. A Ferrari é um tipo de carro e o Jaguar também, mas cada um com suas características e ações particulares e comuns.

Programar Orientado a Objetos é fácil, o difícil é programar Orientado a Objetos bem. Pois se programando bem, você pode tirar proveito de todas as vantagens que a POO possui e para se programar bem Orientado a Objetos a principal característica que o programador deve ter é uma boa abstração do mundo real.

Encapsulamento:

Os objetos como dito acima contém atributos e métodos. O encapsulamento trata de dar alguma segurança aos objetos. Explico:

Um objeto Cliente por exemplo tem atributos como qualquer outro e estes não podem ser acessados por qualquer outro objeto diretamente. Existem dois tipos de atributos, os privados e os publicos. Em UML e OO (orientação a objetos) é definido que para atributos privados usa-se o sinal de “-” antes do nome e para atributos publicos usa-se o sinal de “+” antes do nome.

Exemplo:

objeto cliente

Para que o encapsulamento exista é preciso deixar os atributos privados e os métodos públicos, assim está sendo garantido que os valores atribuídos aos atributos serão sempre respeitados pelas regras existentes.

Exemplo:

O atributo cpf deve sempre ter 11 números, se o atributo não for privado, ele perde essa regra (11 números) pois alguém poderia acessar e colocar 12 ou 9 números tornando-o inválido.

Como os atributos privados não podem ser acessados diretamente por outros objetos, existem os métodos publicos que são os responsáveis em acessar os atributos e trazer ou levar algum dado para o objeto respeitando as regras.

Idéia de encapsulamento:

encapsulamento

Herança:

O que torna a orientação a objetos única é o conceito de herança que no inglês significa inheritence.

Herança é um mecanismo que permite que características comuns a diversas classes com comportamentos comuns ou parecidos, sejam abstraídas e centralizadas em uma classe base, ou superclasse. Tem uma relação “É um”.

Exemplo:

Um Jaguar “é um” carro. Logo ele foi herdado da classe carro, pois contém as características comuns de um carro.

A partir dessa superclasse outras classes podem ser especificadas. Portanto uma subclasse que é uma classe herdada da superclasse recebe sem codificação extra as características da superclasse. Ainda podemos adicionar elementos particulares a está subclasse.

Na linguagem Java uma subclasse somente pode herdar uma única superclasse diretamente.

Exemplo:

herançajaguar

Polimorfismo:

Analisando a palavra Polimorfismo, ela significa muitas formas. Ou seja, para uma árvore de herança, temos muitas formas de objetos e métodos a partir de uma superclasse e suas subclasses. Polimorfismo é o princípio pelo qual usamos objetos construídos a partir de uma árvore de herança, através de referências do tipo de uma superclasse da hierarquia.

Formas de polimorfismo:

  • Subclasses;
  • Sobrescrita de método;
  • Sobrecarga de método ou construtor

Sobrescrita de métodos – Overriding

Esta utilidade nos permite escrever numa subclasse um ou mais métodos presentes numa das superclasses podendo alterar o comportamento da superclasse.

Exemplo:

polimorfismo

Quando numa subclasse reescrevemos um método já existente numa superclasse, chamamos de sobreescrita de método ou reescrita de método mas o termo técnico é Method Overriding. Lembrando que a sobrescretica de métodos só é valida quando o método reescrevido na subclasse tem exatamente a mesma identificação (nome, tipos, etc.) do método da superclasse.

Sobrecarga de métodos – Overloading

O Polimorfismo ainda permite que numa mesma classe tenhamos métodos com o mesmo nome, desde que o número ou tipos de parâmetros passados sejam diferentes.

Exemplo:

sobrecarga

A sobrecarga de métodos é uma ferramenta poderosa, pois nos permite criar vários métodos com o mesmo nome, isso facilita o entendimento de problemas mais complexos, pois não é necessária a criação de nomes de funcionalidades sem sentido aparente.

Classes

Entendido todos os conceitos acima fica fácil entender o que é uma classe. Como na vida real existem diversos objetos do mesmo tipo, nos softwares também é assim. Imagine o sistema de gerenciamento de veículos do Detran. Quantos objetos do tipo carro este sistema deve manipular por dia? Se fosse feita uma descrição para cada um, o sistema jamais iria funcionar.

Assim, podemos descrever um mesmo tipo de objetos uma única vez e cada vez que um novo objeto precise ser criado, é só utilizar a mesma fôrma. Esta fôrma é chamada classe.

Pense em uma padaria, quando você vai escolher bolos se depara com muitos bolos idênticos. Ai você se pergunta, seria o padeiro capaz de produzir tantos bolos com a mesma forma apenas usando as mãos?NÃO! Ele usou uma fôrma para fazer estes bolos, a fôrma foi o molde que ele queria para seus bolos. Com os objetos não é diferente, as classes são os moldes (modelos, fôrmas, plantas) para criação dos os objetos em tempo de execução dos programas.

Ainda tem mais, uma classe é a descrição de um conjunto de objetos que possuem os mesmos atributos, operação e semântica. Dizemos que um objeto é uma instância de uma classe, quando ele é criado a partir dela, seguindo sua especificação.

Ainda existe a diferença entre abstração e instância

A abstração denota a essência ideal de uma coisa; a instância denota uma manifestação concreta.

Poderíamos também dizer que, na codificação existem somente as classes, não os objetos. Já em tempo de execução, o que existe são os objetos e não as classes. Também dizemos que uma variável é de um determinado tipo (inteiro, booleano, real, etc.) numa linguagem de programação, então dizemos que um objeto é de uma determinada classe.

Uma classe é a reunião de objetos idênticos por meio de atributos e métodos.

Neste post existe muitas possibilidades de assuntos mais profundos, mas eu tentei focar somente em OO.

Vou ficando por aqui e até o próximo post sobre Probabilidade e Estatística.

UltraG





Modelos Organizacionais e Inovação Tecnológica

24 01 2008

inovaçao

Hoje no mundo globalizado, na chamada sociedade da informação, o que mais se preza nas organizações e no mercado são as informações. As informações são valiosas e são estas as fonte de renda da maioria das organizações do século 21. O mercado globalizado é altamente concorrido e para uma organização crescer neste mercado ela deve ter um ótimo modelo de gestão organizacional, que vise a vantagem tecnologica, inteligência competitiva e sustentabilidade, uma palavra que re-definiu o conceito de lucro e sucesso para as organizações.

Os modelos organizacionais são formas de gestão para se conduzir ou administrar uma empresa ou organização. É o modelo organizacional que define como a organização se portará no mercado, como ela conduzirá seu trabalho, como alcançará seus objetivos, como produzira seus produtos além do papel de manter integrado todos os processos de funcionamento para aproveitamento das sinergias.

Um modelo organizacional tem um papel super importante na vida de uma organização como dito. Ele também é o resposável pela identificação, captura, seleção e validação, organização e armazenagem, compartilhamento, aplicação, criação do conhecimento organizacional, aprendizagem organizacional para que esta possa ter condições de competir no mercado globalizado.

A aprendizagem organizacional também faz parte de um modelo, ela é responsavel por criar, adquirir, transferir conhecimentos e modificar comportamentos e até os modelos, refletindo o novo conhecimento. Uma organização de aprendizagem possue habilidades em cinco principais atividades: Resolução sitemática de problemas, experimentação de novas abordagens, aprendizado a partir da própria experiência e história passada, aprendizado através de experiências e melhores práticas de outros e a transferência do conhecimento de forma rápida e eficiente por toda a organização.

Dentro de um modelo organizacional pode estar descrito que uma organização seguira a inovação tecnologica. O surgimento sistemático de novas tecnologias, amparadas por inovadoras possibilidades de geração e integração da informação, constrói um ambiente extremamente desafiador para o desenvolvimento de projetos de produtos para as organizações. Neste ambiente, as necessidades de mercado que um produto visa satisfazer e as tecnologias exigidas para tal, radicalmente, podem mudar antes mesmo da implementação do projeto. Superar estes desafios não é somente uma tarefa da função projeto, ou um problema exclusivo das funções marketing e manufatura, mas um desafio inerente a toda a organização. Com isto, surgem inovações organizacionais nas quais times de projetos interdisiciplinares atuam interativa e colaborativamente, ao longo do desenvolvimento dos produtos dentro dos modelos.

Por isto a inovação tecnologica é fundamental para alcançar ou sustentar uma vantagem competitiva num mercado em acelerada transformação, mas é bem restrito o número de organizações e modelos trabalham e focam na inovação.

Para sempre se buscar a inovação tecnologica um modelo organizacional deve seguir passos:

* É preciso primeiramente ousar, ou diria, antes, superar o medo de ousar.
* O sucesso de um negócio está relacionado à capacidade do empreendedor de buscar o diferente, o quase-impossível.
* É preciso estar aberto para o inesperado.
* Desta forma será possível reconhecer uma descoberta ou uma oportunidade quando você der de cara com ela.
* Algumas pessoas confundem criatividade com inovação. São coisas distintas, porém dependentes.
Ou seja: “Criatividade é pensar coisas novas. . . Inovação é fazer coisas novas”.

A inovação, portanto é fruto da criatividade. A criatividade é o meio, o processo e não o produto. Ou seja, é necessário que se tenha um raciocínio criativo para produzir idéias novas que vão gerar coisas novas ou INOVAÇÃO. Inovar é pensar o absurdo e transformá-lo em lógico. Einstein dizia que “se, na sua formulação inicial, uma idéia não parecer absurda, ela provavelmente não é uma idéia inovadora”.

Inovar também é gerar idéias alternativas.

Como fazer melhor o que já fazemos bem? Como fazer em menos tempo, com mais economia, em menos etapas, com mais facilidade, com menos recursos? Com mais facilidade para produzir, estocar, distribuir, etc? Com outras pessoas? .Inovar é gerar alternativas melhores para velhas soluções ou alternativas novas para resolver novos e velhos problemas. Fazer diferente pode fazer a diferença entre liderar ou correr atrás do líder. Para fazer diferente é preciso pensar diferente.

Um novo olhar exige uma percepção ampliada e um raciocínio divergente, um “estar insatisfeito” e um questionamento permanentes.

As boas idéias nascem de perguntas. A inovação surge quando acreditamos que tudo pode ser melhorado.

Portanto os modelos organizacionais deve estar sempre focados para as inovações do mercado. Principalmente para as tecnologicas que são as que mais oferem vantagem competitiva.

UltraG





O que é a tecnologia 3G?

19 01 2008

3G logo

Tecnologia 3G é a terceira geração da telefonia celular e tem como principal vantagem a velocidade na comunicação pessoal móvel usando banda larga.

Existem muitas vantagens em usar essa nova tecnologia que na américa latina já está disponivel na Argentina e Chile. Neste post vou tratar das vantagens para os usuários – os clientes das operadoras.

Essa tecnologia engloba novas funcionalidades, melhor desempenho e altas taxas de transmissão de dados em dispositivos sem fio. O acesso a serviços de banda larga sem fio é comparavel a banda larga convencional. É possivel no seu celular fazer videoconferência, download de músicas inteira em alta velocidade, baixar e assistir a vídeos, jogar jogos 3D com múltiplos jogadores, usar ferramentas de busca e até serviços de localização bastante populares na Ásia, que permitem encontrar restaurantes e shopping centers, por exemplo. No Japão, 3,5 milhões de celulares com TV foram vendidos em um ano.

No Brasil já existe a tecnologia 3G da linha do CDMA2000 que também é chamada de EV-DO release 0. Para essa tecnologia a taxa de transmissão é de 2,4 Mbps – Download. Também existe outra da linha do WCDMA, chamada de HSDPA mas só está disponível em algumas capitais brasileiras. As taxas de transmissão do HSDPA podem ser 1,8 Mbps, 3,6 Mbps ou 7,2 Mbps – Download – dependendo da versão implementada.

O HSDPA tem uma evolução que é chamada de HSUPA que tem uma elevação na taxa de upload para até 11 Mbps. Tanto a HSDPA quanto a HSUPA são chamadas genericamente de HSPA.

Download de música:
Usando HSDPA o tempo estimado para fazer o download de uma música é de 1,3 segundos contra 20 segundos do EDGE.

Download de video:
Usando HSDPA um video pode ser baixado em 3,3 segundos contra 50 segundos do EDGE.

Upload de video:
O HSUPA pode upar um video em 10,2 segundos contra 50 segundos do EDGE.

Download de arquivo:
O HSDPA baixa um arquivo em 2,6 segundos contra 40 segundos do EDGE.

Upload de arquivo:
HSUPA pode upar um arquivo em 10 segundos contra 40 segundos do EDGE.

Entre as operadoras que oferecem a tecnologia 3G no Brasil está a videochamada, com transmissão de áudio e imagem simultânea.

Bom, eu espero logo poder usar a tecnologia 3G, ela é simplesmente FANTÁSTICA.

UltraG





Matemática Financeira

13 01 2008

Do que trata a matemática financeira?

Neste post serei breve e apenas mostrarei alguns conceitos que a matemática financeira usa.

Introdução:

A matemática financeira é um ramo da Matemática que se preocupa em estudar os cálculos matemáticos relacionados a operações de investimento e financiamento realizados por agentes atuantes no mercado financeiro. Independentemente do tipo de operação, sempre há um empréstimo de recursos, ou seja, de dinheiro envolvido. Sendo assim, o conceito-chave da matemática financeira é taxa de juros.

Já que matemática financeira trata especificamente de taxa de juros, cito as três denominações de taxa de juros que podemos encontrar em diferentes situações no mercado financeiro. São elas:

Taxas:

Taxa de juros nominal, taxa de juros efetiva e taxa de juros real.

Explicando cada uma:

Taxa de juros nominal:

Taxa de juros Nominal é aquela que é expressa em uma unidade de tempo diferente daquela em que os juros são capitalizados, ou seja, a taxa é expressa em uma unidade de tempo e a forma de acumulação dos juros (seja em regime simples ou composto) é feita em outra unidade de tempo. Por exemplo: um financiamento em que a taxa nominal é expressa em bases anuais, mas a capitalização é feita em bases mensais.

Taxa de juros efetiva:

Taxa de juros Efetiva é aquela que é expressa na mesma unidade de tempo em que os juros são capitalizados.

Taxa de juros real:

Uma taxa de juros Real é aquela que, independentemente de ser nominal ou efetiva, o investidor recebe descontada a variação da inflação ou de qualquer indicador desejado, nominal ou efetiva, respectivamente.

Ainda podemos saber em que consiste uma taxa de juros Simples, uma taxa de juros Composta e uma taxa de juros Continua.

Juros:

Taxa de juros Simples:

Sob um regime de taxa de juros simples, o juro recebido/pago sobre determinado montante de dinheiro aplicado/investido/emprestado é linearmente proporcional ao prazo em que os juros são referenciados nominalmente, ou seja, é proporcional à taxa de juros nominal de aplicação.

Em termos genéricos, podemos mostrar que:

taxa de juros simples

em que:
VF é o Valor Futuro do investimento
P é o principal investido
r é a taxa de juros nominal (% ao período, seja este período qualquer um – 1 dia, 1 mês, 1 ano etc.)
t é o número de períodos em que a taxa de juros é referenciada

Taxa de juros Composta:

Sob um regime de taxa de juros composta, o juro recebido/pago sobre determinado montante de dinheiro aplicado/investido/emprestado é geometricamente proporcional ao prazo em que os juros são referenciados nominalmente, ou seja, a cada período de capitalização os juros incedem não só sobre o principal, mas também sobre os juros já acumulados até então.

Matematicamente,

taxa de juros composta

Taxa de juros Contínua (ou continuamente composta):

Sob um regime de capitalização contínua, o juro recebido/pago sobre determinado montante de dinheiro aplicado/investido/emprestado é tratado da mesma forma que em um regime de juros compostos, com a única deferença residindo na freqüência de capitalização, que é feista continuamente, ou seja, a cada instante, sendo o “instante” definido como a menor medida possível de tempo.

Matematicamente,

taxa de juros cont�nua

Repare que a taxa de juros neste caso é r*, diferente da taxa de juros composta r.

Diferença:

Agora vou mostrar a diferença entre as taxas de juros no regime composto e contínuo.

Na verdade, quando se fala em regime composto, estamos dizendo que os juros são capitalizados em períodos discretos, por exemplo, 1 dia, 1 mês ou 1 ano e, no caso do regime contínuo, os juros são capitalizados de forma composta também, porém em período contínuo.
Assim, se r é uma taxa de juros composta e r* uma taxa de juros contínua:

taxa - diferença entre r e r*

Como para conseguirmos calcular as taxas equivalentes nos dois regimes o Valor Futuro (VF) tem de ser igual nos dois casos, x tem que ser igual a y.

Sendo assim,

taxa - x = y


Agora apresentarei o conceito de Valor Presente para depois apresentar no que consiste o Valor Futuro (VF).

Valores:

Valor Presente:

O chamado valor presente de um fluxo de caixa é o somatório dos valores presentes dos fluxos individuais – positivos e negativos, ou seja, é o valor de cada fluxo de caixa descontado ao momento presente pela taxa de juros prevalecente durante o período remanescente.

E Valor Futuro:

Analogamente, o valor futuro de um fluxo de caixa é o somatório do “carregamento” de cada fluxo, seja negativo ou positivo, até o pagamento final pela taxa de juros prevalecente durante o período remanescente. Em outras palavras, para encontrar o valor futuro de um fluxo de caixa, deve-se tomar cada recebimento e pagamento e calcular o valor futuro desses fluxos individuais, até o vencimento da operação, utilizando uma taxa de juros predefinida.

Conclusão:

Para quem quizer outros tipos de cálculos sobre matemática financeira entre aqui.

Bom espero que tenham gostado e que esses conceitos e fórmulas possam ajudar você a ser mais rico. :)

Durante o 3° semestre irei aprender mais sobre matemática financeira e poderei me aprofundar muito mais no assunto, mas por enquanto é isso, até o próximo post sobre “Modelos Organizacionais e Inovação Tecnológica”.

UltraG