일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- jquery
- select
- 백준
- json
- cas알고리즘
- 다중db cqrs
- 백준 11660번
- 단일db cqrs
- Java
- 구간합
- 3정규화
- @Retryable
- 멀티스레드
- 2차원배열 구간합
- sop 우회
- 교차 출처 리소스 공유
- function test
- 생성자
- 1정규화
- lock-based
- segregation
- this
- cross origin resources sharing
- SQL
- 2정규화
- map()
- 트랜잭션 동시성 이슈
- Bean LifecCycle
- ajax
- 구간합구하기
- Today
- Total
목록JAVA (64)
평범한 연구소
람다식 람다식이란 ? 메소드를 하나의 식으로 표현한 것으로 익명함수 라고도 함 메소드의 매개변수로 전달 가능, 메소드를 결과로 반환도 가능 원래 자바는 익명 클래스를 이용하여 익명 구현 객체를 사용했음. 이를 함수형 프로그래밍을 도입하면서 간단하게 표현할 수 있는 방법이 람다식 ! 람다식은 함수형 인터페이스에 접근하여 사용된다. 보통의 메소드가 아닌, 함수이다 메소드: 클래스의 종속적 함수: 어느 곳에도 종속적이지 않음 1급 객체이므로 Stream API 매개변수로 전달 가능 final이 붙지 않아도 상수로 간주된다 익명 클래스 객체와 동등함 람다식의 장단점 장점 불필요한 코드를 제거하여 간결해짐 코드가 간결해지고 개발자의 의도가 명확하게 드러나므로 가독성 향상 함수를 만드는 과정 없이 한 번에 처리할 ..
Thread Process 실행 중인 프로그램 프로그램을 실핼하면 OS로부터 실행에 필요한 자원(메모리)을 할당받아 프로세스가 됨 프로그램을 수행하는 데 필요한 자원(데이터,메모리), 쓰레드로 구성됨 Thread 프로세스의 자원을 이용해서 실제로 작업을 수행 Multi Thread 하나의 프로세스 내에서 여러 쓰레드가 동시에 작업 수행 장점 CPU 사용률 향상 자원을 효율적으로 사용 사용자에 대한 응답성 향상 작업이 분리되어 코드 간결 단점 동기화 (Synchronization) 교착상태 (deadlock) 두 쓰레드가 자원을 점유한 상태에서 서로 상대편이 점유한 자원을 사용하려고 기다리느라 진행이 멈춰있는 상태 서버 프로그램 여러 사용자에게 서비스해줌 → 멀티쓰레드로 작성하는 것 필수! 하나의 서버 프..

package boj; import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.*; public class Ex1235 { public static void main(String[] args) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); try { int n = Integer.parseInt(br.readLine()); Map map = new HashMap(); String[] input = new String[n]; int result = 0; // 학생 수 만큼 문자열 배열에 학생 번호 저장 for (int i = 0;..
this 인스턴스 자신을 가리키는 참조 변수 this() 생성자 this class Car { String color; // 인스턴스 변수 int gearType; Car(String color, String gearType) { this.color = color; this.gearType = gearType; } } this 는 생성자의 매개변수로 선언된 변수 이름과, 인스턴스 변수 이름이 같을 때 구분하기 위해 사용한다. this.color 는 인스턴스 변수 color 는 매개변수로 정의된 지역변수 static 메서드에서는 this 를 사용할 수 없다. `` this() class Car { String color; // 인스턴스 변수 int gearType; Car(String color, Stri..
상속 기존의 클래스를 재사용하여 새로운 클래스를 작성하는 것. 상속의 장점 적은 양의 코드로 새로운 클래스 작성 가능 코드를 공통적으로 관리할 수 있어서 코드 추가 및 변경 용이 코드를 한 곳에서 관리함으로써 중복 제거, 유지보수 용이, 일관성 유지 가능 중복된 코드를 수정할 때 바르게 변경되지 않은 곳이 있으면 오동작 가능성 O extends 키워드 사용 자손 클래스가 변경되어도 조상 클래스에 아무런 영향 X 공통으로 추가되어야 하는 멤버는 클래스에 각각 추가하는 것보다, 공통 조상 클래스에 추가하는 것이 좋다. 포함 한 클래스의 멤버변수로 다른 클래스 타입의 참조변수를 선언하는 것 하나의 거대한 클래스 작성보다, 단위별로 여러 개의 클래스를 작성하고 이 단위 클래스들을 포함 관계로 재사용하면 간결하고..
의사코드 (Pseudo-code) 란? - Java에서 프로그래밍 및 알고리즘 기반 필드에 사용되는 용어. - 알고리즘을 표현하는 방법 중 하나. - 자연어를 이용해 만든 문장을 프로그래밍 언어와 유사한 형식으로 배치한 코드 - 정해진 기준이나 문법은 없다. 의사코드의 장점 ? - 개발자가 이해할 수 있는 코드와 자연어의 중계 역할 - 코드를 읽고 디버깅을 하거나 내용을 수정해야하는 개발자에게 도움을 줄 수 있음 - 알고리즘을 실행 가능한 코드로 옮길 때 높은 편의성을 제공 - 테스트, 디버그 수정 단계에서 작업하는 것 보다 의사코드 설계 단계에서 미리 오류 수정하는 것이 경제적. - 프로그램의 흐름에 대해 소통하기 편리 의사코드 예시 if 첫메일수신일 > 결제일 then 환불 불가 문구 표시 else ..