본문 바로가기

프로그래밍

(54)
[C#] 01. 닷넷 프레임워크 닷넷 프레임워크 - 2002년에 마이크로소프트사에서 발표한 응용 프로그램 개발 환경 - 닷넷 프레임워크를 설치하면 가상 머신 역할을 하는 CLR(Common Language Runtime) 구성요소가 실행될 수 있는 환경이 윈도우 운영체제에 마련됨 - C# 컴파일러는 소스코드를 기계어가 아닌 IL(Intermediate Language)이라고 하는 중간 언어로 EXE/DLL 내부에 생성 닷넷 호환 언어 - CLR에 의해 실행되는 중간 언어는 어느 하나의 프로그래밍 언어에 종속된 것은 아님. 어떤 언어의 컴파일러든지 결과물을 중간 언어로 생성해 낸다면 CLR이 그것을 실행할 수 있음 - 이처럼 중간 언어로 번역하는 언어를 닷넷 호환 언어(.NET-Compliant Language)라고 함 - 닷넷 호환 언..
방송대 프로젝트 - 기본 컨텐츠 이제 기본 셋팅은 끝났다. 기본 컨텐츠부터 하나씩 만들어가보자. 가장 기본적인 컨텐츠는 바로 교수님과 의사소통 할 수 있는 구조이다. 마을에 교수님들이 있고, 그들과 대화하며 학교에 대한 정보를 얻을 수 있는게 이번 컨텐츠의 목표이다. 그를 위해 일단 교수님들의 정보를 담는 구조를 만들었다. 간단하게 성함, 이메일, 담당 과목 정도만 저장하여 그들의 정보를 보고, 교수님들에게 문의 이메일을 보낼 수 있게끔 구조를 구성하였다. 이렇게 두고 보니 학교 이메일로 인증을 받아서 처리할 수 있게 하는건 어떨까 하는 생각이 들었다. 생각 할수록 게임 클라이언트 적인 기능보다는 다른 쪽 기능들에 대한 아이디어만 생겨오는 ㅎㅎ…. 그 다음 교수님들의 대화 시스템을 완성하였다! 대사는 매번 달라지는게 아니라 고정된 대사..
[Git] 분산 환경에서의 Git 2 - Pro git book, 2nd Edition 정리 비공개 대규모 팀 대규모 팀은 보통 팀을 여러 개로 나눈다. 각 팀이 각각의 feature를 작업하는 상황이라면 회사는 Integration-manager 워크플로를 선택하는게 좋다. 작은 팀이 수행한 결과를 매니저가 Merge 하고 공유 저 장소의 master 브랜치에 업데이트 한다. 공개 프로젝트 Fork 비공개 팀을 운영하는 것과 공개 팀을 운영하는 것은 약간 다르다. 공개 팀을 운영할 때는 모든 개발자가 프로젝트의 공유 저장소에 직접적으로 쓰기 권한을 가지지는 않는다. Git 호스팅 사이트(GitHub, BitBucket, repo.or.cz 등) 대부분은 Fork 기능을 지원하며 프로젝트 관리자는 보통 Fork 하는 것으로 프로젝트를 운영한다. 일단 프로젝트의 웹사이트로 가서 “Fork” 버튼을..
방송대 프로젝트 - 환경설정 GitHub - eugene-doobu/Meister-Unity-assignment-2021_2nd Contribute to eugene-doobu/Meister-Unity-assignment-2021_2nd development by creating an account on GitHub. github.com 내가 과거 강의를 위해 정리했던 글을 이용했다. 이대로 해보니 아주 초스피드로 셋팅이 완료되었다. 과거의 나 아주 칭찬해. 오큘러스와 관련된 기본 셋팅은 날마다 업데이트되며 계속 바뀌어가서 삽질을 많이 해야했다. 저번에 오큘러스로 프로젝트를 진행하다 프로젝트 마감 직전에 내부 함수들이 과거버전과 호환도 안되게 바뀌어서 거의 멸망했다는 팀도 있었다고 한다. 그래서 이러한 개발의 편의성들을 지켜주기 위..
[Git] 분산 환경에서의 Git 1 - Pro git book, 2nd Edition 정리 4.분산 환경에서의 Git 4.1. 분산 환경에서의 워크플로 이번 장에서는 분산 환경에서 Git을 어떻게 사용할 수 있을지 살펴본다. 프로젝트 기여자 입장과 여러 수정사항을 취합하는 관리자 입장에서 두루 살펴본다. 즉, 프로젝트 기여자 또는 관리자로서 작업물을 프로젝트에 어떻게 포함시킬지와 수 많은 개발자가 수행한 일을 취합하고 프로젝트를 운영하는 방법을 배운다. 분산 환경에서의 워크플로 Git에서는 각 개발자의 저장소가 하나의 노드이기도 하고 중앙 저장소 같은 역할도 할 수 있다. 즉, 모든 개발자는 다른 개발자의 저장소에 일한 내용을 전송하거나, 다른 개발자들이 참여할 수 있도록 자신이 운영하는 저장소 위치를 공개할 수도 있다. 중앙집중식 워크플로 중앙 저장소는 딱 하나 있고 변경 사항은 모두 이 중..
[Git] Git 브랜치 2 - Pro git book, 2nd Edition 정리 3.4. 브랜치 워크플로 Long-Running 브랜치 Git 개발자가 많이 선호하는 워크플로가 하나 있다. 배포했거나 배포할 코드만 master 브랜치에 Merge 해서 안정 버전의 코드만 master 브랜치에 둔다. 개발을 진행하고 안정화하는 브랜치는 develop 이나 next 라는 이름으로 추가로 만들어 사용한다. 이 브랜치는 언젠가 안정 상태가 되겠지만, 항상 안정 상태를 유지해야 하는 것이 아니다. 개발 브랜치는 공격적으로 히스토리를 만들어 나아가고 안정 브랜치는 이미 만든 히스토리를 뒤따르며 나아간다. 토픽 브랜치 토픽 브랜치는 어떤 한 가지 주제나 작업을 위해 만든 짧은 호흡의 브랜치다. 브랜치 각각은 독립돼 있기 때문에 매우 쉽게 컨텍스트 사이를 옮겨 다닐 수 있다. 묶음별로 나눠서 일하..
방송대 프로젝트 - 프로젝트 초기 셋팅 2022.06.21 방송대 기말고사를 끝내고 프로젝트를 제대로 시작하기 위한 준비를 하기 시작했다. 아마 이번달은 할 일이 많아서 기본 셋팅정도만 보고 다음달부터 최대한 시간을 내서 작업을 하게 될 것 같다. 이거 외에도 진행하는 프로젝트(유니티 플젝, 영어공부)가 있기 때문에 최대한 빠른시간 안에 성과를 내기 위해 버릴건 버리고 진행해나갈 것이다. 앞으로 프로젝트를 편하게 진행하기 위한 툴들을 추가하는 작업을 했다. 나중에 이런것들을 모아 EugeneTemplate과 같은 레포를 만들까 하는 생각도 든다. 이를 위해 레포에 추가한 이슈내역은 다음과 같다. 1.루키스 기반 기본 템플릿 성능상 살짝 아쉬운 부분도 있고 평소 쓰던 타입도 아니지만, 그래도 다양한걸 사용해보고자 하는 마음에서 지난번 루키스님의..
[Git] Git 브랜치 1 - Pro git book, 2nd Edition 정리 3.1.브랜치란 무엇인가 개발을 하다 보면 코드를 여러 개로 복사해야 하는 일이 자주 생긴다. 코드를 통째로 복사하고 나서 원래 코드와는 상관없이 독립적으로 개발을 진행할 수 있는데, 이렇게 독립적으로 개발하는 것이 브랜치다. 사람들은 브랜치 모델이 Git의 최고의 장점이라고, Git이 다른 것들과 구분되는 특징이라고 말한다. 당최 어떤 점이 그렇게 특별한 것일까. Git의 브랜치는 매우 가볍다. 순식간에 브랜치를 새로 만들고 브랜치 사이를 이동할 수 있다. 다른 버전 관리 시스템과는 달리 Git은 브랜치를 만들어 작업하고 나중에 Merge 하는 방법을 권장한다. 브랜치란 Git의 브랜치는 커밋 사이를 가볍게 이동할 수 있는 어떤 포인터 같은 것이다. 아래와 같이 git branch 명령으로 testin..