Mudanças entre as edições de "Introdução a Programação"
(→Média das Turmas) |
|||
(8 revisões intermediárias por 4 usuários não estão sendo mostradas) | |||
Linha 1: | Linha 1: | ||
+ | {{CourseBox | ||
+ | | name = Introdução a Programação | ||
+ | | ccProfessor = [[Sérgio Soares]]<br>[[Ricardo Massa]] | ||
+ | | ccWebsite = https://cin.ufpe.br/~if669 | ||
+ | | ccSemester = 1 | ||
+ | | ccCode = IF669 | ||
+ | | ccClass = I1<br>II | ||
+ | | ccRoom = G3<br>G4 | ||
+ | | ccDateTime = Seg - 8h às 10h<br>Qua - 10h às 12h<br>Qua - 13h às 15h<br>Sex - 8h às 10h | ||
+ | | ccBucket = 1FNy5GEYXhS1Z-HJqir6GNZQuccYv7fNk | ||
+ | | ecProfessor = [[Alexandre Mota]] | ||
+ | | ecSemester = 1 | ||
+ | | ecCode = IF669 | ||
+ | | ecClass = E1 | ||
+ | | ecRoom = G1<br>D004 | ||
+ | | ecDateTime = Seg - 8h às 10h<br>Qua - 10h às 12h<br>Qua - 13h às 15h<br>Sex - 8h às 10h | ||
+ | | ecBucket = 1FNy5GEYXhS1Z-HJqir6GNZQuccYv7fNk | ||
+ | }} | ||
+ | |||
A disciplina de Introdução a Programação expõe conceitos e técnicas fundamentais de programação, com enfoque em linguagens orientadas a objetos e utilizando a linguagem Java. O curso é ministrado por dois professores, e a turma é dividida em duas, com as aulas ocorrendo nos laboratórios de graduação. A equipe de monitores é vasta e geralmente há um monitor para cada dupla formada para o projeto. | A disciplina de Introdução a Programação expõe conceitos e técnicas fundamentais de programação, com enfoque em linguagens orientadas a objetos e utilizando a linguagem Java. O curso é ministrado por dois professores, e a turma é dividida em duas, com as aulas ocorrendo nos laboratórios de graduação. A equipe de monitores é vasta e geralmente há um monitor para cada dupla formada para o projeto. | ||
− | |||
__TOC__ | __TOC__ | ||
Linha 24: | Linha 42: | ||
== Tópicos Abordados == | == Tópicos Abordados == | ||
Serão abordados aspectos de [http://pt.wikipedia.org/wiki/Qualidade_de_software qualidade de software], conceitos de [http://pt.wikipedia.org/wiki/Objeto_(inform%C3%A1tica) objetos], [http://pt.wikipedia.org/wiki/Classe_(programa%C3%A7%C3%A3o) classe], [http://pt.wikipedia.org/wiki/M%C3%A9todo_(programa%C3%A7%C3%A3o) método] e [http://pt.wikipedia.org/wiki/Atributo_(programa%C3%A7%C3%A3o) atributo], [http://en.wikipedia.org/wiki/Information_hiding information hiding], [http://en.wikipedia.org/wiki/Static_method#Static_methods métodos] e [http://en.wikipedia.org/wiki/Static_variable#Static_Variables_as_Class_Variables variáveis] estáticas, criação e remoção de objetos, [http://pt.wikipedia.org/wiki/Construtor construtores], referências, [http://en.wikipedia.org/wiki/Aliasing_(computing) aliasing], mecanismos de passagem de [http://pt.wikipedia.org/wiki/Par%C3%A2metro_(ci%C3%AAncia_da_computa%C3%A7%C3%A3o) parâmetros], [http://en.wikipedia.org/wiki/Function_overloading overloading], pacotes, [http://pt.wikipedia.org/wiki/Heran%C3%A7a_(inform%C3%A1tica) herança], subtipos, [http://pt.wikipedia.org/wiki/Polimorfismo polimorfismo], [http://pt.wikipedia.org/wiki/Liga%C3%A7%C3%A3o_din%C3%A2mica dynamic binding], [http://pt.wikipedia.org/wiki/Classe_(programa%C3%A7%C3%A3o)#Classes_abstratas_e_concretas classes abstratas], [http://pt.wikipedia.org/wiki/Interface_(ci%C3%AAncia_da_computa%C3%A7%C3%A3o) interface] e mecanismos para tratamento de exceções. O ambiente de desenvolvimento utilizado pelos alunos é o [http://pt.wikipedia.org/wiki/Eclipse_(software) Eclipse]. | Serão abordados aspectos de [http://pt.wikipedia.org/wiki/Qualidade_de_software qualidade de software], conceitos de [http://pt.wikipedia.org/wiki/Objeto_(inform%C3%A1tica) objetos], [http://pt.wikipedia.org/wiki/Classe_(programa%C3%A7%C3%A3o) classe], [http://pt.wikipedia.org/wiki/M%C3%A9todo_(programa%C3%A7%C3%A3o) método] e [http://pt.wikipedia.org/wiki/Atributo_(programa%C3%A7%C3%A3o) atributo], [http://en.wikipedia.org/wiki/Information_hiding information hiding], [http://en.wikipedia.org/wiki/Static_method#Static_methods métodos] e [http://en.wikipedia.org/wiki/Static_variable#Static_Variables_as_Class_Variables variáveis] estáticas, criação e remoção de objetos, [http://pt.wikipedia.org/wiki/Construtor construtores], referências, [http://en.wikipedia.org/wiki/Aliasing_(computing) aliasing], mecanismos de passagem de [http://pt.wikipedia.org/wiki/Par%C3%A2metro_(ci%C3%AAncia_da_computa%C3%A7%C3%A3o) parâmetros], [http://en.wikipedia.org/wiki/Function_overloading overloading], pacotes, [http://pt.wikipedia.org/wiki/Heran%C3%A7a_(inform%C3%A1tica) herança], subtipos, [http://pt.wikipedia.org/wiki/Polimorfismo polimorfismo], [http://pt.wikipedia.org/wiki/Liga%C3%A7%C3%A3o_din%C3%A2mica dynamic binding], [http://pt.wikipedia.org/wiki/Classe_(programa%C3%A7%C3%A3o)#Classes_abstratas_e_concretas classes abstratas], [http://pt.wikipedia.org/wiki/Interface_(ci%C3%AAncia_da_computa%C3%A7%C3%A3o) interface] e mecanismos para tratamento de exceções. O ambiente de desenvolvimento utilizado pelos alunos é o [http://pt.wikipedia.org/wiki/Eclipse_(software) Eclipse]. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |
Edição atual tal como às 21h35min de 19 de fevereiro de 2018
Erro em Lua: Não é possível criar o processo: proc_open(/dev/null): failed to open stream: Operation not permitted
A disciplina de Introdução a Programação expõe conceitos e técnicas fundamentais de programação, com enfoque em linguagens orientadas a objetos e utilizando a linguagem Java. O curso é ministrado por dois professores, e a turma é dividida em duas, com as aulas ocorrendo nos laboratórios de graduação. A equipe de monitores é vasta e geralmente há um monitor para cada dupla formada para o projeto.
Professores
Os dois professores que ministram a disciplina são Sérgio Soares e Ricardo Massa.
- Sérgio Soares
Concluiu o doutorado em Ciência da Computação pela Universidade Federal de Pernambuco em 2004. Atualmente é Professor Adjunto do Centro de Informática da Universidade Federal de Pernambuco (CIn/UFPE). Orienta trabalhos de doutorado, mestrado, especialização, iniciação científica e de conclusão de curso na área de Computação. Coordena projetos de pesquisa financiados por CNPq, FACEPE, FINEP e Petrobras. É coordenador executivo do INES - Instituto Nacional de Ciência e Tecnologia para Engenharia de Software. Atua na área de Ciência da Computação, com ênfase em Engenharia de Software, atuando principalmente nos seguintes temas: Desenvolvimento de Software Orientado a Aspectos, Linhas de Produto de Software, Orientação a objetos, Testes de Software e Engenharia de Software Experimental.
- Ricardo Massa
É professor ajunto do Centro de Informática da Universidade Federal de Pernambuco (CIn/UFPE), onde também é vice-coordenador do Programa de Pós-graduação em Ciência da Computação.
Objetivos
O curso visa motivar, discutir, exercitar, e consolidar o uso de técnicas de programação que tenham um impacto considerável sobre qualidade de software e produtividade no desenvolvimento. Em particular, pretende-se alcançar os seguintes objetivos:
- discutir conceitos de programação orientada a objetos, ilustrando como os mesmos são representados na linguagem de programação Java
- discutir como programas em Java podem ser adequadamente escritos, estruturados e documentados
- explorar o ambiente de suporte a Java, incluindo ferramentas e bibliotecas de classes
- desenvolver, documentar e avaliar uma aplicação de médio porte em Java
- discutir princípios de engenharia e qualidade de software.
Organização
A organização é feita de forma que tanto o conteúdo prático quanto o teórico são levados em conta. A avaliação é feita por meio de duas provas e uma mini-prova, que são escritas, além de quatro listas de programação e um projeto.
Tópicos Abordados
Serão abordados aspectos de qualidade de software, conceitos de objetos, classe, método e atributo, information hiding, métodos e variáveis estáticas, criação e remoção de objetos, construtores, referências, aliasing, mecanismos de passagem de parâmetros, overloading, pacotes, herança, subtipos, polimorfismo, dynamic binding, classes abstratas, interface e mecanismos para tratamento de exceções. O ambiente de desenvolvimento utilizado pelos alunos é o Eclipse.