Study Flashcards

?
  • Created by: wreje035
  • Created on: 11-10-18 22:31
Polymorphism
Same method can have different behaviour in different classes
1 of 20
Interfaces
Enable different classes to share common behaviour. Contain only constants and abstract methods. Classes must IMPLEMENT interfaces - classes that do this must provide code for ALL the interfaces methods
2 of 20
Programming to an interface?
private collection<product> = new TreeSet<> - the private implementation uses a specific type (treeset).public collection getAllProducts() - the public interface uses a more general type (programming to the Collections interface) - exactly one line t
3 of 20
3 Tier shopping system
Presentation (GUI - swing frames and dialogs) and Web (web application). Business (DAO classes & Domain) Persistence - Database
4 of 20
Why 3 tier?
Logicaly splits system into seperate components. Enables reuse of code (eg data access), enables multiple independent versions of the same component (eg gui: web mobile desktop)
5 of 20
ITS
Issue Tracking Systems - tools for managing issues in software development projects. COuld be features, bugs, refactoring or improvements
6 of 20
issue driven development?
add issue, assign to dev, apply designations.
7 of 20
VCS`
Version Control Systems. Track changes to source code over time. Collection of incremental chagnes to code base over time (in the form of commits). Enable multiple devs to work on a single code base.Can tag.
8 of 20
Centralised VCS
Devs must be connected to the VCS to use its features.
9 of 20
Distributed VCS
Each dev has their own repository that they clone from the existing repo. Can perform most operations without connecting to server (faster) No single point of failure. BUT sharing is ad hoc - who has the real copy? push and pull direct to each other
10 of 20
Distributed VCS with central repo
Central repo acts as single source of truth. Often combined with ITS - Github or Gitbucket.
11 of 20
Commit
packes up a logically related collection of changes and saves them in your history. Each commit should address a single issue.
12 of 20
Branch
A branch splits the development in two. Dev conts independently along each branch. Can push branch without affecting others. Eventually merge back into master.
13 of 20
Topic Branch
A temp branch created for a specific issue. Can pull from remote without merge conflicts. Merge back when issue resolved.
14 of 20
Persistent Branch
Long term branch that exists for duration of project. eg Release branch - realease v1 of product and start on v2. create a branch at last v1 commit and fix it there. Or specialised versions of code base - 2 support mobile or specific customers feats
15 of 20
Merge
When pulling changes from remote to your repo. Good practice to rebase topic branches before merging into master (only branch is broken if you mess it up, easier to deal with merge conflicts on the branch.
16 of 20
Merge conflict
two devs working on same method at the same time. Puller must manually resolve in consulation with other dev. Always pull before pushing.
17 of 20
VCS + ITS
issues give commits context. commit messages can be related back to issues. Easier to search a ITS than a VCS
18 of 20
What is Forking?
Like cloning - but on the server.Enables devs to easily compare changes across forked and original repos. Effective way for third party devs to contirbute without giving write access to original repo. Changes in the fork can be pulled by original dev
19 of 20
Pull Request?
More rigorous and formal approach to sharing code through distributed repos. A dev can accept third party changes from a fork via a pull request.
20 of 20

Other cards in this set

Card 2

Front

Interfaces

Back

Enable different classes to share common behaviour. Contain only constants and abstract methods. Classes must IMPLEMENT interfaces - classes that do this must provide code for ALL the interfaces methods

Card 3

Front

Programming to an interface?

Back

Preview of the front of card 3

Card 4

Front

3 Tier shopping system

Back

Preview of the front of card 4

Card 5

Front

Why 3 tier?

Back

Preview of the front of card 5
View more cards

Comments

No comments have yet been made

Similar ICT resources:

See all ICT resources »See all it resources »