FINAL CSE 3901 UPDATED QUESTIONS AND CORRECT
ANSWERS
Question:
1. Advantages Thin Clients have over Thick Clients
Answer:
performance, flexibility, robustness, security
Question:
2. Unit Testing
Answer:
Individual components are tested in isolation un-der unit test (UUT). Black box is testing only to
specifications, White box is testing based on code structure
Question:
3. Integration Testing
Answer:
Modules are tested in combination to check inter-faces. Best done incrementally. Bottom Up: start
with most basic, easy to exercise all features, can write a driver for higher levels Top down: Start at
top (main) test interfaces early
Question:
4. System Testing
Answer:
Verify that systems as a whole meet the require-ments and specifications. alpha: tested by developers
before release beta: by "friendly customers" before general re-lease acceptance: by end customer,
they better be hap-py!
Question:
5. TDD
Answer:
Test Driven Development
Question:
6. Repository = ?
Answer:
working tree + store
Question:
7. working tree
Answer:
the project itself, an ordinary directory includ-ing files and sub directories. developers retrieve copies
to work on
Question:
8. store
,Answer:
hidden directory (.git) in root directory of working tree. Brings in a time component. You should
never access .git directly
Question:
9. Commit
Answer:
creates a snapshot, each is identified by a hash and is almost guaranteed to be unique.
Question:
10. Index
Answer:
virtual snapshot stored at .git/index. this is a gate-way for moving changes made in the working tree
to the store
Question:
11. Snapshot
Answer:
apply your modifications in the working copy to the repository. changes the repository, "commits"
changes
Question:
12. History
Answer:
Directed Acyclic Graph of snapshots. Stacking a snapshot and its predecessors gives a snapshot of the
project (aka a revision or a version)
Question:
13. Branch
Answer:
pointer to a commit
Question:
14. Head
Answer:
a special reference, usually pointing to a branch. think that this is "attached" to a branch
Question:
15. git status
Answer:
displays differences between head and index
Question:
16. git add
Answer:
updates index based on files in working tree
,Question:
17. git commit
Answer:
stores current content of index along with a log message (makes wt == index)
Question:
18. git branch
Answer:
creates a new branch pointing to where the head is
Question:
19. git checkout xxx
Answer:
updates index and working tree, points head to whatever the argument is. only do this if the work-ing
tree is clean
Question:
20. git log
Answer:
display snapshots in a store, DAG
Question:
21. merge
Answer:
bring history together, bring work from another branch into the current branch
Question:
22. DVC
Answer:
Distributed Version Control, multiple people dis-tributed across a network contributing to a central
repository
Question:
23. Dynamically Typed Programming Language
Answer:
variables do not have to have types, objects (which variables point to) do
Question:
24. primitive types in ruby
Answer:
numbers, strings, ranges, regular expressions
Question:
25. numbers
Answer:
integers (Fixnum, Bignum) float: double precision!
, Question:
26. strings
Answer:
over 75 built in methods
Question:
27. split
Answer:
splits a string into an array of strings based on a separator
Question:
28. chomp
Answer:
returns a string with the separator string removed. if nothing, good for removing whitespace &
new-lines
Question:
29. ranges
Answer:
1..10 is represented as two values of type fixnum 0..4 includes start and end value 0...4 does not
Question:
30. Local (ruby)
Answer:
starts with a lowercase letter or _
Question:
31. global (ruby)
Answer:
starts with $
Question:
32. instance (ruby)
Answer:
starts with @
Question:
33. class (ruby)
Answer:
starts with @@
Question:
34. mutability
Answer:
Constants start with Uppercase, IDIOM is all UP-CASE
ANSWERS
Question:
1. Advantages Thin Clients have over Thick Clients
Answer:
performance, flexibility, robustness, security
Question:
2. Unit Testing
Answer:
Individual components are tested in isolation un-der unit test (UUT). Black box is testing only to
specifications, White box is testing based on code structure
Question:
3. Integration Testing
Answer:
Modules are tested in combination to check inter-faces. Best done incrementally. Bottom Up: start
with most basic, easy to exercise all features, can write a driver for higher levels Top down: Start at
top (main) test interfaces early
Question:
4. System Testing
Answer:
Verify that systems as a whole meet the require-ments and specifications. alpha: tested by developers
before release beta: by "friendly customers" before general re-lease acceptance: by end customer,
they better be hap-py!
Question:
5. TDD
Answer:
Test Driven Development
Question:
6. Repository = ?
Answer:
working tree + store
Question:
7. working tree
Answer:
the project itself, an ordinary directory includ-ing files and sub directories. developers retrieve copies
to work on
Question:
8. store
,Answer:
hidden directory (.git) in root directory of working tree. Brings in a time component. You should
never access .git directly
Question:
9. Commit
Answer:
creates a snapshot, each is identified by a hash and is almost guaranteed to be unique.
Question:
10. Index
Answer:
virtual snapshot stored at .git/index. this is a gate-way for moving changes made in the working tree
to the store
Question:
11. Snapshot
Answer:
apply your modifications in the working copy to the repository. changes the repository, "commits"
changes
Question:
12. History
Answer:
Directed Acyclic Graph of snapshots. Stacking a snapshot and its predecessors gives a snapshot of the
project (aka a revision or a version)
Question:
13. Branch
Answer:
pointer to a commit
Question:
14. Head
Answer:
a special reference, usually pointing to a branch. think that this is "attached" to a branch
Question:
15. git status
Answer:
displays differences between head and index
Question:
16. git add
Answer:
updates index based on files in working tree
,Question:
17. git commit
Answer:
stores current content of index along with a log message (makes wt == index)
Question:
18. git branch
Answer:
creates a new branch pointing to where the head is
Question:
19. git checkout xxx
Answer:
updates index and working tree, points head to whatever the argument is. only do this if the work-ing
tree is clean
Question:
20. git log
Answer:
display snapshots in a store, DAG
Question:
21. merge
Answer:
bring history together, bring work from another branch into the current branch
Question:
22. DVC
Answer:
Distributed Version Control, multiple people dis-tributed across a network contributing to a central
repository
Question:
23. Dynamically Typed Programming Language
Answer:
variables do not have to have types, objects (which variables point to) do
Question:
24. primitive types in ruby
Answer:
numbers, strings, ranges, regular expressions
Question:
25. numbers
Answer:
integers (Fixnum, Bignum) float: double precision!
, Question:
26. strings
Answer:
over 75 built in methods
Question:
27. split
Answer:
splits a string into an array of strings based on a separator
Question:
28. chomp
Answer:
returns a string with the separator string removed. if nothing, good for removing whitespace &
new-lines
Question:
29. ranges
Answer:
1..10 is represented as two values of type fixnum 0..4 includes start and end value 0...4 does not
Question:
30. Local (ruby)
Answer:
starts with a lowercase letter or _
Question:
31. global (ruby)
Answer:
starts with $
Question:
32. instance (ruby)
Answer:
starts with @
Question:
33. class (ruby)
Answer:
starts with @@
Question:
34. mutability
Answer:
Constants start with Uppercase, IDIOM is all UP-CASE