segunda-feira, 1 de junho de 2009

Pascal e C#

Para a postagem dessa semana, a respeito de linguagem de programação, escolhi duas linguagens um tanto conhecida.
A primeira linguagem escolhida foi a Pascal, linguagem estruturada, de uso geral e fins didáticos, de alto nível, o que facilita a aprendizagem para iniciantes da área, é uma linguagem procedimental (que segue comando a comando informado pelo usuário para chegar a o resultado pretendido) como é uma linguagem de fins didáticos não é fácil encontrar aplicações desenvolvidas nesta linguagem.
O Pascal foi desenvolvido em 1970 por Niklaus Wirth, acredito que em Zurique tendo como objetivo o encorajamento do uso da linguagem estruturada, ela é extremamente bem estruturada e muito adequada para ensino de linguagens de programação. É provavelmente uma das linguagens mais bem resolvidas entre as linguagens estruturadas. É uma linguagem que apesar do tempo sobrevive de maneira digna ao passar do tempo, apesar de já terem parado de atualizar seus compiladores. Os principais compiladores Pascal são: FreePascal, Dev-Pascal, Turbo Pascal.

Iremos falar agora sobre o C# (C Sharp), é uma linguagem de uso geral, de alto nível e procedimental, é uma linguagem Orientada a Objeto.
A linguagem foi desenvolvida em 2001 pela Microsoft. Durante o desenvolvimento da plataforma .NET, as class libraries foram escritas originalmente num compilador/linguagem chamada Simple Managed C (SMC). Mas, em Janeiro de 1999, o Anders Hejlsberg que fora escolhido pela Microsoft para desenvolver a linguagem, forma uma equipe de desenvolvimento e dá inicio à criação da linguagem chamada de Cool. Um pouco mais tarde, em 2000, o projeto .NET era apresentado ao publico na Professional Developers Conference (PDC), e a linguagem Cool fora renomeada e apresentada como C#.
Os principais compiladores são: Microsoft .Net, Mono.


Fontes: http://pt.wikipedia.org/wiki/C_sharp

http://pt.wikipedia.org/wiki/Pascal_(linguagem_de_programa%C3%A7%C3%A3o)

http://www.vemconcursos.com/opiniao/index.phtml?page_id=440

segunda-feira, 25 de maio de 2009

Disciplinas

Irei falar sobre três disciplinas do curso (Ciência da Computação), abordando um pouco sobre a ementa, por que as acho interessantes.

Começaremos por falar de Programação Imperativa, é interessante porque é a primeira matéria que o aluno tem contato direto com computação, é nela que muitos decidem se vão continuar ou vão desistir, alem de se aprender "como o computador pensa".

A matéria tem como ementa: Noções fundamentais: algoritmos, notação e programas. Identificadores, constantes, variáveis e atribuição. Tipos primitivos de dados e tipos derivados. Operadores, funções e expressões. Instruções condicionais, incondicionais e de repetição. Estilo de programação estruturada de programas. Representação de dados na forma de vetores, matrizes, registros e conjuntos. Procedimentos, funções e passagem de parâmetros. Ordenação por seleção e método da bolha. Recursividade. Noções de arquivos em programação. Ponteiros. Uma linguagem imperativa (por exemplo, Pascal ou C). Algoritmos numéricos e não numéricos para a solução de problemas de baixa complexidade. Aplicações. Modularização de programas. Padrões de codificação.

Iremos falar agora de outra matéria fundamental para o curso, Programação Orientada a Objeto, é interessante porque é uma área que vem crescendo no mercado de trabalho, sendo muito solicitada, alem de ser outro nível de programação (com referencia Programação Imperativa).

O curso trás como ementa: Fatores de Qualidade do software. Técnicas de modularização e decomposição de software. Tipos abstratos de dados. Paradigma de programação orientado a objetos. Referências e Ponteiros. Classes e instâncias. Tipos e Subtipos. Herança e reuso de código. Mecanismos de Classificação: classes abstratas e interfaces. Vinculação dinâmica e polimorfismo de herança. Tratamento de Exceções. Uma linguagem orientada a objetos (por exemplo, Eiffel, C++, Pascal com objetos ou Java). Classes essenciais da biblioteca padrão da linguagem. Interfaces gráficas com o usuário. Ambiente integrado de desenvolvimento. Padrões de Codificação. Noções de testes. Ferramentas de testes e depuração. Documentação de programas. Noções de padrões de projeto. Aplicações.

E para finalizar iremos falar Informática, Ética e Sociedade, que parece esta fora do contexto do curso, mas é muito importante para a formação de um bom profissional, tendo que ser bem abordada para a formação de um profissional competente.

A ementa dessa disciplina é: A sociedade industrial: organização e lógica de produção. A Era do conhecimento: modernidade líquida e sociedade em rede. O trabalhador do conhecimento e o trabalho virtual. Inclusão social pela inclusão digital. Aplicações das Novas Tecnologias da Informação e da Comunicação (NTIC). Previsões de evolução da computação. Ética profissional. Mercado de Trabalho


Fonte das ementas: http://www.dcomp.ufs.br/index.php/Curriculo2008:_CPadr%C3%A3oCC2008

segunda-feira, 11 de maio de 2009

Revolucão no Armazenamento de Dados

A evolução dos discos removíveis é impressionante, imagine que em pouco tempo o DVD, que desbancou o CD, já está sendo passado para trás pelo Blu Ray e pelo HD-DVD. E acredite, estes últimos devem ser os últimos representantes dos discos de dados como conhecemos, a nova geração será capaz de ler e gravar dados holograficamente. Já não se trata mais de alguns gibagytes, mas sim de até 3,9 TeraBytes e a uma velocidade espantosa de 1 GB/s. Conheça o HVD (Holographic Versatile Disc) e seja bem vindo à nova geração de discos holográficos!

Já faz algumas décadas que a tecnologia da gravação de dados holográficos é conhecida pela ciência, mas uma série de fatores fazem com que ela se torne inviável para fins comerciais. No entanto, algumas empresas vêm apostando no desenvolvimento desta tecnologia, visando a sua implementação no mercado dentro de pouco tempo.

O sistema HVD utiliza dois feixes ópticos para criar os dados tridimensionalmente. Alinhar estes feixes em um custo viável comercialmente foi o primeiro grande desafio. Finalmente encontrar um equilíbrio entre a alta tensão utilizada nos lasers e um material compatível para o disco colocou mais algumas pedras no caminho desta nova tecnologia. Contudo, ela finalmente estará ao alcance de todos em alguns anos e promete revolucionar os discos que conhecemos atualmente.

É bastante óbvio que a verdadeira revolução dos vídeos em alta definição está por conta do HVD, os demais discos são apenas aperfeiçoamentos de tudo que já existe. Se o mínimo que um disco destes é capaz de armazenar são 300 GB, com um aproveitamento de espaço maior, a sua capacidade pode a incríveis 3,9 TB com velocidade de leitura de 1GB/s.

Imagine todas as imagens registradas por satélite em alta definição da superfície do planeta, assim com as do Google Earth. Todas elas poderiam ser armazenadas em apenas 2 discos desta capacidade. Em matéria de filmes, um único disco destes pode armazenar até 11.900 horas de vídeo em uma qualidade equivalente a dos DVD´s atuais, isto dá quase um ano e meio de filme.


Fonte: http://www.baixaki.com.br/info/1665-o-que-e-hvd-.htm

segunda-feira, 4 de maio de 2009

Regulamentação

Começaremos por explicar cada uma das três propostas principais, são elas: PL 607/2007, 1561/2003 e 815/1995.

PL 607/2007: Está proposta é muito questionada devido a alguns artigos que tornam a profissão bem mais restrita, a exemplo do Art. 2º, Art. 3º e Art. 22º.

Art. 2° Poderão exercer a profissão de Analista de Sistemas no País:
I – os possuidores de diploma de nível superior em Análise de Sistemas, Ciência da Computação ou Processamento de Dados, expedido por escolas oficiais ou reconhecidas;
II – os diplomados por escolas estrangeiras reconhecidas pelas leis de seu País e que revalidarem seus diplomas de acordo com a legislação em vigor;
III – os que, na data de entrada em vigor desta Lei, tenham exercido, comprovadamente, durante o período de, no mínimo cinco anos, a função de Analista de Sistemas e que requeiram o respectivo registro aos Conselhos Regionais de Informática.
(Limita a função apenas a essas pessoas que possuem o certificado e a profissionais que já trabalhem há no mínimo cinco anos como analista)

Art. 3° Poderão exercer a profissão de Técnico de Informática:
I – os portadores de diploma de ensino médio ou equivalente, de Curso Técnico de Informática ou de Programação de Computadores, expedido por escolas oficiais ou reconhecido;
II – os que, na data de entrada em vigor desta Lei, tenham exercido, comprovadamente, durante o período de, no mínimo quatro anos, a função de Técnico de Informática e que requeiram o respectivo registro aos Conselhos Regionais de Informática.
(Limita a profissão de técnico em Informática a pessoas com diploma técnico ou profissional que já atuam a quatro anos na função)

Art. 22. Todo profissional de Informática, habilitado na forma da presente Lei, para o exercício da profissão, deverá inscrever-se no Conselho Regional de Informática de sua área de atuação.
(Obriga a filiação do profissional ao conselho regional de informática)

1561/2003: Esta proposta traz alguns artigos interessantes, como, Art. 1º, Art. 2º, Art. 4º e Art. 6º que fala:

Art. 1º - É livre em todo o território nacional o exercício de qualquer atividade econômica, ofício ou profissão relacionada com a Informática, independentemente de diploma de curso superior, comprovação de educação formal ou registro em conselhos de profissão.
(Deixa livre a profissão, independendo uma diplomação para poder exercer o cargo).

Art. 2º - O exercício das profissões de Informática em todas as suas atividades é garantido por esta lei, independentemente de pagamento de taxas ou anuidades a qualquer conselho de profissão ou entidade equivalente.
("Obriga" a existência da profissão na área de Informática no país)

Art. 4º - É vedada toda e qualquer exigência de inscrição ou registro em conselho de profissão ou entidade equivalente para o exercício das atividades ou profissões da área de Informática.
(O profissional não precisa filiar-se a nenhuma instituição ou conselho para exercer a profissão)

Art. 6º - É facultada à entidade contratante a exigência de diplomas ou certificações para o exercício de funções ou atividades específicas.
(A entidade que for contratar o profissional poderá ou não solicitar diplomas)

A proposta 815/1995 é a mesma que a proposta 607/2007, não observado diferença nas fontes pesquisadas, logo não há diferença nos comentários a serem feitos.


Conclusão, não existe aceitação da proposta 607/2007 por parte do povo, pois restringe muito a função, sendo que muitos profissionais não são graduados e porque obriga a filiação ao conselho regional de informática, já a proposta 1561/2003 parece ser interessante e tem mais aceitação que a outra.
Uma regulamentação é necessária para que ocorra uma valorização da profissão, se com obrigação da graduação ou não, ela tem que ser feita, em particular sou a favor da obrigação da graduação e da filiação junto a um conselho regional.

Propostas:
815/1995, 1561/2003, 607/2007

domingo, 26 de abril de 2009

Configurando Meu Computador

Depois de muito observar os blogs do resto da turma, vi que o direcionamento deles estão diferentes do meu, então esse tópico ficara muito diferente de algumas pessoas da turma, então, que comecemos.

Um computador é composto por três itens importantes, Processador, Memoria e Dispositivos de Entrada, Saída, Entrada e Saída.

Por sua vez o processador é composto da, CPU (Unidade de Processamento Central), Unidade de Controle e a Unidade Lógica e Aritmética. É nele onde ocorre todo tipo de calculo do computador, ou seja, onde o computador faz suas operações.

Memoria: A memoria é composta por dois tipos de memoria, Memoria principal e memoria secundaria. A memoria principal é aquela que armazena os dados que serão processados, por isso ela tem que ser rápida. Já a memoria secundaria armazena os dados, antes ou depois de serem processados, a memoria principal retira daqui alguns dados necessários na operação, por isso ela não necessita ser muito rápida, não tão quanto a principal (que age de maneira direta com o processador).

Dispositivos de entrada, saída, entrada e saída: Dispositivos de entrada são todos aqueles que via usuário fornecem dados ao computador. Dispositivos de Saída são aqueles que externa os dados processados pelo computador. Já o dispositivo de entrada e saída faz as duas funções, externa e fornecem dados (uma em cada momento) ao computador.

Barramentos é um conjunto de linhas de comunicação que permitem a interligação entre dispositivos.

Explicado isso poderemos começar a falar dos componentes específicos de um computador, e a exemplo citarei o meu.

O meu computador é composto por uma placa-mãe AsusTek P5GC-MX.
Placa-mãe é a placa onde se liga todos os componentes do computador, de maneira direta ou indireta, no caso da minha é uma AsusTek, de modelo P5GC-MX, onbord (que já vem com outras placas embutidas, a exemplo da placa de vídeo).

Processador: O meu processador é um Intel Core 2 Duo.

Memoria Principal: DDR2 - SDRAM
Memoria Secundaria: WDC WD1600AABS (Modelo)

Dispositivos de entrada: como dispositivos de entradas tenho, teclado, webcan, scanner.
Dispositivos de Saída: Monitor, caixas de som, impressora.
Dispositivos de entrada e saída: Cds, Dvds, cartões de memoria, pendrives.

Barramentos: irei citar alguns barramentos utilizados pelo computador, PS/2 (Teclado, Mouse), USB (PenDrive, Impressora), PCI.

E por aqui terminamos a configuração do meu computador, espero que tenha sido de agrado.

segunda-feira, 30 de março de 2009

Lógica, contribuições de Aristoteles, Boole e Frege

Para começar iremos definir o que é lógica. Lógica é uma parte da filosofia que estuda o fundamento, a estrutura e as expressões humanas do conhecimento.

A lógica teve inicio no século IV A.C. com Aristóteles, que estabeleceu um conjunto de regras rígidas para que conclusões pudessem ser aceitas como logicamente válidas: o emprego da lógica leva a uma linha de raciocínio baseado em premissas e conclusões. A obra que Aristoteles que traz esse assunto é a Organun, que foi reunido pelos seus continuadores após sua morte, este livro traz todos os trabalho dele sobre a lógica.

Outro matemático importante, que contribuiu com a lógica foi George Boole. Boole nasceu em Lincoln - Inglaterra. Autodidata, fundou aos 20 anos de idade a sua própria escola e dedicou-se ao estudo da Matemática. Em 1847 publicou The Mathematical Analysis of Logic em que introduziu os conceitos de lógica simbólica demonstrando que a lógica podia ser reduzida a equações algébricas.

E por ultimo temos Gottlob Frege, lógico matemático alemão. Frege foi o principal criador da lógica matemática moderna, sendo considerado, ao lado de Aristóteles, o maior lógico de todos os tempos. O grande contributo dele para a lógica matemática foi o criação de um sistema de representação simbólica para representar formalmente a estrutura dos enunciados lógicos e suas relações, e a contribuição para a implementação do cálculo dos predicados.

domingo, 22 de março de 2009

Perfil

Nunca pensei ao certo o que me levou a entrar na área de programação, mas deve ter sido a certeza antecipada de familiares de que tenho talento para “mexer em computador”. E então, na minha sétima serie, eu já sabia para que curso prestar vestibular. Isso se manteve até o fim terceiro ano, onde devido ao momento que todos dizem ser tão importante, faz você ter duvida se é o que você realmente pretende fazer pelo resto de sua vida.


Ainda não posso afirmar com certeza de que estou no curso certo, comecei a usar computador cedo, antes dos meus 10 anos de idade, e deixei de ser um usuário comum anos mais tarde, quando comecei a realização de cursos.


Aos 17 anos ingressei no curso técnico de desenvolvimento de sistemas, no Centro Federal de Educação Tecnólogo (CEFET), onde estou prestes a me formar. E foi a partir dele que comecei a programar. Gostei muito. Foi um dos motivos de não ter ocorrido mudanças na escolha para o vestibular.


Além do prazer de programar, tem áreas da computação que realmente me interessam, a exemplo de Banco de Dados. Tenho também curiosidades e vontade de realização de pesquisas.

Estrutura UFS

A aula inicial de Fundamentos da Computação foi ministrada pela professora Leila, a qual tratou de alguns assuntos, entre eles a estrutura da Universidade Federal de Sergipe e do curso de Ciências da Computação.


Um dos departamentos citados foi a Divisão de Assuntos Acadêmicos (DAA), que é a entidade responsável pelos assuntos dos alunos, como matricula institucional, solicitação de matricula por matéria, evolução curricular, entre outros. Esse departamento é o mais importante e de maior expressão entre os alunos, mas existem vários outros departamentos, setores e pró-reitorias na UFS.


Na reitoria temos a Pró-Reitoria de Assuntos Estudantil (ProEst), a Pró-Reitoria de Graduação (ProGrad), dentre outros.


Fora da reitoria temos alguns centros, que contem vários departamentos, a exemplo do Centro de Ciências Exatas e Tecnólogo (CCET), que contem alguns departamentos, como o Departamento de Computação (DComp), o Departamento de Matemática (DMat), de maneira que todos os departamentos estão contidos em algum centro.


Como conclusão, falarei sobre o Diretório Central dos Estudantes (DCE), que é a entidade que representa os estudantes da instituição perante alguns órgãos, apesar dos vários conflitos e falcatruas existentes, não sendo apenas responsável pelas festas que ocorrem na UFS, mas sim de tomadas de decisões junto à reitoria e suas extensões, apoiar projetos de estudantes etc.


Em resumo esses são os Centros, Departamentos e Pró-Reitoria que poderão vir a ser de interesse e necessidade dos estudantes.