Skills Demonstrated in the Weather API Project
🔌 API Integration
Used the OpenWeatherMap API to retrieve real-time weather data based on user input.
Handled HTTP requests and responses using the requests library.
Demonstrated knowledge of API key handling and secure API usage practices.
🧠 Object-Oriented Programming (OOP)
Designed a City class to encapsulate city-specific attributes and behavior.
Used constructors (init) and instance methods for clean, modular code.
Promoted code reusability and scalability using OOP principles.
🧾 JSON Parsing and Data Handling
Parsed complex JSON structures returned by the API using the json module.
Extracted and displayed relevant weather metrics like temperature, highs, and lows.
📥 User Input Validation
Enabled dynamic user interaction through command-line inputs for city name or coordinates.
Included options to choose between metric and imperial units, improving UX.
🖥️ Console Application Design
Created a user-friendly CLI with clear, readable output using formatted strings (f-strings).
Displayed location-specific weather summaries for different cities.
🛠️ Debugging and Testing Mindset
Handled edge cases and potential API errors (e.g., invalid input, missing data).
Built logic to test with multiple cities like London and Malaga, aiding in functional verification.