공식 사이트에 따르면 JUnit에 대한 설명은 다음과 같다. : JUnit is a simple framework to write repeatable tests. It is an instance of the xUnit architecture for unit testing frameworks. : JUnit은 반복 테스트를 작성하는 간단한 프레임워크다. xUnit 아키텍처의 인스턴스 중 하나로 유닛 테스트(단위 테스트)용 프레임워크다. 위키백과에 따르면 JUnit은 자바 프로그래밍 언어용 유닛 테스트 프레임워크고, Test-driven development(TDD) 측면에서 중요하며 SUnit과 함께 시작된 XUnit이라는 유닛 테스트 프레임워크의 계열이다. JUnit은 현제 5번째 버전인 JUnit 5까..
Leetcode 문제를 풀기 위한 언어 선택 중 Python과 Python3 두 가지 옵션이 있어 알아보게 됐다. 기본적으로 모든 Python은 Open Source이고 대부분 GPL-compatible 하다. 실제로 안드로이드 개발 당시 설치했던 파이썬 3.x 버전에선 필요로했던 기능이 동작하지 않아 지우고 2.7 버전으로 재설치했던 일이 있었다. Python 2 1. Python 2.7은 2020년 1월 1일을 마지막으로 더는 지원하지 않음 2. 2000년 Python 2.0이 처음 배포되고 마지막 버전은 2.7로 2010년에 배포 Python3 1. Python 3.0은 2008년 처음 배포됐고, 가장 최신 버전은 현재 3.10.4 2. https://www.python.org/downloads/ ..
계산 가능성 이론(computability theory)에 따르면, 원시 재귀 함수는 대략적으로 반복문이 모두 "for"문인 컴퓨터 프로그램에 의해 계산되는 함수를 말한다. 원시 재귀 함수는 전역 함수(total function)이자 일반 재귀 함수들로 이뤄진 진부분집합(strict subset, proper subset)을 가진다. 원시 재귀 함수의 중요성은 수학에서 계산 가능한 대부분의 함수들이 원시 재귀라는 것에 있고, 더하기, 나누기, 팩토리얼, 지수 함수가 그 예다. 참고 - Primitivec recursive function(원시 재귀 함수): 반복 수를 알아 for loop 가능 - Recursive function(일반 재귀 함수): 반복 수를 몰라 for loop 불가 ex) 아커만 함..
계산 가능성 이론에 따르면 아커만 함수는 빌헬름 아커만(Wilhelm Ackermann)의 이름을 딴 함수로, 가장 간단하고 먼저 발견된 완전 계산 가능(total computable function) 함수이며 비원시 귀납 함수(not primitive recursive function)이다. 모든 원시 귀납 함수는 완전(total)하고 계산 가능하지만, 아커만 함수는 모든 완전 계산 가능 함수가 원시 재귀 함수는 아니라는 것을 설명한다. 아커만의 발표 이후, 3개의 음수가 아닌 정수를 인자로 갖는 아커만 함수에 대해 많은 사람들이 다양한 목적으로 변형했다. 흔한 예정 하나로는 두 개의 인자를 갖는 아커만 피터 함수(Ackermann-Peter function)이 있는데 음수가 아닌 두 정수 m과 n에 ..
NP는 Nondeterminisitic Polynomial-time의 약자로, NP-complete problem은 효율적인 해결 알고리즘이 현재까지 알려지지 않은 계산 문제 중의 하나다. 많은 중대한 컴퓨터 싸이언스 문제들이 이 종류에 속하는데 여기엔 Knapsack problem(배낭 문제), The traveling salesman problem(외판원 문제), Boolean satisfiability problems(충족 가능성 문제)와 Graph coloring problems(그래프 색칠 문제) 등이 있다. 계산 복잡성 이론에 따르면, 다음의 두 조건을 만족할 경우 NP-complete problem이다: 1. 각 해법의 정확함이 빠른 시간 안에 확인이 되고, 모든 가능성 있는 해법을 시도하는..
Architectural smell은 대개 이해도, 시험 가능성, 확장성, 재활용성과 같은 시스템의 생명주기 특성에 부정적으로 영향을 미치는 아키텍쳐 설계 결정을 뜻한다. An architectural bad smell is a commonly (although not always intentionally) used set of architectural design decisions that negatively impacts system lifecycle properties, such as understandability, testability, extensibility, and reusability. 출처(References) - Toward a Catalogue of Architectural Bad ..
Taxonomies for the Development and Verification of Digital Systems에 따르면 Platform-based design이란 "통합을 지향하는 디자인 접근 방법으로 플랫폼과 호환 가능한 하드웨어와 소프트웨어 가상 구성요소를 기반으로한 복잡한 제품을 개발하기 위해 체계적이고 조직적인 재사용을 강조하고, 이것의 의도는 시장에 내놓기 위한 개발 위험과 비용, 시간을 줄이는 것이다. Platform-based design is defined in Taxonomies for the Development and Verification of Digital Systems as "an integration oriented design approach emphasizing s..
- Total
- Today
- Yesterday
- 투 포인터
- 소켓 프로그래밍
- Computer Graphics
- 오블완
- 딕셔너리
- java
- Android
- tf-idf
- I2C
- 이코노미스트 에스프레소
- machine learning
- min heap
- 안드로이드
- 티스토리챌린지
- The Economist Espresso
- DICTIONARY
- ml
- join
- C++
- socket programming
- defaultdict
- 머신 러닝
- 리트코드
- Hash Map
- leetcode
- vertex shader
- Python
- 파이썬
- 이코노미스트
- The Economist
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |