목록All Contents (172)
Code&Data Insights

Git 이란?? - 형상관리도구(Configuration Management Tool) 중 하나이다. => 형상관리도구 = 버전관리 시스템 - 프로젝트 소스코드를 효과적으로 관리할 수 있는 시스템- 여럿이 작업하더라도 문제가 없게 함- 소프트웨어의 여러 버전을 동시에 관리 할 수 있다.- 프로젝트 진행의 모든 로그를 볼 수 있으며 해당 시점으로 되돌리는 것도 가능하다. Git을 사용하는 이유- 프로젝트 시 어떤 기능을 빼고 더하고 고치고 수정하는 과정은 필수이다.기능을 되돌리게 될 수도 있고, 서로 다른 기능의 버전을 유지해야 하는 경우도 있다. 1. 코드 관리 측면- 변경된 이력 확인 / 이전 이력으로 되돌리기 / 현재 최종이 어느 시점인지 표현할 수 있음 2. 협업의 측면 - 각 기능별로 분업 후..

오늘 강의 듣는 중에 레거시 시스템이라는 말을 처음 들었다. 레거시 시스템이란 뭘까?? * What is a Legacy System? - 레거시 시스템이란?? => 레거시 시스템이란 아직도 쓰이고 있는 구식의 소프트웨어/하드웨어를 말한다. 그 시스템은 여전히 설계된 대로의 기능을 충족시킬수 있지만, 어떠한 성장도 용납되지 않는다. 구식의(오래된) 기술의 레거시 시스템은 현재 새로운 시스템과 상호작용 할 수 도 없다. * Problems caused by legacy systems - 레거시 시스템으로 인해 발생하는 문제들 1. Maintenance is costly (and futile) -> 유지비용이 많이 든다. 데이터 사일로로 인한 불필요한 저장공간이 발생되어, 이에 따른 비용이 부가적인 비용이 ..

[ Java Programming ] StringBuffer class & StringBuilder class - java.lang.StringBuffer extends (or inherits from) Object class - String 대신 String buffer class를 사용하는 이유? => 문자열 처리는 보통 String이 하지만, 기존 문자열에서 추가/삭제를 하는 경우 기존 메모리에 추가되는 것이 아니라 새로운 메모리에 더해진 문자열의 영역을 잡고 주소가 생기기 때문에 이러한 추가/삭제가 빈번한 경우 메모리에 부담이 커진다. => String(불변의 속성) vs StringBuffer(가변의 속성) - append() method의 경우에는 모든..
Interface와 Abstract의 차이점 [ The difference between Interface and Abstract Class ] (1) Accessibility of Data Members 인터페이스에서는 상수만 선언가능 , 반면, 추상클래스는 concrete class와 같이 fields 선언 가능. (2) Keywords 인터페이스에서는 implements를 쓰지만, 추상클래스에서는 extends를 사용한다. ( 하지만, 인터페이스가 다른 인터페이스(one or more)를 상속할 경우에는 extends 키워드를 사용한다. ) (3) Access Modifier 인터페이스는 fields, methods 모두 다 public! 추상클래스는 public,protected methods를 ..

[ Linked List ] - 자바의 Collection Framework에 포함. - This class is an implementation of the LinkedList data structure which is a linear data structure where the elements are not stored in contiguous locations and every element is a separate object with a data part and address part. - 각 element들(node)은 pointer와 address로 연결되어져 있다. - 각 element들의 위치 파악이 어려워 불연속적이다. ( 접근성 ↓) [ Linked List vs ArrayList ]..

순열과 조합 1) 순열 [ Permutation ] - 서로 다른 n개 중에 r개를 선택하는 경우의 수 (순서가 존재O, 중복허용X) - Determines the number of possible arrangements in a set when the order of the arrangements matters. - 순열 규칙 (1) 대상: 서로 다른 n개 (2) 갯수 : r개 (3) 중복 : X (4) 순서의 구분 : O import java.util.stream.IntStream; System.out.println(" [ Factorial ] :"); // 5! int n = 5; int result = 1; for(int i = 1; int (..
점화식과 재귀함수 - Recursion means "defining a problem in terms of itself". - For example, the Fibonacci sequence is defined as: F(i) = F(i-1) + F(i-2) -The process in which a function calls itself directly or indirectly is called recursion and the corresponding function is called a recursive function. System.out.println(" [ 점화식과 재귀함수 ] "); // 1,3,9,27, ... 의 n번째 수 int n = 4; int result = 1; for(int i ..
- Probability (Number of Cases) - 어떤 일이 일어날 수 있는 모든 경우의 수 (Probability is the branch of mathematics concerning numerical descriptions of how likely an event is to occur, or how likely it is that a proposition is true. ) - 합의 법칙 : 사건 A 또는 사건 B가 일어날 경우의 수 => n(AUB) = n(A) + n(B) - n(A∩B) - 곱의 법칙 : 사건 A와 사건 B가 동시에 일어날 경우의 수 n(AXB) = n(A) X n(B) (1) - 합의 법칙 // 두 개..