Research on the Teaching Mode of Program Design Courses Combining Flipped Classroom and Elements of Ideology and Politics

: In the traditional teaching process of program design courses, teaching is teacher-centered, students passively accept knowledge and haven’t the ability of active learning and inquiry, students' knowledge internalization is also difficult; In addition, students have the mentality of valuing skills and neglecting values, and have no initiative in learning. In order to solve the above two problems, combined with new technology and teaching practice, the course adopts the teaching mode of students watching knowledge point videos with elements of ideology and politics before class, discussing with problems in class, consolidating after class. Students complete the mastery of knowledge points outside the class, learn actively in class, explore and cooperate to complete the internalization of knowledge. This teaching mode, which combines flipped classroom and elements of ideology and politics, improves students' initiative and interest in learning, students can flexibly use the knowledge they have learned, thus improving the teaching quality of the course.


Introduction
In the new era, the continuous development of computer technology, multimedia technology and network technology has promoted the development of flipped classroom.Thurgo School is an example of flipping learning.Thurgo students will take the initiative to learn and work hard.80% of thurgo students graduated from university [1].In 2000, Lage and Platt put forward the concept of flipped classroom for the first time.By 2007, Johann Bergmann and Aaron Sams put forward the flipped classroom teaching method, and began to use the screen recording software to record the courseware during the lecture and upload it to the network.By 2016, Song Lingyi applied micro-class to C language teaching [2], and flipped classroom is under exploration [3][4][5][6][7].
In May 2020, the Ministry of Education issued the Guiding Outline of Ideological and Political Construction of Higher Education Courses, which proposed to improve students' ability to correctly understand, analyze and solve problems.In the process of imparting knowledge, teachers should properly add elements of ideology and politics, which will help to cultivate talents with positive outlook, solid foundation and innovative ability.The integration about elements of ideology and politics in the curriculum is under constant exploration [8][9].
The program design course in the basic computer teaching is a compulsory course for science and engineering students.The high-level language is mainly C language, and the lowlevel language is mainly assembly language.The teaching goal of C language is to cultivate students' thinking habits and ability to solve problems with programming methods, so that students can truly master the general method of using computers to solve professional problems.Assembly language is a low-level language that students must learn after C language.The teaching goal is to let students understand CPU and memory, so as to learn the working principle of computer system.However, there are certain problems in the process of students' learning and teachers' teaching the above two languages.Using the concept of flipped learning for reference, carry out the practice of flipped classroom teaching mode, divide the three links of pre-class video, in-class discussion, post-class consolidation, and integrate elements of ideology and politics in the three links, which can effectively ensure the teaching effect.

Analysis of Problems in Traditional Teaching
First of all, students have the following three problems in the learning process: 1. non-computer major students may not study other computer courses after learning this course.How to stimulate students' interest in program design as much as possible through their course, let students learn another computer knowledge by themselves to serve their major.2. As a beginner, students tend to focus on language details, only recite some common algorithms, and barely pass the exam, resulting in being unable to learn flexibly and solve practical problems.3. Programming needs to cross the gap from natural language to computer language, which requires students to practice programming more after class.For students with poor self-learning ability and poor control ability, difficulties cannot be solved, and students gradually lose confidence.With the deepening of the course, grammatical errors and logical errors are intertwined, and errors in the program are more and more difficult to find.Students often find the course boring, lose interest in learning, can't keep up with the course progress and finally give up learning.
Secondly, teachers also have the following two problems in teaching courses: 1. the class hours and teaching progress are fixed.Teachers arrange the teaching content according to the standard schedule without considering the differences of students.The actual situation is that 1/3 of students think the course progress is fast, 1/3 of students think the course progress is slow, and 1/3 of students think the progress is appropriate.2. The teaching mode adopted by teachers is classroom teaching, computer use after class and summary.In this mode, classroom teaching is teacher-centered, teachers spend a lot of time explaining grammar and algorithms, and students are in a passive learning state; The process of using computer after class is the process of internalizing knowledge by students themselves, which is difficult for some students; The after-class summary is also an exercise given by the teacher.For students who fail to keep up with the progress of the course, it is like listening to the celestial script.
The problem with the above students' learning process and the teacher's teaching course is that the teacher cannot have more time and energy to discuss with the students.There is no discussion, design and cooperation in the process of students' internalization of knowledge, and students have no initiative in learning.Flipped class room can effectively solve the above problems.By flipping classroom, teachers use the teaching video to put the process of imparting knowledge outside the classroom, give students more freedom, allow students to choose the most suitable way of learning to accept new knowledge, and complete online tests independently according to the video.Students can have in-depth learning before class, and then complete knowledge internalization in face-to-face classroom with questions, so as to promote more exchanges and communication between teachers and students, different students can have more exchanges and communication, too.In class, it really causes the collision of ideas, thus improving students' learning initiative and interest, and improving students' ability to analyze and solve problems, which is in line with the goal of ideological and political construction of the curriculum.

Design of Teaching Mode
Combining Flipped Classroom and Elements of Ideologic and Politics

Video before Class
(1) Camtasia software can be used by teachers to produce videos.This software can freely edit videos and easily generate mp4 format videos.In terms of production methods, teachers should not show up to avoid students' distraction; The intonation of the teacher should be cadenced, and the time is controlled at a knowledge point for 15-20 minutes; There will be 1-2 questions in the middle of each video.You can continue to watch after you answer correctly.Video content selection: the purpose of C language and how to learn C language; Data type, operator and expression; Three basic structures; Array; Function; Pointer; The method of debugging the program.Similarly, assembly language video content selection: hardware composition, program format; Constant and variable; Data addressing; Three basic structures; Subroutine.Some contents of C language and assembly language are interlinked and can be used for reference when integrating elements of ideology and politics.
(2) The elements of ideology and politics integrated into the knowledge point video are as follows: when introducing language grammar, it is emphasized to cultivate students' rigorous and serious attitude and develop good programming habits; The introduction of data types is to illustrate the importance of classification and collation for human beings.There are two points: one is to save brain power, the other is to facilitate management; When introducing C language operators and expressions, logical operations are the most complex, characterized by self-discipline (the result is 0 or 1) and leniency (connecting any data type); Introduce branch sentences, introduce two cases of passing and failing grades, and subdivide them into four cases of excellent, good, passing and poor, so that students can understand the choices of life; Introduce cycle summation to make students understand quantitative change (accumulation process) and qualitative change (cycle conditions); When introducing arrays, integrate collective consciousness; When introducing functions and subroutines, introduce division of labor and overall situation awareness.
(3) After recording each part of the knowledge points, put it into the "Classroom Dispatch" data area, and students can download and watch it at any time.After watching the video, students can make corresponding test questions.The questions are on the test platform.The questions should be easy and moderate.Students can submit the source program to the test platform and see the evaluation results in real time.Students can submit the source program multiple times at any time.

In-class Discussion
The discussion here is not limited to the 2 class hours in the classroom.There are QQ groups between teachers and students and students can communicate at any time; The discussion can be in the computer room, and students can verify the program at any time; In class, students' mobile phones are also equipped with C++compilers, and assembly language is DosBox, which can verify programs at any time.The teacher will make statistics according to the students' watching video, and will also ask questions based on the video content as an assessment of video watching.The teacher will dynamically adjust the teaching plan.The author uses the following four forms of teaching plan.
(1) Let students form groups freely, and each group completes a challenging procedure, such as dividing an integer into the sum of consecutive integers, and dividing an integer into the product of several prime numbers to the power of n.You can assign such a slightly complicated program to different groups, let the group members completely different tasks, and finally design a complete program.The group members report their own ideas, which helps improve the group members' learning initiative.As long as the group members can speak out, they will really learn.
(2) Let students correct the program errors.The author found that the errors that students often make are also regular, including the errors encountered in the transition from natural language to C language or assembly language.For example, when the month m is 1,3,5,7,8,10,12, the output is the average year, and the students write m==1 || 3 || 5 || 7 || 8 ||10 || 12. Students' mistakes also include mistakes in thinking, such as finding the position of the largest element in the array, if the name of this position is w, w is not assigned an initial value of 0, etc.These wrong procedures can be taken out for students to correct; Or if a student makes a mistake somewhere, after the teacher corrects it, ask the student to tell the next student who made the mistake.The student is impressed and avoids repeated mistakes.
(3) The communication in class cannot be completely handed over to the students.The teacher should properly tell some content.The case teaching method is used when telling.For example, the content of function call array and array name as parameter is more abstract, which is difficult for students.It can be introduced by practical questions.If you want to sort the scores of 30 students, how can the function parameters transfer 30 scores?At this point, the array name can be used as a parameter, that is, f (a), and a is the array name.Further, there are three classes whose grades need to be sorted.Use f (a), f (b), and f (c), a, b, and c are array names, and the length is 30.Further, there are 28, 29 and 30 students in the three classes respectively?Students will think of introducing another parameter.The first part of the function is f (int a [], int n), where a is the array name and n is the array dimension.Finally, the student's score should be multiplied by 0.95 and then added 5 points.How to design another function g.Step by step, let students take the initiative to think about and solve problems, and let students understand the principle of "Constant dripping wears away stone".
(4) There is no standard answer to the procedure, and the students' ideas are also "blooming".The teacher should stand in a higher position.The method adopted by the author is to ask the students' ideas first, and let the students speak by themselves.Sometimes the students can find problems by themselves.The students' ability to solve problems is improved, and the internalization of knowledge is also completed.

Consolidation after Class
This link is the process of students' knowledge internalization, and the process of teachers helping students summarize and improve.Teachers can assign some difficult after-class reinforcement assignments to help students consolidate the course content.At the same time, teachers can use online data to grasp students' learning trends and learning results at any time.The online teacher-student interaction can also guide students to summarize and consolidate classroom knowledge, form a complete knowledge system, enable students to flexibly grasp the knowledge they have learned, make flexible use of it, and lay a foundation for solving practical problems.Through this link, students' self-learning ability has been improved, the educational role of the curriculum has been played, and the quality of talent training in the school has been improved.

The Practical Effect of Flipped Classroom Combined with Elements of Ideology and Politics
Taking C language as an example, the final score of the final evaluation is based on watching video at ordinary times (10%), testing platform operation (10%), answering questions at ordinary times (10%), final examination (70%).The final exam is a computer-based exam on the test platform, with a variety of questions and a wide range of coverage in the question bank.It objectively and impartially assesses students' programming ability.The examination adopts automatic grading by machine.The platform can carry out statistical analysis on the students' answers, and teachers can refine and refine excellent teaching method according to students' weak links.The general evaluation results reflect the students' mastery of C language knowledge.The author has made a statistical analysis of the distribution of the results of the flipped class and the traditional teaching class, as shown in Table 1.
As can be seen from Table 1, under the flipped classroom mode, the average score of students has increased by nearly 18, the proportion of students below 60 scores is significantly lower than that of traditional classroom, and the proportion of students in the 80-89 and 90-100 scores is significantly higher than that of traditional classroom.The passing rate of students has increased, and the excellent rate and good rate have increased.For students with poor performance in flipped classroom mode, teachers should fully understand students' interest in flipped classroom, understand students' acceptance ability, and improve their learning performance through group help and teacher guidance.The ultimate goal of teachers is to make every student achieve excellent results, which requires teachers to communicate with students more, adopt a variety of teaching methods, and students should also make efforts.

Conclusion
In the new era, various resources are provided on the network, such as Netease Open Class, Mooc, etc., providing a resource base for flipped classroom teaching; Teachers can talk about grammar, algorithm and other contents without repetition, thus having more time and energy to discuss and communicate with students; At the same time, the new era has put forward higher requirements for college teachers to be proficient in video recording and editing, to be familiar with the use of various learning platforms, and to understand students; Teachers should moderately adhere to the teaching concept of combining moral education, education and talent cultivation, and increase the knowledge and humanity of the curriculum from the perspective of specialty, industry, country, international, culture, history, etc.The author has adopted the partial flipped classroom model.In order to achieve effective flipping, it is necessary to carry out sufficient flipping strategies such as role flipping and teaching evaluation flipping [10], which is the direction of joint efforts of teachers and students in the future.

Table 1 .
Distribution of students' final grades under two teaching modes