Skip to content

chien-se/Web-Game-Developments

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 

Repository files navigation

💻 Developer Log & Portfolio

This repository contains my foundational web development projects, completed as part of The Odin Project (TOP) curriculum. This self-directed work was critical for establishing proficiency in core front-end technologies and essential programming logic within a Linux development environment.

Technologies: HTML, CSS, JavaScript, Linux/Virtual Environments.

Key Project Highlights:

JavaScript Calculator: A fully functional application built to solidify skills in complex DOM manipulation and state management.

Etch-a-Sketch: An interactive drawing grid project used to master event handling and dynamic CSS grid generation.

Rock Paper Scissors: A classic game developed to implement robust game loop logic, conditional scorin

🪨📄✂️ Project 1: Rock, Paper, Scissors

What I Learned:

  • Core JavaScript Logic: Implemented game flow using if/else statements and switch cases.
  • User Input: Learned to use prompt() for user input and discovered that it always returns a string, requiring potential type conversion.
  • Randomization: Mastered the use of Math.random() and Math.floor() to generate pseudo-random numbers.
    • Math.random() returns a float $\ge 0$ and $< 1$ (it never reaches 1).
    • Math.floor() always rounds down to the largest integer less than or equal to the number.
  • Useful Snippet: Solidified the pattern for getting a random integer within a range (e.g., 1 to 3):
    let num = Math.floor(Math.random() * 3) + 1;

🎨 Project 2: Etch-a-Sketch

What I Learned:

  • DOM Manipulation: Gained extensive experience in creating, modifying, and deleting HTML elements entirely with JavaScript.
  • Interactive UI: Developed skills in building an interactive interface that responds to user events (like mouse-over).
  • CSS & JavaScript Integration: Learned to dynamically add and remove CSS classes with JavaScript to change element styles.
  • Layout Management: Deepened my understanding of Flexbox for creating and managing grid-based layouts.
  • External Assets: Practiced using external libraries and assets.

🧮 Project 3: Basic Calculator

What I Learned:

  • Complex Problem Solving: Practiced breaking down a larger-scale problem (calculator logic) into smaller, manageable functions and steps.
  • JavaScript Functions: Enhanced my ability to organize code into reusable and modular functions.
  • Advanced CSS Layout: Gained more experience using Flexbox and CSS selectors to create a complex, responsive layout.

About

Web Development for the Odin Projects

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published