제 블로그에서 가장 인기있는 글이 if 문 줄이기인데, 최근 신간 『자바 코딩의 기술』 에 비슷한 내용이 있네요. 새로운 것도 있고 중요한 것 같아서 제 나름대로 다시 한번 정리해 보았습니다. 한국 상황에 맞게 약간 변경도 했습니다. 물론 이 책에는 이외에도 수준높은 내용들이 엄청나게 많습니다. 거기서 초보 개발자에게 의미있을 만한 일반적인 규칙들입니다. (1) 불필요한 비교 조건식을 지워라 자바 언어에서는 int나 숫자 타입에 대해 반드시 비교를 해야 참거짓으로 바꿀 수 있다. 그런데 가끔 이런 문제 때문에 수식이나 함수의 결과가 진위형일 때도 == true 같이 비교식을 쓴 경우가 있다. 불필요한 진위식의 비교는 지우는 것이 필요하다. if (largerThanA(x) == true) 일반적으로 진위..
다음의 C 코드를 Rust로 바꾸어 보겠습니다. 배열과 for 루프, 그리고 함수에 배열을 넘기는 것이 포함됩니다. void analyze_slice(int arr[], int len) { printf("arr[0] = %d, 길이: %d\n", arr[0], len); } void main() { int xs[] = {1, 2, 3, 4, 5}; int ys[500] = {0}; printf("xs 배열의 크기: {}", sizeof(xs)/sizeof(int)); // 배열을 대여 - 함수 호출 analyze_slice(xs, 5); for (int x=0; x < 500; x++) { ys[x] = x; } // 배열의 슬라이스를 대여 analyze_slice(&ys[5], 3); } 배열을 2개 ..
러스트 언어는 C/C++ 언어에 뿌리를 두고 있다고 볼 수 있습니다. 새로운 개념이 많아 배우기 어려운 언어지만 그래도 작은 것부터 만들어보면 좋겠지요? 러스트 playground라는 사이트에서 프로그램을 짜서 컴파일러를 돌려볼 수 있습니다. 러스트는 컴파일이 어렵기로 소문이 자자합니다. 워낙 꼼꼼하게 에러를 내고 안전하고 정확한 코드가 아니면 실행을 안 시켜 주기 때문에 컴파일만 잘 되면 실행하다가 죽을 일이 별로 없다는 장점도 가집니다. (컴파일 오류가 런타임 오류보다는 훨씬 다루기 쉽죠?) 그럼 간단한 C/C++ 코드를 대응하는 러스트 프로그램으로 바꾸는 방법을 살펴보겠습니다. fn main() { let mut a = 10; let b = 20; let mut c = 30; a += b; c -=..
- Total
- Today
- Yesterday
- ToString
- TypeError
- Lazy evaluation
- 자바regex
- max
- contentEquals
- zip
- format
- follow
- rust
- 스트링
- 동적바인딩
- 패턴
- comparable
- Iterator
- 스트링 +
- python example
- C++ 클래스
- CompareTo
- sort key
- 이터러블
- APPEND
- python exercise
- Camel Style
- contains
- 지연계산
- indexof
- 이터레이터
- 콜렉션
- typedef
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |