본문 바로가기
[PHP] File Manipulation Tutorial PHP, File Manipulation Tutorial =====파일 열기 $fp = fopen( "$DOCUMENT_ROOT/../orders/orders.txt", "w" ); - $_SERVER['DOCUMENT_ROOT'] 는 웹 문서 트리의 루트를 가르킨다. - 경로를 나타낼 때, / 를 쓰는 것이 좋다. \ 는 윈도우즈에서는 사용할 수 있지만, Linux 에서는 \\ 로 인식시켜야 하기 때문. - file mode 는 다음과 같다.rr+ : 읽고 쓰기 위함.ww+ : 읽고 쓰기 위함.x : 경고 쓰기, 만일 파일이 있을 경우 파일을 열지 않고, fopen() 이 false 를 반환하고 PHP 는 경고x+ : 파일을 읽고 쓰기 위함.a : 추가 모드, 파일을 추가 쓰기 위해 연다.a+ : 파일.. 2013. 12. 30.
[android] OutOfMemoryError : bitmap size exceeds VM budget 을 해결해보자!!! 안드로이드, OutOfMemoryError : bitmap size exceeds VM budget해결해보자!! OutOfMemoryError: bitmap size exceeds VM budget 해결방법 #1 메니페스트의 applicaation tag 에 android:largeHeap="true" 를 준다.이 경우 원래보다 더 큰 용량의 힙 사이즈를 사용할 수는 있지만,GC 시간이 더 오래 걸리는 등의 문제가 생기기 쉽다.게다가 정확한 heap increase 가 보장되지 않는다. 결국 완벽한 solution 은 되지 못하고, 아주 특수한 상황에 한번씩 엄청난 양의 heap size 가필요할 때만 쓸 수 있는 미봉책정도가 되겠다. OutOfMemoryError: bitmap size exceeds .. 2013. 12. 13.
HDR+ 가 뭐야? ( 4.4 kitkat 킷캣에 적용된 camera algorithm ) HDR+ 가 뭐야? ( 4.4 kitkat 킷캣에 적용된 camera algorithm ) HDR+ High Dynamic Range Photography.Sharpening algorithm.아주 어두운 곳에서 혹은 너무 밝은 곳에서 제대로 사진이 찍히도록 해준다. 여러 제조사들에서도 HDR 방식을 이용하여 선명한 사진을 찍도록 도와주고 있지만, 이번에 안드로이드 KitKat ( 킷캣 )공개된 HDR+ 방식은 edge 부분을 별다른 noise 추가 없이 매우 sharp 하게 만들어준다. 물론 단점도 있다. HDR+ 모드가 켜져 있으면 사진 찍히는 속도와 process 속도가 조금 더 걸린다. 다른 노출정도로 여러장의 사진을 찍어 겹쳐서 결과물을 생성하기 때문이다. 약간의 과장은 있겠지만 대충 이런 느낌.. 2013. 11. 26.
[PHP Tutorial] 문자열 연산과 정규 표현식 PHP Tutorial, 문자열 연산과 정규 표현식 ======= 문자열 다듬기 trim(), ltrim(), rtrim() ( rtrim 은 chop 과 같다. ) =======문자열 정돈 nl2br()\n 을 또는 로 변환시킨다. =======대소문자 바꾸기 strtoupper()strtolower()ucfirst() 문장의 처음이 알파벳이면 그것만 대문자ucwords()각 단어의 첫 알파벳을 대문자로 =======데이터베이스 저장 위한 문자열 다듬기 addslashes()stripslashes() php 설정에 따라서 자동으로 \ 를 추가해주는 경우도 있긴 하다.설정의 magic_quotes_gpc 에 의해 제어된다.여기서 gpc 는 GET, POST, Cookie 의 앞글자.get_m.. 2013. 11. 11.
[android] how to improve the performance of WebView Android, How to improve the performance of WebView webview 의 성능을 향상시키기 위해 여러가지 이야기가 돌아다니는데, 가장 general 하게 통용되는 녀석은 cache 를 쓰지 않는 방법으로 보인다. WebView.getSettings().setCacheMode( WebSettings.LOAD_NO_CACHE ); 사실 Cache 를 쓰는것은 성능상의 이슈 때문인데..안드로이드 프레임워크상의 에러인지, 아니면 모바일 단말의 특성상 cache 처리를 위해 여러번의 network connection 을 하지 않고, 무조건 한번에 가져오는 것이 빠른것인지 ( contents 사이즈가 작다는 가정 하에 ) 정확한 이유는 알 수 없지만, 여튼 Cache 를 사용하지.. 2013. 9. 26.
[android] Data 안전하게 저장하기, 안드로이드, Data 안전하게 저장하기. SharedPreference 와 SQLite 만 사용한다면 별로 걱정할 일이 없다.만약 File I/O API 를 직접 이용하면 문제가 된다.ext4 파일 시스템은 YAFFS ( 과거 안드로이드가 채택한 파일 시스템 ) 에 비해 훨씬 적극적으로 버퍼를 활용한다. 따라서 write() 와 close() 메서드를 호출했다고 해서 데이터가 실제 플래쉬 메모리에 저장되었다고 단언할 수 없다. 따라서 데이터를 저장할 때는 RandomAccessFile 의 synchronous 모드를 사용하는 것이 좋다. 이렇게 사용하면 내부적으로 fsync() 를 호출한다. FileOutputStream 을 사용하게 되면 다음과 같이 sync 를 시켜주어야 한다. public stati.. 2013. 9. 25.
[android] FragmentPagerAdapter? FragmentStatePagerAdapter 사용도 고려해보자. 안드로이드, FragmentPagerAdapter? FragmentStatePagerAdapter 사용도 고려해보자. FragmentPagerAdpater 나 FragmentStatePagerAdapter 를 사용할 때는 사실 가장 좋은 방법은 getItem() 부분만 잘 구현하고, instantiateItem() 은 건들지 않는 것이 좋다. 만약 건들고 싶다면, ViewPager 가 이 PagerAdapter 들을어떤 방식으로 호출하고, 어떤 루틴을 타는 지 정확히 이해하고 사용하는 것이 좋다. 사실 instantiateItem(), destroyItem(), 그리고 isViewFromObject() 는 이들보다 상위 class 인 PagerAdpater 자체에 정의되어 있는 함수들이다. 그리고 Fra.. 2013. 8. 7.
[Java] SparseArray 뭐하는 녀석이야? SparseArray 뭐하는 녀석이야? 쉽게 이야기하면 Integer, Object pair 를 hash 하는 HashMap 요 녀석과 같다고 볼 수 있다.일반적인 List 는 index 가 순차적으로 가지만, SparseArray는 HashMap 의 개념이라 순차적이 아니어도 된다. 그리고, Integer, Object HashMap 에 비해 높은 성능을 보여주는 녀석이다. 참고사이트 : http://developer.android.com/reference/android/util/SparseArray.html Android, HashMap, integer, Key, object, Performance, sparsearray, Value, 성능, 성능 비교, 안드로이드 2013. 8. 6.
[android] FragmentPagerAdapter 사용방법 안드로이드, FragmentPagerAdapter 사용 방법 ViewPager 를 사용할 때, 이 녀석도 List 종류와 마찬가지로 adapter 를 사용할 수 있다. FragmentPageAdapter 보통 ViewPager 는 Fragment 와 혼합해서 사용하기 때문에, 대중적으로 사용되는 것은 FragmentPagerAdapter 이다.다른 Adapter 와 마찬가지로 FragmentPagerAdapter 를 상속하는 class 를 하나 만들어주고 그곳에서 public ViewPagerAdapter( FragmentManager fm )public Fragment getItem( int position )public int getCount() 를 override 해주면 된다. PagerAdapte.. 2013. 7. 23.
반응형