Loom Recording Link: [Insert Link]
In this project, you will be presented with two JavaScript code examples, each demonstrating a different programming paradigm: imperative and declarative. Your task is to analyse these examples and determine which one follows an imperative programming style and which one follows a declarative programming style.
You will present your reasoning for each example, record your presentation using Loom, and submit your findings along with the Loom recording to the Project Tab on the Learning Management System (LMS).
Repo Link: https://github.com/CodeSpace-Academy/Module_3_StudentNo_Classcode_Group_Name-Surname_JSL03
- Access the provided repository containing the starter code and presentation template.
- Clone the repository.
- Open the cloned repository in your preferred code editor.
- In the cloned repository, you will find two JavaScript code examples labeled "Example 1" and "Example 2."
- Examine each code example and determine which one follows an imperative programming style and which one follows a declarative programming style.
-
Use Loom (https://www.loom.com/).
-
Create a single video presentation for both examples that include the following:
- Introduction of the example number.
- Explanation of whether the example is imperative or declarative.
- Detailed reasoning for your choice, discussing the code logic and style used in the example.
- Mention any specific code structures or patterns that align with the chosen programming paradigm.
-
Keep each video presentation concise, with a maximum length of 2 minutes for each example. Your total recording time should not exceed 5 minutes.
- After recording, upload your presentation videos to Loom.
- Obtain the Loom recording links for the video presentation.
- Edit the
README.md
file in the cloned repository and insert the Loom recording links.
- Commit your changes to the Git repository and push them to your GitHub account.
- Ensure that the repository is public so that it can be accessed.
- Submit the GitHub project link (URL) that includes your Loom recording link to the [JSL03] Project Tab on the LMS for evaluation.
Your project will be evaluated based on your ability to:
- Accurately identify and differentiate between imperative and declarative programming styles.
- Provide clear and well-reasoned explanations for your choices.
- Present your findings concisely within the specified time limit.
- Follow the submission instructions accurately.
Follow the steps outlined above to complete the project successfully.
Example #: [Insert Example Number]
-
Step-by-Step Explanation: Start by explaining the code logic in the imperative approach.
- Mention each step of the process in the code.
- Describe how the code provides explicit instructions for each action.
- Discuss the use of variables to track the state and progress of the process.
-
Emphasis on How: Highlight how the imperative approach focuses on detailing "how" the task is accomplished.
- Point out the use of loops, conditions, and explicit instructions.
- Discuss any mutable variables or states that change during execution.
Example #: [Insert Example Number]
-
High-Level Process Description: Explain the code logic in the declarative approach.
- Describe the cooking process in a high-level, abstract manner.
- Emphasize that the code defines "what" should happen rather than "how" it should happen.
-
Use of Data Structures: Discuss the use of data structures (e.g., arrays, objects) to represent the process steps.
- Explain how the process steps are organized in a structured format.
- Mention any abstraction layers or functions used to encapsulate actions.
- Reflect on what you've learned from analyzing these code examples in different paradigms.