Skip to content

Commit f0b91da

Browse files
committed
📦chore: cria e configura um projeto java com gradle | Parte 01
- Commit inicial =) - Configura Gradle - Configura .gitignore e .gitattributes - Configura readme - Define licença - Implementa o "Hello World" do projeto
0 parents  commit f0b91da

File tree

12 files changed

+570
-0
lines changed

12 files changed

+570
-0
lines changed

.gitattributes

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#
2+
# https://help.github.com/articles/dealing-with-line-endings/
3+
#
4+
# Linux start script should use lf
5+
/gradlew text eol=lf
6+
7+
# These are Windows script files and should use crlf
8+
*.bat text eol=crlf
9+

.gitignore

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
# Created by https://www.toptal.com/developers/gitignore/api/gradle,java,kotlin
2+
# Edit at https://www.toptal.com/developers/gitignore?templates=gradle,java,kotlin
3+
4+
### Java ###
5+
# Compiled class file
6+
*.class
7+
8+
# Log file
9+
*.log
10+
11+
# BlueJ files
12+
*.ctxt
13+
14+
# Mobile Tools for Java (J2ME)
15+
.mtj.tmp/
16+
17+
# Package Files #
18+
*.jar
19+
*.war
20+
*.nar
21+
*.ear
22+
*.zip
23+
*.tar.gz
24+
*.rar
25+
26+
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
27+
hs_err_pid*
28+
replay_pid*
29+
30+
### Kotlin ###
31+
# Compiled class file
32+
33+
# Log file
34+
35+
# BlueJ files
36+
37+
# Mobile Tools for Java (J2ME)
38+
39+
# Package Files #
40+
41+
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
42+
43+
### Gradle ###
44+
.gradle
45+
**/build/
46+
!src/**/build/
47+
48+
# Ignore Gradle GUI config
49+
gradle-app.setting
50+
51+
# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored)
52+
!gradle-wrapper.jar
53+
54+
# Avoid ignore Gradle wrappper properties
55+
!gradle-wrapper.properties
56+
57+
# Cache of project
58+
.gradletasknamecache
59+
60+
# Eclipse Gradle plugin generated files
61+
# Eclipse Core
62+
.project
63+
# JDT-specific (Eclipse Java Development Tools)
64+
.classpath
65+
66+
### Gradle Patch ###
67+
# Java heap dump
68+
*.hprof
69+
70+
# End of https://www.toptal.com/developers/gitignore/api/gradle,java,kotlin

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2025 Diego Armando O. Meneses
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# ⭐ Laboratório de Algoritmos e Estrutura de Dados em Java
2+
3+
![License](https://img.shields.io/badge/License-MIT-green)
4+
![OpenJDK](https://img.shields.io/badge/OpenJDK-21-000000?logo=openjdk&logoColor=white)
5+
![Gradle](https://img.shields.io/badge/Gradle-8.12.1-02303A?logo=gradle&logoColor=white)
6+
![JUnit](https://img.shields.io/badge/JUnit-5-25A162?logo=junit5&logoColor=white)
7+
8+
9+
## 💬 Sobre o Projeto
10+
11+
Repositório criado como laboratório prático para estudantes explorarem, implementarem e testarem conceitos fundamentais de algoritmos e estruturas de dados utilizando Java. Aqui você encontrará implementações comentadas, práticas guiadas, testes automatizados e exemplos de uso em cenários do mundo real, tudo organizado em um formato pensado para favorecer o aprendizado ativo.
12+
13+
14+
## 🎯 Objetivos
15+
16+
- **Reforçar Fundamentos da Programação em Java:** Paradigma Orientado a Objetos (POO), Sequência, Variáveis, Estruturas Condicionais, Estruturas de Repetição, Métodos e Funções ...
17+
18+
- **Explorar Estrutura de Dados:** Vetores *(Arrays)*, Listas *(Lists)*, Pilhas *(Stacks)*, Filas *(Queue)*, Árvores *(Trees)*, *Heaps*, Tabelas *Hash* ...
19+
20+
- **Explorar Algoritmos:** Recursão, Análise Assintótica, Busca, Ordenação ...
21+
22+
- **Facilitar Experimentação:** Através de código pronto para modificações.
23+
24+
- **Reforçar Boas Práticas:** Reuso, Organização de Código, Testes Automatizados, Documentação, Padrões.
25+
26+
- **Apoiar o Processo de Ensino:** Práticas em Sala de Aula, Desafios de Implementação ...
27+
28+
## 🛠️ Tecnologias Utilizadas
29+
30+
| Categoria | Ferramenta / Biblioteca |
31+
| ---------------- | ------------------------------- |
32+
| **Linguagem** | Java 21 (OpenJDK) |
33+
| **Build** | Gradle 8.12.1 (Wrapper incluso) |
34+
| **Testes** | JUnit 5 |
35+
| **Visualização** | GraphViz |
36+
37+
## 🚀 Como Usar o Projeto
38+
39+
*Em Breve*
40+
41+
## 📂 Estrutura do Projeto
42+
43+
*Em Breve*
44+
45+
## 📄 Licença
46+
47+
MIT License — Você pode usar, copiar, modificar e distribuir o código, desde que preserve os avisos de copyright e licença originais.
48+

app/build.gradle.kts

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
/*
2+
* This file was generated by the Gradle 'init' task.
3+
*
4+
* This generated file contains a sample Java application project to get you started.
5+
* For more details on building Java & JVM projects, please refer to https://docs.gradle.org/8.8/userguide/building_java_projects.html in the Gradle documentation.
6+
*/
7+
8+
plugins {
9+
// Apply the application plugin to add support for building a CLI application in Java.
10+
application
11+
}
12+
13+
repositories {
14+
// Use Maven Central for resolving dependencies.
15+
mavenCentral()
16+
}
17+
18+
dependencies {
19+
// Use JUnit Jupiter for testing.
20+
testImplementation(libs.junit.jupiter)
21+
22+
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
23+
24+
// This dependency is used by the application.
25+
implementation(libs.guava)
26+
}
27+
28+
// Apply a specific Java toolchain to ease working on different environments.
29+
java {
30+
toolchain {
31+
languageVersion = JavaLanguageVersion.of(21)
32+
}
33+
}
34+
35+
application {
36+
// Define the main class for the application.
37+
mainClass = "algoritmos.estrutura.dados.java.lab.App"
38+
}
39+
40+
tasks.named<Test>("test") {
41+
// Use JUnit Platform for unit tests.
42+
useJUnitPlatform()
43+
}

app/src/main/java/App.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
public class App {
2+
3+
public static void main(String[] args) {
4+
System.out.println("Hello World, Projeto Java Labs!!!");
5+
}
6+
7+
}

gradle/libs.versions.toml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# This file was generated by the Gradle 'init' task.
2+
# https://docs.gradle.org/current/userguide/platforms.html#sub::toml-dependencies-format
3+
4+
[versions]
5+
guava = "33.0.0-jre"
6+
junit-jupiter = "5.10.2"
7+
8+
[libraries]
9+
guava = { module = "com.google.guava:guava", version.ref = "guava" }
10+
junit-jupiter = { module = "org.junit.jupiter:junit-jupiter", version.ref = "junit-jupiter" }

gradle/wrapper/gradle-wrapper.jar

42.4 KB
Binary file not shown.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
distributionBase=GRADLE_USER_HOME
2+
distributionPath=wrapper/dists
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-bin.zip
4+
networkTimeout=10000
5+
validateDistributionUrl=true
6+
zipStoreBase=GRADLE_USER_HOME
7+
zipStorePath=wrapper/dists

0 commit comments

Comments
 (0)