Skip to content

PcNerd9/alx-higher_level_programming

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Higher Level Programming

Welcome to the Higher Level Programming repository! This collection of projects is designed to improve my fluency in both Python and JavaScript by tackling various tasks that explore different concepts and programming techniques in these languages.

Repository Structure

The repository is divided into several folders, each representing a different phase of learning and containing exercises, scripts, and programs. Below is an overview of the key directories and the types of tasks they contain:

0x00-python-hello_word

This directory introduces basic Python syntax, including:

  • Running Python scripts
  • Printing numbers and strings
  • Basic file manipulation

0x01-python-if_else_loops_functions

Focuses on control flow and basic algorithms:

  • Loops (for, while) and conditionals (if-else)
  • Simple algorithms such as finding the last digit and generating random numbers

0x02-python-import_modules

Covers module importing and command-line argument handling:

  • Importing functions from other scripts
  • Working with arguments and modularizing code

0x03-python-data_structures

Explores data structures in Python:

  • Lists, tuples, and basic operations
  • More complex tasks like palindrome checking

0x04-python-more_data_structures

Extends data structures knowledge:

  • Working with dictionaries, sets, and advanced list manipulations
  • Implementing algorithms to process matrix operations

0x05-python-exceptions

Covers exception handling:

  • Safe printing and handling errors gracefully
  • Raising custom exceptions

0x06-python-classes

Introduces object-oriented programming:

  • Creating and managing classes and objects
  • Methods and attributes

0x07-python-test_driven_development

Focuses on test-driven development (TDD):

  • Writing tests for functions and classes
  • Ensuring code reliability with test cases

0x08-python-more_classes

Deep dive into object-oriented programming:

  • Expanding class design concepts with more complex structures

0x09-python-everything_is_object

Focuses on understanding Python’s object model:

  • Manipulating objects and understanding references

0x0A-python-inheritance

Introduces inheritance:

  • Designing class hierarchies
  • Utilizing super() and method overriding

0x0B-python-input_output

Covers file input and output:

  • Reading and writing JSON data
  • Serializing and deserializing objects

0x0C-python-almost_a_circle

A mini-project to consolidate OOP concepts:

  • Building classes for geometric shapes (Base, Rectangle, Square)
  • Emphasis on inheritance, serialization, and unit testing

0x0D-SQL_introduction

Covers introductory SQL commands:

  • Creating, selecting, and modifying databases and tables
  • Querying data

0x0E-SQL_more_queries

More advanced SQL:

  • User management, subqueries, and joining tables
  • Working with real-world data scenarios

0x0F-python-object_relational_mapping

Introduces Python and SQL integration:

  • Working with Object Relational Mappers (ORM)
  • Writing Python scripts that interact with databases

0x10-python-network_0

Networking basics:

  • Working with HTTP requests via shell scripts
  • Automating requests and processing responses

0x11-python-network_1

Advanced networking in Python:

  • Fetching data from APIs
  • Handling errors in HTTP requests

0x12-javascript-warm_up

Introduces basic JavaScript concepts:

  • Variables, loops, and functions
  • Command-line interaction using Node.js

0x13-javascript_objects_scopes_closures

Covers advanced JavaScript concepts:

  • Object-oriented programming in JavaScript
  • Closures and scope management

0x15-javascript-web_jquery

Introduces JavaScript for web development:

  • Manipulating the DOM with jQuery
  • Creating interactive web pages

Learning Outcomes

This repository demonstrates my progression as a developer, particularly focusing on:

  • Gaining proficiency in Python and JavaScript
  • Applying concepts of data structures, algorithms, and object-oriented programming
  • Learning modern software development practices, such as test-driven development (TDD), object-relational mapping (ORM), and web development techniques

How to Use

Each folder contains individual project directories, which in turn include Python and JavaScript scripts, supporting files, and test cases. You can run the Python scripts by navigating to their respective directories and executing them, or running the JavaScript files using Node.js where appropriate.

Requirements

  • Python 3.x
  • Node.js (for JavaScript files)
  • Basic understanding of Python and JavaScript
  • Database (for SQL-related tasks)

Conclusion

This repository is a work in progress as I continue to enhance my skills in both Python and JavaScript. Feel free to explore the code, raise issues, and suggest improvements.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published