
This course is a Template, please add your description and change the course photo.
- Teacher: Raoudha Trimech

This course is a Template, please add your description and change the course photo.
- Teacher: MAYSSA BEN KAHLA
- Teacher: Manel Ben Salem

This course is a Template, please add your description and change the course photo.
- Teacher: Noura Aboudi

Description
This course provides practical guidance on mastering object-oriented programming (OOP) and advanced Java programming concepts.
Throughout the course, you'll learn how to design, implement, and manage Java programs using OOP principles and modern Java features. You will gain hands-on experience with classes, objects, inheritance, polymorphism, interfaces, packages, exception handling, file I/O, collections, functional programming, concurrency, and multithreading. Each week, you’ll apply the concepts learned by progressively building a mini-project, allowing you to see how OOP principles and Java techniques work in real-world software development. By the end, you'll have a comprehensive understanding of Java programming and be ready to develop robust, scalable, and maintainable applications.
Learning Objectives
By the end of this course, students will be able to:
-
Apply OOP principles to design flexible and reusable Java programs.
-
Organize code with classes, packages, and modular programming techniques.
-
Handle exceptions, read/write files, and manipulate collections efficiently.
-
Use functional programming constructs, multithreading, and concurrency utilities.
-
Integrate modern Java features into real-world projects.
-
Develop and finalize a complete mini-project demonstrating all learned concepts.
- Teacher: Nouha Khyari
- Teacher: Fatma Mechri
- Teacher: Ameny Rjiba

This course is a Template, please add your description and change the course photo.
- Teacher: Imen Ben Abdelwahed
This module introduces the principles, engineering, and administration of relational databases. It combines theoretical foundations with hands-on practice to develop a comprehensive understanding of database design, implementation, and management. It introduces entity-relationship modeling, the relational model, normalization, SQL/PLSQL, DBMS architecture, and administration tasks. The emphasis is to reinforce the conceptual and practical skills required to design databases and administer them in real-world scenarios.
- Teacher: Jihed Hammami

The aim of this module is to build a solid foundation in algorithms and data structures by combining theoretical lectures with laboratory practice. The module covers arrays, pointers, linked lists, stacks, queues, trees, recursion, sorting, and algorithmic complexity, ensuring that students can apply both iterative and recursive approaches to solve classical algorithmic problems.
- Teacher: Nouha Khyari
- Teacher: Ameny Rjiba

Welcome to the world of networking! 🌐
This course introduces you to the core principles that connect people, devices, and data across the globe. Through engaging lessons and hands-on labs using Cisco Packet Tracer, you’ll explore how networks operate — from the physical connections and protocols that make communication possible to the configuration of real network devices.
By the end of the course, you’ll be able to build, configure, and troubleshoot small networks, understand IPv4 and IPv6 addressing, and apply essential security practices.
Whether you’re aiming for a Cisco certification or just beginning your networking journey, this course gives you the solid foundation you need to move confidently into the IT world. 🚀
- Teacher: Mohamed Amine Marzouk