The course covers advanced topics in computer programming using general-purpose programming language to solve computing problems. The emphasis of this course is to train students to design, implement, test, and debug programs intended to solve computing problems by implementing advanced programming constructs.
Specification, this course will use the Python programming language to introduce students to advanced topics in computer programming. It will include topics in object-oriented programming (OOP), advanced string manipulation using a regular expression (regex), accessing files and databases, data analysis and data visualization, and graphical user interface (GUI).
Bachelors of Science in Computer Science
Specialization Track in Software Engineering I
Growing up in Manila, I was always fascinated by the power of technology and its ability to change the world. Back in high school, I had the opportunity to join a contest and create a website for our school publishing team, and to my surprise, we were able to reach regionals. That was my first introduction to programming and since then, I fell in love with it. So, when it came time to choose a college, I knew that I wanted to pursue a degree in computer science. But I also knew that to truly excel in this field, I needed to immerse myself in a new environment where I could focus on my studies and gain hands-on experience.
That's why I made the decision to move to Quezon Province to attend college. It's been a big transition, but I'm excited to be here and to be taking classes that will help me achieve my goal of becoming a competent computer science graduate. I'm determined to work hard and make the most of this opportunity.
When I'm not studying, I love to spend my time painting and creating mini programming projects. I believe that art and technology go hand in hand, and I find that these hobbies help me stay creative and inspired. They also let me pursue my interest in both fields and make a balance between the technical and creative side of my life. I also believe that nothing is impossible with hard work and determination, and I'm excited to see what the future holds for me.
PRELIM COURSE OUTCOMES
Create a Python program applying object-oriented programming (OOP);
Use regular expression to search for patterns in a string;
Create a program that accesses file to perform create, retrieve, update, and delete (CRUD) operations.
COURSE OUTCOME 1,2, and 3 PERFORMANCE INDICATOR
Create a Python program that will apply OOP, Accessing File (Create and Delete), and Regular Expressions (Searching Records).
EXPECTATIONS
In this course, I expected to learn the basic principles and theories of Object-Oriented Programming in Python such as Encapsulation, Abstraction, and Polymorphism.
In addition, I also expected to learn about RegEx and how is it different and more complex than simply searching for a specific string combinations.
Lastly, I also expected to learn about the basic CRUD Operations: Create, Read, Update, and Delete and how I would apply and make use of it in a Python Program.
APPLICATION
Applied Object-Oriented Programming through the creation of 'Events' class in Python that make use of OOP concepts such as Encapsulation, Abstraction, and Polymorphism.
Applied the use of RegEx in searching for important details such as the event name, date and time, location, sender's email, and phone number in the '.txt' invitations.
Applied CRUD Operations through creation of new file summary, reading of informations from file, and updating of existing informations in the summary files.
This is a Python script that defines a class Events, which is designed to extract information from text representing an event invitation.
The class has several methods that use regular expressions to extract the event name, date, time, location, and sender's email and phone number from the text. These methods include:
eventName: Returns the name of the event, using a regular expression that matches any sequence of one or more word characters (letters, numbers, or underscores) surrounded by double quotes.
eventDate: Returns a tuple of a datetime.date object and a datetime.time object representing the date and time of the event, respectively. It uses two regular expressions to extract the date and time components from the text, and then converts them to the appropriate data types.
eventLocation: Returns the location of the event, using a regular expression that matches any text that follows the word "Location:" in the input text.
eventSender: Returns a tuple of the sender's email address and phone number, using two regular expressions that match email addresses and phone numbers in various formats.
The class also has several other methods:
find: This method is used by the other methods to search the input text for a regular expression pattern, and returns the first match found (or the string "Not Found" if no match is found).
textSummary: This method returns a string summarizing the properties of the Events object, excluding the full input text. It is used to generate a summary of all the events in a list, which can then be written to a text file using the write_txtfile method.
dictSummary: This method returns a dictionary summarizing the properties of the Events object, including the full input text. It is used to generate a summary of a single event, which can then be written to a CSV file using the write_csvfile method.
write_txtfile: This method takes a list of Events objects or a single Events object, and writes a summary of each object to a text file.
write_csvfile: This method takes a dictionary summary of an Events object and writes it to a CSV file.
create_schedule: This method creates an appointment in Microsoft Outlook using the win32com.client library. It uses the dictSummary method to extract the necessary information from the Events object and sets the appropriate properties of the appointment object before saving it to the Outlook calendar.
Graphical User Interface: To create a GUI for the program to enable visually pleasing and user-friendly access to the program.
Added Functions:
Viewing of full Email Contents
Editing of Summary Information
Deletion of Summary Records
Database: Make use of database to seeminglessly save and view previously accessed datas.
Synching with Email Accounts: Connect with Email accounts such as Google to be able to access data and create summary out of the emails in the user's email inbox.