728x90

프로그래밍 이야기 43

<필독! 개발자 온보딩 가이드> 프로그래머를 위한 도서 메모

책 제목은 크게 끌리진 않았는데, 목차를 보니 기대했던 것 보다 구성이 괜찮았습니다. 소프트웨어 엔지니어뿐 아니라, 게임 프로그래머에게도 좋은 구성이란 생각이라 메모 해봅니다. 이 책은 크리스 리코미니 (Chris Riccomini), 드미트리 리아보이 (Dmitriy Ryaboy) 두 외국 작가가 쓴 번역서입니다. 원서의 제목은 한국어 번역본과는 온도차이가 좀 있었습니다. The Missing Readme: A Guide for the New Software Engineer 누락된 Readme, 신규 소프트웨어 엔지니어를 위한 가이드 책의 목차는 원서 제목에 좀 더 충실하다는 생각. 단, 한국어판 번역서 제목은 아무래도 마케팅적인 측면에서 독특한? 트랜디한? 제목을 붙인 것 같습니다. 출판 일자는 아래..

C#의 역사. C# 버전 1.0 부터 C# 버전 11 까지

C# 언어의 각 버전별 주요 릴리스에 대한 기록을 제공하는 문서를 소개하고 기록해둡니다. 2002년 1월 Visual Studio.Net 2002와 함께 릴리스된 C# 버전 1.0 부터, 2022년 11월 C# 버전 11 까지 갱신되어있습니다. 한글로 작성된 문서라 훑어보기 좋습니다. C# 의 역사 공식 문서 https://learn.microsoft.com/ko-kr/dotnet/csharp/whats-new/csharp-version-history C#의 역사 - C# 가이드 이 언어의 초창기 버전은 어떤 모습이었으며 이후 어떻게 변했는가? learn.microsoft.com 아래 문서는 컴파일러 팀의 현재 상태와 진행 중인 작업을 정리해둔 문서입니다. 작업 진행, 기능 추가/제거 및 기능에 대한 작..

파이썬(Python) - 폴더 내의 특정 단어(접두어)일괄 변경, 제거하는 코드

파일들을 잔뜩 내려받을 일이 있었는데, 불필요한 접두어가 전부 붙어있는 상황. 이를 제거하기 위한 파이썬 코드입니다. 잘 동작하는 것 확인 완료. import os # 수정 대상 파일들이 들어있는 폴더 경로 folder_path = '/path/to/folder/' # 수정 대상 파일들의 공통된 접두어 prefix = 'prefix_' # 수정 대상 파일들의 공통된 확장자 extension = '.txt' # 수정 대상 단어 target_word = 'target_word' # 폴더 내의 모든 파일에 대해 반복 for filename in os.listdir(folder_path): # 파일 이름이 공통된 접두어로 시작하고, 공통된 확장자를 가지는 파일에 대해서만 작동 if filename.startsw..

Unity 게임 개발을 위한 Visual Studio 2022 Community 설치

개인 프로젝트용으로 Unity 2019 LTS 버전을 사용하고 있었는데, 회사에서도 최신 버전을 사용하고 있어서 개인 프로젝트 환경의 Unity 도 2020 LTS 버전으로 업데이트했습니다. 그러면서 Visual Studio 도 2022 버전으로 최신 버전을 설치해 봤습니다. 설치 기록을 남겨봅니다. ​ 아래 Microsoft 공식 사이트에서 Visual Studio 2022 설치 도구를 다운로드할 수 있습니다. https://visualstudio.microsoft.com/ko/vs/unity-tools/ Unity 게임 개발 도구 | Visual Studio 가장 강력한 Unity 개발 환경을 원하세요? Visual Studio Unity 도구를 사용하여 만들고, 디버깅하며 생산성을 향상시킵니다. 오..

깃헙 코파일럿 Copilot 을 써보려고 했다

AI 페어 프로그래머라는 카피로 유명한 코파일럿. Your AI pair programmer. 말 그대로 AI가 코딩을 도와줍니다. 기존의 코드를 분석하고 패턴을 찾아내서, 일부 코드만 작성하면 나머지 코드를 알아서 타이핑해준다는 솔루션. 아래 사이트를 가보면 어떤식으로 동작하는지 당양한 예제를 움직이는 영상으로 확인 가능합니다. https://copilot.github.com/ GitHub Copilot · Your AI pair programmer GitHub Copilot works alongside you directly in your editor, suggesting whole lines or entire functions for you. copilot.github.com 주석을 분석해서 코드를..

[책리뷰] 읽기 좋은 코드가 좋은 코드다 (1부, 2부 리뷰)

최근에 다시 읽어본 책. 책 제목이 명확합니다, “읽기 좋은 코드가 좋은 코드다” 크게 공감합니다. 프로그래머라면 대부분 공감할 것입니다. 좋은 코드가 왜 좋고, 나쁜 코드가 왜 나쁜지 정리한 책. 좋은 코드를 짜고싶은 분들께 추천합니다. 저자와 역자의 이력이 상당합니다. 프로그래밍의 베테랑들. 책의 신뢰를 더해줍니다, 나쁜 코드의 예를 분석하고, 그러한 코드가 왜 나쁜지, 그리고 어떻게 개선할 수 있을지 연구한 결과가 바로 이 책이라고 합니다. 이름짓기와 주석, 포맷팅, 논리, 루프 제어, 복잡성 관리, 코드 블록 정리 등등. 결과적으론 재밌고 유익하게 읽었습니다. 보통은 형상관리 툴을 쓸 테지만, 누가 이렇게 짰지? 나구나? 싶은 상황은 생각보자 자주 직면하게 됩니다. 코드는 이해하기 쉬워야 한다, ..

부동소수점 표현과 부동소수점 연산

© geralt, 출처 Pixabay 숫자, 특히 부동소수점과 연산에 대한 내용 정리. 부동소수점 ​ 기본 용어 실수 = Real Number = 유리수 + 무리수 ​ 유리수 = Rational Number 정수의 비로 표현 가능한 숫자. ​ 무리수 = Irrational Number 정수비로 나타낼 수 없는 숫자. Ex) 3.141592653589793..., √2 ​ 부동소수점 표현 bit 구성 최상위 비트(MSB, Most Significant Bit) = 수의 부호(Sign) 지수부(exponent, ) = 2의 거듭제곱을 표시하는 부분 가수부(mantissa, 假數部) = 상용로그의 값에서 0과 같거나 0보다 크고 1보다 작은 소수 예) 십진수 -118.625 를 IEEE 754 표준으로 표현하..

A Tour of C++ : 11장 컨테이너

. 11. 컨테이너 11.1 소개 컨테이너(container) = 객체를 저장하는 것이 주 목적인 클래스 ​ 11.2 vector 요소들은 메모리에 연속적으로 저장. 구현 구성 요소들. 첫 요소, 마지막 요소 다음, 할당된 공간의 마지막의 다음을 가리키는 포인터 (elem, space, last) ​ 요소 타입 값들로 초기화 vector phone_book = { {“David Hume”, 123456}, {“Karl Popper”, 234567}, {“Bertrand Arthur William Russell”, 345678} } ​ Entry 클래스에 number; return 0; } 컴파일러는 적은 구간 for 루프를 이런 식으로 구현. 반복자 p 의 요소 참조는 *p. ++p 는 다음요소. p->..

[VS] Visual Studio 2017 언어 변경, 로그 영어로 출력하기

. 유니티(Unity), 언리얼(Unreal) 설치하면서 Visual Studio 2017 버전을 적당히 설치해뒀는데, 기본 언어를 한국어로 설치해놨었네요. ​ 에러로그나 문제상황이 발생했을 때 에러로그를 영어로 보고 구글링을 해야 솔루션 찾기가 수월하기 때문에 영어로 환경 설정을 바꾸는게 좋습니다. 툴 옵션에서 밖꾸려고 보니, 언어팩을 추가로 설치해줘야 하는군요. Visual Studio 2017 버전의 언어팩 추가 설치. 간단합니다. 설치할 때 사용했던 Visual Studio Installer 를 통해 설치하면 됩니다. 수정 창이 뜨면 상단의 "언어팩"탭으로 이동해서 영어를 추가해주고 설치해주면 끝. 설치하기 전 실행되어있는 Visual Studio 는 닫아줍니다. 설치가 완료되고 다시 실행하면 아..

A Tour of C++ : 10장 입력과 출력

. 10. 입력과 출력 10.1 소개 입출력 스트림 (I/O Stream) 텍스트와 수치 값에 대한 Formatted / Unformatted Buffered I/O 지원. ostream / istream 타입 있는 값(‘c’, 123, (123,45)과 바이트 시퀀스 사이를 스트림 버퍼를 통해 변환. 타입 민감성 보장, 사용자 정의 타입에 맞게 확장 가능. 이러한 스트림 이용 std::string 의 입출력과 string 버퍼를 이용한 형식화, 파일 입출력 가능. ​ 모든 입출력 스트림 클래스는 소유 자원(버퍼, 파일핸들 등)을 해제하는 소멸자를 포함. ‘자원 획득이 곧 초기화’(RAII)의 한 예. ​ 10.2 출력 에서 모든 내장 타입 출력 연산 정의. 의 오른쪽 항은 어떤 입력이 허용되고 대상이 ..

728x90
반응형