일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 엑티브엑스
- 윈도우7
- QT
- 알람프로그램
- 스타크래프트2
- Qt4
- 자바
- Qt 소켓프로그래밍
- Qt OpenGL
- HTML
- 자료구조
- android SAF
- 마영전
- 재귀함수
- FFI
- 오토바이
- c언어
- QTcpServer
- 디자이어HD
- vuejs
- 정성하
- 양평역
- Java
- qt 설치
- 잡담
- 바이크
- 이륜차
- 안드로이드
- 고속도로
- 스타2
- Today
- Total
목록프로그래밍 (173)
프로그래밍과 잡담
Rust 언어라고 있는데 최근에 나온 재미난 프로그래밍 언어이다. 모질라가 파이어폭스를 쓰고 있는데, 그 코드 중에 대부분이 C++이겠지.. 근데 이 C++이 지랄같은게, 포인터를 사용하면서 각종 패러다임을 사용하는 언어라는거지. 게다가 사람은 실수 하게 마련이고, 그 실수는 메모리릭을 일으킬 수 있고, free 한고 free하는 문제도 있고, free한 걸 사용하거나 등등등 포인터와 관련된 여러가지 상황이 일어나는 어려운 언어이다. 잘하는 사람은 졸라 잘하지만 못하는 사람은 졸라 못하는게 이 언어라서 제대로 만들기가 어렵다. 메모리릭은 뭐 그래 스마트포인터인가 지랄인가 사용하면 된다는데 결국은 사람이 조정해야함.. 위에 대한 이유때문에 파폭에 메모리릭이 일어나고 있었던 모양임. 그래서 그걸 해결하기 위..
톰켓에 WAR 파일을 배포했는데.. css 파일이 바뀌지가 않았다. 그래서 여러가지를 시도하다가 WebApps 폴더 내의 해당 war 파일의 이름을 가진 폴더를 삭제했더니 변경 사항이 반영이 되네.. 아 존나 짜증나.. 매번 커맨드 쓰기 귀찮아서 리눅스 배쉬 파일을 만들어서 처리했다.
C#에서 dll을 사용해서 실행 할 경우 개발한 컴퓨터에서는 동작을 하나, 다른 컴퓨터에서 실행한 경우에는 오류가 발생하는 경우가 있다. 오류 메시지는 다음과 같다. DLL "DLL ' dll 이름'을 로드 할 수 없습니다. 지정된 모듈을 찾을 수 없습니다. (HRESULT: 0x8007007E) 프로그램에는 문제가 없는건데, 로드가 안돼니 매우 짜증이 난다. 그래서!! 구글 신에 검색을 한 결과!! 한 블로그에서 해결법을 찾았다. 비주얼 스튜디오에서 프로젝트에서 오른쪽 클릭 -> 속성 -> C/C++ -> 코드 생성 -> 런타임 라이브러리를 다중 쓰레드(/MT) 로 설정을 하고 다시 빌드를 하면!! 잘 돌아간다.
윈도우면 그냥 배치파일같은거 하나 만들어서 시작 프로그램에 집어 넣으면 되는데.. 리눅스는 그렇게 안되고 배치 스크립트를 만들고 "/etc/rc.local"를 vim으로 수정을 해야한다. vim이나 vi로 열면 아래 처럼 나오는데... #!/bin/sh # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By defau..
이 언어는 모질라에서 만든 언어이며, 모질라에서 이 언어로 웹브라우저 엔진을 만들고 있다고 한다. Rust는 C++과 거의 동일한 속도로 동작하며, 동시성, 멀티코어, 메모리 안전성을 지원하는데, 특히 메모리 안정성을 강조한다. 메모리 안정성은 좀 특이한 방식으로 처리하고 있다. 소유권이라는게 있어가지고 있어서 마음대로 막 공유를 못하게 해서 안정성을 강화한다고 한다. 컴파일 타임에 메모리 문제를 걸러낸다고 한다. 근데 장점만 있느냐, 단점으로는 컴파일러가 되게 엄격하다.. 메모리를 안정성을 담보 하기 위해서, C나 C++은 넘어가는 부분도 Rust 컴파일러는 넘어가지 않는다.. 그리고 신생언어다보니 IDE가 없다. vim, emacs, 비주얼 스튜디오, IntelliJ 에 플러그인 방식으로 해서 있긴한..
Go 언어에서는 다형성을 지원한다. 심심해서 한번 해봤는데 그에 대한 걸 적어본다. Go 언어는 특이하게도 명시적으로 해당 인터페이스를 구현한다고 명시안해도 동작 방식이 같으면 동작을 한다. 편하다면 편한거지.. 동물 인터페이스가 있다. 동물들은 소리를 내니.. Sound라는 메소드를 넣었다. package main //println을 사용하기 위해서는 반듯이 import 해야한다.import "fmt" //인터페이스type Animal interface{Sound() string} //개 구조체type Dog struct { } //개 구조체가 사용할 메소드func (this Dog) Sound() string{return "멍멍"} //고양이 구조체type Cat struct{} //고양이 구조체가 ..
구글에서 만들었으며, 최근에 인기를 끄나? 모르겠군.. 외국에서 몇몇군데에서 사용을 하는거 같다. 용법을 대충 보아하니 C언어를 대체할려고 만들어진거 같다. 즉 시스템 프로그래밍 쪽에서 많이 쓰여질꺼같아 보인다. 문법은 C하고는 조금 틀리다. 함수를 만들때는 " func 이름 ( 매개변수) 반환할 타입 " 와 같이 사용을 한다. 특이하게도 반환을 한개만 하지 않고 여러개를 할 수가 있다. 이건 좀 좋은 듯.. 예를 들어서 func TestFunction( a , b int ) (int, int){ a = a + 10 b = b + 10 return a,b} 위에 처럼이 가능하다.. 변수를 선언 할 때는 var 이름 type 을 사용한다. 뭐 기본 타입들은 그냥 이름 쓰고 타입을 바로 적어도 되는 거같고...
기존의 윈폼이나 WPF에 비해서 뭐가 많이 바뀌어서 뭐가 뭔지 모르겠네. 게다가 설명을 좀 볼려고 홈페이지에 들어가도 느려터져서 보기도 힘들고 영 구리구만.. 컴포넌트들도 뭔가 사용하는데 어렵고.. 뭐랄까 명확한 느낌이 안들고 난해하다는 느낌이 들어서 난 못하겠다. 나야 C#으로 해볼려 했는데 뭐가 뭔지 모르겠어서 포ㅋ기ㅋ html5로도 만들 수 있는거 같은데 그건 더 모르겠으므로 ㅋㅋ 자바스크립트는 난해하고 intellisece도 제대로 안돼서 쓰기 싫어.
안드로이드가 롤리팝으로 업데이트되면 킷켓에서 외장메모리에 쓰기 방법을 막았는데 다시 롤리팝에서 부활했다. 그것을 어떻게 하는가 하니 // 이것을 호출한다. Intent.ACTION_OPEN_DOCUMENT_TREE가 롤리팝에서 추가되었다. Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT_TREE); startActivityForResult(intent, 42); 그리고 나면 창이 뜰 테고 사용자가 선택하면 그 결과가 아래의 메소드로 들어온다. //사용자가 선택하면 선택한 결과가 resultData로 들어온다. public void onActivityResult(int requestCode, int resultCode, Intent resultData) {..
서비스를 시작 하거나 멈출 때 암시적으로 서비스를 호출 하면 영어로 implicit intents with startservice are not safe 라는 워닝 메시지가 나온다. 암시적 인텐트로 startservice를 하면 안전하지 않다는 뜻인데.. 뭐 앱이 죽는다거나 그렇지는 않지만 꺼림찍하다. 해결 방법은 아래와 같다. //암시적 호출 Intent in = new Intent(context, "my.test.service"); context.startService(in); //명시적 호출 Intent in = new Intent(context, MyService.class); // 이렇게 하면 안나온다. context.startService(in); 위에 처럼 명시적으로 하면 안나온다.