본문 바로가기

공부/컴퓨터

(280)

[프로그래밍/팁] 59초 다음에는 60초일까? 0초일까? 다시 오랜만에 쓰는 프로그래밍 관련 팁. 별로 쓰일 일이 없고, 생각안하고 써도 크게 문제가 되지 않을 수 있는 부분이다. 최근의 IT 계열 뉴스에서 자주 올라오던 기사인데, 1초가 더 생겼으니 1초를 소중히 생각하자면서 나오던 뭐 그런뉴스와 관련되는것이다. ( http://www.dt.co.kr/contents.html?article_no=2008122202011757731006 ) 응? 근데 1초가 더 생긴다고? 어떻게 시간이 더 생길 수 있지? 그것이 바로 윤초의 문제이다. 2005년에 후지쯔 코리아 사이트에 올라온 공지를 보면 잘 설명되어 있다. ( http://www.fujitsu.com/kr/news/pr/notice20051230.html ) 귀찮으신 분들을 위해서 간단하게 정리하자면, 정의..
[Java/Tip] String.intern()은 메모리를 아낄 수 있다? 카페에 적었던글을 다시 옮겨 둡니다. ---- 안녕하세요. 찬 입니다. 오늘도 기초시리즈. String의 intern()에 대해서 이야기 해 보도록 하죠. intern() 에 대해서 알기 위해서는, 우선 String 자체에 대해서 좀 알아 봐야 합니다. String str1 = "Hello"; String str2 = "Hello"; String str3 = "Hello"; 이렇게 해 두면 str1과 str2와 str3는 모두 하나의 객체를 가리키고 있습니다. 왜 그런지 알아 봅시다. .java파일을 컴파일 하게 되면, .class파일이 만들어 지게 됩니다. .class 파일 안에는 현재 클래스의 정보가 들어있게 되겠지요. complie할때에 이미 저 문자를 사용해야 한다는것을 알수 있기 때문에 .cla..
[Java/Tip] Hashtable을 제대로 활용하지 못하는 경우... 기초시리즈입니다. 오늘은 Hashtable에 대해서 잠시 이야기해 보도록 하죠. Hashtable은 key를 이용해서 value를 꺼낼 수 있도록 해 주는 자료구조죠. Hashtable table = new Hashtable(); table.put("영화, "유쥬얼서스펙트); table.put("오락, "황금어장라디오스타); table.put("음악, "윤종신노래짱 ㅎㅎ); 뭐 이런식으로, 우선 table에 key와 value를 넣어 주고 String key = "영화"; String value = (String) table.get(key); "영화"를 key로 가지고 있는 value, 즉 "유쥬얼서스펙트"를 꺼낼 수 있도록 되어 있습니다. 보다시피 아주 간단한 방법으로 사용할 수 있습니다. 그래서 간단..
[Java/Tip] String.hashCode()는 유일한 값을 반환할까? 요즘에도 댓글이 달려, 내용을 좀 다듬었습니다. HashMap 내부 소개와 더불어 hashCode()에 대한 설명을 하려다보니 내용에 혼돈이 있었습니다. 해당 내용은 Java7 을 기준으로 작성된 내용입니다. Java 8부터는 내부 구현이 바뀌었을겁니다. ---------- 안녕하세요. 찬 입니다. hashCode()는 어디에 사용할까요? 우리가 일반적으로 Map이나 HashTable을 쓸때 다음과 같이 사용하지요. Map map = new HashMap(100); map.put("찬", new Person( Person.MEN, 29 ) ); map.put("철수", new Person( Person.MEN, 15) ); map.put("영희", new Person( Person.WOMAN , 13 )..
[Java/Tip] Specifc Debugging Tips for Swing - 4.2.1 Incorrect Threading 자바에서 Swing을 사용할때 별 생각없이 만들다 보면, EDT가 아닌곳에서 Swing Component에 대한 작업을 많이 하려고 한다. 다른 Thread에서 Swing Component에 대해서 어떠한 작업을 했을때, dead lock이 일어나기 전에는, 어느곳에서 그런것을 썼는지 일일이 알아 내기가 힘들다. Print 관련 자료를 찾다가 TroubleshootingGuide for Java를 발견해서 살짝 보았는데 참고해 두고 담에 체크할때 먹으면 좋아 보여서 긁어 놓는다. TroubleshootingGuide for Java SE 6DesktopTechnologies http://java.sun.com/javase/6/webnotes/trouble/TSG-Desktop/TSG-Desktop.pdf..
Character에서 나오는 hanzi, kanji 는 뭥미? Font 및 Character 관련글을 찾아보면, CJK에 대해서 많이 나온다. 여기서 CJK란 중국, 일본, 한국을 뜻한다. ( 아주 가끔씩 혹은 거의 그러지 않지만, CJKV라고도 하는데 V는 베트남을 이야기 한다. ) http://en.wikipedia.org/wiki/CJK CJK characters CJK is a collective term for Chinese, Japanese, and Korean, which constitute the main East Asian languages. The term is used in the field of software and communications internationalization. The term CJKV means CJK plus Vietn..
[책] 소프트웨어 컨플릭트 2.0 - 시대를 뛰어넘는 즐거운 논쟁 소프트웨어 컨플릭트 2.0 - 시대를 뛰어넘는 즐거운 논쟁 로버트 L. 글래스 지음, 박재호 외 옮김 바쁘게 돌아가는 소프트웨어 개발 업계에서 '늘 그래왔다'는 변명이란 이름으로 반복되는 오류를 한 번쯤 제거하고 싶었던 적이 있었다면 이 책에 귀 기울여 보자. 50년 실무 개발 경력자가 소프트웨어 개발 업계에 던지는 날카로운 비평과 시대를 뛰어넘는 논쟁의 세계로 여러분을 초대한다. 회사에 책을 신청해 구매 뒤 읽은 책이다. 이전에 소프트웨어, ... 개떡 ... ( Why software SUCKS...) 역시 신청해서 읽은책. 역사는 반복된다. ... 15년전에서 몇 발자국 벗어나지 못한 현재 상황을 바라보면서 심지어 절망을 느낄지도 모른다. 이 책은 1990년에 출판 되었다가 2006년에 재판되었다...
[책] 소프트웨어, 누가 이렇게 개떡 같이 만든거야. ( Why software SUCKS... ) 2-3주동안 아직 100페이지도 못본 책을 오늘 마음 먹고 읽었다. 원서의 제목은 다음과 같다. Why Software SUCKS... and what you can do about it. 소프트웨어, 누가 이렇게 개떡같이 만든 거야 - 사용성을 제대로 이해하는 유쾌한 통찰 데이비드 플랫 지음, 윤성준 옮김 왜 사용자가 소프트웨어를 사용하기가 어려운지를 사용성 문제에 관심이 있거나 관심을 갖기 시작한 초보 프로그래머, 웹 기획자, 관리자, UI 개발자, 웹디자이너, 웹 개발자, 컨텐츠 작성자, 마케팅.비즈니스 담당자 등에게 쉽게 알려주는 책이다. 어려울 수 있는 소프트웨어의 사용성 문제를 일반인이 읽어도 소화할 수 있을 정도로 쉬운 용어와 유머러스한 문체로 풀어냈다. 우선 확 눈길을 끄는 제목과 표지에 ..