Implementation Flashcards

(18 cards)

1
Q

What does “well implemented” code mean?

A

Code that is easy to maintain, follows standards, and uses collaborative strategies.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Why are coding conventions aims and methods?

A

Aims - making code easier to understand, producing software built by one team not 20 individuals, setting quality standards
Methods - name variables like this, write comments like this, organise class contents like this, name files like this.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are examples of Java coding conventions?

A

Variable naming, consistent commenting, structured class contents, and using tools like linters and formatters.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Name three team scenario people you could be in software engineering.

A

1) The Developer, 2) The Dev Manager, 3) The Integration Team.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are some key strategies for writing good code in a team?

A

Test-Driven Development (TDD), Comment-Driven Development, Paired Programming.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is Test-Driven Development (TDD)?

A

Writing tests before the code, then coding to pass the tests—improves accountability and clarity.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is Comment-Driven Development?

A

Writing comments first to plan and explain logic, then coding to fulfill them—facilitates design and communication.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are 3 common debugging strategies?

A

1) Breakpoints & stepping through code, 2) Print statement tracing, 3) Binary search for error localization.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is Rubber Duck Debugging?

A

Explaining your code line-by-line to a rubber duck to identify logic flaws through verbal explanation.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is a “linting test”?

A

A tool that checks code against style and quality rules, often used before human review.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is the purpose of bug tracking systems like Bugzilla?

A

To log, trace, and manage bugs, supporting collaborative debugging and code improvement.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What’s the key difference between testing and debugging?

A

Testing finds bugs; debugging locates and fixes them.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is “paired coding”?

A

Two people code together—one writes code, the other reviews or plans—promotes quality and shared knowledge.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Bug reporting in a team

A

Someone calls up a bug in your code.
You need to try and reproduce it
What were they doing when it happened, what was th immediate action before the bug was found, what was the ‘wrong outcome’

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Debugging using IDE features

A

Use breakpoints to check values one step at a time
Variable inspection
Trace tables
Exception-based breakpoints

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Debugging using print statements

A

Add lines of code that print the status of your variable
Useful for logic errors

17
Q

Debugging - mistakes

A

Always fix the bug not the symptom

18
Q

Fagan inspections

A

Print out code and do a group inspection
Step away from the computer and explain it to each other