일본어 문장부호를 알아보겠습니다. 우리나라 대한민국에서 사용하는 문장부호들과 비교해보겠습니다. 한국의 작은따옴표('')를 일본에서는 낫표(「」)로 표시합니다. 한국의 큰따옴표("")를 일본에서는 겹낫표(『』)로 표시합니다. 한국의 쉼표(,)를 일본에서는 모점(、)으로 표시합니다. 한국의 마침표(.)를 일본에서는 고리점(。)으로 표시합니다. 한국의 느낌표(!)를 일본에서는 고리점(。)으로 표시합니다. 한국의 물음표(?)를 일본에서는 고리점(。)으로 표시합니다. 일본에는 마침표, 물음표, 느낌표가 모두 고리점으로 표시되기 때문에 잘 생각해서 문장을 이해해야 할 것 같네요. 끝. 카테고리: 언어 공부
사용 버전 : KiCad 5.1.0 kicad PCB 만들기에 대해서 알아보겠습니다. 'PCB Layout Editor'를 눌러줍니다. 만약 아래와 같은 알림 창이 뜬다면, 선택은 자유입니다. 내용은 그래픽 카드를 사용할 것인지, 말것인지 입니다. 쓰면 속도도 좋고, 부드러워진다고 설명하고 있군요. 다음과 같은 창이 뜹니다. 'Update PCB from schematic'을 눌러줍니다. 'Match Method'와 설정을 적절히 선택해줍니다.(저처럼 하셔도 됩니다.) 그리고 'Update PCB'를 눌러줍니다. 다음과 같이 마우스를 따라다니는, footprint가 생성됩니다. 적당한 곳에 클릭합니다. footprint 이동은 '키보드 M', footprint 회전은 '키보드 R'입니다. 'Hide board ratsnest'를 켜면, 전선이 연결되어야 할 가이드 선이 표시됩니다. 'Ctrl + 좌 클릭'은 선택된 패드에 연결될 부분만 밝게 표시합니다. 해제 방법은 빈 땅에 'Ctrl + 좌 클릭'하면 됩니다. 옆에 있는 '레이어'는 PCB의 어느 영역에 그릴 것인지를 선택할 수 있게 해줍니다. F.Cu는 PCB 윗부분 전선 B.Cu는 PCB 뒷부분 전선 F.Paste는 PCB 윗부분 SMT 접착제 B.Paste는 PCB 뒷부분 SMT 접착제 F.Mask는 PCB 윗부분 패드 B.Mask는 PCB 뒷부분 패드 Edge.Cuts는 PCB의 전체 모양 F.SilkS는 PCB 윗부분 하얀 선 또는 글자 B.SilkS는 PCB 뒷부분 하얀 선 또는 글자 전선을 그려봅시다. 'Route tracks'를 눌러줍니다. 레이어를 보시면, F.Cu에 화살표가 있으니, 전선은 F.Cu 레이어에 그려집니다...
사용 버전: Python 3.6.8 사용 프로그램: Atom 1.40.1 x64 파이썬 urllib.parse.quote()에 대해서 알아보겠습니다. 괄호 안에는 string, safe, encoding, errors 인자가 들어갑니다. urllib.parse.quote()는 아스키코드 형식이 아닌 글자를 URL 인코딩 시켜줍니다. String 인자에는 string, bytes 형식이 들어갑니다. String 형식. Bytes 형식 Safe 인자에는 URL encoding에서 제외할 문자를 넣습니다. 기본으로 '/'이 설정되어 있습니다. Encoding 인자에는 인코딩 이름이 들어갑니다. string에 들어가는 문자와 맞지 않으면 오류가 나옵니다. 기본적으로 'utf-8'이 들어갑니다. Error 인자에는 'strict', 'ignore', 'replace', 'xmlcharrefreplace', 'backslashreplace', 'namereplace', 'surrogateescape', 'surrogatepass'가 들어갑니다. 기본적으로 strict가 설정되어 있습니다. unicode 오류를 알려줍니다. Ignore의 경우 오류는 무시하고, 변환할 수 있는 것만 변환합니다. Replace는 에러 글자를 '?'로 변환해줍니다. 그리고 quote(...
사용 버전: Kicad 5.1.4 저번 시간에 이어서 Freeroute를 사용해보겠습니다. 각 PCB 제조사마다 디자인 룰이란 것이 존재합니다. 우리는 그것에 맞추어서 선이나 구멍을 만들어줘야 합니다. 디자인 룰 설정을 합시다. 우선 PCB Layout Editor을 실행합니다. 파일 - Board Setup을 누릅니다. Design Rules - Net Classes를 누릅니다. 위의 창에서 디자인 룰을 설정합니다. '+'를 눌러 디자인 룰을 새롭게 만들든지, 기존의 Default를 변경하든지 편하신 대로 조정해줍니다. 유격: 선과 선 사이 간격 트랙 두께: 선 굵기 Via Size: Via 납 지름 비아 드릴: Via 구멍 지름 uVia Size: 모름 uVia Drill: 모름 dPair Width: 모름 dPair Gap: 모름 저는 Power Class를 추가하여, +5V와 GND에 Assign To Selected Nets로 한꺼번에 적용시켰습니다. 나머지 전선은 Default Class 적용을 받고, +5V와 GND만 Power class 적용을 받습니다. Ctrl + S로 저장을 한 번 해줍니다. 파일 - 내보내기 - Specctra DSN... 을 눌러줍니다. 적당한 위치에 dsn 파일을 저장합니다. NetBeans에서 Autoroute를 실행합니다. Open Your Own Design을 눌러, 아까 저장한 dsn 파일을 불러옵니다. Autorouter를 눌러줍니다. 전선 긋기, 최적화하기 순으로 진행되고, 완료가 되면, Postroute completed라는 문구가 나옵니다.전선 긋기나 최적화 중 마우스 왼쪽 버튼을 누르면, 그 상태로 정지됩니다. 최적화가 필요 없으면, 정지 후 바로 PCB에 사용하셔도 됩니다. File - Export Specctra S...
사용 버전: Android Studio 4.1.1 사용 언어: Kotlin 1.4.20 안드로이드 Notification with Full Screen을 알아보겠습니다. 알람이나 전화 같은 경우 사용자에게 큰 화면으로 Notification을 보여줘야 합니다. 이때 사용하는 게, FullScreenIntent입니다. 기본 Notification이 필요합니다. https://shwoghk14.blogspot.com/2020/09/android-notification.html FullScreen으로 띄울 Activity를 하나 만듭니다. 저는 FullScreenNoonActivity로 만들었고 모습은 아래와 같습니다. 위의 Activity를 이용하여 NotificationCompat.Builder가 있는 곳에 fullScreenIntent를 만듭니다. setContentIntent는 설정할 필요 없습니다. setFullScreenIntent를 설정합니다. priority는 PRIORITY_HIGH가 필요합니다. 그리고 Android 10 이상의 경우 권한이 필요합니다. AndroidManifest.xml에 USE_FULL_SCREEN_INTENT를 추가합니다. 실행해봅시다. 분명 FullScreenIntent로 실행했음에도 Heads-up Notification이 나옵니다. 눌러봅시다. ...
사용 언어: Kotlin 2.3.0 사용 버전: Android Studio Otter 2 Feature Drop | 2025.2.2 안드로이드 Room database embedded and relation을 알아보겠습니다. Room에서는 임베디드(Embedded)와 릴레이션(Relation)이라는 에너테이션(Annotation)을 제공해 줍니다. 해당 코드는 여기에 있습니다. https://github.com/android/nowinandroid/blob/main/core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/model/PopulatedNewsResource.kt 먼저 @Embedded 먼저 살펴봅시다. Embedded에 대한 문서는 아래에 있습니다. https://developer.android.com/reference/androidx/room/Embedded 처음 사진에 있는 코드를 보면 NewsResourceEntity라는 것을 Embedded 합니다. 이 의미는 Sqlite로 매핑(mapping) 할 때 NewsResourceEntity의 필드(Field) 값을 PopulatedNewsResource의 Field에도 동일하게 사용하겠다는 뜻입니다. 그러면 PopulatedNewsResource의 Field는 id, title, content, url, header_image_url, publish_date, type, topics로 구성되겠네요. 다음으로 볼 것은 @Relation입니다. Relation 문서는 여기 있습니다. https://developer.android.com/reference/androidx/room/Relation parentColumn에 들어간 "id"는 PopulatedNewsResource에 있는 id를 사용하겠다는 말입니다. entityColumn에 들어간 "id"는 TopicEntity에...
사용 버전 : KiCad 5.1.0 kicad 회로도 만들기에 대해서 알아보겠습니다. 우선, 프로젝트를 만듭니다. 파일 - 새 파일 - Project... 'Create a new directory for the project'를 눌러주면, 폴더도 같이 생성됩니다. 'Schematic Layout Editor'를 눌러줍니다. 맨 처음 실행하면, 라이브러리 설정이 나옵니다. 추천(recommended) 하는 항목을 선택합시다. 위와 같은 화면이 나옵니다. '키보드 A'를 눌러줍니다. led와 저항이 있는 간단한 회로를 그려보겠습니다. 적당한 위치에 '마우스 좌 클릭'을 합니다. 화면 이동은 '마우스 휠 버튼'입니다. 같은 과정으로 저항도 추가합니다. 소자의 회전은 '키보드 R'입니다. '키보드 P'를 눌러줍니다. 5V를 넣어줍니다. GND도 넣어줍니다. 사이에 전선을 넣어줍니다.'키보드 W'입니다. 저항과 LED 위에 '?'가 있습니다.이것은 소자가 확정되지 않았다는 뜻입니다. 확정해줍니다. Annotate schematic symbols를 눌러줍니다. Annotate를 눌러줍니다. complete(완료) 되면, 닫기를 눌러줍니다. 아래 그림과 같이 '?'가 사라지고, 숫자가 자리 잡은 것을 볼 수 있습니다. 저항 위에 있는 'R'을 저항값으로 변경해봅시다. 위와 같이, 마우스를 올리고 '키보드 E'를 눌러줍니다. 변경 창이 나옵니다. 5k로 변경하고, 확인을 눌러줍니다. R이 5k로 변경된 것을 확인할 수 있습니다. 다음은 풋프...
사용 버전: Python 3.7.6, OpenCV 4.2.0 파이썬 OpenCV 빈 화면 만들기를 해보겠습니다. 검정 빈 화면을 만들기 위해서는 numpy가 필요합니다. img1의 경우는 color로 불러들었을 때를 위한 빈 화면이고, img2의 경우는 grayscale로 불러들었을 때의 빈 화면입니다. 끝. 카테고리: Python, cv2
사용 프로그램 : MuseScore 3 총보와 파트보에 대해서 알아보겠습니다. 총보는 모든 악기들의 보표가 표시된 악보입니다. 보표의 악기 순서는 다음과 같습니다. 목관악기, 금관악기, 타악기, 독주 악기(피아노, 하프), 현악기 파트보는 자신이 연주하는 악기에 대한 보표만 존재하는 악보입니다. 총보(score) 파트보(part) 위의 악보에서 Flute 1은 첫마디를 한 뒤, 31마디는 아무 음도 없습니다. 그래서 뒤에 31로 숫자 적힌 긴 막대로 표시됩니다. Flute 2의 경우는 앞 2마디를 쉬고, 연주하고, 뒤 29마디를 쉽니다. 끝. 카테고리: Music
사용 버전: Kotlin 2.3.0 How to run Kotlin files in a command-line을 알아보겠습니다. 어떻게 코틀린(Kotlin) 파일들을 커맨드 라인(command-line)에서 실행할 수 있을까요? 참고한 문서입니다. https://kotlinlang.org/docs/command-line.html 보통은 아이디이(IDE)에서 실행하기 때문에 컴파일러(compiler)를 수동으로 받을 필요가 없습니다. 그렇지만, 저는 CI에서 돌려보려고 수동으로 받아보았는데요. 여기서 최신 컴파일러를 받을 수 있습니다. 현재 최신 버전은 2.3.0이네요. https://github.com/JetBrains/kotlin/releases 저는 kotlin-compiler-2.3.0.zip을 다운로드했습니다. 압축을 풀면 kotlinc라는 디렉터리가 생깁니다. bin이라는 디렉터리에 들어가면 다음과 같이 우리가 사용할 수 있는 프로그램들이 나옵니다. 여기서 Compiler는 kotlinc입니다. 그럼 kotlin 파일을 만들어 볼까요? test.kt라는 파일로 바탕화면에 만들었습니다. 위 코드는 아래에서도 볼 수 있습니다. https://pl.kotl.in/czIx_jKTs 그럼 실행해 봅시다. 먼저 compile을 해서 jar로 만들어 줘야 합니다. kotlinc/bin으로 가서 ./kotlinc [Kotlin 파일] -include-runtime -d [결과.jar 파일] 을 적어주면 됩니다. 그럼 이런 jar이 생깁니다. 잘(Jar)은 자바(Java)의 .class 파일들을 모아놓은 압축 형식입니다. .class는 Java 바이트코드(bytecode)로 변환된 파일입니다. Java에 대해 간단히 설명하자면, Java 언어로 작성된 코드를 javac라는 compiler가 .class 형식인 java bytecode로 변환하고 이것을 모아 Jar로 만듭니다. 이 java bytecode는 제이브이엠(JVM)이라는 Java 용 가상머신에서 읽을 수 있...
댓글
댓글 쓰기
궁금한 점은 댓글 달아주세요.
Comment if you have any questions.