COURSE INFORMATION
Course Title: PRINCIPLES OF PROGRAMMING
Code Course Type Regular Semester Theory Practice Lab Credits ECTS
BUS 106 A 2 2 1 0 2.5 5
Academic staff member responsible for the design of the course syllabus (name, surname, academic title/scientific degree, email address and signature) Dr. Florenc Skuka fskuka@epoka.edu.al
Main Course Lecturer (name, surname, academic title/scientific degree, email address and signature) and Office Hours: M.Sc. Ardita Dorti adorti@epoka.edu.al
Second Course Lecturer(s) (name, surname, academic title/scientific degree, email address and signature) and Office Hours: NA
Language: English
Compulsory/Elective: Compulsory
Study program: (the study for which this course is offered) Bachelor in International Marketing and Logistics Management (3 years)
Classroom and Meeting Time:
Teaching Assistant(s) and Office Hours: NA
Code of Ethics: Code of Ethics of EPOKA University
Regulation of EPOKA University "On Student Discipline"
Attendance Requirement: 75% mandatory
Course Description: Introduction to Programming aims at preparing students with the basic concepts of programming and teaching them basic programing skills using Python. Python is a full spectrum language, very popular languages and in the same time very user friendly. This course will introduce students to numbers, math, functions and loops, conditional logic and control flows, object oriented programming, file input and output, working with databases, interacting with the web, scientific computing and graphing and graphical user interfaces. These will equip students with necessary skills so that they can adopt more advanced features as they need them when their application demands grow.
Course Objectives: The objective of this course is to introduce students with the fundamental programming skills as a starting point for analyzing large amounts of financial data using Python, create visualizations, and start using statistics for predictive modeling in the future. - To understand basics of algorithmic thinking - To understand basic programming concepts - To be able to design and implement basic algorithms - To learn Python syntax and structure - To be able to transform problem solving structures in Python. - To be able to analyze real life problems and develop programming solutions
BASIC CONCEPTS OF THE COURSE
1 decision structures
2 repetition structures
3 functions
4 lists, tuples
5 dictionaries
6 classes and object programming
7 inheritance
8 recursion
9 graphical user interface
COURSE OUTLINE
Week Topics
1 Introduction to Computers and Programming (Gaddis, 2021, pp. 23 - 52)
2 Input, Processing, and Output (Gaddis, 2021, pp. 53 - 140)
3 Decision Structures and Boolean Logic (Gaddis, 2021, pp. 141 - 190)
4 Repetition Structures (Gaddis, 2021, pp. 190 - 240)
5 Functions (Gaddis, 2021, pp. 241 - 324)
6 Files and Exceptions (Gaddis, 2021, pp. 325 - 382)
7 Lists and Tuples (Gaddis, 2021, pp. 383 - 452)
8 More About Strings (Gaddis, 2021, pp. 453 - 488)
9 Midterm
10 Dictionaries and Sets (Gaddis, 2021, pp. 489 - 542)
11 Classes and Object-Oriented Programming (Gaddis, 2021, pp. 543 - 604)
12 Inheritance (Gaddis, 2021, pp. 605 - 630)
13 Recursion (Gaddis, 2021, pp. 631 - 650)
14 GUI Programming (Gaddis, 2021, pp. 651 - 738)
Prerequisite(s): -
Textbook(s): Tony Gaddis, Haywood Community College - Starting Out with Python, Global Edition, 5th Edition-Pearson (2021) David Amos, Dan Bader, Joanna Jablonski, Fletcher Heisler - Python Basics_ A Practical Introduction to Python 3-Real Python (2021)
Additional Literature: -Engr. Michael David - A Practical Introduction to Python Programming _ Hand-On Machine Learning With Python (2021) -Jim R. Parker - Python_ An Introduction to Programming-Mercury Learning and Information (2021) -John V. Guttag - Introduction to Computation and Programming Using Python-The MIT Press (2021) -Levitin, Anany - Introduction to the design and analysis of algorithms-Pearson (2019) -Publishing, AI - Python Pandas for Beginners_ Pandas Specialization for Data Scientist (Python for Beginners in Data Science and Data Analysis Book 2)-AI Publishing LLC (2021) -Cajic, Dino - An Illustrative Introduction to Algorithms (2019)
Laboratory Work: Yes
Computer Usage: Yes
Others: No
COURSE LEARNING OUTCOMES
1 To understand the fundamental principles of programming.
2 To learn how to present problems and solve them by using algorithms.
3 To define the structure and components of a Python program.
4 To learn how to use lists, tuples, and dictionaries in Python programs.
5 To learn how to apply loops, decision statements, repetition structures and functions to solve problems using Python language.
6 To learn how to write programs to handle files and exceptions in Python programs.
7 To learn how to apply lists and tuples to solve problems using Python language.
8 To learn how to apply classes and object-oriented programming principles in problems using.
9 To learn how to apply inheritance and recursion to solve problems using Python language.
COURSE CONTRIBUTION TO... PROGRAM COMPETENCIES
(Blank : no contribution, 1: least contribution ... 5: highest contribution)
No Program Competencies Cont.
Bachelor in International Marketing and Logistics Management (3 years) Program
1 Identify activities, tasks, and skills in management, marketing, accounting, finance, and economics. 3
2 Apply key theories to practical problems within the global business context. 3
3 Demonstrate ethical, social, and legal responsibilities in organizations. 5
4 Develop an open minded-attitude through continuous learning and team-work. 5
5 Use technology to enable business growth and sustainability. 5
6 Synthesize creativity needed for marketing notion with scientific method and numerical skills, for achieving business sustainability. 4
7 Apply the concepts and structures of modern marketing in global context at private and public sectors. 3
8 Integrate the management of logistics, supply chain and in total operations with corporate goals and strategies. 3
COURSE EVALUATION METHOD
Method Quantity Percentage
Midterm Exam(s)
1
55
Final Exam
1
35
Attendance
10
Total Percent: 100%
ECTS (ALLOCATED BASED ON STUDENT WORKLOAD)
Activities Quantity Duration(Hours) Total Workload(Hours)
Course Duration (Including the exam week: 16x Total course hours) 16 3 48
Hours for off-the-classroom study (Pre-study, practice) 16 2 32
Mid-terms 1 10 10
Assignments 0
Final examination 1 15 15
Other 1 20 20
Total Work Load:
125
Total Work Load/25(h):
5
ECTS Credit of the Course:
5
CONCLUDING REMARKS BY THE COURSE LECTURER