본문 바로가기

Programming

(138)
TDD, TestDrivenDevelopment, 테스트 기반 개발, unit test, 단위테스트, 설계, TFD, TestFirstDevelopment, 테스트 우선 개발 2021.04 우아한테크캠프 pro 프리코스 중 자바지기님의 TDD 관련 강의를 이해한대로 간략 정리 TDD -> Test code + Production code 로 이루어져 있다. 테스트 코드는 말그대로 테스트를 하기 위한 코드이고, 프로덕션 코드는 비지니스 등 로직 코드이다. TDD는 단위테스트와는 다르다. TDD가 단위 테스트를 이용하는 큰 범주로 볼 수 있겠다. TDD는 단위 테스트를 먼저 작성하고, 그에 맞게 역으로 프로덕션 코드를 작성하고, 리팩토링 하는 과정을 반복한다. TDD는 테스트 기반이지만, 테스트기술 뿐만은 아니고 분석기술이면서 설계기술이다. (테스트 + 분석 + 설계) TDD를 잘하기 위해서는 요구사항을 잘 분석해서 TODO 리스트를 잘 만들어야 한다. TDD를 하면 얻어지는 장..
Git commit convention, 깃 커밋 컨벤션, How to commit, 커밋 메시지 포맷, Angular JS git commit message conventions gist.github.com/stephenparish/9941e89d80e2bc58a153 AngularJS Git Commit Message Conventions AngularJS Git Commit Message Conventions. GitHub Gist: instantly share code, notes, and snippets. gist.github.com Git commit 시에 메시지에 대한 컨벤션 Git commit convention 참고하는 방법으로, 1. 커밋 메시지 포맷을 본다. 2. Subject line 에서 type에 들어가는 것들을 본다. 3. Subject line 에서 scope에 들어가는 것들을 본다. 4. Message body에 들어가는 내용을 확인한다. 5. Mes..
Software engineering 강의자료요약, Chapter5 System Modeling. Ian Sommerville, 소프트웨어공학, 강의자료요약, 아키텍처, architecture, Agile, 애자일, 방법론, plan driven, UML, modeling, requirements, 요구사항 분석 ch5. System modeling 시스템 모델링은 시스템의 추상적인 모델들을 만드는 과정이고, 각 모델들은 시스템의 다른 관점을 표현한다. Unified Modeling Language (UML) graphical notation을 통해서 시스템 모델링을 표현한다. 시스템 모델링은 기능 이해를 돕고 고객과 커뮤니케이션에 쓰인다. 시스템 관점들 (Perspectives) 1. External (시스템의 문맥이나 환경) 2. Interaction (시스템, 환경, 컴포넌트들의 상호작용) 3. Structural (시스템 구성이나 데이터 구조) 4. Behavioral (이벤트에 반응하는 동적인 행동) UML(Unified Modeling Language): Activity, Usecase, Sequenc..
Software engineering 강의자료요약, Chapter4 Agile software development. Ian Sommerville, 소프트웨어공학, 강의자료요약, 아키텍처, architecture, Agile, 애자일, 방법론, plan driven, UML, modeling, requirements, 요구사항 분.. ch4. Requirements Engineering 시스템 요구사항을 정리하고, 개발 시 제약사항을 정리한다. 요구사항들은 bid(응찰-하이레벨로 추상화), contract(계약서-디테일) 피할 수 없다. User requirements 는 고객을 위해 쓰여지고, System requirements 는 디테일하게 계약을 위해 쓰여진다. 요구사항 상세 specification 에서, User requirements 는 기술적인 것이 좀 덜 들어가고 System requirements 는 기술적인 것이 많이 들어간다. (UML 등 graphical notations) Functional requirements: 시스템이 제공해야 하는 서비스들을 언급 Non-functional requirements: 개발..
Software engineering 강의자료요약, Chapter3 Agile software development. Ian Sommerville, 소프트웨어공학, 강의자료요약, 아키텍처, architecture, Agile, 애자일, 방법론, plan driven, UML, modeling, requirements, 요구사항 분.. 2021.04.20 - [Programming/SW Engineering , Architecture, etc.] - Software engineering 강의자료요약, Chapter1 Introduction. Ian Sommerville, 소프트웨어공학, 강의자료요약, 아키텍처, architecture, Agile, 애자일, 방법론, plan driven, UML, modeling, requirements, 요구사항 분석 Origin: iansommerville.com/software-engineering-book/ Hugo Serif Theme Serif is a modern business theme for Hugo. It contains content types for the archetypical..
Software engineering 강의자료요약, Chapter2 Software process. Ian Sommerville, 소프트웨어공학, 강의자료요약, 아키텍처, architecture, Agile, 애자일, 방법론, plan driven, UML, modeling, requirements, 요구사항 분석 Origin: iansommerville.com/software-engineering-book/ Hugo Serif Theme Serif is a modern business theme for Hugo. It contains content types for the archetypical business website. The theme is fully responsive, blazing fast and artfully illustrated. hugo-serif.netlify.app ch2 sw process SW process model 들은 소웨 시스템을 만들기 위한 활동의 과정들을 추상화 시켜서 표현한 것들이다. 일반적인 프로세스 모델들은 소웨 프로세스들의 organization을 묘사한다. 예) 워..
Software engineering 강의자료요약, Chapter1 Introduction. Ian Sommerville, 소프트웨어공학, 강의자료요약, 아키텍처, architecture, Agile, 애자일, 방법론, plan driven, UML, modeling, requirements, 요구사항 분석 Origin: iansommerville.com/software-engineering-book/ Hugo Serif Theme Serif is a modern business theme for Hugo. It contains content types for the archetypical business website. The theme is fully responsive, blazing fast and artfully illustrated. hugo-serif.netlify.app 전문적인 소웨 개발 - 소웨 공학이란 무엇을 의미하는가 소웨 공학에 영향을 미치는 윤리적 이슈들 3개의 예시 모든 발전한 나라의 경제들이 소웨에 의존한다. 점점 더 시스템들이 소웨에 의해 컨트롤 된다 소웨공학은 이론, 방법, ..
아나콘다 환경 설치, 복사, 파이썬, Anaconda enviroment export/import, How to transfer conda environment, Python, 복사, 파이썬, Clone, 개발환경 How to clone and make new conda enviroment on somewhere. 아나콘다의 파이썬 및 각종 개발환경 설치한 것을 동일 PC 혹은 다른 PC로 옮길 때 사용하는 커맨드라인 1. Check env name what you wanna export or clone 2. Activate that env 3. Export env list .txt 4. Open conda cmd in PC you wanna make new env 5. (If there are packages conda cannot install) Add conda-forge channel 6. Make new env using env list .txt file 1. 설치된 환경들 중 export할 환경 이름을 ..