Saltar para:
Esta página em português Ajuda Autenticar-se
ESTS
Você está em: Start > LTB11005
Autenticação




Esqueceu-se da senha?

Campus Map
Edifício ESTS Bloco A Edifício ESTS Bloco B Edifício ESTS Bloco C Edifício ESTS Bloco D Edifício ESTS Bloco E Edifício ESTS BlocoF

Programming

Code: LTB11005     Sigla: PROG

Áreas Científicas
Classificação Área Científica
OFICIAL Informática

Ocorrência: 2023/2024 - 1S

Ativa? Yes
Página Web: https://moodle.ips.pt/2324/course/view.php?id=1891
Unidade Responsável: Departamento de Sistemas e Informática
Curso/CE Responsável:

Ciclos de Estudo/Cursos

Sigla Nº de Estudantes Plano de Estudos Anos Curriculares Créditos UCN Créditos ECTS Horas de Contacto Horas Totais
LTB 52 Plano de Estudos 1 - 6 75 162

Docência - Responsabilidades

Docente Responsabilidade
Miguel Angel Guevara López

Docência - Horas

Theorethical and Practical : 3,00
Practical and Laboratory: 2,00
Type Docente Turmas Horas
Theorethical and Practical Totais 1 3,00
Miguel Angel Guevara López 3,00
Practical and Laboratory Totais 3 6,00
Miguel Angel Guevara López 6,00

Língua de trabalho

Portuguese

Objetivos

The student will obtain knowledge, skills and proficiency in:

 

  • To learn the conceptual foundations for developing and coding of algorithms in programming languages;
  • To develop computer applications in high-level languages;
  • Practical application of the course contents in real problems, using the procedural and imperative programming paradigm, and also the object-oriented programming paradigm;
  • To develop logical and formal reasoning skills for solving complex problems.

Resultados de aprendizagem e competências


Upon completion of this curricular unit students will acquire the knowledge and skills necessary to:


  • Apply their (acquired) logical and formal reasoning skills in solving complex problems.

  • Develop algorithms and methods to solve real problems, particularly in the field of biomedical sciences.

  • Implement software prototypes / informatics solutions applying recent programming paradigms and tools, using the Python language.

Modo de trabalho

Presencial

Pré-requisitos (conhecimentos prévios) e co-requisitos (conhecimentos simultâneos)

Given that it is the first contact with algorithms and data structures, and programming languages in the current curricular plan.  This curricular unit introduces procedural and imperative programming and also, the object-oriented paradigm (Introduction to Object-Oriented Programming), being of vital importance for the future graduate / engineer in biomedical technologies. Therefore, students do not need to have prior knowledge regarding computer sciences.

Programa


  1. Basic concepts (5%)

    • Basic elements of a computer.

    • Information Representation.

    • Programming and problem solving.




  2. Algorithms (5%)

    • Algorithms and programs.

    • Algorithm concept, bottom-up and top-down approaches



  3. Programming Languages (5%)

    • Natural language, pseudocode, and programming languages concepts.

    • Low-level languages vs high-level languages.

    • Typed and untyped, compiled and interpreted languages.

    • Programs development phases.



  4. Programming in a high-level, example-oriented language: Python (85%)

    • Python programming principles:

      • Program structure.

      • Expressions and Data Types.

      • Input and output statements.

      • Control structures.

      • Functions / Subprograms



    • Structured data types.

      • Arrays, Lists, dictionaries, tuples, sets



    • Introduction to object-oriented programming.

      • Class, object, and attributes.

      • Visibility and encapsulation

      • Inheritance and polymorphism

      • Introduction to exceptions handling.



    • Using external libraries.

    • Introduction to development tools (e.g., IDEs, Jupyter Notebooks, Google colab, github).

    • Processing data sequences (e.g., text files, Excel).

    • Introduction to Machine Learning.



Bibliografia Obrigatória

Andrew Bird, Dr Lau Cher Han, Mario Corchero Jiménez, Graham Lee, Corey Wade; The Python Workshop: Learn to code in Python and kickstart your career in software development or data science. 1st Edition., Packt Publishing, 2019. ISBN: 978-1-83921-885-9
Sebastian Raschka, Vahid Mirjalili; Python Machine Learning Third Edition, Packt Publishing, 2019. ISBN: 978-1-78995-575-0

Bibliografia Complementar

John V. Guttag; Introduction to Computation and Programming Using Python with Application to Understanding Data, Massachusetts Institute of Technology, 2016. ISBN: 9780262529624
Steven F. Lott, Dusty Phillips ; Python Object-Oriented Programming: Build robust and maintainable object-oriented Python applications and libraries, 4th Edition , Packt Publishing, 2021. ISBN: 978-1801077262
Mark Lutz; Programming Python, O’Reilly Media, 2011. ISBN: 978-0-596-15810-1
Python Software Foundation; The Python Tutorial (website (https://docs.python.org/3/tutorial/index.html))
Behrouz A. Forouzan; Foundations of Computer Science, 4th Edition, Cengage Learning EMEA, 2018. ISBN: 9781473751040

Métodos de ensino e atividades de aprendizagem

The teaching methodology is essentially based on theoretical-practical classes and laboratories. It is intended that students directly apply the knowledge they will acquire and at the same time stimulate creativity and reasoning with real challenges. Additionally, students have extra-class support, provided through the e-Learning platform.

 

The Python programming language will be used to support the practical implementation of the theoretical concepts. To this end, the fundamental concepts of the language are taught, using the (i) procedural and imperative, and (ii) object-oriented programming paradigms.

Software

Plataforma Anaconda-Python (Anaconda Distribution)
Visual Studio Code

Tipo de avaliação

Distributed evaluation with final exam

Componentes de Avaliação

Designation Peso (%)
Defesa pública de dissertação, de relatório de projeto ou estágio, ou de tese 30,00
Teste 30,00
Trabalho laboratorial 20,00
Trabalho escrito 20,00
Total: 100,00

Componentes de Ocupação

Designation Tempo (Horas)
Elaboração de projeto 40,00
Estudo autónomo 45,00
Frequência das aulas 56,00
Trabalho escrito 4,00
Trabalho laboratorial 30,00
Total: 175,00

Obtenção de frequência

9,5/20
Note: Students who have won any of the TP (Theoretical - Practical) or LAB (Project + Laboratory) components, will be exempt from doing that component in the appeal season.

Fórmula de cálculo da classificação final

50% TP + 50% LAB (average> = 9.5)
Recomendar Página Voltar ao Topo
Copyright 1996-2024 © Instituto Politécnico de Setúbal - Escola Superior de Tecnologia de Setúbal  I Termos e Condições  I Acessibilidade  I Índice A-Z
Página gerada em: 2024-11-22 às 19:47:19