본문 바로가기

전체 글

(195)
[ Pattern ]SOLID 원칙 [ Gof와 SOLID 원칙의 소개 ]1 . GOF[ GOF ]- 디자인 패턴을 만들어낸 그룹- 디자인 패턴은 SOLID 원칙을 지키기 위해 사용된다 .2 . SOLID 원칙[ SOLID 원칙 ]- SOLID 원칙은 소프트웨어 설계를 더 이해하기 쉽고, 유연하며 유지보수 가능하게 만드는 설계 원칙의 집합 .- 객체 지향 프로그래밍에서 유용하다 . [ SOLID 원칙의 종류 ]Single Responsibility ( 단일 책임 원칙 )Open - Closed ( 개방 폐쇄 원칙 )Liskov substitution ( 리스코프치환 원칙 )Interface segregation ( 인터페이스 분리 원칙 )Dependency Inversion ( 의존 역전 원칙)[ SOLID 원칙 ]1 . Single Re..
[ 유니티 ] 모바일 해상도 대응하기 [ Canvas 조절로 화면비율 설정하기  ]1 . UI Scale Mode 정하기[ Constant Pixel Size ]UI 요소가 화면 크기에 관계없이 동일한 픽셀 크기로 유지.UI 요소의 크기가 변경이 안됨해상도 크기에 상관 없이 UI 요소의 크기는 고정, 높은 해상도에서는 UI가 작게 보이는 문제가 생길 수 있음.[ Scale With Screen Size  ]화면이 커질수록 UI 요소도 같이 커진다 .기준이 되는 해상도를 설정 , 그 것에 맞는 UI 요소를 설계하면 게임 실행시 해상도가 변해도 알아서 해상도 크기에 맞게 UI 요소의 크기도 같이 변한다.기종마다 다른 해상도에 대응이 가능하기에 모바일 환경에 이상적인 모드이다 .Reference Resolution은 기준 해상도이다 . 화면해상도..
[ 이것이 C#이다 ] Chapter 22. 가비지 컬렉션 [ 학습 흐름 ]가비지 컬렉터<li style="list-style-typ..
[ 이것이 C#이다 ] Chapter 20. WinForm으로 만드는 사용자 인터페이스 C# 코드로 WinForm 윈도우 만들기 Application 클래스 윈도우를 표현하는 Form 클래스 폼 디자이너를 이용한 WinForm UI 구성 사용자 인터페이스와 비동기 작업 [ C#코드로 WinForm 윈도우 만들기 ] [ 개요 ] - WinForm에서 제공하는 폼 디자이너 툴은 프로그래머가 그림을 그리듯 사용자 인터페이스를 만들게 한다 . - 위즈윅 ( What You See Is What You Get )방식의 개발을 지원한다 . - 비주얼 스튜디오의 도움 없이 C# 코드만으로 GUI를 구성할 수도 있다 . [ WinForm 클래스를 이용한 윈도우 생성 절차 ] System.Windows.Forms.Form 클래스에서 파생된 윈도우 폼 클래스를 선언한다 . 클래스의 인스턴스를 System.W..
[ 이것이 C#이다 ] Chapter 19. 스레드와 태스크 [ 학습 흐름 ] 프로세스와 스레드 스레드 시작하기 스레드 임의로 종료시키기 스레드 일생과 상태 변화 인터럽트 System.Threading.Tasks.Task 클래스 Task클래스 Parallel 클래스 async 한정자와 await 연산자로 만드는 비동기 코드 [ 프로세스와 스레드 ] [ 프로세스 ] - 프로세스란 실행파일이 실행되어 메모리에 적재된 인스턴스 - 즉 , 실행파일에 담겨있는 데이터와 코드가 메모리에 적재되어 동작하는 것이 프로세스 - 프로세스는 하나 이상의 스레드로 구성된다 . - 스레드는 운영체제가 CPU 시간을 할당하는 기본 단위 [ 멀티 스레드의 장점 ] 응답성을 높일 수 있다 . ex ) 파일 복사 - 사용자 대화 두개의 스레드가 있다면 파일복사를 하는 동안 사용자 대화가 가능하..
[ 이것이 C#이다 ] Chapter 18. 파일 다루기 [ 학습 흐름 ] 파일 정보와 디렉토리 정보 다루기 파일을 읽고 쓰기 위해 알아야 할 것들 이진 데이터 처리를 위한 Binary Writer / Binary Reader 텍스트 파일 처리를 위한 Stream Writer / Stream Reader 객체 직렬화하기 [ 파일 정보와 디렉토리 정보 다루기 ] [ 파일과 디렉토리 ] - 파일은 컴퓨터 저장 매체에 기록되는 데이터의 묶음 . - 디렉토리는 파일이 위치하는 주소로 파일을 담는다는 의미에서 폴더라고도 부른다 . - .Net은 파일과 디렉토리 정보를 손쉽게 다룰 수 있도록 System.IO 네임스페이스에 다음 클래스를 제공한다 . [ 파일 관련 클래스 ] 클래스 설명 File 파일의 생성,복사,삭제,이동,조회를 처리하는 정적 메소드를 제공 . File..
[ 이것이 C#이다 ] Chapter 17 . dynamic 형식 [ 학습 흐름 ] dynamic 형식 덕 타이핑 COM과 .NET 사이의 상호 운용성 동적 언어와의 상호 운용성 [ dynamic 형식 ] [ dynamic 형식 ] class MyClass { public void FuncAAA() { //Do Something } } class MainApp { static void Main(string[]args) { dynamic obj=new MyClass(); obj.FuncAAA(); //obj가 dynamic 형식으로 선언 , 메소드가 선언되지 않았지만 컴파일러 검사를 피해간다 obj.FuncBBB(); } } - 형식 검사를 하는 시점이 프로그램 실행중인 데이터 형식 - dynamic 형식을 만나면 컴파일러는 형식검사를 프로그램 실행중으로 미루게 된다 ...
[ 이것이 C#이다 ] Chapter 16 . 리플렉션과 애트리뷰트 [ 학습 흐름 ] 리플렉션 Object.GetType()메소드와 Type클래스 리플렉션을 이용하여 객체를 생성하는 방법을 이해한다 . 애트리뷰트가 무엇인지 이해한다 . 애트리뷰트를 작성하고 사용하는 방법을 익힌다 . [ 리플렉션 ] [ 리플렉션 ] - 객체를 X_RAY사진처럼 객체의 형식정보를 들여다보는 기능 . - 프로그램 실행중 객체의 형식이름/프로퍼티 목록/메소드 목록/필드/이벤트 목록까지 열어 볼 수 있다 . - 형식의 이름만 있다면 동적으로 인스턴스를 만들 수 있고 , 인스턴스의 메소드를 호출 가능하다 . - 새로운 데이터 형식을 동적으로 만들 수 있다 . - 런타임중 형식정보를 다룰 수 있는 리플렉션은 강력한 표현력을 선사한다 . [ Object.GetType()메소드와 Type 클래스 ] -..