• Ignite Seoul을 관람하다

    얼마 전 온오프믹스를 구경하다 11일에 Ignite Seoul 행사가 열린다는 것을 알게 됐다. 심심하기도 하고 여러모로 호기심이 생겨 관람 신청을 했다. Ignite는 20장의 슬라이드를 15초씩 자동으로 넘기며 5분간 발표하는 방식이다. 이그나이트에 대해 처음 알게 된 것은 소프트웨어공학 수업시간이다. 당시 교수님께서 특정 IT 주제를 가지고 해당 방식으로 발표하는 과제를 내주셨다. 아직도 준비하는...


  • select box의 option 찾기

    selected 된 option을 찾는 것이 아니라, 특정한 값을 이용해 해당 option을 찾아서 선택한다. 사용할 때마다 잊어먹어서 정리해 놓는다. <select id='testSelect'> <option value='1' testDay='20151107-1'>일</option> <option value='2' testDay='20151107-2'>이</option> <option value='3' testDay='20151107-3'>삼</option> </select> value 값으로 찾아서 선택하기 var test = "2"; $('#testSelect option[value='+ test +']').attr('selected', true); text 값으로 찾아서 선택하기 var test =...


  • 자바스크립트 정규식을 사용한 문자 치환

    문자열로 되어있는 시간의 차이를 구해야 하는 일이 있었다. 나는 replace 함수를 이용해 문자를 치환하여 값을 비교하는 방법으로 진행했다. var time = 06:25:11 .replace() time.replace(':', ''); // 0625:11 자바스크립트에서 replace 함수는 맨 처음 문자 하나만 치환한다. 모든 문자를 치환하는 자바의 replaceAll 같은 함수가 없다. 대신 정규식 표현을 이용하면 같은 효과를 얻을...


  • 제이쿼리 선택자 정리

    jQuery에서 태그와 같은 특정 객체를 선택하기 위해서 Selector(선택자)를 이용한다. 선택자의 종류가 다양하지만 경험이 적어 우선 사용해 본 선택자에 대해서만 정리해본다. 추후 하나씩 공부하면서 추가해나간다. <div> <ul> <li> child1-1 </li> <li> child1-2 </li> <ul> <li> child2-1 </li> <li> child2-2 </li> </ul> </ul> </div> .find() 특정 노드의 하위 노드에서 인자의 요소를 찾는다....


  • 브라우저의 창 크기 구하기

    현재 브라우저의 창 크기를 JavaScript의 Browser 객체를 이용해 구할 수 있다. XHTML 버전 표준이 없어 환경에 따라 다른 결과가 나올 수 있다. /* 창의 너비와 높이 */ document.body.clientWidth document.body.clientHeight /* 문서 전체의 너비와 높이 */ document.body.scrollWidth documnet.body.scrollHeight HTML5 버전 표준은 있지만 IE 구 버전에서 안될 수 있다. /* 브라우저 UI(윈도우...


  • 자바스크립트의 함수 (function)

    자바스크립트에서 함수를 설명할 때 first-class object(또는 citizen, value)라고 한다. 함수는 객체를 의미하고 변수, 배열, 객체에 저장될 수 있다는 뜻이다. // 함수 선언식(function declaration) function test() { } 함수 선언식은 스크립트가 로딩되는 시점에서 초기화를 하고 이를 VO(variable object)에 저장한다. 따라서 함수 선언 위치와 상관없이 소스 내 어느 곳에서든 호출이 가능하다. //...


  • 여성 IT인 대상 토크쇼, Women in SOS

    지난 8월 13일, 구글 캠퍼스 서울에 다녀왔다. Women in SOS (Software Oriented Society)에 참가하기 위해서인데, 여성 소프트웨어 주간 (SW Welcomes Girls)을 맞이해 한국정보화진흥원에서 개최한 여성 IT인 대상 특강/토크쇼이다. 구글 캠퍼스는 창업가들이 모여 훌륭한 아이디어를 바탕으로 미래를 변화시키는 공간이다. 그 중 구글 캠퍼스 서울 은 아시아 최초, 세계에서 세번째로 설립되었다. 내부에는...


  • 안드로이드 로딩 화면 구현하기

    로딩 화면을 구현하는 방법은 두 가지로 나눌 수 있는데, 로딩 화면을 메인으로 설정하는 방법과 메인 화면에서 로딩 화면을 호출하는 방법이다. 전자는 앱의 시작점을 로딩 화면으로 설정하는 것으로 LoadingActivity → MainActivity 순서로 실행된다. 후자는 기본 시작점인 메인 화면에서 로딩 화면을 호출하는 것으로 MainActivity → LoadingActivity → MainActivity 순서로 실행된다. 방법의 차이일...


  • Android Studio와 GitHub 연동

    그동안의 프로젝트에서는 소스 코드를 GitHub에 수동으로 관리하였다. 예를 들면 어느 정도 진행한 후, 프로젝트 폴더를 복사하고 로컬 저장소에 있는 기존 폴더를 지우고 붙여넣는다. 마지막으로 add, commit, push 작업을 진행해 원격 저장소에 보낸다. 매우 귀찮고 비효율적인 방법이다… 그래서 이번에 개인 프로젝트를 하면서 Android Studio와 GitHub를 연동하여 효율적으로 관리하려고 한다. 아래의 과정을...


  • 처음으로 오픈소스에 기여하다

    초보 개발자가 오픈소스에 기여하는 5단계 에서는 오픈소스 SW를 개발하는 개발자에게 도움을 주는 모든 행위가 오픈소스에 기여하는 일이라고 한다. 오류 제보부터 문서화 작업에 참여하는 일까지 포함된다고 한다. 며칠 전 참여하고 있는 프로젝트에서 사용할 WYSIWYG Editor의 홈페이지를 둘러보고 있었다. 사용법에 대해 천천히 읽고 있었는데 한 글자가 눈에 들어왔다. <!-- include libries(jQuery, bootstrap,...