Giter Site home page Giter Site logo

miketvo / rmit2022c-eeet2482-lodging-app Goto Github PK

View Code? Open in Web Editor NEW
3.0 2.0 0.0 225 KB

Software Engineering Design – Advanced Programming Techniques FINAL GROUP ASSIGNMENT - RMIT University Vietnam Semester 2022C

License: MIT License

CMake 2.95% C++ 86.90% PowerShell 5.52% Shell 4.63%
cpp lodging rmit rmit-projects terminal-based

rmit2022c-eeet2482-lodging-app's Introduction

EEET2482/COSC2082 ASSIGNMENT

VACATION HOUSE EXCHANGE APPLICATION

About

This is an assignment project for EEET2482 Software Engineering Design / COSC2082 Advanced Programming Techniques offered at RMIT University Vietnam during Semester 2022C.

Assume that you are involved in a start-up who came up with an idea to make an app for people to exchange their houses on vacation. The app will allow registered members to use houses of other members when they go on vacation... Read more

This project uses C++14 standard and CMake.

Project Structure

.
├── .github/
├── src/
├── test/
├── CMakeLists.txt
├── .clang-format
├── .gitignore
├── init.ps1
├── init.sh
├── build.ps1
├── build.sh
├── ProjectScheme.xml
├── ProjectRequirements.md
├── LICENSE
└── README.md
  1. .github/: This directory contains GitHub repository configurations.
  2. src/: This directory contains all C++ source code for this project.
  3. test/: This directory contains all CTest source files.
  4. CMakeLists.txt: This file contains build and test configurations for CMake and CTest.
  5. .clang-format: This YAML-formatted file defines C/C++ code style for this project.
  6. .gitignore: This file tells git which files it should not track / not maintain a version history for.
  7. init.sh: This Shell script initializes CMake and build folders for this project.
  8. init.ps1: This Windows Powershell script initializes CMake and build folders for this project.
  9. build.sh: This Shell script is a wrapper for CMake build processes.
  10. build.ps1: This Windows Powershell script is a wrapper for CMake build processes.
  11. ProjectScheme.xml: JetBrains XML code style file that contains C./C++ formatting rules. Alternative to .clang-format.
  12. ProjectRequirements.md: Project requirements provided by the course EEET2482/COSC2082.
  13. LICENSE: MIT
  14. README.md: A text file containing useful reference information about this project.

Quick start

Prerequisites

Name Recommended version Notes
g++ 9.3.0 or higher
cmake 3.10.0 or higher
ninja 1.10.0 or higher
clangd 10.0.0 or higher Optional

Setting up development environment

  1. Clone this repository using git:

    • HTTPS

      git clone https://github.com/miketvo/rmit2022c-eeet2482-lodging-app.git
    • SSH

      git clone [email protected]:miketvo/rmit2022c-eeet2482-lodging-app.git

    Alternatively, you can download this repository as a ZIP file and extract it (not recommended for development purposes since git features are not enabled for this method).

  2. Initialize CMake and build folders:

    • Linux/MacOS

      ./init.sh
    • Windows

      ./init.ps1

    This will generate three build folders corresponding to three respective build modes offered in this project:

    • cmake-build-debug/
    • cmake-build-release/
    • cmake-build-minsizerel/

Building

  • Linux/MacOS

    ./build.sh [Options] -m <build-mode> 
  • Windows

    ./build.ps1 [Options] -m <build-mode> 

For all available option flags and build modes, use:

  • Linux/MacOS

    ./build.sh -h
  • Windows

    ./build.ps1 -h

Testing

  1. Make sure that the test binaries are built before testing:
    • Linux/MacOS

      ./build.sh -m <debug-test|release-test|minsizerel-test>
    • Windows

      ./build.ps1 -m <debug-test|release-test|minsizerel-test>
  2. Navigate to one of the build folders corresponding to the build mode specified in step 1:
    cd cmake-build-<debug|release|minsizerel>
    
  3. Run CTest (bundled with CMake) for the specified build folder in step 2:
    ctest

To run tests selectively, use the -R/--tests-regex or -N/--show-only flag. Refer to CTest Documentation for more instructions.

To write and add test configurations, please refer to Testing With CMake and CTest. Note: All test source files for this project are placed under test/.

rmit2022c-eeet2482-lodging-app's People

Contributors

laansdole avatar miketvo avatar namfsoft avatar namnguyen20999 avatar ngocduan99 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

rmit2022c-eeet2482-lodging-app's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.