전체 글 354

Android - Fragment (플래그먼트)

Fragments Fragment는 사용자 UI를 나타낼수 있는 하나의 Activity내의 모듈을 의미한다. 여러 Fragment가 모여 하나의 Activity를 구성하기도 하고, 하나의 Fragment가 여러 Activity에 사용되기도 한다. Activity내에 포함되는 모듈이다 보니 기본적으로 Activity의 Lifecycle을 따르게 되는데, 예를 들어, Activity가 pause되면 fragment 또한 pause되고, Activity가 소멸되면 fragment 또한 소멸 된다. 단지, Activity가 resumed 된 상태에서는 fragment 나름의 lifecycle을 가지게 된다. Fragment 추가 방법 in Activity Activity에 fragment 삽입하는 방법은 lay..

Android 2016.01.04

Android - Activity (액티비티) - Activity 이해 및 Lifecycle

. 일종의 App의 구성요소 . 사용자와 상호작용을 하기 위한 하나의 화면 (가득 채울 수도 있고, 다른 창 위에 작게 띄울 수도 있음) App은 여러개의 Activity가 묶여 있는 형태로 Main Activity가 있고, 이 Activity 가 App 실행시 기본적으로 표시되게 된다. App내의 각 Activity는 다른 Activity를 호출할 수 있고, 새로운 Activity가 호출될 때 마다 이전 Activity는 Stack에 보관하게 된다. 사용자가 Back key를 누르게 되면 이전 Stack에 보관된 Activity가 하나씩 resume 되게 된다. Activity Lifecycle 의 이해 우선 Activity는 기본적으로 3가지의 상태로 존재한다. Activity 상태 종류. Resum..

Android 2016.01.02

Android - App. apk 구성 요소 - (Activity, Service, Contents Provider, Broadcast receiver)

Java를 이용해서 Android app을 만들어 본 적은 있었지만 만들었다기 보다 인터넷에 돌아다니는 코드들을 내가 원하는 형태로 조합해서 엮어놓았다고나 할까. 전반적인 Android app에 대한 이해가 부족하여서 인지 간단한 프로그램은 작성이 가능했어도조금만 어려워지면 헤매는 시간이 많아졌다. developer.android를 보면서 정리를 좀 해 보았다. App. apk 기본 구성 요소Android app에는 4가지 기본 구성 요소가 존재한다.Activity, Service, Contents Provider, Broadcast receiver Activity-. 사용자 인터페이스가 있는 하나의 화면을 의미. Activity Class를 상속해서 구현. Service-. Background에서 동작..

Android 2015.12.30

javascript is eating the world.

언제부터 자바스크립트가 이리도 널리쓰였었는지 모르겠다.요즘은 Google Docs, WordPress 등의 서비스도 JavaScript로 구현되는 시대이다.(Node.js 라는 기술로 Server 쪽까지 cover되는 믿을 수 없는 세상이다.) 예전만 하더라도 자바스크립트는 일종의 web 을 위한 보조적인 역할을 하는 간단한 언어였다.자바스크립트를 할 줄 안다고 해도 별로 그다지 자랑거리는 못되었던 일이었다.그런데 언제부터인가 자바스크립트가 주언어 중의 하나로 자리매김하고 있다. "JavaScript is eating the world", Parse의 공통 창업자이자 CTO인 Kevin Lacker가 dublin에서 열린 web submit 에서 한 말이다.솔직히 kevin lacker가 누군지도 잘 모..

Language/Javascript 2015.12.23

cURL 을 사용하여 web browser와 동일한 결과 얻기

web server에서 data를 가져오는 coding을 하다보면web browser를 통해 data를 가져오는 결과와 library 혹은 command를 통해 가져오는 결과가 달라서 난감할 때가 있다. 추측해 보건데 header에 달린 element들의 값이 다르거나 없어서 web server에서 이를 인지하고 response를 주지 않기 때문으로 생각된다. 그렇다면 이런 문제가 발생할 때 마다 web browser에서 전달하는 html request 를 잡아서 내용을 분석하고command 혹은 library에서 최대한 비슷하게 header등을 구현해서 보내야 하는 것인가... cURL 이나 library 사용에 있어서 경험이 많고, html header에 대해 깊은 이해가 있다면 별로 큰일이 아닐 수..

Language/HTML 2015.12.22

ajax POST debugging 방법

Django framework를 server로 하고 ajax post 를 수행했는데, HTTP Response 500 (INTERNAL SERVER ERROR) 가 발생한다. [Client / Chrome Developer Tool (F12)] [Server / Django log] 그런데 500 INTERNAL SERVER ERROR 가 발생하는 건 알겠는데, ajax 여서인지 화면에 별다른 error로그가 출력되지 않고,서버또한 error log가 남지 않아 debugging이 어렵다. ajax post debugging1. Chrome 실행 2. 문제 상황 재현3. F12 - Developer option 실행4. Network tab 선택5. 아래 loading 된 리스트 중 Status 500 ..

Language/Javascript 2015.12.12

CRUD on mysql (select, update, insert, delete)

Software 의 기본적인 데이터 처리 기능을 통틀어 CRUD (Create, Read, Update, Delete) 라고 부른다.(Kilov, H[1990]의 논문에서 해당 용어를 최초로 사용하였다고 한다.) 기본적인 기능인 CRUD의 경우 mysql에서는 어떤 명령어에 mapping 할 수 있을까. 간단하게 표를 만들어보면 다음과 같다. SQL Create (생성) INSERT Read (읽기) SELECT Update (갱신) UPDATE Delete (삭제) DELETE mysql 기본 CRUD 명령어 사용예 (select, update, insert, delete)아주 기본적인 것이지만 sql을 직접 날릴일이 별로 없어서 할 때 마다 검색하게 되어 간략하게나마 사용예를 정리해 보았다. inse..

Database 2015.12.12

OSI(Open System Interconnection) 7 layers와 Internet protocol suite(TCP/IP)

OSI(Open System Interconnection) 7 layers는 Internet protocol suite(TCP/IP)와 무슨 관계인가? 우리가 network를 흔히 배운다고 하면 주로 듣는 용어가 있다. OSI 7 Layers (OSI 참조 모델)와 Internet protocol suite(TCP/IP) OSI 7 Layers도 network 계층을 표현하고 있고, 같은 맥락으로 Internet protocol suite(TCP/IP) 또한 network 계층을 표현하고 있는데,Network의 좀더 깊은 이해를 위해 서로 어떤 관계이고, 우리는 실제로 어떤 계층을 사용하고 있는지 확인이 필요하다. OSI 7 Layers 는 ISO(International Organization for ..

Network 2015.11.24

ajax를 이용한 async post data 저장

사용자가 grid(slickgrid) cell에 text 입력하면 해당 text가 서버의 database에 사용자 인지 없이 자동 저장되는 Logic 기본 구현 환경 -. Slickgrid -. mysql -. django Client Slickgrid 설정[templates/test/index.html] var columns = [... {id: "comment", name: "Comment", field: "comment", width: 300, editor: Slick.Editors.Text}, ]; var options = { editable: true,... };Slickgrid column 설정 및 option에서 editable 속성을 enable하고 editor를 설정해 준다. Ajax 설..

Language/Javascript 2015.11.16