반응형

2021/02 17

Swift 에서 C의 매개변수로 값 넘기기

예전부터 TCP/IP를 C언어로 개발하다 보니 아직은 Swift가 어색하다. 그래서 SwiftUI의 프로젝트에서 브리지를 사용하여 C언어로 개발 된 함수를 불러 오기로 했다. 함수를 그냥 부르는 것 까지는 아무 문제 없이 되었는데, 다음과 같은 문제가 있었다. Swift 파일 안에 [let s = "Hello!!"] 가 있다고 하자, 변수 s 를 최종적으로 [void clientMain(char *inform)]에 넘기고 싶다. 따라서 "s" 를 "inform"으로 넘겨 줄 경우에 형 변환을 해야 된다. 어설프게 나마 다음과 같이 변환을 하였는데, var dataname: [CChar] = inform.cString(using: String.Encoding.utf8)! clientMain(&datanam..

Software/Swift 2021.02.26

맥북 충전이 안되는 현상

지금 [MacBook Pro (13-inch, 2018, Four Thunderbolt 3 Ports)] 을 사용하고 있는데, 가끔가다가 충전이 안 되는 현상이 일어난다. 작업을 하다가 급격하게 컴퓨터가 느려진다 싶으면 아래와 같이 배터리가 10% 이하로 떨어졌다는 표시가 생긴다. 여기서 웃긴건, 나는 어뎁터를 연결해서 쓰고 있는데도 이렇다는 것이다. USB-C 허브로 디스플레이를 물리고 쓰긴 하는데, 물론 허브도 애플 순정이라서 더 화난다. 다른 사람들은 이런 현상이 없나 싶어 찾아보니, 다른 블로그 글 에도 맥북 2018년도 버전에 같은 문제가 있다는 것을 확인했다. SMC 재설정으로 괜찮아진다고 하니 한번 시도를 해 보아야겠다. 2021.3.1: 똑같은 증상이 다시 나타났다. 얼마만큼의 빈도로 나오..

Swift 브릿지 헤더 (Objective-C Bridging Header) 제거하기

프로그래밍을 하다가 브리지 헤더를 그냥 지워 버렸더니 아래와 같이 에러 메시지가 나면서 빌드가 안된다. Error opening input file '/Users/*****/Desktop/***********/***********/Classes/Objective-C/TCP/***********-Bridging-Header.h' (No such file or directory) 어떻게 되돌리는 방법이 없나 찾아보니까, 프로젝트 파일의 "Build Settings"에 가서 "Swift Compiler - General" 항목에 "Objective-C Bridging Header"에 가보니까 아까 지웠던 브리지 파일의 설정이 남아 있었다. 오른쪽의 "Objective-C Bridging Header" 부분의 ..

Software/Swift 2021.02.25

Swift UI 프로그래밍: 버튼 설정

Swift UI에서의 버튼의 설정은 아래와 같다. Button(action: { //버튼이 눌리게 되면 실행될 것 print("버튼이 눌려 졌다.") }) { Text("버튼 이름을 적는다.") } 버튼에 이미지를 넣고 싶은 경우는 아래와 같이 한다. Button(action: { //버튼이 눌리게 되면 실행될 것 print("버튼이 눌려졌다.") }) { Image("그림 파일 이름") //여기서 사용될 그림파일은 [Assets.xcassets]에 미리 복사 해 놓는다. .resizable() .scaledToFit() .frame(width: 100.0, height: 200.0) } .buttonStyle(PlainButtonStyle()) //버튼이 그냥 파란색으로 보이고 이미지가 보이지 않을 경..

Software/Swift 2021.02.25

Raspberry Pi 4 에서 사용하는 케이스 추천

라즈베리파이가 장족의 발전을 해서, 4는 웬만한 컴퓨터 같은 성능을 낼 수 있다. 그러나, 성능이 좋아 진 만큼, 발열도 있어서 4부터는 냉각팬을 달아 줘야 된다. 케이스는 왠만해선 하나 사는 게 좋은데, 여태껏 산 케이스 중에 Argon 케이스만큼 마음에 드는 게 없더라. [Argon ONE M.2 Case for Raspberry Pi 4] Argon ONE M.2 케이스는 변환 어뎁터를 통해 HDMI Type A 단자의 케이블을 기본으로 사용할 수 있고, (라즈베리파이 4의 본체는 Micro HDMI를 사용한다.) SATA M.2 SSD 메모리를 사용함으로써 기기 처리 속도가 아주 빠르게 향상된다. USB를 통한 외부장치로 부팅시키기도 가능하기 때문에 상당이 쾌적한 개발환경을 구축할 수 있다. 거기..

Ahnlab Safe Transaction...

이 프로그램 진짜 극혐이네.. 은행 업무 때문에 깔긴 했다만, 그러면 은행 업무 때만 실행될 것이지.. 왜 남의 컴퓨터에 들어와서 멋대로 내가 잘 쓰고 있는 프로그램을 블록을 하니 많이 물어보는 거지? 삭제하려고 Uninstaller를 실행했는데, 끄고 다시 실행하라는데 Quit라는 부분이 없는데? 이거 장난하나... 다른 프로그램의 예를 들자면 VLC도 저렇게 Quit라고 실행 종료하는 부분이 있건만... 괜히 짜증 나게 만든다. 컴퓨터 리부팅하니까 삭제되긴 되는데, 왜 내가 이 프로그램 때문에 컴퓨터를 껐다 켜지 않으면 안 되는 거지? 컴퓨터 안 끄고 지우는 방법을 소개한다. 맥의 [Activity Monitor]를 열고 [astx]를 검색하면 아래와 같이 검색된다. astxAgent를 더블클릭 하면..

Seeeduino XIAO 보드에서 CircuitPython 개발환경 설정 및 Mu 에디터 사용하기

아마존에서 3개에 1750엔으로 팔길래 가지고 놀라고 한번 사봤다. 기본적으로는 아두이노 IDE를 통해서 프로그래밍을 할 수 있고, 롬을 변경하면 CircuitPython의 개발환경도 사용할 수 있다는 것이다. 현재 CircuitPython 6.1.0을 사용 할 수 있다. 링크 참조:circuitpython.org/board/seeeduino_xiao/ 1. 하드웨어 설정 처음에는 Arduino로 인식하기 때문에 컴퓨터에 연결해도 아무것도 안 뜨는데, 보드를 리셋시켜주면 아래와 같이 [Arduino]라는 드라이브가 보인다. (리셋 부분을 연속 두 번 접속시켜 줘야 하는데 말로는 설명이 어려우므로 wiki.seeedstudio.com/Seeeduino-XIAO/ 의 Reset에 대한 설명을 참고하길 바란다..

외국어를 배우고 나서 느낀 점

중학교, 고등학교 다닐 때만 해도, 영어가 정말 싫어서 내가 이걸 왜 배우는건지 신세 한탄 할 때도 있었다. 거기에 대한 반사 작용으로 게임은 아주 좋아했기때문에, 교환학생에 도전 할 요량으로 일본어를 독학 했었다. 언어에 자신이 없었던 나로써는 일본어는 의외로 빨리 배울 수 있었기에 느낀 것인데, 사람이 배우는 것은 머리가 좋아서 잘 배우거나 머리가 나빠서 못 배우는 것이 아니고, 내가 재미있어하는 것이냐 (관심이 있는 것이냐) 아니냐에 대해서 습득에 대한 속도가 차이가 나는 것 같다. 교환학생 오고 나서 첫 1년 동안은 말을 잘 못해서 미안하다고 많이 이야기를 한 것 같다. 영어도 마찬가지로 내가 영어를 잘 못해서 항상 "쏘리" 라는 말을 달고 살았던거 같은데.. 어느 순간부터, 나는 외국인이고 너네..

언어학습 2021.02.22

캐시워크

"잠금화면이 꺼지면 캐시가 안 쌓여요." 라는 메세지가 계속 뜬다고 어머니께서 연락이 왔다. 원격조정으로 설정을 고쳐 드리려 했는데, 아이폰과 안드로이드를 다 써본 경험은 있지만, 안드로이드도 버전이 올라가면서 나도 잘 모르는 형태로 바뀌는거 같아서 어떻게 해결해야 좋을지 막막하더라. 위와같이 해제 방법 안내가 나와있긴 하나, 이 화면에서 보이는 동영상에서 문제를 바로 해결을 할 수있다고 생각하시는 경향이 있기 때문에 설명이 부족하다고 느껴지더라. 그리고 가장 중요한 "베터리 사용량 최적화" 라는 것이 설정 안의 어느 부분에 있는지 좀 알려줬으면 좋겠던데.. 정확하게는 아래와 같이 하면 되는데, 그러한 설명도 곁들여서 첨부 했으면 어땠을까 싶다. 설정 → 애플리케이션 → 특별한 접근 (우측위 버튼) → ..

일기장/잡담 2021.02.22

세상 살기가 팍팍한거 같네.

어떻게 박사 생활 끝나고 학위 받는다고 해도, 학위 받은게 끝이 아니고 시작이니 그 뒤로 어떻게 살아 갈 수 있느냐가 사람에 따라 다르니 이길도 많이 힘든거 같다. 지금은 운좋게 학생들 가르치면서 생활 할 수 있지만, 언제 어떻게 될지 모르는 것이 사람 사는 인생이니.. 평소에도 사회생활 열심히 하고 공부도 열심히 해 놓아야 겠다.

일기장/잡담 2021.02.19
반응형