본문 바로가기

전체 글92

[TDD] Test Driven Development - python unittest 모듈을 사용하며 거창하게 쓰기 보다는 기록하기... TDD는 개발 기법으로, 말 그대로 '테스트에 기반한 개발 방법' 이라고 한다. Agile한 개발 방법과도 굉장히 적합하다. 크게 다섯 단계로 나눌 수 있다: Add a test : 테스트 코드부터 짠다. 프로그램이 갖춰야 할 기능을 테스트 코드로 작성해서 검증한다고 생각하면 된다. Run all tests and see if the new test fails : TDD 싸이클이 첫 번째가 아니라면, 당연히 이전까지의 테스트는 모두 통과해야 한다. 거기에 더불어 1단계에서 추가한 테스트에서는 반드시 Fail이 되어야 한다. 이게 통과되면 이미 프로그램은 해당 기능을 갖추고 있다는 뜻으로, 프로그램을 개발하고 발전시키기 위한 테스터가 잘못되었다는 뜻이다. Write th.. 2022. 6. 10.
기본적인 터미널 명령어들 1. cd : change directory . cd 디렉토리 식으로 쓰면 해당 폴더로 이동 2. chmod : 권한 변경. user, group, others 차례대로 3비트씩 차지하며, 3비트 2진수로 chmod 111 식으로 x권한을 모두에게 부여할 수도 있다. 비트 연산이 아닌 경우 상황에 알맞게 u(user), g(group), o(others) 에 +,- r(read), w(write), x(execute) 을 연산해주며 권한을 변경할 수 있다. 3. mkdir : make directory. 디렉토리 생성 4. >, p 라고 해주면 p에 내용이 들어감 5. cat : 파일의 내용을 읽어준다. 6. man: manual , .. 2022. 6. 10.
[Linux] ubuntu-desktop 설치 시 dependencies 오류 - unmet dependencies 일전에 우분투를 가상머신에 설치하는 포스팅을 올렸었는데, 어떤 분께서 오류가 발생한다고 하셔서 해결법을 찾아봤다. 1. aptitude 이용하기 aptitude는 apt처럼 일종의 패키지 관리 프로그램인데, sudo apt install aptitude 로 설치할 수 있다. 설치한 뒤 sudo aptitude install ubuntu-desktop을 실행시키면 dependency를 알아서 설치해 주는데, 문제는 해결되지 않았었다. 혹시라도 한 번 해보는거 추천. 2. 패키지를 모두 지웠다가 다시 해보기 sudo apt-get autoclean sudo apt-get -f install sudo dpkg --configure -a sudo apt-get -f install 패키지 데이터베이스를 업데이트하.. 2022. 6. 10.
백준 11050. 이항 계수 1 https://www.acmicpc.net/problem/11050 11050번: 이항 계수 1 첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\)) www.acmicpc.net 단순히 조합을 구현해보면 되는 문제. 조합 공식은 이렇게 되기에, 팩토리얼 함수를 하나 구현해서 풀었다. def fac(n): if n == 1 or n == 0: return 1 return n * fac(n - 1) n, k = map(int, input().split()) print(int(fac(n)/(fac(k) * fac(n-k)))) 2022. 6. 10.