전체 글 (46) 썸네일형 리스트형 [CS 지식의 정석 - 필기 노트] XML XML (Extensible Markup Language)마크업 형태를 쓰는 데이터 교환 형식 마크업 형태마크업 태그 등을 이용하여 문서나 데이터 구조를 나타내는 방법속성 부여도 가능 구성프롤로그 : 버전, 인코딩루트요소 : 단 하나만 존재하위 요소들 // 프롤로그 버전, 인코딩 // 루트 요소 // 하위 요소 마녀 배달부 키키 따스함에 둘러쌓인다면 하울의 움직이는 성 세계의 약속 HTML과 XML 차이 HTMLXML용도데이터를 표시데이터를 저장 및 전송태그미리 정의된 태그 사용커스텀 하게 사용자가 고유한 태그를 만들고 정의 가능대소문자 구분구분하지 않음구분하기 때문에 대소문자가 다르면 XML 구문 분석기 오류 .. [CS 지식의 정석 - 필기 노트] JSON과 직렬화 / 역직렬화 Json (JavaScript Object Notation)JavaScript 객체 문법으로 구조화된 데이터교환 형식여러 언어에서 데이터 교환 형식으로 사용단순 배열, 문자열도 표현 가능 JavaScript 객체문법{ "name" : "Prev", "name" : "Current", 참고: 단순 배열, 문자열 표시 가능[a, b, c, d] --> 이것도 JSON"This is JSON" --> 이것도 JSON물론 이렇게 잘 안 쓰임 C#에서 JSON 읽고, 파싱하기using (StreamReader file = File.OpenText(path)){ using (JsonTextReader reader = new JsonTextReader(file)) { JObj.. [2D 카메라 액션 패키지 개발] #03 - 계층 구조 기반으로 원사이클 코드 완성 개요 계층 구조를 짜두고 플로우를 보면서 최대한 책임 분리를 생각하면서 클래스 파일을 만들고, 코드를 작성했다. 책임을 분리한다는 것 때문에 특정 객체가 어떤 곳에서 호출되는지 해당 객체에서는 보이지 않았다. 이 때문에 처음 하루동안에는 코드를 작성하는데 버퍼링이 걸렸다. 그러다 방법을 찾았는데, 내가 짠 계층 구조 중 시스템 계층부터 메서드와 주석을 달아보는 것이었다. 시스템 계층은 데이터, 프레젠테이션 등 여러 계층을 한데 묶어서 연결해주는 풀(glue)의 역할을 하는 유일한 계층이었기 때문에 머리에 떠오르는 흐름과 같아 훨씬 더 빠르게 작업이 이루어졌다. 주석으로 작성한 내용을 하나하나 보면서 필요한 객체를 정의하고, 구현하는 것으로 순서를 바꾸니 놀랍게도 이전에 어려웠던 클래스의 구현도 크게.. [2D 카메라 액션 패키지 개발] #02 - 모듈화 기준, 설정 계층 정의 서론 플로우가 잡히고, 실제 개발에 들어가기 전에 거대한 개발 범위를 축소해야 한다. 이전에 내가 개발을 하다가 어려움에 부딪히거나 그 때문에 멈춰 섰던 이유가 무엇일까? 여러 이유가 있었지만 개발 범위를 너무 넓게 잡아서 그랬던 기억이 많다. 그래서 이번에는 개발에 앞서 범위를 작게 시작하여 독립적으로 개발하고 이후에 연결하고자 한다.모듈화 기준 모듈화의 기준은 무엇일까? 내가 참고한 블로그에 따르면 클래스의 기능을 컴퓨터 부품처럼 분리하여 마치 컴퓨터를 조립하듯 기능들을 조합해 객체를 완성시키는 것이라고 한다. 부품을 나누는 데에는 어떠한 의미가 있을까? '전체 플로우에서 각 부품이 어떠한 책임을 지는가'에 의미를 두어야 한다고 생각한다. 참고로 객체 지향 설계의 5원칙인 SOLID 원칙에서 S.. [2D 카메라 액션 패키지 개발] #01 - 기능 정의 및 플로우 차트 작성 서론 유니티 개발자로 일하고 다시 이직 준비를 하면서 항상 게임 완성을 위해서 개발을 임해왔다. 그렇게 많은 성과들이 있었지만 한편으로는 후회가 되는 점이 많이 생겼다. 먼저 완성이라는 거대한 목표를 향해 가는 여정이라고 생각하다 보니 중간중간 결과물을 남기는 것에 소홀했다. 특히 중간에 프로젝트가 멈추게 되면, 정리해 둔 것이 없어 내 노력에 비해 눈에 보이는 성과가 없는 것처럼 보였고, 이것이 생각보다 나에게 더 큰 허무를 주었다. 꼭 정리된 결과물만 문제가 되는 것은 아니었다. 한 게임의 완성을 목표로 개발하게 되면 초기에 아무리 FDD(기능 주도 개발)로 개발을 하겠다고 마음먹었다고 해도 기능의 구분이 모호해지고, 결국 독립적으로 기능을 떼어 만들 수 없었다. 이 때문에 장기적으로는 디버깅이.. 유데미 스타터스 유니티 개발자 취업 부트캠프 1기 - 프로젝트 코스 7주차 학습 일지 벌써 다음주면 스타터스 프로젝트 코스가 끝난다. 마지막 발표 전 구현하고, 버그 수정하고, 배포하고... 할 일은 산더미인데 너무나 시간이 빠르게 지나가는 것 같은 한 주였다. 그래도 어느정도 구실을 갖춰지는 모습을 보면 뭔가 할머니가 다 큰 아들을 보는 기분 같이 대견한 마음이 들기는 하는 것 같다. ㅎㅎ 레벨 에디터 모드 레벨 에디터 모드(별 생성)는 유저가 스스로 맵을 디자인하고 만들어서 플레이할 수 있는 모드이다. 스프린트 3에서 가장 중점으로 만들고 있는 새 기능 중 하나로 여기서 난 포인터를 이용해 블록을 만들어 배치하고, 카드를 부여, 시작 카드를 등록 그리고, 모든 ui창 on off하는 기능들을 만들었다. 어떻게 보면 맵을 저장하고, 테스트 플레이하는 기능 전에 구현할 부분을 모두 만들었.. 유데미 스타터스 유니티 개발자 취업 부트캠프 1기 - 프로젝트 코스 6주차 학습 일지 이번 주는 스프린트 2 발표가 있었다. 스프린트 1 발표와는 다르게 it개발실 팀장님 그리고 협력사에서까지 사람이 왔고 더 무거운 분위기였다. 확실히 압박감이 상당했지만.. 그래도 나름 잘 극복했다고 본다. ㅎㅎ 발표 준비 발표 준비라기 보다는 프로젝트 준비에 가까웠다. 프로젝트를 마치 위에 보고하듯이 우리는 프로젝트가 거의 왼성된 모습임을 보여주는게 최우선 목표였다. 그래서 일주일간 정말 열심히 게임 플레이적인 거의 모든 문제들을 해결하려 애썼다. 결국 메인 화면부터 스테이지 4의 시나리오까지 많은 부분을 완성했고 발표 준비 역시 아슬아슬 했지만 발표 전날까지 완성할 수 있었다. 발표 발표는 나와 형상관리에 힘쓰신 다른 팀원분이 하였다. 원래 발표 준비할 적에 기획 팀장님이 내려오신다 그래서 발표 앞 .. 유데미 스타터스 유니티 개발자 취업 부트캠프 1기 - 프로젝트 코스 5주차 학습 일지 이번주 한 마디 스프린트 2의 들어서고 첫 주. 스프린트 1에서 어느 정도 데모 플레이까지 개발이 되어서 얼마 남지 않았구나 하는 생각이 한순간에 확 사라져 버린 한 주였다. 태스크 쪼개기 스프린트 1에서 가장 많이 느낀 것은 개발 자체 보다도 역할을 나누는 것이었다. 결국 1주 차 마무리 과정에서 강사님과 퍼실님한테 상담을 요청하고 여러 가지 팁을 많이 받게 되었다. 그리고 이번 주는 그 팁을 활용하는 첫 주였다. - 스프린트 시작 전에 목표를 정하고 목표에 필요한 태스크를 모두 스프린트 2 할 일로 남기기 - 스프린트 시작 전에 태스크들을 묶어서 기능 명세서 미리 작성하기 - 바로 테스트가 가능하게 유닛테스트로 기능을 개발해라 - PR 시간을 준수해라 - 각 테스크에 시간을 1시간 정도 정해두어 1시.. 이전 1 2 3 4 ··· 6 다음