프로그래밍 536

안드로이드 - HashMap,HashTable,LinkedHashMap,ConcurrentHashMap

음...요새 자주 접하게 되는 Data Storage이다. 보통 형태로 put하고 get(key)를 통해 value를 가져온다. value에는 Bitmap, Class, Drawable....등등등을 넣을 수 있다. 현재까지 내가 파악한 MAP Interface에는 HashMap, HashTable, LinkedHashMap, ConcurrentHashMap 이다. 요요 세가지에 대해서 자세히 살펴보자^^ 1. HashMap VS HashTable 비동기화 VS 동기화 비동기화가 성능이 좋고, 동기화는 성능이 안좋다. 중요한 것은 HashMap 을 Multi Thread 환경에서 사용하면 안된다. 여러개의 Thread가 동시에 HashMap 을 건드려서 key, value 를 넣게 되면 문제가 발생 할 ..

안드로이드 - Android Handler 와 Timer(TimerTask) 를 활용한 Intro 화면 구성

안드로이드 화면구성을 할 때, 가장 먼저 구현해야하는 화면이 바로 Intro 화면 일 것 입니다. Intro 화면이란 현재 실행되는 어플의 첫 화면이 보여지는 화면을 말하는데요, 말 그대로 해당 어플의 성격과 컨셉을 대변해 주는 아주 중요한 화면 입니다. 이렇게 Intro 화면을 보여주고, 실제 Main 화면으로 이동할 경우, 보통의 경우 Handler에 postDelayed(Runnable r , long delayMillis) 란 메서드를 활용 하는데요. Handler를 사용한 방법 말고도 Timer와 TimerTask를 이용하여 화면을 이동 할 수 가 있습니다. 자 그럼 우선, Handler를 이용한 화면 전환 부터 확인해 볼까요? ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15..

안드로이드 - Bitmap OutOfMemoryError 해결책

메모리 부족. 안드로이드에서 OutOfMemoryError라 발생하는 가장 많은 경우는 비트맵 로딩때문이다. 안드로이드는 어플리케이션 프로세스별 메모리가 제한되어 있다.(16M, 24M, 32M 등) 문제는 위의 메모리 에러가 DDMS에서 가장 쉽게 확인할 수 있는 메모리 값인 VM Heap 사이즈와는 크게 상관없이 발생한다는 것이다. Bitmap을 로딩할 경우 VM 내의 힙메모리를 사용하는 게 아니라 VM 밖의 Native 힙메모리 영역을 사용한다고 한다. 그리고 BitmapFactory의 decode함수들은 메모리 Leak이 존재한다고 알려져 있다. 해결 방안 :: 1. 가용 메모리의 확인 - 아래 API들을 활용해서 Native Heap 값을 확인할 수 있다. Debug.getNativeHeapSi..

안드로이드 XmlPullParser 사용 예제

: 권한 필요 ( - androidmanifest 파일에 추가 필요 ? 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 ///////////////////외부url연결시/////////////////// String data = editLoc.getText().toString(); //한글을 인코딩해서 인터넷으로 내보내기 data = URLEncoder.encode(data, "UTF-8"); String requ..

PHP - flock 함수

flock 함수는 파일을 쓰거나 읽을 때, 또는 파일 잠금 해제 등 유닉스나 윈도우에서 작동합니다. 파일 작성중 다른 사용자의 사용의 접근을 차단하여 파일의 깨지는 문제를 예방할 수 있습니다. bool flock ( resource $handle , int $operation [, int &$wouldblock ] ) flock 함수는 다음의 상수를 사용할 수 있습니다. LOCK_SH LOCK_EX LOCK_UN 파일 읽기일 때 잠금 파일 쓰기일 때 잠금 파일 잠금 해제 사용방법은 다음과 같습니다.

프로그래밍/PHP 2013.11.29

PHP - mysql_num_rows 의미

mysql_num_rows (PHP 3, PHP 4 )mysql_num_rows -- 결과로부터 열 개수를 반환 설명 int mysql_num_rows (int result) mysql_num_rows() 함수는 결과셋으로부터 열의 개수를 반환한다. 이 함수는 SELECT절에서 반환된 결과셋만 사용이 가능하다. INSERT, UPDATE, DELETE로부터 열의 개수를 얻으려면 mysql_affected_rows()를 사용하면 된다. 출처 : http://www.hamslab.com/~man2/php4/function.mysql-num-rows.html

프로그래밍/PHP 2013.11.29

HTML - 셀렉트박스(select)

직업선택 학생 회사원 기타 태그와 태그로 구성됩니다. 직업선택 학생 회사원 기타 태그에서 사용하는 value 속성은 텍스트 필드에서의 value 속성과는 조금 틀립니다. 텍스트 필드에서 value 속성에 값을 입력하면 기본값이 입력되지만 태그의 경우는 이 이 선택된 경우 전송되는 값을 지정하는 것입니다. 위의 예제에서 학생을 선택된채로 폼을 전송했다면 job 필드의 value값은 의 value값인 "학생"으로 지정됩니다. 기본값으로 회사원이 선택되게 할려면 selected 속성을 사용해야 합니다. 직업선택 학생 회사원 기타 아래와 같이 회사원이 선택된채로 출력됩니다. 직업선택 학생 회사원 기타 은 HTML 4 버전에서 새로 만들어진 태그로 옵션에 카테고리를 만들 수 있습니다. 대부분의 웹브라우저에서 지원..

HTML - target blank, self, parent, top의 의미

보통 새로운 웹페이지를 여는 명령어에서 쓰입니다. 속성명이 target 이고 인수가 _blank, _self, _parent, _top 4개 중 하나가 들어가요. 예) html : 링크 as : navigateToURL ( new URLRequest( 'http://flashfriend.tistory.com'), '_blank' ) _blank 새 윈도우 창을 열어서, 웹페이지를 엽니다. 기존의 창은 그대로 남겨져 있스빈다. _self 현재 윈도우창에 그대로, 링크된 웹페이지를 엽니다. ( 현재의 프레임 ) _parent 현재 프레임의 부모 프레임에서 새웹페이지가 열립니다. 만약 어떤 창 A에서 창 ..

HTML - Frameset 이란

Frameset Frameset 이란 하나의 브라우저 창을 여러개로 분할하여 각각의 분할된 곳(Frame)에 문서를 하나씩 집어넣어 구성한 문서를 말합니다. 그러기 위해서는 그 분할된 곳 마다 들어갈 문서가 있어야 될 것이고 브라우저 창을 어떻게 분할 했는지에 대한 정보를 담고 있는 문서(Frameset page)가 있어야 되겠군요. 이렇게 문서를 분할하는 이유는 한 페이지로 구성했을 경우처럼 다른 문서를 볼 때 마다 화면 전체가 바뀌지 않고 분할된 특정 부분만 바뀌므로서 문서를 보는 사람이 안정감을 가지게 하자는 거죠. 이 사이트도 역시 그런 뜻에서 Frameset으로 문서를 구성했습니다. 하긴 요새 다시 한 페이지로 구성한 사이트가 유행이라고 하긴 하던데... 그래도 역시 Frameset으로 구성한 ..

반응형