Software Construction

This course delves into the fundamental elements of software construction, covering key aspects such as basic programming constructs, object-oriented programming principles, data structures and algorithms, as well as IO, exception handling, test-driven development, threads and concurrency and networking implementations in Java. While the role of a software engineer typically involves leveraging quality-tested artifacts and libraries to develop systems rather than starting from scratch, this course serves as a cornerstone for understanding how these crucial elements are implemented. By gaining insight into the inner workings of these components, we can optimize their utilization and make informed decisions when designing and building software systems.

Topics Covered

Basic Java Programming

Object-oriented Programming

Datastructures and Algorithms

IO & Exception Handling

Test-driven Development

Threading and Concurrency

Networking


Copyright © Jheel Patel.