• Tidak ada hasil yang ditemukan

Guide to Teaching Computer Science

N/A
N/A
Nguyễn Gia Hào

Academic year: 2023

Membagikan "Guide to Teaching Computer Science"

Copied!
287
0
0

Teks penuh

This goal is achieved by presenting the rationale for addressing a variety of computer science education topics, as well as their detailed actual teaching process (including activities, worksheets, topics for discussion, and more). The Guide contains the authors' teaching and research experience in computer science education gained over the past three decades.

Index of Activities

Research in Computer Science Education

Problem-Solving Strategies

Learners’ Alternative Conceptions

Teaching Methods in Computer Science Education

Lab-Based Teaching

Types of Questions in Computer Science Education

Evaluation

Teaching Planning

Integrated View at the MTCS Course Organization: The Case of Recursion Section

Getting Experience in Computer Science Education

Design of a Methods of Teaching Computer Science Course Section

Introduction – What Is This Guide About?

Motivation for Writing This Guide 1

The Methods of Teaching Computer Science (MTCS) Course

The Structure of the Guide to Teaching Computer Science

1 to be used in computer science education in general and in the MTCS course in particular. This chapter focuses on computer science teaching methods that are particularly appropriate for use in a computer lab. The importance of a computer-based learning environment for computer science is explained by the fact that students who can be labeled, practice and explore problem-solving strategies, express their solutions to a given problem and receive immediate feedback from the computer, and deepen their One of the objectives of this chapter is to enable future computer science teachers to realize that learning computer science in a computer lab is not limited to programming tasks; instead, as future computer science teachers, they can use the computer lab in additional ways that further enhance students' understanding of computer science. Specifically, this chapter includes the following topics: What is a computer lab?, a lab-first approach to teaching, visualization and animation, and the use of the Internet in teaching computer science.

How to Use the Guide?

Such a table should not be full at the end of the course; however, it reflects whether all computer science topics included in the curriculum were covered in the MTCS course and whether all pedagogical ideas that the instructor intended to emphasize were indeed covered. repedagogical preferences.

Table 1.1  OrganizationofthecontentsoftheMTCScourse Computerscience
Table 1.1 OrganizationofthecontentsoftheMTCScourse Computerscience

1 References

Summary This chapter* presents an active learning based teaching model for implementation in the MTCS course, which is based on the constructivist approach. This model is used in this Guide in most of the activities offered.

Active Learning and the Active-Learning- Based Teaching Model

Active Learning

Why Active Learning Is Suitable for Implementation in the MTCS Course?

It is also important to mention that future computer science teachers will have to wear different hats in their daily work (role model, tutor, evaluator, leader, counselor, and decision maker are just a few examples) and the experience they gain in the MTCS course , can help them perform these roles. Bridging Gaps: Active learning can bridge gaps in the educational experience and computer science background that exist among the students participating in the MTCS course. Some of them may have stronger backgrounds in computer science; others may have more teaching experience. helps instructors of MTCS courses overcome these variations that exist among the students.

Fig. 2.1  Wearingfourhatsintheconstructionprocessoftheprospectivecomputerscienceteachers’
Fig. 2.1 Wearingfourhatsintheconstructionprocessoftheprospectivecomputerscienceteachers’

Active-Learning-Based Teaching Model

2 itself and the construction of the professional perception as computer science teachers, the future computer science teachers continue in parallel with their mental construction of the computer science body of knowledge. From a constructive perspective, active learning is preferable to teaching in such situations. The instructor highlights key ideas presented by the students and emphasizes principles derived from these ideas. To convey the idea that there is no unique solution for most learning situations in general, and for the specific activity presented by the trigger in particular, the instructor does not judge student views and opinions. or presented materials.

Fig. 2.2  Active-learning- Active-learning-basedteachingmodel
Fig. 2.2 Active-learning- Active-learning-basedteachingmodel

The Role of the Instructor in the Active-Learning-Based Teaching Model

Overview of the Discipline

What Is Computer Science?

This activity is based on five phases in which students explore the nature of the field of computer science. The above-mentioned characteristics of the field of computer science present special challenges for computer science teachers.

The History of Computer Science 4

Prospective computer science teachers give their 10-minute presentation on the history of computer science to the class. The lesson ends with a discussion of whether the history of computing is really that short.

Computer Scientists

Focus on a problem the scientist worked on and explain its impact on computer science.

Social Issues of Computer Science 7

Some communities of practice have a well-defined code of ethics (eg, Code of Medical Ethics). Clearly, it is not our intention in this MTCS course lesson to formulate a code of ethics for the computer science teaching community.

Programming Paradigms 10

First, it enables the instructor of the MTCS course to discuss with the students the meaning of the levels of abstraction (a central computer science concept) within a relatively familiar context, that is, the relationship between programming paradigms and programming languages. As mentioned, this activity allows the instructor of the MTCS course to identify the students' current knowledge regarding the concept of programming paradigms.

Computer Science Soft Ideas

It is appropriate to dedicate a lesson to teaching computer science soft ideas towards the end of the first semester of the MTCS course (when the course lasts one or two semesters). Have they improved their understanding of computer science soft ideas in general and of a specific computer science soft idea in particular?

Research in Computer Science Education 4

Second, we present several activities facilitated in the MTCS course that introduce prospective computer science teachers to the research in computer science education and its relevance to computer science education. 6, we further expand the discussion on one central research topic in computer science education, namely student perceptions of computer science concepts, which deserves special attention because of its importance to computer science education and learning in general and in higher education. schools in particular.

Research in Computer Science Education: What Is It and Why and How Is It Useful?

51 4.2 Research in computer science education: What is it and why and how is it useful. Teachers' exposure to research in computer science programs expands their knowledge of various research tools.

MTCS Course Activities

  • are-equals (A, N)
  • are-equals (A, N)
  • are-equals (A, N)
  • are-equals (A, N)

The purpose of the activity is to practice reading research papers in computer science education with the prospective computer science teachers. It is suggested that the work on this paper can develop the professional identity of the prospective computer science teachers.

It presents various problem-solving strategies that may be covered in the MTCS course, along with appropriate activities to mediate them to future computer science teachers. It is particularly important that computer science teachers be aware of problem-solving strategies and acquire pedagogical resources to help their students acquire these types of skills.

Problem-Solving Processes

The discussion facilitated in the MTCS course based on this activity can relate to the suitability of various problem solving techniques for the discipline of computer science. It is also worth discussing connections between different problem-solving techniques in computer science, e.g. connections between incremental refinement (Sect.

Problem Understanding

Solution Design

The concept of roles of variables is concerned with the deep structure of the program. Then pattern(s) must be adapted to the solution of the current problem and integrated into the complete solution.

Solution Examination

Reflection

The classroom teacher in question decided to use a reflective process to scaffold the students' learning processes to improve their understanding of the computer in question. Phase D: Analysis of the entire reflective activity designed by the teacher after failing the test.

Learners’ Alternative Conceptions

These difficulties can be explained by Fuller's model (1973), which distinguishes between three stages of development, each experienced: the self stage, the task stage and the affect stage. think well, feel, and understand, beginning teachers are mostly in the first stage (themselves), dealing mainly with survival issues, such as, how to keep their classroom quiet, how to complete the lesson in the curriculum time and how to ensure that they will be able to correct. It was fully revealed that the transition from staff-centered to student-centered is a function of experience; more experience the teacher has, there is a better opportunity to free himself from survival issues and focus on thinking and behaving like his students (transmit1 and behavior 90). replacing the attention given to the teacher - teacher-centered issues, student-centered issues.

Pedagogical Tools for Dealing with Alternative Conceptions

Activities to Be Facilitated in the MTCS Course

6 and in the MTCS course. This can be done by showing learners' common mistakes and discussing them, talking about terror that learners have shown in written tests, and most importantly, encouraging learners to make mistakes, as inevitable positive phenomena that a involves opportunity to learn in current cases. error (known from the computer science education research literature), even if none of the learners in the particular class suggested it, and to discuss with the learners. The students in the MTCS course are given a transcript of a conversation between a seeker and trainee, David. At various points they are asked to stop reading and answer various questions. The activity is presented in Table 6.3.

Teaching Methods in Computer Science

Next, we introduce the active learning-based activities that will be facilitated in the MTCS course. The actual facilitation of these activities in the MTCS course is important as students need to understand how their future high school students will feel when they, as computer science teachers, use these teaching methods in their classrooms. of high school.

Pedagogical Tools

It is important to note that rich tasks can focus on any computer science topic. To this end, the students are asked to work in groups and construct a concept map for a particular computer science topic.

Table 7.1 Advantages and disadvantages of games from pedagogical, social, and emotional perspectives
Table 7.1 Advantages and disadvantages of games from pedagogical, social, and emotional perspectives

Different Forms of Class Organization

Working in groups: Another form of class organization is working in groups with more than two members. Jigsaw is a technique for class organization into groups, which according to the Jigsaw Classroom6 website is performed as follows.

Mentoring Software Project Development 7

Or alternatively, the computer science teacher must integrate the project development process with the actual teaching of the computer science material. The following paper presents a mentoring method for high school students developing a software project.

Abstract This chapter focuses on computer science teaching methods that are particularly suited for use in the computer laboratory. 8 One of the main goals of this chapter is to let students understand that learning computer science in the computer lab is not limited to programming tasks.

What Is a Computer Lab?

In the context of computer science education, the concept of the laboratory is captured similarly, but with some minor differences. As illustrated in this chapter, this change, however, should not change the value of laboratory-based learning in the context of computer science education.

Table 8.1   “Dry” lab worksheet Worksheet: The DL language
Table 8.1   “Dry” lab worksheet Worksheet: The DL language

Lab-First Approach

The topic that the lab-first activity focuses on has not yet been taught in the classroom. When the lab-first teaching approach is first adopted, it is new and unfamiliar.

Table 8.2   (continued) Task2,PartA
Table 8.2   (continued) Task2,PartA

Visualization and Animation

Students are asked to choose a computer science topic and to develop a worksheet that teaches the chosen topic in the lab-first teaching approach. Students are asked to explore these environments with one of the tutorials available online.

Using the Internet in the Teaching of Computer Science

Students are asked to explore various web applications from a computer science perspective. The instructor of the MTCS course chooses an online lesson on a computer science topic with which the students are likely to be unfamiliar.

Types of Questions in Computer Science

However, it is important for computer science teachers to be aware that there are additional types of questions. Research papers in computer science education address various types of issues from a cognitive perspective.

Types of Questions

Description: A given code is presented and students are asked to analyze specific aspects of the code's implementation. Variations: The "Completing the given solution" question can be modified by changing the number of missing instructions.

Kinds of Questions

Most of the examples in the list of question types (Section 9.2) are pure algorithmic tasks where the problem objective is presented explicitly. Write a method that takes as input a list of integers and returns the maximum value in the list.

Table 9.2 presents three story tasks in two ways: as pure-algorithmic tasks and as nar- nar-rative-algorithmic tasks.
Table 9.2 presents three story tasks in two ways: as pure-algorithmic tasks and as nar- nar-rative-algorithmic tasks.

Assimilation of the Types of Questions to Different Computer Science Contents

Question Preparation

This activity can be facilitated in the context of any topic covered in the course. We conclude this chapter by evaluating students enrolled in the MTCS course.

Tests

Second, students are required to develop test questions according to the test structure they have decided on. It is recommended that students choose the test they will work on.

Project Evaluation

We evaluate two types of projects: software projects developed by individuals and software projects developed by teams. According to Hazzan (2003), evaluating software projects developed by teams is similar to awarding software teams in industry.

Table 10.1 A  grading  policy  for  software  projects  developed  by  teams  (Dubinsky  and  Hazzan  2005)
Table 10.1 A grading policy for software projects developed by teams (Dubinsky and Hazzan 2005)

Gambar

Table 1.1  OrganizationofthecontentsoftheMTCScourse Computerscience
Fig. 2.1  Wearingfourhatsintheconstructionprocessoftheprospectivecomputerscienceteachers’
Fig. 2.2  Active-learning- Active-learning-basedteachingmodel
Table 3.1 is presented (empty) to the students and they are asked to suggest factors that  encourage each gender (or both genders) to study computer science or discourage each  gender (or both) from studying computer science.
+7

Referensi

Dokumen terkait

Kubryakova (2000) introduces the following classification of approaches to the definition of the concept "discourse"; (1) Structural-syntactic approach: in