평가 및 설명
교사 도구 상자
- 코드 효율성
소개
이제 학생들이 특정 작업을 수행하기 위해 코드 시퀀스를 작성하는 연습을 했으므로, 이러한 기술을 코드 시퀀스를 읽고 평가하는 데 적용하도록 요청받을 것입니다. 이 활동에서 학생들은 놀이 섹션의 지도와 유사한 지도를 받게 되며, 3개의 코드 시퀀스를 보고 선호하는 솔루션을 선택하도록 요청받습니다. 각 순서에 대해 학생들은 세 가지 질문에 답할 것입니다.
-
이 코드가 작업을 수행합니까?
-
작동한다면 다른 코드보다 이 코드의 장점은 무엇입니까?
-
다른 코드에 비해 이 코드의 단점은 무엇입니까?
그런 다음 모든 시퀀스를 살펴보고 학생들에게 코드 효율성에 대한 아이디어를 소개하고 효율성과 자신의 선호도에 따라 선호하는 솔루션이 무엇인지 질문하고 그 이유를 설명합니다. 이는 코딩의 효율성과 정확성에 대한 전체 수업 토론의 발판이 될 수 있습니다.
선호하는 솔루션을 선택하기 위한 코드 시퀀스 읽기
수업이 Play 섹션에서 진행됨에 따라, 동일한 문제에 대해 여러 가지 다른 해결책이 제시되었음을 알게 되었을 것입니다. 그것은 프로그래밍의 세계에서 종종 일어나는 일입니다. 어떤 일을 하는 방법에는 여러 가지가 있을 수 있지만, 모든 사람이 선호하는 방법이나 해결책이 있으며, 이는 여러 요인에 근거할 수 있습니다. 이 활동에서 그룹은 문제에 대한 가능한 코드 블록 솔루션 3가지를 살펴보고, 해당 솔루션이 의도한 방식으로 작동하는지 파악한 다음, 그룹에서 선호하는 솔루션을 선택하고 선택한 이유를
설명합니다. 문제: 로봇이 시작될 때 세 개의 교실 (순서에 관계없이) 을 오가며 종료 지점으로 돌아가는 순서를 만듭니다. 로봇은 계단을 돌아야 하며, 지도 이미지의 작은 직사각형으로 표시된 출입구를 통과할 수 있습니다.

- 아래 각 솔루션에 대해 엔지니어링 노트에 다음 세 가지 질문에 답하십시오.
- 이 코드가 작업을 수행합니까? 그 이유는 무엇인가요?
- 이 코드가 효과가 있다면, 다른 코드보다 이 코드의 장점은 무엇입니까?
- 다른 코드에 비해 이 코드의 단점은 무엇입니까?
- 대부분의 경우 프로그래밍은 효율성을 기준으로 평가되며, 가장 바람직한 해결책은 가능한 한 가장 효율적인 방법으로 목표를 달성하는 것입니다.
더 큰 이미지를 보려면 아래 솔루션을 클릭하십시오.
코드 효율성이란 무엇인가요?
주방에서 3가지를 가져와야 한다면, 3번의 개별 여행을 하는 대신 한 번의 여행으로 3가지를 모두 가져갈 수 있습니다. 그 이유는 무엇인가요? 더 효율적일 것이기 때문이다. 효율적이라는 것은 "최소한의 노력이나 비용으로 최대의 생산성을 달성하는 것" 을 의미합니다. 그렇다면 이것이 프로그래밍과 어떻게 연결될까요?
코드 효율성은 프로그램이 작업을 수행하는 동안 최소한의 작업이나 단계를 적절하게 사용하여 잘 작동하고 신속하게 작성된다는 것을 의미합니다. 프로그램이 잘 작동하지 않을 위험을 줄이고 결과적으로 실행 중인 프로그램의 다른 부분에 문제를 일으키기 때문에 중요합니다. 코드의 효율성은 품질의 척도가 될 수 있으며, VEXcode IQ 블록으로 프로젝트를 작성할 때 종종 가장 "효율적인" 프로젝트를 선호하는 솔루션으로 찾고 있습니다.
기본적으로 코드 효율성은 가능한 가장 적은 명령 또는 블록을 사용하여 목표를 달성하는 코드를 작성하려는 원리입니다.
엔지니어링 노트에서 다음 질문에 답하십시오.
- 코드 효율성을 염두에 두고 선호하는 솔루션은 무엇이며 그 이유는 무엇입니까?
- 그것이 최선의 해결책이라고 생각하십니까, 왜 또는 왜 그렇지 않습니까?
교사 도구 상자
-
답변
세 개의 방을 돌아다니는 순서를 만들기 위해 위에 특정 치수가 주어지지 않았기 때문에 답변은 다를 수 있습니다. 가능한 예제 솔루션을
보려면 여기를 클릭하십시오.
토론 동기 부여
효율성은 유용하지만, 특정 방식으로 업무를 수행하는 방법이나 이유에 대해 다른 고려 사항이 있는 경우가 많습니다. 학생들에게 엔지니어링 공책에서 답변을 공유하거나 이 질문을 사용하여 효율성과 행동의 균형에 대한 토론을 구성하게 한다.
Q: 프로그래밍에서 효율성은 일반적으로 선호되는 방법론입니다. 왜 그런지 생각해 보시겠습니까?
답변: 답변은 다양하지만, 다음과 같은 답변도 있습니다.
-
더 효율적으로 프로젝트를 편집하는 것은 동일한 프로젝트로 작업할 수 있는 미래의 사람들에게 도움이 됩니다. 예를 들어, 프로젝트를 수행한 후 며칠 후에 친구에게 프로젝트를 업데이트하고 몇 가지 항목을 추가하여 기능을 늘리면 프로젝트가 효율적으로 작성된 경우 친구가 더 쉽게 읽고 작업할 수 있습니다.
-
프로젝트는 항상 오류에 취약합니다. 프로젝트가 더 효율적으로 작성될수록 오류가 발생할 가능성이 줄어듭니다.
-
산업용 로봇을 조작하기 위해 프로그래밍을 사용하는 개인은 회사의 시간, 에너지 및 자원을 절약하기 위해 효율적인 프로젝트에 의존합니다.