This bachelor's thesis focuses on the development of libraries in Java and Python featuring multiple versions of the robot Karel program, a tool for teaching object-oriented programming. The main goal is to create a progressively evolving set of robot Karel libraries in these programming languages, serving two purposes: first, to demonstrate the principles of object-oriented programming (OOP) through increasingly sophisticated versions of the program, and second, to provide a toolset suppor... zobrazit celý abstraktThis bachelor's thesis focuses on the development of libraries in Java and Python featuring multiple versions of the robot Karel program, a tool for teaching object-oriented programming. The main goal is to create a progressively evolving set of robot Karel libraries in these programming languages, serving two purposes: first, to demonstrate the principles of object-oriented programming (OOP) through increasingly sophisticated versions of the program, and second, to provide a toolset supporting the teaching of OOP fundamentals. The theoretical part of the thesis explores OOP concepts, its core principles, and the role of design patterns in software development. It also examines the history of the Karel the Robot program, its origins, and its modern form, which served as the foundation for this work. The practical part involves the development of Karel's libraries, ranging from basic functionality to advanced implementations, including new robot actions and world types. This thesis not only demonstrates OOP principles in practice but also offers an educational tool that extends the original concept of Karel and broadens its applicability in teaching programming and creating programming challenges. |