This study set contains 25 flashcards covering key concepts in third-year college-level programming.
Definition and purpose of design patterns (e.g., Singleton, Factory, Observer)
Implementation and use cases. Advantages and disadvantages
Implementation and use cases. Advantages and disadvantages
Implementation and use cases. Advantages and disadvantages
Model-View-Controller architecture: components and interactions
Principles of RESTful API design (Representational State Transfer)
GET, POST, PUT, DELETE – their uses and semantics
JavaScript Object Notation – structure and parsing
Extensible Markup Language – structure and parsing
Basic SQL commands (SELECT, INSERT, UPDATE, DELETE)
First, second, and third normal forms
One-to-one, one-to-many, many-to-many relationships
Basic Git commands (clone, add, commit, push, pull)
Creating, merging, and deleting branches
Scrum and Kanban – principles and practices
Unit testing, integration testing, system testing
Principles and process
Strategies for identifying and resolving software bugs
Linked lists, stacks, queues, trees, graphs
Big O notation (time and space complexity)
Definition and examples of recursive algorithms
Differences and challenges
Differences and interactions
Common vulnerabilities (SQL injection, cross-site scripting)
Different deployment strategies (e.g., continuous integration/continuous deployment)