Fundamentos de Programação 2

 

NOVIDADE:

Agora há vídeo das aulas, dando suporte a cada grupo de slides.

De antemão, queiram perdoar qualquer imperfeição.

Att. Prof. Simão.

 

Técnicas de Programação –
 
Parte referente a conceitos avançados em
Linguagem de Programação C++ e
detalhes de Diagramas de Classe em UML.

 

Esta página disponibiliza os slides e seus vídeos sobre Conceitos Avançados em Linguagem de Programação C++ (salientado polimorfismo), STL (Standard Template Library) e  Detalhes de Diagramas de classes em UML da disciplina de Técnicas de Programação.

 

Vídeo introdutório sobre os demais vídeos disponibilizados:

- https://nuvem.utfpr.edu.br/index.php/s/ZAabveeLu2lkMq7

 

 

Para obter os grupos de slides, clique sobre o item desejado:

 

 Grupo de Slides 10 – Parte A. Linguagem C++ – Noção de Evento - Recursão - Templates ou Gabaritos

 

             Grupo de Slide 10 – Parte A – Vídeo.

 

 Grupo de Slides 10 – Parte A .ppt.

 

 Grupo de Slides 10 – Parte A .pdf.

 

 Códigos do Grupo de Slides 10 – Parte A.

           

 

 Grupo de Slides 10 – Parte B – Lista desacopladas (monitor Fabiano C. Domingos – 2º Semestre de 2013).

 

             Grupo de Slide 10 – Parte B – Vídeo.

 

 Grupo de Slides 10 – Parte B .ppt.

 

 Grupo de Slides 10 – Parte B .pdf.

 

Códigos do Grupo de Slides 10 – Parte B

 

Modelo do Grupo de Slides 10 – Parte B

 

Resolução Parcial dos propostos exercícios A, B e C (monitor V. Vengue - 2o.  Semestre de 2010). Obs.: ajustar as soluções com o proposto no Grupo de Slides 10 – Parte B.

 

-        Grupo de slides 10 – Parte B - Exercício A

 

-        Grupo de slides 10 – Parte B - Exercício B

 

-        Grupo de slides 10 – Parte B - Exercício C

 

 

 Grupo de Slides 11 – Parte A – Herança, Função Virtual, Ligação Dinâmica, Polimorfismo, Sobrecarga de Método, Herança Múltipla e Classe Abstrata.

 

             Grupo de Slides 11 – Parte A – Vídeo.

 

 Grupo de Slides 11 – Parte A .ppt.

 

 Grupo de Slides 11 – Parte A .pdf.

 

 Códigos do Grupo de Slides 11 – Parte A.

 

 

 Grupo de Slides 11 – Parte B – Melhorando a solução.

 

             Grupo de Slides 11 – Parte B – Vídeo.

 

 Grupo de Slides 11 – Parte B ppt.

 

 Grupo de Slides 11 – Parte B pdf.

 

 Códigos do Grupo de Slides 11 – Parte B.

 

 

 Grupo de Slides 12 – Const, Static, Namespace e Nested

 

             Grupo de Slide 12 – Vídeo.

 

 Grupo de Slides 12 .ppt.

 

 Grupo de Slides 12 .pdf.

 

 Códigos dos Grupos de Slides 12.

 

            Resolução dos exercícios A e B (monitor V. Vengue - 2o.  Semestre de 2010)

 

-        Grupo de Slides 12 - Exercício A

 

-        Grupo de Slides 12 - Exercício B

 

 

 Grupo de Slides 13 – A Classe Predefinida String

 

             Grupo de Slide 13 – Parte A – Vídeo.

 

 Grupo de Slides 13 .ppt.

 

 Grupo de Slides 13 .pdf.

 

 Códigos do Grupo de Slides 13.

 

 

 Grupo de Slides 14 – As classes List e Vector da STL.

 

             Grupo de Slide 14 – Vídeo.

 

 Grupo de Slides 14 .ppt.

 

 Grupo de Slides 14 .pdf.

 

 Códigos do Grupo de Slides 14.

 

 

 Grupo de Slides 15 – STL: Set, MultiSet, Deque, Mapa, Multimapa, Fila, Fila-Prioridade e Pilha.

 

             Grupo de Slide 15 – Vídeo.

 

 Grupo de Slides 15 .ppt.

 

 Grupo de Slides 15 .pdf.

 

 Códigos do Grupo de Slides 15.

 

 Grupo de Slides 16 – Vector e List para Objetos.

 

             Grupo de Slide 16 – Parte A – Vídeo.

 

 Grupo de Slides 16 .ppt.

 

             Grupo de Slides 16 .pdf.

 

 Códigos do Grupo de Slides 16.

 

            Exemplos Adicionais sobre Ordenação de Lista de Objetos (Pessoas)

-        Exemplo 1 (Ordenação via Função)

-        Exemplo 2 (Ordenação via Operador < )

 

Link extra:

-     http://www.sgi.com/tech/stl/table_of_contents.html

 

Obs.: Grupos de Slides de 1 à 8 estão na parte de conceitos fundamentais.

 

 

 

EXEMPLOS DE PROVAS

 

* Há vários exemplos de provas a partir da página principal:

 

http://www.dainf.ct.utfpr.edu.br/~jeansimao/Fundamentos2/Provas/Provas.htm

 

Obs.: Entretanto, a maioria destas provas demandará, antes de mais nada, estudar os conteúdos dos grupos de slides subsequentes. No tocante as questões de desenvolvimento de código, seria necessário estudar pelo menos até o grupo de slides 16. Qualquer outra questão, teórica principalmente, que demande conteúdos além do grupo de slides 16 deveria ser ignorada por hora.

 

 

 

 

ALÉM DE STL (Standard Template Libray), há outro esforço de padronização:

 

- http://www.boost.org/

 

 

 

- Lista de Exercícios Complementares

 

No link do GitHub abaixo há exercícios pontuais e complementares sobre tópicos de POO, para quem desejar temática distinta do projeto das aulas (i.e., Sistema Acadêmico). Naturalmente, quando eventualmente o exercício solicitar para fazer em Java, fazer em C++ orientado a objetos. Pois poderia se fazer os exercícios conforme for adquirindo saber nos tópicos da disciplina. Neste sentido, AS SOLUÇÕES DOS EXERCÍCIOS foram sendo organizadas pelos monitores, sendo que ali há a indicação do que fazer em relação a cada grupo de slides estudados:

                       

https://github.com/tecprog10

 

 

*********************************************************

*********************************************************

*********************************************************

 

 

IGNORAR O QUE SEGUE:

 

Todos os enunciados e soluções abaixo já estariam no link GitHub acima. Está mantido aqui só para verificação final dos monitores.

 

 

- Lista de Exercícios Complementares – LINKS e ARQUIVOS ANTIGOS

 

* - Enunciados - algumas soluções.

(Fazer em C++ e não em Java – fazer os dos tópicos já lecionados.)

 

Em tempo, aqui segue um link com algumas primeiras resoluções de parte dos exercícios propostos (feitas pelo Prof. Linhares):

 

http://www.dainf.ct.utfpr.edu.br/~jeansimao/Fundamentos2/Exercicios_2019_1_Solucoes.rar  

 

 

Pois poderia se fazer os exercícios conforme for adquirindo saber nos tópicos da disciplina. Entretanto, mais importantemente, AQUI LINK PARA AS SOLUÇÕES DOS EXERCÍCIOS organizado pelos monitores (01/2021 & 02/2021), sendo que ali há a indicação do que fazer em relação a cada grupo de slides estudados:

 

https://github.com/MatheusKunnen/monitoria-tecnicas-de-programacao/tree/main/Exercicios

 

https://github.com/MatheusKunnen/monitoria-tecnicas-de-programacao

 

https://github.com/ThiagoFrois/exerciciosTecnicasDeProgramacao

 

POR FIM, geralmente o(s) monitor(es) atuais da disciplina revisaria(m) e/ou ajudaria(m) com os exercícios e suas soluções.

 

 

- Lista de Exercícios SuplementaresEnunciadoGabaritos - Código -

 

 

- Lista de Exercícios de Integração com outras disciplinas.

 

- As disciplinas de computação (salientando programação) deveriam ou devem ser um vetor de integração com as demais disciplinas. Muitos dos conteúdos apresentados em outras disciplinas podem ser implementados ou resolvidos computacionalmente. Neste sentido, abaixo se encontra uma lista de exercícios que visam fomentar esta interdisciplinaridade. Entretanto, a lista foi elaborada visando a linguagem Java. Assim sendo, reconsidere os exercícios como se pedissem implementações em C/C++ (cf. o caso).

- Exercícios voltados à interdisciplinaridade.

Obs.: Caso algum conteúdo solicitado nos exercícios não tenha sido visto (como interfaces gráficas), uma estratégia seria postergar estes exercícios até o momento em que o conteúdo pertinente seja visto.