profile
나를 위한 기록장
post-thumbnail

[Java] 객체지향 설계 5원칙(SOLID)

좋은 소트프웨어 설계를 위해서는 결합도(coupling)는 낮추고 응집도(cohesion)는 높여야 한다.💡결합도모듈(클래스)간의 상호 의존 정도를 나타내는 지표결합도가 낮으면 모듈간의 상호 의존성이 줄어들어 객체의 재사용 및 유지보수가 유리하다.💡응집도하나의 모듈

2022년 7월 27일
·
0개의 댓글
·
post-thumbnail

[Java] Collection 요소를 순회하는 Iterator

자바에서 Iterator는 컬렉션 프레임워크(Collection Framework)에서 값을 가져오거나, 삭제할 때 사용한다. 컬렉션 프레임 워크에 저장된 요소들을 하나씩 차례로 참조순서가 있는 List 인터페이스의 경우는 Iterator를 사용하지 않고 get(i)메

2022년 7월 26일
·
0개의 댓글
·
post-thumbnail

[Java] Comparable / Comparator 비교

객체를 비교 할 수 있도록 하기 위한 인터페이스compareTo(T o) 메소드 하나가 선언되어 있는 인터페이스자기 자신과 매개변수로 들어오는 객체를 비교반환형 : int양수: 비교 기준이 더 큰 경우0: 자신과 같은 경우음수: 비교 기준이 더 작은 경우객체를 비교할

2022년 7월 26일
·
0개의 댓글
·
post-thumbnail

[Java] 제네릭(generic) 프로그래밍

제네릭(generic)이란 "타입을 일반화"것을 의미하며, 클래스 내부에서 정하는 것이 아닌 사용자 호출에 의해 타입이 지정되는 것을 의미한다.클래스에서 사용하는 변수의 자료형이 여러개 일 수 있고, 그 기능(메서드)은 동일한 경우 클래스의 자료형을 특정하지 않고 후에

2022년 7월 26일
·
0개의 댓글
·
post-thumbnail

[Java] 배열(Array)

배열(Array) 배열은 `많은 수의 데이터`를 다룰 때 사용하는 자료구조이다. `동일한 데이터 타입`을 순서에 따라 관리하는 자료구조이다. 정해진 크기가 있다. 각 데이터를 인덱스와 1:1 대응하도록 구성된다. 데이터가 메모리 상에 `연속적`으로 저장된다. 요소의 추

2022년 7월 23일
·
0개의 댓글
·
post-thumbnail

자료구조와 알고리즘

대량의 데이터를 효율적으로 관리할 수 있는 데이터의 구조를 의미한다. 코드상에서 효율적으로 데이터를 처리하기 위해, 데이터의 특성에 따라 체계적으로 데이터를 구조화 해야한다.어떤 데이터 구조를 사용하느냐에 따라 코드의 효율이 달라진다.

2022년 7월 23일
·
0개의 댓글
·

[Java] 지수와 로그

같은 수를 두번 곱함거듭 제곱: 같은 수를 거듭하여 곱함a를 제곱하여 b가 될 때 a를 b의 제곱근이라고 함2의 3승 = 2 2 2√4 = √(2^2 )=2a의 x승 -> a: 밑, x: 지수a가 b가 되기 위해 제곱해야 하는 수log2^4 = 2log10^1000

2022년 7월 23일
·
0개의 댓글
·

[Java] 점화식과 재귀함수

어떤 수열의 일반항을 그 이전의 항들을 이용하여 정의한 식예) 피보나치 수열어떤 함수가 자신을 다시 호출하여 작업을 수행하는 방식종료 조건이 반드시 있어야 한다. 없는 경우 무한루프에 빠질 수 있다.

2022년 7월 23일
·
0개의 댓글
·

[Java] 조합(Combination)

서로 다른 n개 중에서 r개를 선택하는 경우의 수(순서X, 중복X)예) 서로 다른 4명 중 주번 2명을 뽑는 방법 nCr = n! / (n - r)! r! = nPr / r!서로 다른 n개 중에서 r개를 선택하는 경우의 수(순서X, 중복O)예) 후보 2명, 유권자 3명

2022년 7월 23일
·
0개의 댓글
·

[Java] 순열(Permutation)

1에서 n까지 모든 자연수의 곱(n!)n! = n(n - 1)(n - 2)(n - 3) .... 1순서를 정해서 나열서로 다른 n개 중에 r개를 선택하는 경우의 수 (순서O, 중복X)예1) 5명을 3줄로 세우는 방법예2) 서로 다른 4명 중 반장, 부반장을 뽑는 방법n

2022년 7월 23일
·
0개의 댓글
·
post-thumbnail

[MariaDB] CRUD(INSERT, SELECT, UPDATE, DELETE)

CRUD는 대부분의 컴퓨터 소프트웨어가 가지는 기본적인 데이터 처리 기능인 Create(생성), Read(읽기), Update(갱신), Delete(삭제)를 일컫는 말이다. 사용자 인터페이스가 갖추어야 할 기능(정보의 참조/검색/갱신)을 가리키는 용어로도 사용된다.

2022년 7월 13일
·
0개의 댓글
·
post-thumbnail

[MariaDB] DROP, TRUNCATE

DROP문을 사용하여 데이터베이스와 테이블을 삭제할 수 있다. 데이터베이스를 삭제하면 해당 데이터베이스의 모든 테이블과 데이터도 같이 삭제되므로 주의가 필요하다. 테이블을 삭제하면 해당 테이블의 모든 데이터도 같이 삭제되므로 주의가 필요하다.DROP DATABASE 문

2022년 7월 13일
·
0개의 댓글
·
post-thumbnail

[MariaDB] CREATE, ALTER

데이터베이스에 데이터를 저장하기 위해서는 테이블의 형태로 저장한다. 그리고 그 테이블은 Column 과 Row로 이루어진다. 테이블을 처음 생성할때 어떤 Column으로 구성할지 정해줘야 하는데, 지난 포스트에서 정리했던 내용처럼 각각의 알맞는 타입을 선택해준다. 예

2022년 7월 13일
·
0개의 댓글
·
post-thumbnail

[Database] SQL 명령어 종류

데이터베이스 언어 SQL문법의 종류는 다음의 세 가지가 있다. 데이터 정의 언어(DDL: Data Definition Language), 데이터 조작 언어(DML: Data Manipulation Language), 데이터 제어 언어 (DCL: Data Control

2022년 7월 12일
·
0개의 댓글
·
post-thumbnail

[Mac] VMware 가상머신으로 Ubuntu 설치하기

VMware Fusion 설치하기 우분투에 MariaDB를 설치하고 데이터베이스에 대해 공부하기 위해 알아보던 중 VMware에 대해 알게 되었다. VMware는 기존에는 유로로 구매하여 사용을 해야했지만 2020년 9월즈음 VMware Fusion12를 발표하며

2022년 7월 11일
·
0개의 댓글
·
post-thumbnail

[MariaDB] 데이터베이스 생성 및 계정 생성, 권한부여

CLI를 통한 MariaDB 데이터베이스 생성, 계정생성, 권한주기

2022년 7월 11일
·
0개의 댓글
·
post-thumbnail

[Database] 데이터 베이스란?

데이터 베이스란 한마디로 데이터를 저장하는 공간 이라고 할 수 있다. 과거 자주 이용했던 싸이월드 미니홈피를 생각해보자. 그곳에는 사진, BGM, 자기소개 글, 방문록 등.. 다양한 데이터가 존재하고 있었다는 것을 알 수 있다. 우리가 인터넷을 이용하며 입력하고 저장한

2022년 7월 8일
·
0개의 댓글
·
post-thumbnail

[CS]메모리 구조

프로그램이 실행되기 위해서는 먼저 프로그램이 메모리에 로드(Load)되어야 한다. 또한, 프로그램에서 사용되는 변수들을 저장할 메모리 공간도 필요하다. 따라서 컴퓨터의 운영체제는 프로그램의 실행을 위해 다양한 메모리 공간을 제공하고 있는데,프로그램이 운영체제로(OS)부

2022년 6월 29일
·
0개의 댓글
·
post-thumbnail

[IntelliJ] 인텔리제이 단축키

IntelliJ 단축키 정리

2022년 6월 21일
·
0개의 댓글
·
post-thumbnail

[Spring] 스프링 프레임워크

자바 엔터프라이즈 애플리케이션 개발을 단순하게 해주는 오픈 소스 애플리케이션 프레임워크이다. EJB라는 겨울을 넘어 새로운 시작이라는 뜻으로 시작된 스프링은 현재 다양한 생태계를 구축하고 있다.

2022년 6월 16일
·
0개의 댓글
·