bguspl

Class Material

Introduction

Course Overview

Runtime Environments

Memory Management

Introduction to Memory Management

Pointers and References

Resource Allocation and Ownership

Object Oriented C++

Advanced Programming

Back to Java: Advanced Features

Testing - Unit testing, TDD

Concurrency

Processes and Threads

Thread Safety: Definition and Immutable Objects

Thread Safety: Synchronization

Liveness and Performance

Communication

Socket Programming (More about Networks)

Application Level Protocol Design

The Reactor Design Pattern

Command Invocation Server

Persistence

Persistence Services and Database Management Systems

Python & Persistence Patterns - Best Practices