Programming
-
[Web] SPA(Single Page Application)Programming/Web 2020. 4. 2. 16:26
기존의 웹 서비스 기존의 웹 서비스는 링크(앵커 )를 클릭하면 해당 페이지로 이동하게 된다. 앵커에 명시되어있는 자원(일반적으로 html)을 서버에 요청하고 응답으로 받으 내용을 브라우저에 표현하게 된다. 이런식으로 매 페이지 마다 서버에 문서를 요청하고 응답받아서 표현한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 MAIN main sub1 sub2 MAIN This is main page. Colored by Color Scripter cs 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 SUB1 main sub1 sub2 SUB1 This is sub 1 page. Co..
-
[JavaScript] call, apply, bindProgramming/Web 2020. 4. 1. 21:47
call func.call( this, arg1, arg2,... ) call 메서드는 모든 함수에서 사용할 수 있으며 this를 특정값으로 지정할 수 있다. - this : 지정 객체 - arg1, arg2 : 객체를 위한 인수 apply func( this, [ argsArray ] ) apply 메서드는 call의 역할과 완전히 같지만, 인수를 배열로 전달한다. - this : 지정 객체 - [argsArray] : 객체를 위한 인수 배열 bind func.bind( this, arg1, arg2,... ) bind 메서드는 함수의 this 값을 영구히 바꿀 수 있다. bind 메서드를 호출하면 this를 받으면서 새 함수를 리턴한다. - this : 지정 객체 - arg1, arg2 : 객체를 위..
-
[Java] CollectionProgramming/Java 2020. 3. 31. 23:03
List Interface List Inteface 구조는 데이터가 저장된 순서를 보장하며, 중복된 데이터 저장이 가능하다. 데이터를 저장하면 인덱스가 자동으로 부여되고 부여된 인덱스를 통해 데이터의 검색 및 삭제가 가능하다. 선형적 구조를 갖는다. (1) ArrayList 저장 용량 보다 많은 데이터가 들어오면 자동으로 용량이 늘어난다. 중간에 데이터를 추가하거나 삭제할 경우에는 인덱스가 한 칸씩 뒤로 밀리거나 당겨진다. (2) LinkedList LinkedList는 다음 데이터를 참조하는 포인터를 가지고 있다. 인접한 데이터를 링크하여 체인처럼 관리가 가능하다. 중간에 데이터를 추가/삭제하는 경우에 링크만 변경하면 되기 때문에 처리 속도가 빠르다. (3) Vector ArrayList와 동일한 구조..
-
[Web] Ajax 시작하기Programming/Web 2020. 3. 23. 20:01
Ajax란? Asynchronous JavaScript And XML을 말한다. 서버와 통신하기 위해서 XMLHttpRequest 객체를 사용하는 것을 말한다. AJAX를 통해서 JSON, XML, HTML 그리고 일반 텍스트 형식을 포함한 다양한 포맷을 주고 받을 수 있다. AJAX의 강력한 특징은 페이지 전체를 리프레쉬 하지 않고서도 수행되는 "비동기성"이다. 비동기성을 통해 사용자의 Event가 있으면 전체 페이지가 아닌 일부분만을 업데이트할 수 있게 해준다. 페이지 새로고침 없이 서버에 요청하면 서버로부터 데이터를 받고 작업을 수행한다. XMLHttpRequest JavaSctript를 이용하여 서버로 보내는 HTTP Request를 만들기 위해서는? 그에 맞는 기능을 제공하는 Object의 인스..
-
[Web] Accept와 Content-typeProgramming/Web 2020. 3. 18. 15:39
Request Header에서 Accept와 Content-Type `Accept`는 클라이언트가 서버에게 우린 이런 데이터 타입을 허용할거야 하고 알려주는 것 `Content-Type`은 클라이언트가 POST/PUT 방식으로 서버에 요청할 때 body 영역에 전달되는 form data의 데이터 타입을 서버에서 해석할 수 있도록 알려주는 것 서버에서 보내는 Response Header의 Content-Type도 마찬가지로 브라우저가 해석할 데이터 타입에 대해 미리 알려주는 것이다.
-
[Java] 토막글Programming/Java 2020. 3. 11. 23:39
변수 변수(Variable) 는 값(Value)이 저장된 메모리의 위치(주소)에 붙여진 이름 데이터를 저장하기 위한 메모리 공간으로 그릇에 비유할 수 있다. Java 자료형에는 기본 자료형(primitive type)과 참조형(reference type)이 있다. 자료형 기본 자료형에는 정수, 실수, 문자, 논리값 등과 같은 자료형이 있고, 참조 자료형에는 배열, 클래스, 인터페이스 등이 있다. 기본 자료형 변수는 그것이 나타내고자 하는 값을 가지고 있는 반면, 참조 자료형 변수는 값에 대한 메모리 주소를 가지고 있다. 리터럴 리터럴은 데이터 그 자체를 뜻한다. 변하지 않는 데이터를 의미하는 것 예를들어, int a = 1; 에서 a는 변수, 1는 리터럴이다. 문자열 리터럴은 이중 인용 부호(", ")로..
-
디자인 패턴과 아키텍쳐Programming/TIL 2020. 3. 7. 16:45
"MVC패턴을 적용하였고 3tier 구조로 되어있는 프레임워크를 갖추고 있다"라는 기술설명서는 우리나라에서 흔하게 접해볼 수 있는 애플리케이션 설명문이다. 아마 이 MVC와 3Tier는 엔터프라이즈급 산업에서는 가장 많이 채택되고 있는 구조일 것이다. 사실, 배울때에는 2개의 개념이 비슷하게 와 닿았다. MVC로 설명하나 3Tier로 설명하나 같은 말 같은데, 굳이 왜 두개의 개념을 다 써주는 걸까? 응.. 그렇다.. 이유가 있다. 한번에 써주는 데는 두 개념이 소프트웨어를 정의하는 관점이 다르기 때문이다. Software Achitecture 위키피디아에 설명된 SW 아키텍쳐에 관한 설명을 보면, 청사진으로 비유해 두었다. 그만큼 SW 아키텍쳐는 프로그램에 있어 기초이자 근본이다. 그리고 설계단계에서 ..
-
[Web] CGI, Servlet, JSPProgramming/Web 2020. 3. 6. 23:58
CGI > Servlet > JSP 는 다음 개념이 등장한 순서이다. 웹의 역사와 함께 각 개념들이 등장한 흐름과 정의를 알아보자. 처음 웹이 등장하고 활성화 되지 않았을 때는 정적인 데이터(HTML, XML, 이미지 파일 등)를 전달하는 것 만으로도 충분했다. 그러나 웹이 발달하면서 사용자와 상호작용하는 결과를 보여주는 동적인 페이지가 필요하게 되었다. 예를들어 이용자의 ID에 정보에 따라 그에 맞는 결과를 보여주는 페이지. 그러나 기존의 웹 서버는 정적인 페이지를 보여주는 용도로 만들었기 때문에 사용자의 요청을 받아 정보를 동적으로 생성하고 이를 다시 클라이언트로 보여주는 것이 불가능했다. 따라서 서버에서 다른 프로그램을 불러내고 그 프로그램의 동적인 처리결과를 클라이언트로 보내줄 수 있는 인터페이스..