728x90

정리 62

Python] 연산자

###연산자 ##산술연산자 - 단항연산자, 지수연산자, (곱하기, 나누기, 나머지, 몫), (더하기, 빼기)의 우선순위- 곱하기, 나누기, 나머지, 몫 : *, /, %, //로 결합순서가 좌에서 우- 지수 연산자 : **(2**3=8)로 결합순서가 우에서 좌- 더하기, 빼기 : +, -로 결합순서가 좌에서 우- print divmod(a,b) = (a/b, a%b) ##관계연산자 - 객체가 지는 값의 크기를 비교하여 True, False 반환a==b, a!=b, a>b, a실제 코드 개발 시 연산자 우선순위에 많은 의존 없이 괄호를 적절히 사용해 코드의 가독성을 높이는 것이 좋다.

C#] 제네릭(Generic) - 2

### 제네릭 ## 파생 제네릭 형식도 제네릭이 아닌 클래스처럼 파생 가능.제네릭 클래스를 기반으로 삼아 파생 클래스 정의 시, 기반 클래스의 형식 매개변수를 열린 채로 남겨두는 것이 가능함. 12class Stack {}class SpecialStack : Stack {}cs 구체적 형식을 지정해 제네릭 형식 매개변수를 닫을 수도 있으며, 파생 형식에서 새로운 형식 매개변수를 도입할 수도 있음. 1234class IntStack : Stack {} class List {}class KeyedList : List {}cs 엄밀히 말해 한 파생 형식의 모든 형식 매개변수는 새로 도입된 것임. ## 자신을 참조하는 제네릭 형식 파생 형식이 기반 형식의 형식 매개변수를 닫을 때, 파생 형식 자신을 형식 인수로..

C#] Delegate(델리게이트, 대리자) - 1

### Delegate Delegate type은 그 형식의 인스턴스를 호출할 수 있는 종류의 메서드를 정의함.좀 더 구체적으로 이 형식은 그런 메서드의 반환 형식과 매개변수 형식들을 정의함.delegate는 전통적인 프로그래밍 언어에서의 callback과 유사한 측면이 있다. 일반적으로 이 callback은 C의 함수 포인터 같은 지연 호출 수단을 일컫는 용어로 쓰임. 반환 형식이 int, int 형식의 매개변수 하나를 받는 모든 메서드에 사용 가능한 delegate type 정의한 예. delegate int Transformer (int x); class Test { static void Main() { Transformer t = Square; int result = t(3); Console.Wr..

C#] 제네릭(Generic) - 1

### 제네릭(Generic) 여러 형식들에서 재사용할 수 있는 코드를 작성하기 위한 메커니즘 중 하나로, 자리표(placehodler)에 해다하는 형식들을 담은 템플릿(template)을 통해 재사용성을 표현함.상속에 비해 형식 안전성이 증가하고 casting, boxing이 줄어듦. ## 형식 형식 매개변수(type parameter)들을 선언하여 사용하며, 이는 실제 형식들이 대신할 자리를 표시하는 자리표에 해당함.형식 매개변수는 관례적으로 T를 이용하며, 형식 매개변수가 여러 개인 경우, T로 시작하면서 명확히 구분할 수 있는 이름을 붙여 매개변수를 사용함.실제 형식은 형식 인수(type argument)라고 부름. ex) Stack 123456789101112public class Stack{ ..

C#] 열거형(Enum Type)

### 열거형(Enum Type) 일련의 수치 상수들에 이름을 붙일 수 있는 특별한 형식열거형의 각 멤버에는 바탕 정수값이 존재하며, 이는 기본적으로 int형이며, 선언 순서대로 0, 1, 2가 배정됨.int 외의 형식을 배정하는 것도 가능하며, 명시적으로 바탕 정수 값 외의 값을 배정하는 것도 가능함. 더 나아가, 컴파일러는 열거형의 일부 멤버들에만 명시적으로 값을 배정하는 것도 허용함.이 경우 배정되지 않은 열거형 멤버들에게는 가장 최근 명시적으로 배정된 값을 차례로 증가한 값들이 배정됨. ## 변환 enum 인스턴스를 그 바탕 정수값으로, 그 반대로 변환 가능함.두 경우 모두 명시적 캐스팅(casting)이 필요. public enum BorderSide : byte { Left = 1, Right..

Javascript] 내장 객체(Built-in Object)

### JavaScript 내장 객체 - JavaScript 자체적으로 제공- Object : 최상위 객체, 모든 객체는 이를 기본으로 하여 생성- Number : 숫자 표현하는 객체- String : 문자열 표현하는 객체- 메서드 체이닝 : 메서드를 연속적으로 사용하는 것 ## Object - JavaScript의 가장 기본적인 내장 객체로, 최상위 객체- Object() 생성자 함수에 의해 생성된 인스턴스- 모든 기본 내장 객체는 Object 객체를 기본으로 만들어짐- 생성var object{};var object = new Object(); - 메서드constructor() : 객체의 생성자 함수를 나타냄hasOwnProperty(V) : 문자열 매개 변수로 전달된 속성이 객체에 있는지 확인isPr..

Javascript] DOM(Document Object Model)

### Document Object Model;문서객체모델 - W3C에서 정의- Core(모든 문서), XML, HTML 표준모델이 존재- HTML DOM : 웹 문서 로드 시, 브라우저는 구성요소를 객체화하여, 트리 구조의 DOM을 생성. HTML의 구성 요소들을 획득, 변경, 추가 삭제하기 위한 표준 ## 문서 객체- JavaScript에서 사용할 수 있는 객체로 만들어진 HTML 요소- 정적 문서 객체 생성웹 문서를 로드하며 HTML 문서 내의 구성요소 읽고 객체 생성- 동적 문서 객체 생성JavaScript로 HTML 문서에 없던 문서 객체 생성 * 요소 : HTML 문서에 작성한 요소* 노드 : HTML 태그와 문자열이 객체화 된 것, 하나의 객체 그 상태, 하나의 텍스트 상자* 문서객체 : H..

C#] 상수(Constant)

상수 필드(constant field) 값을 결코 바꿀 수 없는 정적 필드컴파일 시점에서 정적으로 평가되며, 컴파일러는 상수가 쓰이는 곳마다 그 값을 직접 삽입하며,이는 C++의 매크로와 상당히 유사한 면을 띔.타입으로는 내장 수치 타입들과, bool, char, string, 열거형을 사용 가능상수 선언 시, const 키워드를 반드시 써줘야 하며, 초기치도 반드시 지정해야 함. 메서드에 국한된 지역 상수 사용을 가능하게 함.지역 상수가 아닌 상수의 경우 다음과 같은 수정자들을 적용할 수 있음.public internal private protected, new 사용할 수 있는 형식 면에서나 필드 초기화 방식에서나, static readonly 필드보다 훨씬 제한적임.컴파일 시점에서 평가된다는 점 역시..

System] ARM Exception

ARM Exception ## Exception 외부에서 발생한 인터럽트나 알 수 없는 명령어가 실행되는 것처럼 오류 발생 시 사건을 처리하는 것 프로그램 실행->예외 발생->예외 모드 전환->예외 모드->예외 처리->프로그램 복귀 # 종류 Reset, Data Abort, Undefined Instructions, IRQ(Normal interrupt), Software Interrupt(SWI), FIQ(Fast interrupt), Prefetch Abort ## Exception Vector 에외가 발생하면 실행하던 프로그램을 멈추고 지정된 주소로 분기하기 위해 지정된 주소 ## 예외 처리 1. r14_ = 복귀 주소2. SPSR_ = CPSR3. CPSR[4:0] = 예외 모드 번호4. CPSR..

C#] 정수 Overflow와 checked, unchecked 연산자

실행 시점에서 정수 형식에 대한 산술 연산이 형식에 담을 수 없을 정도로 크거나 작을 수 있음.이 경우 overflow가 발생하는데, 이 경우, 어떠한 예외도 던져지지 않고,연산의 결과는 끝에서 끝으로 순환(wraparound)됨. 더 큰 정수 형식으로 연산을 수행한 후, 여분의 유효 자리 비트들을 폐기한 것과 같은 결과가 나오는 것이 대표적인 예 123int a = int.Minvalue;a--;Console.WirteLine (a == int.MaxValue);cs 이러한 경우의 예외 처리를 해주고 싶을 때 checked 연산자를 이용하면 예외 처리가 가능하다. checked 연산자 / unchecked 연산자표현식이나 문장에 checked 연산자를 지정하면, 실행시점에서 해당 형식의 산술 한계를 넘..

728x90