![]() Those who can use meaningful names for their variables, function calls get extra.Simply getting the output gets them the bare passing grade.This is what I have done to at least handle the issue.īefore assessments, I break down the evaluation to include the following. It's funny how that happens so many times. I have seen my share of this 'program gets output' but the programmer has no clue how she/he got there. It prepares students for the world of coding outside of a class environment, where the majority of time spent is not on isolated exercises, but extending an existing code base.ĭisclaimer: I work in industry and have no research to support this.It rewards production of readable, maintainable code.It maintains the objectivity and automation friendliness of grading on program behavior.It solves your original problem of testing whether students understand the code they have written.Tune the original homework size and the exam requirements changes so that a student who understands the code and has well-written code can complete the exam exercise quickly, but one that started from scratch would not likely be able to complete the work. Then give each student access to the code (s)he submitted for the homework as a starting point for completing the exam exercises. ![]() What I would do instead is construct exam exercises that are relatively small requirements changes to homework assignments that students have completed earlier, ideally at least 2 weeks earlier. So how could you keep these qualities while testing for actual understanding? While I agree that good code structure, variable naming, and possibly comments can offer proof of understanding, they are all highly subjective. Using program correctness for grading has the desirable qualities of being objective and automation friendly. I assume that they do this by some combination of brute force trying things and SO search. I know I can use turnTowards() however I don't know how to determine the closest enemy and how to get their location (getX and getY aren't static so that doesn’t work)Ĭan anybody explain to me how I can do what I want to do here? Also please explain it so I can understand it better and implement it better, since I don’t want to just copy some code from the internet but rather get an example and transfer it into my own code.If I understand your problem correctly, it's that students can create programs that behave correctly without understanding why they behave correctly. My problem here is that I don't know how to make the homing bullets turn towards the enemy that is the closest to the player. The enemies will be constantly moving so the homing bullet would need to change its rotation accordingly while moving towards it and dealing damage to it on contact. It should decide which enemy to turn towards by how close the enemies are to the player and then pick the enemy closest to the player. The homing bullets should be spawned by the player and then turn towards an enemy of any type. ![]() To better explain my problem, I will give the object that should rotate the name: “homing bullet”, the class that the other class should be closest to: “player”, and the classes it should turn towards: “enemy type 1”, “enemy type 2”, etc. Right now, we have the task to make our own game and I am struggling with something. So, I am currently learning Java with Greenfoot in school (11th grade), and we are pretty basic right now (we only know if and while statements, variables, how to write methods and what an actor and attributes are).
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |