包含什麼
34 預錄課程
10 週
教師的支持1 年訪問權
到內容作業
每週 1 小時. Video will be uploaded every week which is easy to follow. Please watch the video at least 3 times if you are struggling to understand the concepts. If you still have questions, please post your questions in the Outschool classroom or send a message/email. I will get back to you as soon as possible. After the end of every class (video), Students will be assigned a homework problem. homework must be submitted before the beginning of the next class. Students will be receiving feedback every week. Students should able to improve their coding skills by carefully following the guideline posted in the classroom. After the end of 8 weeks, students should able to complete 4 Java projects and earn a certificate!我們無法翻譯此文,請刷新頁面並再試一次。
課堂經歷
Students will regularly receive pre-recorded videos, partial code, pseudocode, and handouts which have clear instructions and how to apply the Java concepts (explained in the recorded videos) to build FOUR real-world projects from scratch! They will also get weekly feedback to make improvements ==========> Reason to choose this Flex Class *** Project-based Learning *** Focuses on building applications from scratch *** Offers 450+ minutes of video recording! *** 19 videos *** 6 assignments *** FOUR real-world projects *** Weekly feedback on assignments/projects *** Ask and get help within 12 hours By the end of this course, students will able to demonstrate FOUR completed real- world Java projects, which are also customizable- meaning advanced students can add more features to their projects. ==========> List of Projects: 1. A vending machine for a school 2. A grading system that can calculate GPA for a number of subjects 3. An online pizza ordering system 4. An ATM that allows to withdraw and deposit money in a bank To complete the projects, students will learn a number of Java concepts, debugging skills, and develop problem solving skills which are essential to become a software engineer/Quality Engineer/programmer/data scientist in the future! ==========> Covered Concepts: 1. Introduction to Java and some basics of computer programming 2. Printing texts in Java (4 different ways to print) 3. Primitive data type (int, double) 4. Non-primitive data type (String) 5. How to write pseudocodes for each of the projects 6. How to translate pseudocodes into actual code 7. Conditional statements (if...el if..else) and nested if conditions 8. Logical Operators (AND, OR, NOT) 9. How to debug your code? 10. Arrays 11. Loops (while loop) ==========> The structure of the flex class is as follows: 1. Every week students will receive several videos along with a weekly assignment. 2. They will need to create an online account by signing up here: https://repl.it/ 3. Students will need to share their projects so that I and other students can see the solution. (A solution will only be shared after the deadline) 5. Their coding assignments will be posted (URL) in the classroom so that other students can see the approaches and learn different strategies from each other 6. Shared projects must have comments using Java syntax so that other can clearly understand the solution 7. If students have questions. they can directly message me or post their questions in the classroom. Questions will also be posted in the classroom so that students can participate 8. Some assignments will have partial code which will be explained in the posted videos, students will need to complete the rest and share their solution in the class. It will be discussed in the classroom whoever has the most efficient coding strategy to complete the project and why the strategy is the best compared to other solutions ==========> Basic Concepts: This class also start with some basics of programming language- 1. What is a programming language? 2. Why do we need a programming language? 3. How does a programming language work? 4. What are binary numbers? 5. What is a compiler? 6. What is an IDE? 7. What is pseudocode? 8. What is a syntax? 9. What is debugging? These are some basic concepts that a programmer should know. But, unfortunately many students do not know these concepts. The focus of this project-based Java course is to prepare students to code like a professional programmer! In this course, you will start learning Java from basics and start to write 'clean code' for your projects. Good programmers do not just write code for themselves. They write 'clean code' in a way that is understandable by their clients, managers, and colleagues. Writing code means instructing the computer to do some specific tasks- mostly for fast calculation in a fraction of a second! In this class, we will explore some real-world problems just like the software engineers and solve them using Java programming concepts! Video lessons will be posted every week which are structured as given below: ==========> Course Details: ***Week 1 and Week- 2 Students will be introduced to programming language They will learn- ** How to add, subtract, multiply, divide numbers in Java (integer numbers and decimal numbers) ** How to use simple conditions(if else) in Java ** How to use conditions to compare two products ==========> Week-3 and Week-4 *** Project- 1: Vending Machine Students will be Introduced to the Vending Machine project. They will need to write all the steps that are needed to dispense an item from a vending machine. They will learn- ** What is a pseudocode and how it is used to design projects ** How to apply the concepts learned from the first two weeks to start writing code for vending machine **if.. else if... else condition. This is an extension of if...else conditions ==========>Week-5 & Week-6 ***Project- 2: Grading Calculator Students will be introduced to the Grading Calculator project. They will understand how letter grades are assigned for a particular score range. They will learn- ** Logical operator (AND, OR and NOT) ** Local variable ** How to assign a letter grade for a range of score using the concept of logical operator ==========>Week-7 & Week-8 ***Project- 3: Pizza Ordering System Students will be introduced to the Pizza Ordering System project. They will need to write all the steps needed to complete an order. Order includes taking care of pizza size, pickup or delivery option, crust selection, toppings, tips, tax. They will learn- ** How to organize their code to take care of an order ** How to debug their code (if there is an error) ** How to initialize a variable ** How to add tax and round the total ==========>Week-9 & Week-10 ***Project- 4: ATM Transaction in a Bank Students will be introduced to the ATM Transaction Banking project. They will need to write all the steps needed to complete a transaction. transaction include pincode setup, withdraw money, update balance, deposit cash/check, balance inquiry They will learn- ** While loop ** How to use loop to allow customers to confirm their pincodes ** Break statement and how to use break to get out of a loop ** Update customers' account balances in case of a withdraw or deposit Those who can successfully complete the projects will be invited to the second part of the Java class!
學習目標
Tailored for beginners, this course offers a structured path to Java proficiency, empowering you to become a proficient programmer.
Develop practical skills by applying learned concepts to build four real-world projects, each consisting of multiple parts developed from scratch.
教學大綱
4 單位
34 課程
超過 10 週單位 1: PROJECT-1: VENDING MACHINE
課 1:
Introduction
Introduction to Programming
We will learn:
- programming language
- binary numbers
- compiler
課 2:
Intro to Java
Intro to Java Programming
We will learn:
- writing comments
- writing multi-line comments
- Java Class and Method
課 3:
Java Basics (Part-1)
Java Basics (Part-1)
We will learn:
- the print statement
- print() vs println()
課 4:
Java Basics (Part-2)
Java Basics (Part-2)
We will learn:
- concatenations and \n
其他詳情
父母的引導和規範
*** Notice about the usage of Third-party tool
A third-party tool, CodeHS, is going to be used in this class. CodeHS is fully COPPA-compliant.
An account creation on CodeHS is not mandatory for this class. Students can still use CodeHS without creating an account to write and save their code.
The following paragraph is taken from the CodeHS privacy policy section and by joining this class you give permission that the following data will be collected from the enrolled student(s).
"As you use our Website, we may use automatic data collection technologies to collect information about your equipment, browsing actions, and patterns. For example, we may collect: details of your visits to our Website, including traffic data, location data, logs, and other communication data; and information about your computer and internet connection, including your IP address, operating system, and browser type.
The information we collect automatically is statistical data and does not include Personal Information. It helps us to improve our Website and to deliver a better and more personalized service, including by enabling us to:
estimate our audience size and usage patterns;
monitor site performance and uptime;
resolving technical issue for Website users;
store information about your preferences, allowing us to customize our Website for you; and
recognize you when you return to our Website."
To learn more- https://codehs.com/privacycenter
供應清單
*Students must have a laptop/notebook/chromebook for this class. Tablets are not recommend for this class as they need to write code using keyboards. Also, they will need some pencils, erasers and notebooks/loose leaves to take notes. * Students should know how to use a browser (Chrome/IE/Safari) as we will be using an online compiler for this class. * Students will not need to install any software for this class
外部資源
除了 Outschool 教室外,本課程也使用:
教師專業知識和證書
碩士 由 Loyola Marymount University
Hello future engineers and scientists!
I'm Faruk, a passionate Software Test Engineer (SDET) based in New York, and I'm thrilled to be your STEM instructor. With over 12 years of experience, I bring real-world insights into the classroom, making learning an exciting journey.
About My Classes:
=====> Python Classes:
1. [Become ZERO to HERO in Python Coding| A Project-Based Programming for Beginners!](https://outschool.com/classes/become-zero-to-hero-in-python-codingor-a-project-based-programming-for-beginners-P9F2e3Bn#usmdgGriHQ)
- Dive into the basics of Python through hands-on projects.
- Lay a solid foundation for your coding journey.
2. [Level-1| Coding in Python| Real-World Project Experience for Beginners!](https://outschool.com/classes/level-1or-coding-in-pythonor-real-world-project-experience-for-beginners-VMdtgqom#usmdgGriHQ)
- Explore the world of coding with real-world projects.
3. [Level-2| Coding in Python| Advanced Real-World Projects for Beginners!](https://outschool.com/classes/level-2or-coding-in-pythonor-advanced-real-world-projects-for-beginners-y7Z9z1yy#usmdgGriHQ)
- Take your Python skills to the next level with advanced projects.
4. [Level-3| Coding in Python| Algorithm Design Techniques and Logics!](https://outschool.com/classes/level-3or-coding-in-pythonor-algorithm-design-techniques-and-logics-T3QwCy9C#usmdgGriHQ)
- Master algorithm design techniques and logics in Python.
And more....
=====> Java Classes:
1. [Level-1 | Java Coding Made Easy| Project-Based Flex Class for Beginners](https://outschool.com/classes/level-1-or-java-coding-made-easyor-project-based-flex-class-for-beginnersor-1qvH4cQK#usmdgGriHQ)
- Dive into Java coding with a project-based approach.
2. [Part II Java Programming: Algorithm Design and Its Application in the Real-World](https://outschool.com/classes/part-ii-java-programming-algorithm-design-and-its-application-in-the-real-world-vduCnyxA#usmdgGriHQ)
- Explore advanced algorithm design in Java.
3. [Level-3| Java Object Oriented Programming| Software Test Engineering Projects](https://outschool.com/classes/level-3or-java-object-oriented-programmingor-software-test-engineeting-projects-Vxc4gAQ0#usmdgGriHQ)
- Learn Java Object-Oriented Programming through real-world projects.
=====> Scratch Classes:
1. [Advanced Scratch Programming: Let's Create a Space Invaders Game!](https://outschool.com/classes/advanced-scratch-programming-lets-create-a-space-invaders-game-7mnhPtYn#usmdgGriHQ)
- Unlock the secrets of Scratch programming by creating a Space Invaders game.
=====> Math Classes:
1. [Math| Algebra 1| Designed for Middle Schoolers!](https://outschool.com/classes/mathor-algebra-1or-designed-for-middle-schoolers-DXZOgXr9#usmdgGriHQ)
- Explore Algebra 1 in a way designed just for middle schoolers.
=====> Flex Classes:
1. [Level-1 | Java Coding Made Easy| Project-Based Flex Class for Beginners](https://outschool.com/classes/level-1-or-java-coding-made-easyor-project-based-flex-class-for-beginnersor-1qvH4cQK#usmdgGriHQ)
- Flexibility meets Java coding in this project-based class.
2. [Python Made Easy| Project-Based Python Coding| Beginners Flex Class| Level 1](https://outschool.com/classes/python-made-easyor-project-based-python-codingor-beginners-flex-classor-level-1-yfIW7oem#usmdgGriHQ)
- Make Python coding easy with this flexible and project-based class.
Education:
- Bachelor's degree in Electrical Engineering from Queen Mary, University of London, England, UK (2011).
- Master's degree in Electrical Engineering from Loyola Marymount University, Los Angeles, CA, USA (2016).
Professional Background:
As a Software Test Engineer, I work with sophisticated technology, delivering outstanding tech services to major companies. My experience allows me to teach using real-world scenarios, providing you with insights into the IT industry's state-of-the-art technologies.
Hobbies:
I'm not just passionate about tech; I love traveling, cycling, reading books, writing blogs, and playing video games. My diverse interests inspire creativity in my classes, making learning an exciting and dynamic experience.
Join me on
this STEM adventure, where we'll explore, learn, and have a great time together! 🚀✨