Course Outline

Introduction

  • Overview of C Features and Applications for Government

Preparing the Development Environment for Government

  • Choosing an Integrated Development Environment (IDE)
  • Configuring the Compiler

Writing a Sample Program for Government

  • Defining the Problem
  • Coding According to Requirements

Defining the Scope of Variables and Functions for Government

  • Understanding Scope, Visibility, and Lifetime
  • Working with Storage Classes: auto, extern, register, static

Managing Data in a C Program for Government

  • Beyond Primitive Data Types
  • Working with Advanced Data Types: Structures, Linked Lists, etc.
  • Storing Different Data Types in the Same Memory Location

Modifying the Properties of a Variable for Government

  • Beyond Type Modifiers
  • Working with Type Qualifiers: constant, volatile, etc.

Manipulating Bits in C for Government

  • Working with Data Smaller Than a Byte
  • Using Bit Manipulation Operators

Controlling the Flow of Your Program for Government

  • Beyond Sequencing
  • Using the goto Statement

Reading and Writing Data for Government

  • Recap of Input/Output Functions
  • Improving Output Readability

Developing Cross-Platform Code for Government

  • Understanding Compiler Directives
  • Compiling Code Conditionally

Enhancing Program Performance for Government

  • Macros vs. Functions
  • Defining Macros to Run Program Fragments

Dynamically Allocating Memory for Government

  • Advantages of Using Pointers: Execution Speed
  • Pointers to Functions
  • Accessing Memory and Manipulating the Address

Debugging a C Program for Government

  • Advanced Techniques for Checking, Detecting, and Correcting Errors
  • Working with gdb (GNU Debugger)

Creating a Static Library for Government

  • How a Static Library Is Linked into an Executable File
  • Creating a Static Library

Creating a Shared Library for Government

  • Static Libraries vs. Shared Libraries (Dynamic Libraries)
  • How a Shared Library Is Linked and Loaded into Memory at Runtime
  • Creating a Shared Library

Abstracting Data in Your Program for Government

  • Overview of Interface, Specification, and Implementation
  • Creating an Abstract Data Type
  • Regression Testing an Abstract Data Type

Searching and Sorting Data for Government

  • Searching Arrays Using Linear Search, Binary Search, etc.
  • Sorting Arrays Using Selection Sort, Insertion Sort, Bubble Sort

Interprocess Communication and Signals for Government

  • Understanding Processes, Sockets, and Signals
  • Implementing Interprocess Communication (IPC) Using Shared Files, Shared Memory, Pipes, Message Queues, Sockets, Semaphores, etc.

Making Your C Program Run in Parallel for Government

  • Running Different Parts of a Program Concurrently Through Multithreading
  • Writing a Thread

Advanced Networking Programming for Government

  • Recap of TCP, UDP, IP, and Other Dominant Protocols
  • Serving Multiple Ports, Surviving Abrupt Network Disruptions, etc.
  • Writing Powerful Socket APIs

Towards High-Quality Code for Government

  • Peer Code Review and Parallel Programming
  • The Importance of Iterative Coding (Refactoring)

Summary and Conclusion for Government

Requirements

  • C programming experience for government projects

Audience

  • Programmers for government agencies
  • Developers working on government initiatives
 28 Hours

Number of participants


Price per participant

Testimonials (2)

Upcoming Courses

Related Categories