Refresher code and study guide for Object Oriented Programming By Alejandro Echeverria (work in progress)
- Classes, objects, structures
- Access modifiers
- Properties, methods and events
- Constructors and destructors (garbage collector)
- Anonymous types
- Generics
- Interfaces
- Delegates
- Inheritance
- Encapsulation
- Polymorphism
- Data types
- Value types
- Reference types
- Operators
- Boxing and unboxing
- Parameters
- Casting
- Arrays
- Linked lists
- Queues
- Stacks
- Hash Tables / Hash Sets
- Collision management
- Binary trees
- Binary search trees
- Graph
- Traversing
- Matrix
- Tries
- Recursion vs iteration
- LINQ
- Lambda expressions
- Serialization: XML, JSON
- Attributes
- Memory management: heap and stack
- Threads and locks, multithreading, deadlocks
- Exception handling
- Testing
- Unit testing
- Perfomance
- Big-O analysis
- Math and logic puzzles
- Problems
- Arrays
- linked lists
- Trees/graphs
- Stacks and queues
- Bit operations
- Recursion and iteration examples
- Sort
- Search
- Advanced algorithms
- Structured vs. unstructured
- SQL syntax
- NoSQL
- Design concepts
- Performance concepts
- Cloud
- Security
- Patterns
- Singleton
- Factory
- MVC design
- Serverless design patterns
- Design and scalability
- Architecture concepts
- UML diagram types
- XSS
- Injection
- Session highjacking
- Insecure access
- https://www.geeksforgeeks.org/is-your-web-application-secure-enough-think-again/
- OSI model
- Protocols
- DevOps
- Agile
- Project Management
- Behavioral questions
- What are your weaknesses?
- Challenges you've faced
- Mistakes you've made
- Projects you've enjoyed
- Conflict resolution