728x90

전체 글 334

[C#] 동기/비동기 (feat. Coroutine, Task, async/await)

*동기: 일을 주고 그 일이 끝날때까지 아무것도 안하고 기다리는 것. ex) 매표소 줄 *비동기: 일을 준 후 기다리지 않고 내 일을 하는 것. ex) 커피숍 진동벨 #동기식 프로그래밍의 예시 using System; public class TestClass { static void Main(string[] args) { PrintNumber(); PrintStart(); Console.ReadKey(); } private static void PrintNumber() { for(int i = 0; i < 10; i++) { Console.WriteLine(i); } } private static void PrintStart() { for (int i = 0; i < 10; i++) { Console.W..

🎮 Unity Study/C# 2023.08.16

[C#] Action 과 Func (feat. Delegate, callback)

Delegate: 변수처럼 사용할 수 있는 함수 Action : 반환값이 없는 델리게이트 Func: 반환값이 있는 델리게이트 callback: 작업이 끝났음을 알려주는 용도 * Delegate 기본형태는 아래와 같다. public class TestClass { delegate void MyDelegate(); public TestClass() { MyDelegate myDelegate = FuncTest; myDelegate(); } public void FuncTest() { } } Delegate를 함수의 리턴타입, 인자값에 맞게 선언한다. 사용전에 선언하고 호출한다. 활용1) 어떤 범주 안에 있는 여러 함수가 수행되어야 할 때 public class TestClass { delegate void ..

🎮 Unity Study/C# 2023.08.16

[10주 완성 C++ 코딩테스트] 누적합, Prefix Sum

* 누적합: 어떤 배열의 앞 요소부터 누적된 합을 저장한 배열. 앞에서부터 더하는 prefix sum과 뒤에서 부터 더하는 suffix sum 이 있다. 배열의 값이 변하지 않는 정적 변수에만 사용할 수 있다. * 누적합이 필요한 예시문제 문제 승철이는 뇌를 잃어버렸다. 학교에 갔더니 선생님이 자연수로 이루어진 N개의 카드를 주며 M개의 질문을 던진다. 그 질문은 나열한 카드 중 A번째부터 B번째까지의 합을 구하는 것이다. 뇌를 잃어버렸기 때문에 승철이는 이 문제를 풀 수가 없다. 문제를 풀 수 있는 프로그램을 작성해보자. 입력 수의 개수N, 합을 구해야 하는 횟수 M, 그 이후 N개의 수가 주어진다. 수는 100이하의 자연수. 그 이후 M개의 줄에는 합을 구해야 하는 구간 A, B가 주어진다. 출력 M..

Unity HTTP 통신(UnityWebRequest, Get/Post, IMultipartFormSection)

* HTTP: 웹상에서 클라이언트와 서버 간에 request/response 로 데이터를 주고 받을 수 있는 프로토콜. HTTP 메소드 중 많이 쓰는 2가지. GET, POST. 1) GET: 서버로부터 정보를 조회하기 위해 설계된 메소드. 데이터를 요청할 때 필요한 데이터를 Body 에 담지 않고 쿼리 스트링을 통해 전송한다. URL의 끝에 ?와 함께 이름과 값으로 쌍을 이루는 요청 파라미터를 쿼리스트링이라고 부른다. 요청 파라미터가 여러개 이면 &로 연결해서 전송한다. ex) 쿼리 스트링을 포함한 URL 샘플 www.example-url.com/resources?name1=value1&name2=value2 2) POST: 리소스를 생성/변경하기 위해 설계된 메소드. 전송해야할 데이터를 HTTP 메세..

[10주 완성 C++ 코딩테스트] 문자열 필수개념 - split(), substr(), erase()

* split(): 특정 문자열을 기준으로 쪼개는 함수. C++ 에선 지원하지 않아서 직접 구현해야 함. * 시간복잡도: O(n) * 띄어쓰기를 기준으로 문자열을 쪼개는 예시 코드. 암기 ★★★★★ #include #include #include using namespace std; vector split(string input, string delimiter) { vector ret; long long pos = 0; string token = ""; while ((pos = input.find(delimiter)) != string::npos) { token = input.substr(0, pos); // "안녕하세요" ret.push_back(token); input.erase(0, pos + de..

[10주 완성 C++ 코딩테스트] 필수개념 - 재귀함수(Recursion)

* 재귀함수 1) 정의 단계에서 자신을 참조하는 함수 2) 전달되는 상태인 매개변수가 달라질 뿐 똑같은 일을 하는 함수 3) 큰 문제를 작은 문제로 쪼갤 때 사용함 * 재귀함수 주의사항 1) 반드시 기저사례를 써야 한다.(종료조건) 2) 사이클이 있다면 쓰면 안된다. 3) 반복문으로 될 것 같으면 반복문으로.(함수 호출에 대한 cost를 줄이기 위해. 반복문이 더 빠를 수 있음.) * 예시 1) 팩토리얼 n! : 그 이전의 항을 모두 곱하는 것. 2) 피보나치: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89 ... #include using namespace std; int fact(int n){ if(n == 1 || n == 0) return 1; return n* fact(..

[Udemy iOS & Swift Bootcamp] App Design

[Colour Palette] *Colour Moods 1) Red: 사랑, 에너지, 강도. ex) 자동차, 판매광고 2) Yellow: 기쁨, 행복, 지성, 관심끌기. ex) 프로틴쉐이크 3) Green: 신선함, 안정성, 성장. ex) 식품 브랜드 4) Blue: 안정, 신뢰, 평온 ex) 의학, 보건 5) Purple: 왕족, 부, 여성성 ex) 단기소액대출업체 *Colour Mattching 요즘엔 비슷한 색으로 섞는 Monochromatic 이 유행이고 세련된 느낌을 줌. *Colour Design Tools https://colorhunt.co/ Color Palettes for Designers and Artists - Color Hunt Discover the newest hand-pick..

728x90