The flashcards below were created by user
on FreezingBlue Flashcards.
decouple an abstraction from its implementation so that the two can vary independently
separate platform implementation hierarchy from the abstraction heirarchy
- avoid a permanent binding between an abstraction and its implementation
- both the abstraction and implementation should be extensible by subclassing
bridge - changes in the implementation of an abstraction
- should have no impact on clients
- hide the implementation of an abstraction completely from clients
why a bridge?
eliminate the complexity and error associated with "nested generalizations" (multiple inheritance)
bridge - pro
share an implementation amount multiple objects but hide this fact from the client
type-safe ways of casting from one type to another
asynchronous input/output. great for working with sockets Ipv4/Ipv6
- reference-counted smart pointer
- avoids memory leaks
- Transmission control protocol
- connection oriented
- data can be sent bidirectional
- User Datagram Protocol
- multiple messages are sent as packets in chunks
TCP vs. UDP usage
- tcp - high reliability with time less critical
- udp - fast - useful for servers that answer small messages from a lot of clients
- curiously recurring template pattern
- a class T, inherits from a template that specializes on T.
- a class that is intended to be reused through direct insertion in another piece of code.
- counting example - one count for everything
any class that inherits from any other derived class