일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- heroku
- JAVA11
- Easy
- input
- array
- 수학
- 자바 thread 실행 순서 제어
- 카데인 알고리즘
- Kadane's Algorithm
- hash table
- 사칙연산
- 자바 스레드 실행 순서 제어
- R
- SpringBoot 2
- scanner
- 자바입력
- Today
- Total
목록분류 전체보기 (192)
DeFacto-Standard IT
- 헝가리안 표기법 변수의 자료형을 변수명의 접두어로 붙인다. int자료형 + apple -> intApple String자료형 + name -> strName -Camel Casing https://en.wikipedia.org/wiki/CamelCase 소문자를 기본으로 사용하되, 구분되는 단어를 대문자로 연결. 그러나 첫 단어의 첫 글자는 소문자를 사용 appletree라는 함수 -> appleTree() -Pascal Casing 소문자를 기본으로 사용하되, 구분되는 단어를 대문자로 연결. 그러나 첫 글자도 대문자를 사용 (Camel Casing과의 유일한 차이점) appletree 라는 클래스 -> AppleTree -Java ( Camel Casing + Pascal Casing ) 1. 대소..
View를 모듈화하여, 필요한 view를 동적으로 배치한다. 마치 Composite 패턴처럼 view를 view들이 이루는 개념을 적용하였다. 장점 : 최종 view에 대한 전체적인 layout을 정의하고, 이 layout에 서브 view를 동적으로 삽입하여 보여주므로, layout에 해당하는 파일 하나만 수정하면 된다. 따라서 공통된 부분이 존재하는 view의 비율이 증가 할수록 재사용 성이 향상된다. 단점 : 공통된 부분이 없는 view의 비율이 증가할수록 복잡도만 증가한다.
- Servlet WAS 위에서 동작하는 Java 프로그램. 따라서 컴파일 후 웹서버에 올려야 한다. 자바 언어를 기반으로 동적인 Contents를 생성하는 기술. WAS를 통해 컴파일 된 후 메모리에 적재되어 Client의 HTTP Method 요청을 처리(doGet, doPost)하는 프로그램. Java코드 안에 HTML이 혼용되어 있다. (HTML in Java) 실제 화면 출력에는 거의 사용되지 않고, 컨트롤러 역할을 해야하는 부분에 사용한다. - JSP Java Server Page. 사용자의 요청을 받고 그에 대한 응답을 보여주기 위한 기술. 즉, 실제 화면 출력 부분을 담당한다. WAS에 의해 컴파일되어 Servlet파일로 생성되어 실행되는 구조는 Servl..
Hibernate ORM(Object Relation Mapping) MyBatis (SQL Mapper) 장점 영속화 코드 제거 -> 전체 소스길이 감소 -> 소스에 대한 이해와 리팩터링이 쉬워짐 -> 유지보수성이 향상 DB에 독립적 (간단한 경우에 한정하여) DB에 깊은 지식이 없어도 서비스 개발 가능. 이미 해외의 많은 개발자가 사용한다는 것은 안정성이 입증됐다는 반증. SQL기반 –> 초보도 금방 사용 가능 가독성이 좋기 때문에 인수인계의 난이도가 낮아진다. 단점 확실히 알고 쓰지 않으면 큰 피해를 입을 수 있다. -> 결국 객체지향과 RDBMS를 잘 알아야 함 배우기 어렵다 –> 협동개발 시 많은 사람이 알아야 하는 것도 문제. 복잡한 쿼리는 결국 native SQL을 알아야 함. 잘 만든 JD..
GET -> URL마지막 단에 ‘?’문자를 기준으로 모든 파라미터를 전달. 주소창에 값이 노출되기에 PW와 같은 민감한 정보를 전송하면 문제가 발생할 여지가 크다. URL길이 제한이 있기 때문에 많은 양을 전달할 수 없고 URL형식에 맞지 않는 파라미터 이름과 값은 인코딩하여 전달하여야 한다. 쿼리 등을 수행할 때 사용 * 하지만, 요즘 브라우저들은 GET 역시도 긴 문자열을 지원하기 때문에, 절대적인 것은 아니다. 즉, GET 방식의 문자열 길이 제한은 거의 옛말이 되어가고 있으며, 요즘은 '브라우저마다 다르다'고 할 수 있다. POST -> 전달하려는 정보가 HTTP Body에 포함되어 전달됨으로서 웹브라우저 사용자의 눈에 직접적으로 파라미터 노출이 안된다. 길이에 제한이 없다. 서버 혹은 DB의 값..
SOAP (Simple Object Access Protocol) REST (Representational State Transfer) 공통점 플랫폼과 프로그래밍에 독립적 장점 표준화 되어있는 기반 프록시, 방화벽에 구애받지 않음 분산 환경에 적합 에러 처리에 대한 내용이 기본적으로 내장 SOAP보다 개발하기 단순하고 배우기 쉬움 개발도구가 거의 필요 없음. 추가적인 메시징 계층이 없어서 가볍고 빠름 단점 개발 난이도가 높아 개발 환경의 지원이 필요 REST에 비해 무겁고 느림 복잡한 구조로 인한 오버헤드가 존재 HTTP프로토콜에서만 사용가능 point to point여서 분산 환경에 비적합 보안, 정책 등에 대한 표준이 없음
WEB 서버 : html, jpg, gif 확장자로된 문서나 이미지를 이용하여 정적인 페이지를 보여주는 것 ex) Apache, IIS, Nginx -> 클라이언트가 GET, POST, DELETE 등의 요청을 보내면 그 명령에 대한 처리를 실행, 리스폰스를 하는 역할. www를 사용하는 클라이언트에게 미리 저장된 하이퍼 텍스트를 제공하는 서버를 지칭 WAS : Container라는 용어로 사용되며, 동적인 페이지를 보여주는 서버 ex) tomcat -> 웹에서 사용하는 컴포넌트(EJB, Bean)들을 올려놓고 사용. 실제 처리해야하는 비즈니스 로직이 올라가서, 웹서버를 통해 들어오는 요청을 처리해서 돌려주는 형태가 일반적. 개발자가 해야하는 많은 일을 대신하기 때문에 개발속도 향상과 안정적인 시스템구성..
IOC – Inversion of Control 프로그램의 제어 흐름구조가 바뀌는 것. 기존에는 main()과 같은 프로그램이 시작되는 entry point부터 object를 결정/생성하고 object의 메소드를 호출하는 작업을 반복함. IoC는 자신이 사용할 object를 생성하거나 선택하지 않고 어떻게 만들어지고 어디서 사용되는지 알 수 없다. 이를 Container에 위임하고, Container는 Bean 설정 정보를 바탕으로 Bean을 만들어 DI하고 이로 인해 IoC가 이루어진다. 한마디로, 프로그래머가 new 연산을 사용해서 객체를 만들던 것을, @Autowired, @Resource 등을 사용해 프레임워크로부터 객체를 받아(DI) 사용하게 되는 상황 자체를 의미 DI – Dependency ..
Plain-old java object 평범한 자바 오브젝트. 기존의 EJB의 단점을 극복하고 장점은 그대로 취하는 방법 POJO 클래스는 몇 개의 필드와 getter, setter, contructor 등과 같이 최소한의 요소들로만 구성한다.