Shaokang's Blog

This post contains course related projects, forked projects with added functionality, modified projects. Some of them are big, some of them are small. All other projects in project tab are designed, coded, solved on my own and most of them are not required by a course. Click read more to read my course related projects, added function, modified projects.

For course-related program, most of them have a short description and source code might be inappropriate to provide at here. Contact me if anyone wants to see. Programs represented at here are big project, like final project. So it is intended to be big and they are not HWs.

Intro to the Profession

  • HateFate Website (HTML/Jsp/SQL, 2017)

Led group of 4 people to make a website back as SQL database and robust verification contain basic functions, e.g. login, signup with email verification, find password, pairing different people

This one is far beyond course requirement and more complex than a short text, see more at Website for CS100 project.

Object-Oriented Programming I

  • CS115Competition2 (Java Swing, 2017)

Original questions: Input some students’ grade and get a standard output with average grade.

Repo: CS115Competition2

This small project contains a simple Java GUI through Java Swing, like this,

It will ask user for multiple inputs and then user could select to save the result file to local as a txt file. It also has appropriate wrong message handler to handle wrong stuff. Example of exported file:

1
2
3
4
5
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
A number First name Last name Math Science History Physics Average
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
A52525252 A52 A52 52 52 52 52 52.0
A85858585 A85 A85 85 85 85 85 85.0
  • CS115Activity2 - Library Management Software (Java/Java Swing, 2017)

Repo: CS115Activity2

Original question:

The libraries of SmallTownX need a new electronic rental system, and it is up to you to build it. SmallTownX has two libraries. Each library offers many books to rent. Customers can print the list of available books, borrow, and return books.

A Java GUI program to pull and upload book data from ftp and manage them, including demoed feature in the below chart.

This program require communication with an ftp server, my original testing one is not working right now. If an error of “no server, check connection” happen, this is the reason.

The design of the system:

Sample running:

  • Date detection and extraction and testing valid

A Java program that is able to detect date based on some pre-configured sequence.

  • Simple Encryption/Description

A program to encrypt and decrypt ascii text based on specific configuration, like by shifting phase with n places.

Object-Oriented Programming II

  • A Road Traffic Simulator (Java, 2018)

A simulator to simulate cars flow on a simple cross road and managing traffic light. Input source is a file. Output is the simulation result.

  • Library books management

Manage book, rent book, search for a book in a command line Java interface with appropriate testing methods.

Cmptr Org&Asmbly Lang Prgmmg

  • LC-3 Simulator (C, 2018)

A C99 program to simulate running of LC-3 assembly code with assembly file as input source.

Systems Programming

  • Dynamic memory allocator

I write a dynamic storage allocator for C programs, i.e., my own version of the malloc and free routines, including functions of mm_init, mm_malloc, mm_free, mm_realloc.

  • Cache simulation and optimization

This project has two parts, in the first part, simulates the behavior of a cache memory. In the second part, optimize a small matrix transpose function, with the goal of minimizing the number of cache misses.

  • a shell program

In this project, I

  1. Create and manage UNIX processes with fork, exec, and wait
  2. Write signals handlers that handle exceptional control flow
  3. Implement a functional UNIX shell

Database Organization

  • Reservation System Website (Azure/Jsp/SQL, 2019)

A website to manage reservations for different roles, including admin, patient, scheduler, and see an accumulative report.

This one is far beyond course requirement and more complex than a short text, see more at Website for CS425 project.

Introduction to Optimization

  • Seat Arrangement Problem (GAMS/Cplex, 2019)

Decision-making script that solves a problem about how to arrange seats in an imaginary library

This one is far beyond those and more complex than a short text, see more at College library optimization problem.

Programming III

  • A JavaFx program (Java, 2020)

A Java GUI program to manage and lookup some data among different farm

This one is far beyond those and more complex than a short text, see more at A JavaFx project.

Intro to Comp Learning Theory

  • Final project of reading

In the final project of this course, I tried to focus on finding the correct product rating without golden set and read different papers. This one is far beyond those and more complex than a short text, see more at 639 project.

Building User Interfaces

  • Shopping Assistant (DialogFlow/REST API, 2020)

Voice interaction application to perform actions on website, including filtering, adding and removing to cart, login.

  • Course Selection and Enroll Website (React/REST API, 2020)

To select course in a website contains basic functions including filtering, adding to cart, auto correct. And it could recommend course based on the course user has taken so far.

  • Fitness App (React Native/Expo, 2020)

Manage personal fitness, track workout in a day and manage dining in a day. User can set the goal and see if they achieve them or not.

Added function projects

  • Modified Traffic simulator

A modified project to enable exporting running and result data into csv file at Modified traffic simulator.

  • Modified echart-countries-js

Its program can not detect some english input sometime, fixed this error and serve on my own. Repo at echarts-countries-js.

 Comments