본문 바로가기

전체 글

(278)
Spring 3 -- AOP A> AOP Aspect Oriented Programming 시스템 전반에 필요한 기능을 모듈화 시키고 비지니스 로직과는 분리하기 위한 프로그래밍이다. AOP는 횡단 관심과 연관이 있다. DI가 의존성에 대한 주입이라면 AOP는 핵심관심(= 비즈니스 로직)에 대한 주입이다 a. 횡단 관심 횡단 관심은 모든 객체에 필요한 요소이다. 시스템에서 엄청나게 중요하진 않지만 반드시 필요한 요소 혹은 대부분에서 필요로 하는 기능 등으로 말할 수 있다. 가장 좋은 예시는 Logging이다. 다른 예시로는 db 연동이 있다.
Spring2 -- 의존성(dependecy)과 의존성 주입 (DI) A>DI ,IOC 자바에선 객체들끼리 의존성을 가지고 있는 경우가 있다. 의존성의 가장 좋은 예는 new 생성자이다. new 생성자가 없으면 동작하지 않는 경우이다. B가 바뀌면 A도 바뀌어야 한다는 단점도 있다. 즉, 유지보수는 힘들어진다. 스프링은 객체들이 존재하는 컨테이너를 가지고 있고 예를 들어 A 객체가 B 객체를 필요로 할 때 객체들이 있는 컨테이너에서 B 객체를 생성해서 A에게 주입을 해주는 것이다. 그러면 의존성을 최소화 할 수 있다. B가 바뀌어도 상관이 없다. 어짜피 바뀐 객체도 컨테이너에 있다. A는 무언가 수정할 필요가 없다. 객체 생성에 있어서 주도권을 사용자가 가지는 것이 아니고 컨테이너가 가지고 있기 때문에 Inversion Of Control 이라는 개념으로 사용된다. DI ..
Spring framework 1 -- 간단한 설정 정보 1. root-context bean 을 등록하는 곳이다. root context 의 정보를 가지고 spring container 가 만들어진다. spring container 에서 등록된 bean 들에 대해 의존성을 주입해준다. 의존관계를 bean 그래프로 확인할 수 있다. 2. web.xml url 패턴을 정의 한다. url 패턴 3. pom.xml pom = Project Object Model 프로젝트에 대한 기본적인 정보 프로젝트에서 사용되는 라이브러리와 언어 정보 들이 xml 파일로 정의되어 있다. --xmlns = xml name space : 패키지의 개념이다. -- war :war = web archive war 파일로 패키징 하겠다는 뜻 4. project building tool : ..
동기와 비동기 통신 1. 동기방식 서버에서 요청을 보낼 때 그에 따른 응답이 돌아오면 다음 동작을 실행한다. 동기라는 말은 요청과 응답이 한자리에서 동시에 일어난다고 생각하자 동기식 전송은 정해진 수 만큼의 문자열을 한 묶음으로 만들어 일시에 전송하는 것이다. 이때 전송단위로 취급되는 데이터를 프레임이라고 한다. 프레임은 4부분으로 구성된다. 프레임의 시작을 알리는 부분, 프레임의 길이와 수신측 주소등의 정보를 가진 제어부분, 사용자 데이터를 담는 부분, 프레임의 끝을 알리는 부분 데이터를 전송할 때 시작비트, 휴지비트를 전소하지 않아도 되고 일반적으로 비동기 방식보다 오버헤드가 적고 , 고속의 데이터 전송이 가능하다. 하지만 각 비트에 대한 클럭 정보를 수신측에 전송해야 하기때문에 비용이 많이 든다. 데이터와는 별도로 송..
Ajax A> Ajax 란 Asynchronous Javascript And XML xml을 이용하여 비동기로 통신을 처리하기 위한 기술이다. XMLHttpRequest(줄여서 XHR) 객체로 구현한다. 자바스크립트를 이용한 비동기 통신을 위한 기술이라 생각하자 A-A>사용하는 이유? 웹페이지의 속도가 빨라진다. 서버에서 완료가 다 되지 않아도 처리가 가능하다. 데이터만 가지고 오면 되므로 코드의 양도 줄어든다. 비동기 통신으로 UI를 좋게 할 수 있다. A-B> 단점 히스토리 관리가 안된다. 연속적인 데이터 통신은 서버에 부담을 준다. 디버깅이 잘 안된다. CORS 문제도 있다. B>동기, 비동기 방식 통신 동기 동기 통신 환경에서는 송 수신측은 데이터를 전달받을 때 , 데이터를 전달받을 준비를 상시 하고 있어..
jQuery 10 - jQuery 모바일 A>jQuery moblie 모바일에서 보여지는 웹 페이지를 마치 휴대폰 앱 처럼 보여주는 jQuery 기반의 라이브러리 1. 앱의 종류 -- 네이티브 앱 : = 안드로이드 앱(apk 파일들) -- 웹 앱 : = 웹 기반의 어플리케이션 -- 하이브리드 앱 : =웹 + 네이티브 --폰 갭 : 잘 사용하진 않지만, 하이브리드 앱 만드는 툴 2.cdn --min 의 의미는 minimize == 압축했다는 뜻 3.data-role -- 보여줄 페이지를 설정 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 jQuery Mobile 첫 번째 페이지 ! 두 번째 페이지로 전환하기 ! copyright 2012 syj jQ..
jQuery 9 -- 유저 인터페이스(UI) A>날짜에 대한 UI http://jqueryui.com/demos/datepicker 에서 얻을 수 있다. B> jQuery UI는 플러그인 패턴을 기반으로 구축되어 있다. http://jqueryui.com/download에 가서 jquery-ui-1.8.16.zip 파일을 다운 받는다. 압축을 푼 후 jquery-ui-1.8.16.custom\js\jquery-ui-1.8.16.custom.min.js 파일을 js 폴더에 복사한다. 스타일시트를 적용 받으려면 jquery-ui-1.8.15.custom\css 폴더도 복사해 둔다 C> 드래그 앤 드롭 기능 구현 1 2 3 4 5 6 7 8 $("#draggable").draggable({opacity:"0.3"}); $("#droppable").dro..
jQuery8 --플러그 인 (plug in) A> 플러그 인이란 jQuery 자체를 확장해서 사용하기 위한 jQuery 라이브러리의 형태 speckyboy.com/free-jquery-plugins/ 50 Most Useful jQuery Plugins for Frontend Development As jQuery is extendable, there are many plugins freely available for almost every functionality you can possibly think of. We highlight the top 50 for you. speckyboy.com