본문 바로가기
프로그래밍 놀이터/Tips

[실용주의 프로그래머] 유비쿼터스 자동화

by 돼지왕 왕돼지 2018. 11. 14.
반응형

[실용주의 프로그래머] 유비쿼터스 자동화


at, cron, [실용주의 프로그래머] 유비쿼터스 자동화, 빌드 자동화, 자동화, 자동화 도구, 코드 생성 자동화, 회귀 테스트 자동화


-

생각 없이 행할 수 있는 중요한 작업의 수가 늘어남에 따라 문명은 발전한다. - 알프레드 노스 화이트헤드



-

수작업 절차를 사용하지 말라.



-

사람들은 컴퓨터만큼 반복가능하지 않을 뿐더러, 그런 것을 기대해서도 안 된다.

쉘 스크립트나 배치 파일은 동일한 명령들을 매번 똑같은 순서로 수행한다.

이걸 소스코드 관리 시스템에서 관리할 수 있기 때문에 시간이 지남에 따라 그 절차가 어떻게 변했는지도 조사할 수 있다.



-

또 다른 인기 있는 자동화 도구는 cron(윈도우는 at)이다.

이것으로 무인 작업이 주기적으로(일반적으로 한밤중에) 실행되게 일정을 설정해 놓을 수 있다.



-

프로젝트 컴파일, 확인, 테스트, 출하를 자동화 하라



-

코드 생성을 자동화 하라.



-

회귀 테스트를 자동화하라.



-

빌드를 자동화하라.



-

최종 빌드를 자동화하라.

저장소를 잠그고, 릴리스 번호를 태그로 붙이는 작업이 필요할 수 있다.

최적화와 디버그 플래그가 적절히 세팅되는 것 등 기타 여러가지가 필요할 수 있다.



-

자동화된 관리를 하라.



-

의사소통을 위한 내부 웹사이트를 생성하라.

그 윁사이트를 유지보수하는 데 너무 많은 시간을 허비해도 안 되고, 그렇다고 오랫동안 손대지 않은 낡은 사이트가 되어버려도 안된다. 잘못된 정보는 아예 없느니만 못하다.



-

코드에서 추출된 문서나 요구사항 분석, 설계 문서, 그림, 차트, 그래프 등 모두가 정기적으로 웹에 올라가야 한다.

이런 문서들이 자동화된 야밤의 빌드 일부분으로 혹은 소스코드 체크인 과정의 일부로 올려지면 좋다.



-

승인 과정을 자동화하라.



-

중이 제 머리 못 깎는다.

소프트웨어를 개발하는 사람들이 흔히 가장 형편없는 도구를 쓰기도 한다.


하지만 우리는 더 나은 도구를 만들기 위해 필요한 모든 원자재를 갖고 있다.

우리에겐 cron 이 있다.

윈도우나 유닉스 플랫폼 모두에서 작동하는 make 가 있다.

그리고 perl 이나 기타 고차원 스크립트 언어가 있어서 맞춤 도구나 웹 페이지 생성기, 코드 생성기, 테스트 장치 등을 재빨리 개발할 수 있다.



-

반복적이고 지루한 작업은 컴퓨터에게 시키자. 그런 일은 컴퓨터가 더 잘한다.




반응형

댓글