Gradle이란?Gradle은 JVM 기반 프로젝트를 위한 빌드 자동화 도구입니다. Gradle은 Groovy 또는 Kotlin DSL을 사용하여 프로젝트의 빌드 스크립트를 작성할 수 있습니다. IntelliJ IDEA에서 Gradle을 사용하면 프로젝트의 의존성 관리, 빌드, 테스트, 패키징 등을 손쉽게 관리할 수 있습니다. 다양한 빌드 옵션과 유연성을 제공합니다. IntelliJ IDEA와의 통합은 개발 작업을 더 편리하게 만들어 줍니다. 버전에 맞는 적절한 Gradle-JVM 을 설치한 후 적용해 줍니다! Gradle Keyword🔑plugins: 빌드 스크립트에서 사용할 Gradle 플러그인을 지정합니다. 예를 들어, Java 또는 Kotlin 플러그인을 추가하여 Java 또는 Kotl..
java
웹 Web웹은 정보 공유의 장입니다.웹을 통해 정보를 전송하고 공유할 수 있습니다. 백엔드가 웹에서 중요한 이유는 이러한 정보를 처리하고 관리하여 사용자에게 적절한 응답을 제공하기 때문입니다. HTTPHTTP는 웹에서 정보를 주고받는 프로토콜로,클라이언트가 서버에게 요청을 보내고, 서버는 이에 응답하는 방식으로 동작합니다. 이는 보내는 사람과 받는 사람 간의 약속된 형식을 따릅니다. 예시를 살펴보겠습니다! 사용자(View)-> "이름, 나이, 주소, 연락처 .." 주면서 회원가입 시켜줘 '요청'HTTP Request HTTP API Request는 클라이언트가 서버에게 리소스에 대한 특정 동작을 요청하기 위해 보내는 메시지입니다. HTTP Method (HTTP 메서드): 요청의 목적을 나타냅니다. ..
프로젝트 소개 Java Swing을 활용한 개복치 게임 프로잭트입니다. 프로젝트 기간 : 5일 프로젝트 인원 : 총 6 사용한 기술 스택 : JAVA Swing 맡은 역할 : HomeScreen FrontEnd & BackEnd 옆으로 넘겨 사진을 더 확인해보세요! 아래 github 클릭하시면 코드를 확인해보실 수 있습니다! 구현한 상세 기능 ( branch : home/ys ) 각 먹이 객체를 client 단에서 생성 먹이를 클릭할 시 개복치 체중 증가 상한 먹이를 먹었을 때 사망 페이지 띄우기 각 먹이는 다른 속도, 방향으로 제각기 움직이고 화면 모서리에 닿을 경우 반대방향으로 전환 상한 먹이 제외하고 다른 먹이가 모두 클릭된 경우 다시 먹이 초기화(전체 화면에 띄우기) 🥰 좋았던 점 2년 전, 학부..
목표 JAVA의 심화 내용인 4특징, 5원칙과 각 원칙이 가지는 장점을 설명할 수 있습니다. 내용정리 내가 생각하는 객체 지향이란? 객체 지향 프로그래밍은 소프트웨어를 객체의 모임으로 바라보고, 이들 간의 상호작용을 중심으로 프로그래밍하는 패러다임입니다. 객체 지향의 핵심은 소프트웨어를 현실 세계의 모델로 표현하는 것이며, 이를 통해 유연하고 확장 가능한 코드를 작성하는 것이 목표입니다. 🗨️예를 들어, 아이가 비행기랑 팽이를 가지고 놀 때 그 사이에 장난감이라는 클래스를 만드는게 좋은 것처럼 말입니다. 4특징 5원칙 캡슐화: 데이터와 그를 다루는 메서드를 하나로 묶어 외부에서의 접근을 제어하는 것으로, 정보 은닉의 개념을 포함합니다. 상속: 부모 클래스의 특성과 메서드를 자식 클래스가 상속받아 재사용하..
목표 JAVA의 클린 코드와 리팩토링에 대해 이해하고 실제 코드를 리팩토링 해보는 실습을 진행하여 실제로 코드를 개선하고 향상시키는 경험을 쌓습니다. 내용정리 __________ EX01 { public abstract void method1(); public abstract void method2(); } ❓빈칸에는 어떤 게 들어가야 할까? abstract class 하면 에러 사라진다! : 1개이상 abstract 면 abstract 해주기로 약속 interface 해도 에러 사라진다! 추상 클래스(Abstract Class): 공통된 특성을 가진 클래스들의 부모 클래스로 사용됩니다. 상속을 통해 확장될 것으로 예상되는 메서드나 필드를 제공합니다. 일부 메서드의 구현을 제공할 수 있습니다. 상속을 통..
목표 Java의 추상클래스와 인터페이스, 자바 컬렉션 API에 대해 이해하고 로그인, 회원가입, 회원정보 수정 기능을 갖춘 데이터베이스 대체 클래스를 제작해봅니다. 내용정리 인터페이스의 사용 이유 정보 은닉: 실제 구현 클래스를 몰라도 인터페이스를 통해 사용할 수 있습니다. 구현 클래스의 독립성: 인터페이스를 통해 여러 클래스가 독립적으로 구현될 수 있습니다. 다형성: 인터페이스를 구현하는 클래스들을 통일된 타입으로 다룰 수 있습니다. 2. 인터페이스와 추상 클래스의 차이점 다중 상속: 인터페이스는 다중 상속이 가능하며, 추상 클래스는 단일 상속만 가능합니다. 구현: 인터페이스는 메서드의 선언만 있고, 구현이 없습니다. 반면에 추상 클래스는 일부 메서드의 구현이 가능합니다. 느슨한 결합: 인터페이스는 구..
목표 JAVA의 클래스 구성요소, 다형성 에 대해 이해합니다. 내용 정리 필드와 메소드 자바에서 변수는 필드(Field)를, 함수는 메소드(Method)를 말합니다. 이는 자바 개발에서 일반적인 용어 사용 관례입니다. 코드 컨벤션 자바에서는 코드의 가독성을 높이기 위해 코드 컨벤션을 따릅니다. 일반적으로 구글 컨벤션을 따르며, 이는 코드의 일관성을 유지하고 협업 시에도 코드를 이해하기 쉽게 합니다. 생성자와 접근 제어 생성자(Constructor)는 객체를 생성하면서 필드를 초기화하는 특별한 메소드입니다. 클래스 내의 접근 제어자를 private으로 설정하면 외부에서 직접 값을 설정하지 못하게 합니다. ➡️ 값의 변경이 필요하다면? ➡️ setPrice와 같음 하수로 해당 클래스 내부에서 메소드를 통해 ..
클라우드 기반 백엔드 프로그래밍 세션에 앞서, 기초 JAVA에 대한 학습을 진행하여 SpringBoot 프레임워크 학습을 위한 기반을 다졌습니다. 목표 Java의 특징과 환경 그리고 자바 개요, 변수와 자료형, 제어문, 클래스와 객체에 대해 이해합니다. 내용정리 JAVA와 Javascript Javascript에서 "Java"라는 용어가 사용된 이유는 당시 자바가 가장 유명한 언어였기 때문입니다. JAVA는 대한민국에서 매우 중요한 언어로 자바 공화국이라 불릴 정도로 중요한 역할을 합니다. 서버 개발에 있어 JAVA는 매우 중요한 위치를 차지하며, 특히 정부에서 공공기관에 자바를 표준으로 사용하고 있습니다. JAVA의 환경 JVM (Java Virtual Machine): 자바 프로그램이 돌아갈 수 있는..
문제 자연수 N을 만드는 연속된 자연수의 합으로 나타내는 가짓수 구하기 입력 정수 N 출력 가짓수 ★Key point : 투 포인터 입력으로 주어지는 자연수 N의 범위가 n) { sum = sum -start; start++; } else { end++; sum = sum + end; } } System.out.println(count); } } 인덱스를 가리키는 두 개의 포인터를 활용해서 연속된 숫자의 묶음을 표현하고, n과 sum의 크기 비교에 따라 각 포인터를 이동시킨다 sum == N: end_index++; sum = sum + end_index; count++; sum N: sum = sum - start_i..
문제 수 N개가 주어졌을 때, i번째 수부터 j번째 수까지 합을 구하는 프로그램을 작성하시오. 입력 첫째 줄: 수의 개수 N과 합을 구해야 하는 횟수 M 둘째 줄: N개의 수 셋째 줄부터 M개의 줄 : 합을 구해야 하는 구간 i와 j 출력 총 M개의 줄에 i번째 수부터 j번째 수까지 합을 출력 ★Key point : 누적합 알고리즘 사용하기 각 구간 입력마다 for문을 돌려서 합을 구하면 런타임 에러가 나기 때문! 1 ≤ N ≤ 100,000 1 ≤ M ≤ 100,000 1 ≤ i ≤ j ≤ N import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; class Main { // j) ..