CS, C++ 등 기타 전산 지식 질문
·
📖TIL/🎤Interview
CS, C++ 등 기타 전산 지식 질문 ( 심화 ) 스마트포인터 이 질문이 먼저 나왔다면 RAII 를 여기서 언급하면 좋다.Shared, weak, unique 포인터의 특성 및 사용처 내용을 같이 준비하면 좋다.타 언어 가비지 콜렉터와 비유하여 설명을 준비하면 더욱 좋다. 댕글링 포인터 정의, 어떤 위험이 있는지, 어느 상황에서 발생할 수 있는지 같이 예시를 준비하면 좋다.얕은복사, 깊은복사 질문으로 이어질 수 있다.복사생성자 및 이동생성자에 대한 질문으로 이어질 수 있다. 캐시메모리 RAM과 CPU, 그리고 왜 캐시메모리가 필요한지 같이 묶어서 설명하면 좋다.캐시 적중률 문제로 이어질 수 있다.본인이 캐시적중률을 고려하여 코드를 최적화 해본 경험이 있다면 최고의 답변이 될 수 있다. TCP/UDP..
C# / Unity 통상 질문
·
📖TIL/🎤Interview
23년 ~ 24년 C# / Unity 통상 질문 객체지향에 대하여 설명 ( 필수 )객체지향의 정의는 물론, 객체라는 단어의 뜻 자체를 먼저 본인만의 단어로 설명할 수 있어야 한다.SOLID원칙, 4대 특징에 대하여 설명하면 된다.추상, 상속, 다형성, 캡슐화 등, 특성을 설명하실 때, 꼬리물기를 대비하여 캡슐화를 위한 프로퍼티 사용이나, 다형성을 활용하기 위한 오버라이딩 재정의, 인터페이스 등 활용 사례를 꼭 생각해두는 것이 좋다. 깊은 복사와 얕은 복사에 대하여 설명본인만의 단어로 설명을 준비하되, 본인이 구현하였던 사례가 있다면 첨부하는 것이 좋다.ICloneable 을 활용했다면, 클론 및 얕은, 깊은 복사 구현 내역을 설명하시면 좋다.활용한 기능은 없었지만 알고 있다는 것을 표현해도 좋다.참조형과..
면접 질문
·
📖TIL/🎤Interview
C# 23년 ~ 24년 면접 질문 ▼ Question 다음 코드의 출력값은 무엇인가요?using System;class Program{ static void Main(string[] args) { string a = "잘"; string b = a; b = "모르겠습니다"; Console.WriteLine(a + b); }} ▼ Answer더보기출력 값 : 잘모르겠습니다 풀이 : string a = "잘" a 에는 "잘"이 들어간다.string b = a;이 시점의 b 도 "잘"이 됀다.b = "모르겠습니다";이제 b 는 "모르겠습니다" 로 바뀐다.하지만 a 는 그대로 "잘" 이다.Console.WriteLine( a + b )a 와 b ..
Scriptable Object
·
🧊Unity Basic/데이터 관리
스크립터블 오브젝트 ( ScriptableObject )게임을 만들다 보면 무기 능력치나 적 스탯, 아이템 정보처럼 여러 곳에서 공통으로 사용하는 데이터가 많다.이런 데이터를 MonoBehaviour 내부에 직접 넣어두면 수정이 번거롭고 같은 값을 여러 오브젝트에 중복해서 넣게 될 가능성이 크다. 클래스에 변수로 선언해서 사용하거나, JSON 파일로 관리하거나, CSV 로 만들어서 파싱하는 방법도 있지만, 유니티 엔진에는 데이터 관리를 위한 강력한 도구가 있다. 바로 ScriptableObject 이다.ScriptableObject 를 사용하면 데이터를 하나의 에셋으로 분리해두고, 필요한 곳에서 공통으로 참조할 수 있어 관리가 쉬워진다.ScriptableObject 는 데이터를 저장하고 관리하기 위한 에..
컴퓨터의 문자 체계 (ASCII , Unicode, UTF-8)
·
🖥️Computer Science
컴퓨터의 문자 체계컴퓨터는 컴퓨터의 숫자 표현 체계를 가지고 숫자만 이해한다.그런데 우리가 문자를 보고 쓰고 저장할 수 있는 이유는 문자마다 숫자를 약속해 두었기 때문이다.A - 65B - 66a - 97컴퓨터가 문자를 다루기 위해서는 각 문자를 특정 숫자로 약속해두어야 한다.ASCII, Unicode, UTF-8 같은 것들이 대표적이다.이 약속을 문자 인코딩 ( Character Encoding ) 이라고 한다.ASCIIAmerican Standard Code for Information Interchange 의 약자이다.ASCII 는 1963년에 만들어진 가장 기본적인 문자 인코딩 방식이다.ASCII 는 7비트 ( 128개 )로 영어 알파벳, 숫자, 기본 특수문자들을 표현한다.0-31: 제어 문자..
Pull Request
·
🌱Github/기본 개념
Pull Request깃허브의 풀 리퀘스트는 내가 수정한 코드를 원본 브랜치에 합쳐되 되는지 검토를 요청하는 기능이다.main 브랜치 : 원본 코드feature / login 브랜치 : 로그인 기능을 작업한 코드이 상태에서 feature / login 의 내용을 main 에 넣고 싶을 때그냥 바로 합치는 게 아니라 풀 리퀘스트를 만들어서 코드 리뷰를 받고, 확인 후 병합하는 기능이다. 사용하는 이유코드 검토다른 작업자가 본인 코드를 보고 버그, 실수, 개선점이 있는지 확인변경 내용 공유어떤 파일이 바뀌었는지왜 이렇게 수정했는지다른 작업자가 한 눈에 확인할 수 있다안전하게 병합바로 main 에 병합하지 않고 리뷰를 거친 뒤 병합해서 실수를 줄일 수 있다 기본 흐름main 에서 새 브랜치 생성작업 진행커밋..
Fresnel Setting
·
📖TIL/🔮Unity Graphics
Fresnel Setting스타워즈의 드로이데카처럼 유니티 내장 기능으로 투명한 구체를 구현해보자. 1. Project 창에서 우클릭 > Create > Shader Graph > URP > Lit Shader Graph 2. Shader Graph 세팅Shader Graph Panel 에서 + 버튼 클릭 └ Float └ Color얘네가 곧 변수이다. └ Inspector 창에서 수치를 조정할 수 있게 해준다. 3. Float 변수 클릭 후 Mode 를 Slider 로 변경Inspector 창에서 Slider 형태로 조절할 수 있게 된다. 4. Color 변수 역시 Mode 를 HDR 로 변경 5. Node 연결Float → 첫번째 Fresnel Effect : PowerFloat..
Electric short
·
📖TIL/🔮Unity Graphics
직접 쓰려고 세팅한 파티클 values 세팅 ▼ Base & Emission ▼ Shape ▼ Noise ▼ Trails ▼ Renderer ▼ MaterialShader > URP > Unlit
Electric spark
·
📖TIL/🔮Unity Graphics
Start Lifetime > Random Between Two Contains > 2 / 5 세팅 Start Speed > Random Between Two Contains > 20 / 30 세팅 Start Size > Random Between Two Contains > 0.01 / 0.1 세팅Emission > Rate over Time > 0 Emission > Bursts > Count > 30Shape > Shape > SphereNoise 체크 Noise > Strength > 9 Noise > Frequency > 4.0 Noise > Quality > Low ( 1D )Trails 체크 Trails > Lifetime > 0.5 Trails > ..