분류 전체보기 99

[ 모두의 리눅스 ] 파일과 디렉터리

디렉터리여러 개의 파일을 담아서 정리할 수 잇는 것을 말한다. 윈도우나 맥의 폴더 개념과 동일하다. 리눅스의 디렉터리 구조/ : 루트 디렉터리    bin/     dev/    etc/     home/         miyake/          osumi/     sbin/     tmp/     usr/         bin/          lib/          local/     var/ 💡 PATH란?  디렉터리를 구분하기 위해 사용하는 문자로 리눅스에서는 /를 사용하고 윈도우에서는 \를 사용한다. 🔍 윈도우와 리눅스의 디렉터리 구조 차이윈도우와 리눅스는 비슷한 디렉터리 구조를 가지지만, 윈도우에서는 물리 디스크가 2개 있다면 디렉터리 트리도 2개이다.하지만 리눅스에서는 언제나 시스템..

[ STUDY ]/Linux 2025.01.06

[ 모두의 리눅스 ] SHELL

셸의 역할과 리눅스 커널date명령어를 실행했을 때 리눅스 내부에서 일어나는 일키보드로 입력한 date문자열을 받아들인다.date 명령어를 찾는다.발견한 명령어를 실행한다. ➡️ 리눅스의 본체인 커널이 수행한다. 실행한 결과로 얻은 문자열을 화면에 표시한다.  💡커널이란? 운영 체제의 중심에서 CPU나 메모리 같은 하드웨어를 관리하면서 명령어를 싱행하고 프로세스를 관리한다. * 리눅스에서는 사용자가 커널을 직접 조작할 수 없다. 커널과 사용자사이에 명령어를 받아들이고 커널의 실행 결과를 출력하는 소프트웨어가 필요하다. 이 역할을 수행하는 소프트웨어가 바로 셸이다.즉, 셸이란 커널의 인터페이스이다.     리눅스      사용자(직접 커널에 접근 X)   ⬆️            ⬇️ 커널   ⬅️   ..

[ STUDY ]/Linux 2025.01.06

[ 모두의 리눅스 ] 리눅스란

2주만에 개같이 부활🔥🔥근데 맥북쓰다가 윈도우쓰니까 티스토리도 안예쁘고,,,,그냥,,,,안예뻐여...예뻣어요?아니요.아 예뻤는데?아니 안예뻐요 그냥 리눅스란윈도우나 맥과 같은 운영체제이다. 즉, 컴퓨터라는 하드웨어에서 다양한 애플리케이션을 돌리기 위한 기본 소프트웨어이다. 리눅스는 일반적인 데스트톱뿐만 아니라 임베디드, 서버 등 다양한 분야에서 널리 사용된다.리눅스 배포판의 종류레드햇(Red Hat) 계열Red Hat Enterprixw Linux, CentOS, Fedora데비안(Debian) 계열Debian GNU/Linux, Ubuntu 리눅스의 장점리눅스는 오픈 소스로, 누구나 자유롭게 무료로 사용이 가능하다.높은 품질의 다양한 소프트웨어를 리눅스에서 돌릴 수 있다.(아파치 http 서버,  ..

[ STUDY ]/Linux 2025.01.06

자바

ArrayList와 LinkedListArrayList는 배열을 이용해 리스트를 구현하므로 인덱스를 기반으로 요소에 빠르게 접근이 가능하다. 하지만 요소를 추가하거나 삭제할 때 배열의 크기를 변경해야하기 때문에 시간이 소요된다.LinkedList는 연결 리스트로 구현되어 삽입과 삭제 연산이 빠르지만 특정 요소에 접근할 때 순차적으로 접근해야해 시간이 소요된다.  추상 클래스와 인터페이스먼저 추상클래스는 추상메소드를 1개 이상 포함하고 있는 클래스를 말한다. 다중상속이 불가능하다.인터페이스는 추상메소드들로 이루어져있으며 다중상속이 가능하다.둘 다 추상화를 위한 개념이며 추상메소드는 자식 클래스에서 구현을 강제해야한다는 특징이 있다.추상 클래스는 공통된 메서드와 필드를 '상속받는 하위 클래스'에서 재사용하거..

[ STUDY ]/CS 2024.12.19

객체 지향 프로그래밍

객체 지향 프로그래밍의 특징객체 지향 프로그래밍은 객체 중심의 프로그래밍으로 상속, 캡슐화, 다형성, 추상화라는 특징을 가진다.상속이란 기존의 클래스를 기반으로 새로운 클래스를 정의하는 것캡슐화란 클래스안에 변수와 메소드를 묶어 정보를 은닉하여 객체 내부에 접근하지 못하도록 하는 것다형성이란 하나의 클래스나 객체가 다양한 형태로 기능하는 것추상화란 핵심적인 기능만 노출하고 세부적인 사항들은 노출하지 않는 것  오버로딩과 오버라이딩오버로딩은 동일한 이름의 메소드들이 각각 다른 타입이나 다른 갯수의 인자를 가지고 정의된 것을 말한다.오버라이딩은 부모 클래스에 있는 동일한 이름의 메소드를 재정의하는 것을 말한다.  다중 상속한 클래스가 여러 클래스를 상속 받는 것이다. 여러 부모 클래스를 가질 경우 중복되는 ..

[ STUDY ]/CS 2024.12.19

백준 1389 : 케빈 베이컨 6단계 법칙

🔍 문제모든 사람간의 최단거리 구하기 플로이드 워셜 사용해서 푸는건 알았는데 자꾸 답이 안나오는거... 👾 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Arrays;import java.util.StringTokenizer;public class P1389 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer..

백준 30804 : 과일 탕후루

🔍 문제과일이 두 종류가 남도록 앞뒤에서 과일을 뺀다. 이때 가장 많이 남길수 있는 경우의 값 구하기 투포인터와 해쉬맵을 사용해서 풀이한다. 👾 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.HashMap;import java.util.StringTokenizer;public class P30804 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in));..

JPA - ORM, 영속성 컨텍스트

JPA(Java Persistemce API)자바에 있는 데이터를 영구적으로 기록할 수 있는 환경을 제공하는 API즉, 프로그램이 종료되어도 데이터가 영구적으로 기록되어있다.자바 객체와 관계형 데이터 베이스를 매핑(ORM)하는 기술이다.데이터베이스에 직접 접근 ❌  객체 중심으로 데이터베이스 작업을 처리한다.객체 중심 설계를 통해서 데이터베이스와 비즈니스 로직의 분리가 가능하다.기본적인 CRUD작업이 편리하다. ORM(Object Relational Mapping)객체지향 프로그래밍 언어의 객체와 관계형 데이터베이스의 테이블을 자동으로 매핑해주는 기술이다.객체를 데이터베이스에 저장하거나, 조회, 변경하는 역할을 담당한다.장점생산성 - SQL대신 메서드 호출로 데이터베이스 작업을 수행하며, CRUD 작업을..