Hiroshima University Syllabus

Back to syllabus main page
Japanese
Academic Year 2024Year School/Graduate School Liberal Arts Education Program
Lecture Code 30105001 Subject Classification Information and Data Science Courses
Subject Name Starting Programming from Scratch[1総国]
Subject Name
(Katakana)
Subject Name in
English
Starting Programming from Scratch
Instructor LIU SHAOYING
Instructor
(Katakana)
リュウ ショウエイ
Campus Higashi-Hiroshima Semester/Term 1st-Year,  Second Semester,  3Term
Days, Periods, and Classrooms (3T) Weds1-4:Online
Lesson Style Lecture Lesson Style
(More Details)
 
The teaching slides with the recorded voice explanation will be made available online. Students can access to the teaching slides during the class time and any other time.  
Credits 2.0 Class Hours/Week   Language of Instruction E : English
Course Level 1 : Undergraduate Introductory
Course Area(Area) 25 : Science and Technology
Course Area(Discipline) 02 : Information Science
Eligible Students undergraduate students who have not learned the Python programming
Keywords Programming, Programming language, Python, Computer software 
Special Subject for Teacher Education   Special Subject  
Class Status within
Liberal Arts Education
This course is aimed at teaching the basic knowledge of programming in the Python programming language.  
Expected OutcomeStudents are expected to master the basic concepts and skills in constructing programs using Python. They are also expected to learn the tool that can facilitate the programming activities.  
Class Objectives
/Class Outline
This course is expected to teach students the basic concepts and techniques for programming in Python. After a brief history of computing is explained, the basic concepts and components of a program in Python will be introduced. These include variables, types, various kinds of command statements, such as assignment, selection, and iteration statements. On the top of these basic concepts, the high level components, such as methods and classes, will also be introduced. To help students master both the Python language and the skills used for programming in Python, many examples will be explained and opportunities for students to apply the basic concepts and skills learned to the construction of interesting programs, such as small games, will be provided. 
Class Schedule lesson1: Introduction. This part describes and explains the history of computers, the concept of programming, the programming language Python, and the benefits of learning programming.

lesson2: Introducing Google Colaboratory. This part discusses the development environment and editor for Python and explains the tool for writing Python programs called Google Colaboratory. Some basic things for using the Google Colaboratory, such as Login, Creating a notebook, and the first step to programming, will be explained.

lesson3: Variables and data types. This part explains how data are represented by typed variables in a program. It includes discussions of the variable names, the data types used to declare variables, and the rules of using variables.
lesson4: Exercise on variables and data types. This part includes several problems for students to solve by applying the knowledge of programming learned from previous lectures.
lesson5: Conditional branching. This part first explains what a conditional branching is, and then introduce the if statement and if-else statement as well as their combinations.
lesson6: Exercise on conditional branching. This part includes several problems for students to practice the use of conditional branching by using if statement and if-else statement in programming.
lesson7: Iterative process. This part explains what an iterative process is and why it is necessary through the example of processing a list. It will then introduce two iterative statements, for statement and while statement, for representing an iterative process.
lesson8: Exercise on iterative process. Several problems will be provided for students to practice the for and while statements in programming.
lesson9: Functions and scopes. This part introduces functions by describing what a function is and how a function is defined and called in a program. Recursive function for carrying out an iterative process is also discussed.
lesson10: Exercise on functions and scopes. Several problems are provided for students to practice the use of functions and scopes, including the definition of a function, call a function, and recursive functions.
lesson11: Creating a game. This part uses a "Hit and Blow" game program to explain how Python can be applied to write a relatively complex program. The steps of creating a game program are discussed.
lesson12: Exercise on creating a game program. Students will be required to make a little more complex "Hit and Blow" game program in which the game program created in the previous lecture can be used.
lesson13: Introduction to data analysis. This part introduces the basic concept of data analysis and the packages that can be used to construct programs for data analysis. Specifically, it includes the contents of modules and packages, numerical calculations with NumPy, and data analysis with Pandas.

lesson14: Exercise on data analysis. Several problems are provided for students to practice the basic techniques for writing programs for data analysis. The basic concepts and techniques discussed in the previous lecture will be used.
lesson15: Machine learning experience. This part explains what artificial intelligence (AI) is and introduces briefly how AI has been developed so far. The focus of the present AI technology, machine learning (ML), and the technique for realizing it, called neural network (NW), are discussed. A simple example will be given to show how a ML program works.

Report

Understanding the basic concepts and keeping practice are the effective way to learn programming.  
Text/Reference
Books,etc.
None 
PC or AV used in
Class,etc.
 
(More Details) The Microsoft teams, named "CS: Course on Starting Programming from Scratch",  will be used to deliver the teaching slides and the related materials. 
Learning techniques to be incorporated  
Suggestions on
Preparation and
Review
Always try to take time to review the most important content of each lesson.  
Requirements None 
Grading Method Grading and evaluation will be done based on the final test.  
Practical Experience Experienced  
Summary of Practical Experience and Class Contents based on it I have experienced teaching and research on several subjects, such as the Principle of Compiler, Programming languages Java and C++, Program Design, Formal Engineering Methods, Software Verification, and Software Engineering at 9 universities in China, UK, and Japan.  
Message Seven-hour study and one-hour physical exercise a day will be more effective than only eight-hour study without exercise.  
Other None 
Please fill in the class improvement questionnaire which is carried out on all classes.
Instructors will reflect on your feedback and utilize the information for improving their teaching. 
Back to syllabus main page