Skip to content
This repository has been archived by the owner on Jul 1, 2024. It is now read-only.

Latest commit

 

History

History
54 lines (42 loc) · 4.78 KB

README_ja.md

File metadata and controls

54 lines (42 loc) · 4.78 KB

English README

筑波大学 卒業要件チェックツール README(ja)

筑波大学の卒業要件をチェックする非公式のツールです。

Features

  • Implemented in Kotlin/JS with Gradle

rule_definitions.json

卒業に必要な単位数などの条件はrule_definitions.jsonに定義されています。

このツールは、入力された科目のリストがrule_definitions.jsonで定められている定義を満たすかどうかの判定を行います。

このファイルは2021年度の履修要覧のみに対応しています。ご了承ください。

フォーマット

  • rule_definitions.json
    • version : String JSONファイルのバージョン (e.g. 1.0.0)
    • updated_at : String JSONファイルの最終更新日 (e.g. 20210603)
    • author : String JSONファイルの製作者
    • faculties : List<Faculty>
      • faculty_name : String 学類・専門学群の名称 (e.g. 情報科学類)
      • majors : List<Major>
        • major_name : String 主専攻の名称 (e.g. ソフトウェアサイエンス)
        • credits_graduation : Integer 卒業に必要な単位数
        • subject_types : List<SubjectType>
          • subject_type_name : String subject_typeの名称 (専門科目/専門基礎科目/基礎科目-共通科目/基礎科目-関連科目)
          • sub_subject_types : List<SubSubjectType>
            • sub_subject_type_name : String sub_subject_typeの名称 (必修科目/選択科目)
            • credits_min : Integer このsub_subject_typeにおいて卒業に必要な最低単位数
            • credtis_max : Integer このsub_subject_typeにおいて卒業に必要な単位として算入される最高単位数
            • subject_groups : List<SubjectGroup>
              • description : String subject_groupの名称もしくは説明
              • credits_min : Integer このsubject_groupにおいて卒業に必要な最低単位数
              • credits_max(Optional) : Integer このsubject_groupにおいて卒業に必要な単位として算入される最高単位数
              • subjects : List<Subject>
                • name(Optional) : String この科目の名称 (e.g. フレッシュマン・セミナー)
                • subject_numbers : List<String> この科目の科目番号
                • except_subject_numbers : List<String> 除外する科目の科目番号 (「〇〇は除く」系)
                • credits(Optional) : Double この科目の単位数 (e.g. 1.0)

"Optional"な要素について

  • subject_groups/credits_max : この要素がない場合、内部的にはInt.MAX_VALUEとして扱われ、そのsubject_groupsは最高単位数の制限がないものとされます。
  • subjects/name : 親のsubject_group要素がsubjectsにこの科目一つのみしか含まない場合にのみ省略できます。
  • subjects/credits : 省略可能ですがパフォーマンスが落ちてしまうので、可能ならば書いてください。

ライセンス

このソフトウェアはMPL-2.0 Licenseでライセンスされています。 LICENSE もご覧ください。

このソフトウェアは itsu-dev 氏および Mimori256 氏が制作した、 scs-migration-checker を基にしています。

このソフトウェアは inaniwaudon 氏および Mimori256 氏が制作した、KdBからCSVデータをダウンロードし、JSONへパースする スクリプト を使用しています。