Language selection
  • čeština
  • english
User
  • Anonym

    Micro-credential details

    Basic Programming Course (10936)

    Charles University
    Basic Programming Course
    Presential
    Czech
    Basic Programming Course
    Basic course of programming, algorithms and data-structures that are a must know of each programmer.

    Integrated Course Documented by a Microcertificate
    This integrated course consists of three subjects from the first year of the Bachelor's program in Informatics (B0613A140006). Students first concurrently complete the courses NPRG030 and NPRG062, both taught in the winter semester. These courses are followed by NPRG031, taught in the summer semester.

    NPRG030 Programming 1, Winter Semester, 5 Credits, Co-requisite: NPRG062
    NPRG062 Introduction to Algorithms , Winter Semester, 4 Credits, Co-requisite: NPRG030
    NPRG031 Programming 2, Summer Semester, 5 Credits, Co-requisite: NPRG030
    Subject of the courses Introduction to Algorithms and Programming 1 and 2 is awareness of particular basic algorithms, data structures and the ability of practical programming in Python and C# programming languages, including of the ability to implement the algorithms discussed in the course of Introduction to Algorithms. The study consists of lectures where theoretical topics, as well as practical demonstrations are presented. As well, both courses are conducted by practical (tutorials), where the students are expected to be able to individually design and implement algorithms solving particular assigned problems. One of the obligations required for credit in Programming 2 is a semester project that consists of at least 1 000 lines long debugged program, including a written documentation.
    Students admitted to the course will be those accepted for study at the Faculty of Mathematics and Physics, Charles University, or at a collaborating university, in accordance with the admission requirements for the Informatics program at the Faculty of Mathematics and Physics, Charles University.
    The student is able to explain basic algorithms, data structures, and programming techniques.
    The student is able to discuss the suitability and efficiency of these algorithms and techniques with respect to the data arrangement and size of the input data.
    The student is able to use the acquired theoretical knowledge to solve an assigned task.
    This includes:
    • Designing an efficient algorithm with respect to the assigned task and properties of the input data.
    • Choosing suitable data structures for storing and manipulating data.
    • Writing a program in a specific programming language.
    • Composing appropriate tests, debugging, and modifying the program according to the test results.

    The student is able to document their work. They are able to justify their decisions regarding the algorithm, data structures, and implementation with respect to the size and arrangement of the input data.
    The student is able to use the acquired knowledge and skills in different contexts of different programming languages.
    This means that the student is able to:
    • Understand the principles of algorithms and data structures regardless of the programming language chosen.
    • Apply their knowledge and skills to solve problems in various programming languages.
    • Quickly learn a new programming language using existing knowledge.

    In addition to the above knowledge and skills, the student also demonstrates knowledge and understanding of the principles of object-oriented programming.
    • The student knows the basic concepts of OOP, such as classes, objects, inheritance, encapsulation, and polymorphism.
    • They are able to define and use classes and objects in program code.
    • They understand the principle of inheritance and are able to apply it in practice.
    • They are able to implement data encapsulation in objects.
    • They are able to use polymorphism to simplify and streamline code.
    • They are able to justify the use of OOP depending on the type and complexity of the program.
    • They are able to design and implement object-oriented programs with an emphasis on their modularity.

    RNDr. Martin Pergel, Ph.D.

      • shrink expand
        11000 - Univerzita Karlova
        251/24
        29.5.2024
        29.5.2034
      • shrink expand
        14
        143 hours
        143 hodin přímé výuky, 353 hodin studijní zátěže celkem
        2
        Software and applications development and analysis
        Written examination
        Project work
        Continuous evaluation
        Oral examination
        Level 6
        Institutional Quality Assurance
      • shrink expand
        30.09.2024
        26.9.2025
        2024/2025
        winter semester
        Basic Programming Course
      • shrink expand
        0 Kč / course
        to  
        Mgr. Lenka Forstová, tel: 951554110
        forstova@ksvi.mff.cuni.cz
      • shrink expand