분류 전체보기 183

언어 기본 개념, 변수? 상수?

프로그래밍 언어의 기본개념, 이번 포스팅에서는 변수와 상수에 대해서 알아 봅시다. 1. 변수 (variable) 변수는 말 그대로 변할 수 있는 수 라는 말입니다. 그렇지만, 프로그래밍 언어에서 변수는 실질적으로 변할 수 있는 값을 넣을 수 있는 저장 공간이라고 생각하면 되겠죠. 예를 들어, myVar 라는 이름의 변수가 있다면, 이 myVar에는 값을 여러번 바꾸어 넣을 수 있습니다. myVar는 어떤 값을 넣을 수 있는 공간에 대한 이름이 되기 때문에, '변수명' 또는 '변수이름' 이라고 부릅니다. 예를 들어 볼께요. 이렇게 해당 값을 언제든지 바꿀 수 있기 때문에 변수라고 부릅니다. (물론 변수를 사용하는 방법은 각 언어마다 다릅니다만, 개념은 같습니다.) 2. 상수 (constance) 상수는 변..

Swift 기초 #01 - 스위프트 언어?

스위프트(Swift) 언어... 뭐 들어본 분도 있을것이고, 처음 듣는 분도 있을 것이고... 하지만 여기까지 찾아 오신걸 보니 처음 듣는 분은 아닐것 같습니다. 스위프트는 2014년 (올해죠?) 애플이 발표한 새로운 프로그래밍 언어입니다. WWDC2014(애플이 매년 개최하는 개발자 컨퍼런스)에서 발표되었죠. 지금까지 MacOS X이나 iOS용 어플리케이션을 개발하려면, 주 사용 언어로 오브젝티브C(Objective C)를 사용해야 했습니다. 정말 오래된 언어이긴 하지만, 최근까지 애플은 현대식 프로그래밍 언어의 기능을 추가해 가며 오브젝티브C를 발전시켜오고 있었죠. 사실, 오브젝티브C를 가지고도 잘 개발해 왔습니다. 그런데 갑자기 왜 애플은 스위프트라는 새로운 언어를 만들었을까요? 잘은 모르겠습니다만..

이미지 파일의 크기를 줄이자, ImageOptim

이번에는, 맥OS X에서 사용할 수 있는, 이미지 파일 사이즈를 줄일 수 있는 소프트웨어를 소개합니다. 웹개발이나 웹 블로그를 하시는분, 모바일 게임이나 앱 개발하시는 분들은 어떻게든 이미지 크기를 줄이려고 많이들 노력하죠. 웹의 경우 이미지 크기가 크면 운영하는 입장에서는 서버 공간도 많이 차지하고, 트래픽도 쓸데없이 늘어나고, 사용자 입장에서는 쓸데없이 느려지는 단점이 있기 때문이죠. 모바일 앱이나 게임의 경우에도 단말기의 저장 공간이 한정되어 있고, 앱스토어에서 다운로드 받는데도 영향을 주기 때문에 큰 사이즈를 싫어합니다. 전문 이미지툴을 사용하여 이미지 파일 크기를 줄일 수도 있지만, 비용도 비용이고 사용법도 알고 있어야 하는 단점이 있죠. 그래서...간단한 툴을 사용하면 쉽게 해결할 수도 있습니..

간단한 PDF 편집, 무료로 쉽게 - 온라인 PDF 툴 smallpdf

PDF 편집기라고 하면 대체로 많이 쓰는 툴이 꽤 가격이 나가는 툴일 것입니다. 물론, 그런 툴들은 그만큼 기능도 많고 충분히 그 가치가 있을 것입니다. 그렇지만, 일반적으로는 보통 PDF를 생성하고 (물론 간단한 생성 자체는 요즘 좋은툴들이 있습니다. PDF Creator 라든지, 무료인 doPDF 등), 붙이고, 자르고 하는 간단한 작업일텐데, 그런 간단한 작업을 위해 그런 툴을 사용한다는 것은 낭비가 아닐까 싶네요. 그런 간단한 PDF 편집을 위한 무료 웹툴이 있어 소개합니다. smallpdf 라는 툴인데요, 웹상에서 바로 작업하는 웹툴입니다. 기본적으로 PDF 생성 (PDF 변환), PDF 압축, PDF 병합, PDF 분할, PDF 잠금해제(PDF 암호풀기)등을 간단하게 할 수 있습니다. (출처:..

Cocos2d-x 3.3 정식 버전 발표

오픈소스 모바일 게임 엔진으로 강점을 나타내고 있는 cocos2d-x의 새 버전이 발표되었습니다. 추콩 테크놀러지가 2014년 12월 15일, cocos2d-x.org을 통해 cocos2d-x 3.3 정식 버전 출시를 발표했습니다. 이번 버전은, 사이즈가 더 작아졌고, 3D 기능을 더 추가했으며, 새로운 오디오 엔진을 장착했다고 하는데요, 사실상 안드로이드 5.0 지원(NDK r10c 사용해야 함)과 iOS의 64비트지원도 중요한 변경사항이라고 생각됩니다. (출처 : cocos2d-x.org) 해당 소식은, http://cocos2d-x.org/news/387 에서 볼 수 있으며, 릴리즈 노트는 https://github.com/cocos2d/cocos2d-x/blob/v3/docs/RELEASE_NOT..

구글, 안드로이드 스튜디오 1.0 정식 버전 공개!

드디어 구글이 약 2년간의 시험기간(알파, 베타, RC)을 끝내고, 2014년 12월 9일자로 정식 안드로이드 스튜디오(Android Studio) 1.0 정식 버전을 출시했습니다. 안드로이드 툴즈 프로젝트 사이트에 의하면, (http://tools.android.com/recent/androidstudio10released) '2년간의 개발 기간 이후, 마침내 안드로이드 스튜디오 1.0을 릴리즈 하였음을 소개하게 되어 매우 행복하다'고 전했습니다. 안드로이드 스튜디오는 IntelliJ IDEA Community 에디션을 기반으로 만들어졌으며, 매니아 층에서는 구글에서 지원해 주기 전에도 인텔리J IDEA의 편리함 때문에 사용하는 유저들이 있었다고 합니다. 그동안 베타 버전임에도 불구하고 이클립스에서 안..

인디게임 오픈 플레이 데이 개최 (Open Play Day)

인디 게임이라고 들어 보셨나요? 음악에 인디 음악이 있고, 영화도 독립 영화가 있듯이 게임에도 인디 게임이 있습니다. 인디 게임은 대체로 소규모(1인 개발자도 많죠)의 개발팀에서 독특하고 다양한 형태의 게임을 만들어 가고 있습니다. 2014년 12월 5일, 코엑스 그랜드볼룸에서는 오픈 플레이 데이가 열렸습니다. 오픈 플레이 데이에 대해서 소개 팜플릿에서는 "행사에 참가한 게임들을 자유롭게 즐기고 게임을 개발한 개발자와 게임에 대해서 이야기 나눌 수 있는 개발자와 유저 간의 커뮤니케이션 파티"라고 설명하고 있습니다. 저도 1인 게임개발을 하고 있는 사람중 하나이지만, 플레이어로서 참관하게 되었습니다. 이 행사는 각각 약 1시간 20분씩 세개의 라운드로 나뉘어 진행되었고, 각 라운드에는 약 15개 가량의 팀..

아이패드 에어2, 아이패드 미니3 한국 예약판매 시작 (비교)

2014년 11월 28일 오늘부터 지난주에 전파인증이 완료된 것으로 알려진, 아이패드 에어2와 아이패드 미니3의 한국내 정식 판매 예약이 시작되었습니다. 현재 예약은 KT와 SK텔레콤을 통해서 이루어 지고 있습니다. (아직 공식 애플 온라인 스토어에는 올라와 있지 않네요.) 또, 애플 리셀러중 한곳인 프리스비에서도 예약판매를 시작했네요. 그렇지만, 판매처에 따라 조건들이 차이가 있는것 같습니다. 우선 KT의 경우 (http://shop.olleh.com)는, 기본할인에 KT 사용자라면 별포인트를 추가로 사용할 수 있는데, 둘을 합치면 할인폭이 상당한 것 같습니다. 예를 들어, 와이파이 iPad Air 2 16GB 모델의 경우, 소비자가가 60만원인데, 기본할인에 별포인트를 최대한 사용하면, 52만9천원까..

ADV 커널 컨피그레이션 에러

안드로이드 스튜디오를 사용해 보기 위해, 설치하고 (0.8.9 베타) 가상 안드로이드 장치를 만들어 실행해 보았으나 아래와 같은 에러 메시지가 나타났습니다. 내용은 아래와 같은데요... Starting emulator for AVD 'Nexus_4_768x1280_5_4.4.2_ARM' emulator: ERROR: This AVD's configuration is missing a kernel file!! 해결해 보려고 여러 방법을 시도해 보고, 구글도 한참 찾아 헤매다 성공한 방법이 있어서 포스팅합니다. 증상은 같지만, 상황이 다른지 다양한 해결책들이 검색되었지만, 제 경우는 이 방법만 성공하더군요. 제가 사용한 해결 방법에 대해서는, http://stackoverflow.com/questions/8..

[node.js] 나의 node.js 코드 pm2로 실행 및 부팅시 자동실행 (우분투)

node.js로 프로그램을 만들면, 한가지 단점이 코드에 문제가 있거나 예외가 발생할 경우, 예외를 잡아 주지 않으면 프로그램이 죽어버린다는 점입니다. 그래서 많은 분들이 forever를 사용하여 node.js용 프로그램을 실행하고 있을 것입니다. (forever는 Keep Alive라는 특성을 지원해서 node.js 프로그램이 죽으면 다시 재실행시켜 주는 기능이 있습니다.) 그러나, 웹 검색을 해보니 forever를 대체할 수 있을 만한 프로그램으로 pm2라는 것이 있더군요. forever와 비교해서 지원하는 기능도 많고 텍스트 UI도 깔끔하여(비교 포스팅으로 http://devo.ps/blog/goodbye-node-forever-hello-pm2/ 참조), 이 포스팅에서는 pm2를 사용해 보도록 하..