exploring-blank-lines-inside-java-methods-as-indicators-of-increased-code-complexity

https://github.com/ruslangaliullin/exploring-blank-lines-inside-java-methods-as-indicators-of-increased-code-complexity

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.8%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: RuslanGaliullin
  • Language: Shell
  • Default Branch: main
  • Size: 910 KB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 3
Created over 1 year ago · Last pushed over 1 year ago
Metadata Files
Readme Citation

README.md

DOI

Exploring-Blank-Lines-Inside-Java-Methods-as-Indicators-of-Increased-Code-Complexity

Project Structure

  • /cam — This directory contains a script used to collect methods and metrics related to code complexity. It includes tests and usage instructions. This folder is a modified fork of the cam-0.9.3 repository, tailored for method-specific data collection.

  • /aggregated_data_for_paper — This directory holds pre-collected, compressed data used in the accompanying paper.

  • main.ipynb — A Jupyter notebook used for data analysis.

Steps to Reproduce the Results

  1. [Optional] Regenerate the Dataset:
    To recreate the dataset of repositories, methods, and their associated metrics from scratch, follow the instructions in the README.md file located in the script directory. Once generated, copy the resulting dataset into a folder at the same level as main.ipynb.

  2. Download the Data:
    Download the pre-collected metrics data.zip and unzip it into a folder at the same level as main.ipynb.

  3. Set Up Python Environment:
    Install Python version 3.10 or above and create a virtual environment called .venv: bash python3 -m venv .venv source .venv/bin/activate

  4. Install Required Packages:
    Install the required dependencies: bash pip install -r requirements.txt

  5. Run the Jupyter Notebook:
    Launch Jupyter Notebook and open main.ipynb to begin the analysis.

How to cite this work

tbd. https://zenodo.org/doi/

Owner

  • Name: rmgaliullin
  • Login: RuslanGaliullin
  • Kind: user

@R_Galiullin - tg

GitHub Events

Total
  • Push event: 9
Last Year
  • Push event: 9

Dependencies

cam/Dockerfile docker
  • ubuntu 24.04 build
cam/fixtures/jaxec/pom.xml maven
  • com.jcabi:jcabi-log 0.24.2
cam/requirements.txt pypi
  • cffconvert ==2.0.0
  • chardet ==5.2.0
  • flake8 ==7.0.0
  • javalang ==0.13.0
  • multimetric ==1.3.0
  • mypy ==1.11.2
  • pylint ==3.2.7
  • samples-filter ==0.5.1
requirements.txt pypi
  • matplotlib ==3.8.4
  • numpy ==2.1.3
  • pandas ==2.2.2
  • pingouin ==0.5.4
  • scikit-learn ==1.4.2
  • scipy ==1.13.0
  • seaborn ==0.13.2
  • tqdm ==4.66.4