프로그래밍

  • 프로그래밍

    아스키 코드표

    컴퓨터에서 정보 교환용으로 사용되는 코드로 지금은 유니코드가 표준이지만 유니코드가 나오기 전에는 여러 가지 코드가 혼재돼서 사용되었다. 그 중 아스키코드가 거의 표준 코드로 사용되었으며, 유니코드에도 아스키코드가 0x0001~0x00ff까지를 채우고 있다. 10진수 16진수 문자 10진수 16진수 문자 10진수 16진수 문자 10진수 16진수 문자 0 0x00 NUL 32 0x20 Space 64 0x40 @ 96 0x60 ` 1 0x01 SOH 33 0x21 ! 65 0x41 A 97 0x61 a 2 0x02 STX 34 0x22 “ 66 0x42 B 98 0x62 b 3 0x03 ETX 35 0x23 # 67 0x43 C 99 0x63 c 4 0x04 EOT 36 0x24 $ 68 0x44 D 100 0x64 d 5 0x05 ENQ 37 0x25 % 69 0x45 E 101…

  • 프로그래밍

    파이썬과 Qt로 GUI 앱 만들기

    파이썬을 이용해 GUI 앱을 만드는 방법은 몇 가지가 있는 것 같다. 그 중 Qt를 파이썬에서 사용할 수 있도록 해주는 프레임워크인 PySide를 가지고 GUI 프로그램을 만드는 방법을 적어본다. 필요한 도구는 다음과 같다. 우선 파이썬을 설치하고 윈도우 환경변수인 Path에 Python.exe 파일이 있는 경로를 추가한다. 다음으로 아래와 같이 pip를 이용해 PySide2와 PyInstaller를 설치한다. 마지막으로 PyCharm을 설치한다. PyCharm은 JetBrains의 IntelliJ를 기반으로 만들어진 Python 통합개발환경(IDE)이다. JetBrains 홈페이지에 가서 메뉴의 Development Tools에서 PyCharm을 선택하면 나오는 페이지에서 아래로 내려 community 버전을 다운로드해서 설치한다. 다음으로 PyCharm을 실행하고 나오는 첫 화면에서 왼쪽 메뉴의 <Customize>를 누르고 Color theme와 적당한 IDE font를 설정하고, 아래쪽에 있는 all settings…을 누른다. 중간에 Editor 항목을 누르고, Font에서 에디터에 사용할 폰트와 글씨 크기를 설정한다. PyCharm은 다른…

  • 프로그래밍

    안드로이드 버전과 SDK 레벨

    버전 버전명 API 레벨 Android 1.0 Base 1 Android 1.1 Base 2 Android 1.5 Cup Cake 3 Android 1.6 Donut 4 Android 2.0 Eclair 5 Android 2.0.1 Eclair 6 Android 2.1 Eclair 7 Android 2.2 Froyo 8 Android 2.3 Ginger Bread 9 Android 2.3.3 Ginger Bread 10 Android 3.0 Honey Comb 11 Android 3.1 Honey Comb 12 Android 3,2 Honey Comb 13 Android 4.0 Ice Cream Sandwich 14 Android 4.0.3 Ice Cream Sandwich 15 Android 4.1 Jelly Bean 16 Android 4.2 Jelly Bean 17 Android 4.2 Jelly Bean 18 Android 4.4 KitKat 19 Android 4.4W KitKat 20 Android 5.0 Lollipop 21 Android 5.1 Lollipop 22 Android 6.0 Marshmallow 23 Android…

  • 컴퓨터,  프로그래밍,  서버와 호스팅

    QNAP NAS 보안에 따른 admin 계정 사용하지 않기 관련 처리할 부분들

    보안을 위해 admin(root) 유저를 사용하지 말라는 보안 지침이 있다.이를 위해 다른 유저를 만들어 관리자 그룹에 넣고, admin 유저는 사용하지 않음으로 변경하는 것으로 이 부분을 만족시킬 수 있다.일단은 NAS에 웹브라우저로 접속해 제어판의 권한탭에서 사용자를 선택하면 사용자 관리창이 새로 뜬다. 사용자 관리창에서 만들기->사용자만들기를 누르고 새로 나오는 창에서 새로운 사용자에 관한 정보를 입력하고, 공유폴더 권한과 애플리케이션 권한을 모두 주고서 저장한다. 사용자 관리창에서 다시 한 번 공유폴더 권한과 애플리케이션 권한을 확인하고 admin 계정을 로그아웃하고, 새로 만든 사용자 계정으로 로그인해서 관리자가 할 수 있는 일들이 잘 되는지 확인한다.만약 새로 만든 계정으로 안되는 것이 있다면 다시 admin으로 로그인해서 권한 설정을 점검해본다. (이 부분은 조금 뒤로 미루고 뒷부분을 읽고 처리한 후에 설정하자)이상이 없다면 다시 사용자 관리창에서 admin의…

  • 프로그래밍

    Intel HAXM 설치 후 동작하는지 확인하기

    안드로이드나 타이젠 에뮬레이터를 띄우려면 상당한 리소스와 시간이 소요된다. 이걸 더 원할하게 할 수 있도록 도와주는 역할을 하는게 Intel HAXM인데 설치를 해도 백그라운드에서 조용히 돌아가는 프로그램이라 그냥 봐서는 잘 동작하고 있는지 확인할 수가 없다. 이때는 커맨드 창을 열고 다음과 같이 입력하면 확인할 수 있다. 위와 같이 입력하고 엔터를 치면 아래와 같이 나오는데, 여기서 상태가 4 RUNNING이면 정상 동작하고있는 것이다.

  • 프로그래밍

    Tizen Security Profiles 만들기

    처음으로 타이젠 프로젝트를 만들고 빌드 한 뒤 실행을 하려면 패키지에 사인을 해야 된다고 아래와 같은 경고 창이 뜬다. 이 상태에서 창의 링크(Preferences > Security Profiles)를 클릭하면 사인을 위한 프로필을 만드는 창이 나타난다. 우선 오른쪽 위의 <Add>를 눌러서 프로필 이름을 입력한다. 다음으로 오른쪽 중간의 <Generate>를 눌러서 사인에 필요한 정보를 입력하는 창을 띄운다. 적당한 정보를 입력한다. 그러면 사인 정보 파일을 생성하고 끝난다. 이후 빌드를 하고 실행하면 에뮬레이터에서 문제없이 실행된다.

  • 프로그래밍

    안드로이드 다국어 지원 앱 작성시…

    안드로이드로 다국어를 지원하는 앱을 만드는 방법은 아주 간단하다. 프로그램 코드는 언어에 따라 변경할 것이 거의 없고, 문자열과 화면에 출력할 아이콘이나 그림 파일만 해당 언어에 맞게 작성해서 별도의 폴더에 넣으면 된다. 프로그램 코드에서는 리소스를 직접 지정하지 말고, xml에서 불러오는 형태로 간접 지정한다. 예를 들어 한국어, 영어, 일본어, 중국어를 지원하려 한다면… values 폴더에 기본 언어의 리소스를 넣고, values-xx에 지원하려는 언어의 리소스를 넣으면 된다. 이 때 기본 언어를 영어로 하고, 한국어, 일본어, 중국어를 별도의 폴더에 넣는 것이 좋다. 이렇게 하면 혹시라도 빼먹은 항목이 있더라도 적어도 영어는 정상적으로 출력되니까 이해를 하는데 거의 문제가 없기 때문이다. 즉 values에는 영어 리소스를 넣고, values-ko(한국어), values-ja(일본어), values-cn(중국어) 폴더에 해당 언어의 리소스를 넣으면 된다. 그런데 모든 언어 리소스에 같은…

  • 프로그래밍

    ActionBarSherlock를 이용한 탭 내비게이션

    바로 아래 글에 이어 ActionBarSherlock를 이용한 탭 내비게이션 프로그램을 만들어보자. 탭을 3개로 했을 때 필요한 소스 파일은 총 5개. 메인 액티비티 탭 리스너 댑1 처리 소스 탭2 처리 소스 탭3 처리 소스 기타 리소스 파일 각 파일을 위와 같이 준비하고 필요한 리소스 파일(각 탭에 텍스트를 출력하기 위한 레이아웃 파일 – simple.xml – 과 아이콘 부분에 들어갈 아이콘으로 icon_search.png와 icon_settings.png가 필요하다)을 적당한 폴더에 넣고 실행하면 아래 화면과 같이 탭으로 구분된 실행화면이 나타난다.

  • 프로그래밍

    안드로이드 3.0 미만에서도 ActionBar를 써보자

    안드로이드 3.0부터는 ActionBar가 들어갔고, SDK에도 안드로이드 3.0에 해당하는 API 레벨 11부터 ActionBar를 처리할 수 있는 API가 들어가있다. 요즘 앱의 추세가 ActionBar를 대부분 이용하고 있으며, ActionBar를 이용하면 더 다양한 효과 및 처리가 가능해서 많이 선호하는 것 같다.그런데 앱을 만들 때 ActionBar를 이용하면 안드로이드 3.0 이전 버전에서는 실행시킬 수 없는 단점이 있다. 아직도 전세계(국내도 마찬가지) 안드로이드 기기 사용자 중 안드로이드 3.0 미만 버전의 기기를 사용하는 비율이 50%에 약간 못미치는 수준인 것으로 조사되고 있다.즉, ActionBar를 이용해서 앱을 만들면 이들은 아예 사용하지 말라는 말이 되는 것이다.하지만 방법이 있었다.바로 ActionBarSherlock이라는 라이브러리를 이용하면 ActionBar와 동일한 효과를 내면서, 안드로이드 3.0 미만의 기기에서도  동일하게 쓸 수 있다.ActionBarSherlock는 ActionBarSherlock 홈페이지에서 다운받을 수 있으며, 예제 소스 및 컴파일 된 설치파일도…

  • 프로그래밍

    Tizen(타이젠) SDK 설치하기 – Tizen 에뮬레이터 만들기

    전편에서의 과정으로 Tizen SDK를 설치했으면, 다음 그림과 같이 시작 메뉴의 Tizen SDK에 Emulator Manager라는게 등록되어있을 것이다. 이 Emulator Manager를 이용해서 가상 기기를 만들어보자. 시작 메뉴에서 Emulator Manager를 실행하면 나오는 첫 화면은 아래와 같다. 위의 그림에서 tizen2.0에 있는 <<Create New…>>를 선택하면 Tizen2.0 레퍼런스 이미지를 기준으로 가상 기기를 만드는 것이고, Custom에 있는 <<Create New…>>를 선택하면 Tizen 시스템 이미지를 원하는 것으로 바꿔서 에뮬레이터를 만들 수 있다. 지금은 아직 Tizen 시스템 이미지 만들기를 해보지 않았으니 standard 이미지를 이용해서 에뮬레이터를 만들어보자. 우선 tizen2.0에 있는 <<Create New…>>를 선택하고 아래에 있는 <Create> 버튼을 누른다. 오른쪽에 가상 기기의 설정이 나온다. 이름과 해상도, 램 용량을 입력하고 <Confirm> 버튼을 눌러 가상 기기를 생성한다. * 참고 : 안드로이드 AVD를 만들 때도…