목록Study (184)
Hayden's Archive
* 왜 Python이 요구되는가? ->AI를 하기 위한 강력한 라이브러리가 탑재된 언어가 파이썬. ->R로는 딥의 핵심 모델을 만들기 어려움. -> 파이썬은 비즈니스적으로 사용가능한 범용 언어. * 파이썬 쓰는 툴 중 요즘 대세인 Anaconda(아나콘다)를 쓰겠음. * 아나콘다 특징 - 모든 패키지, 라이브러리를 거의 다 가지고 있음.(라이브러리를 심거나 다른 툴을 깔거나 할 필요가 없음) (Anaconda는 파이썬 기반의 데이터 분석에 특화된 개발 플랫폼임. Numpy, Pandas, Matplotlib, Scipy 등 과학, 수학, 데이터 분석 등과 관련된 패키지들이 기본적으로 포함되어 있다.) - 아나콘다를 쓰면 그 안에 주피터노트북이 있음. - 레벨이 올라가면 CPU로 안 됨. GPU 서버(30..
- 버전관리를 할 수 있는 방법은 명령어를 타이핑하는 CLI(Git Bash)와 아이콘, 버튼 등 그래픽으로 나타낸 기능을 클릭과 같은 동작으로 수행하게끔 하는 GUI(SourceTree)가 있음. * 소스트리의 장점 : - 처음 접하는 사람도 쉽게 느낌. - 화면에서 바로 브랜치의 형태와 커밋한 것까지 한번에 확인.(작업 흐름을 직관적 이해) * 소스트리의 단점 : - 소스트리에는 새로운 변경사항이 일정시간 이후 자동으로 반영된 내역이 출력되게끔 되어있음. But 그럼에도 불구하고 적용이 느리거나 아예 나타나지 않은 경우 간혹 발생 -> 이럴 때는 재실행 또는 세부 설정을 통해 해결. - 소스트리 자체적으로 해결할 수 없는 기능들도 존재 -> 이럴 경우 터미널로 이동하여 명령어를 통해 작업 수행을 해야..
자료 출처 : 플레이데이터 Git 입문 강의 (변영인 강사님) - 깃을 관리하는 과정에서 커밋 메세지를 잘못 입력하거나 잘못된 브랜치 사용 등으로 커밋 이력을 수정하고 싶을 수 있음. * 이전에 작성한 커밋 수정하기 * 커밋 메세지를 수정할 게 아니라 커밋 자체를 삭제해야 할 경우 - soft는 이외에 변경사항이 없고 mixed는 스테이징된 내용도 지워버림. hard는 인덱스 너머 작업공간도 지정한 커밋 이후 변동사항을 모두 삭제함. - 바로 직전 커밋으로 돌아가기 - 지정한 커밋으로 돌아가기 //reset-soft 브랜치 git log 입력하면 최신 커밋이었던 ver 2가 사라진 것 확인. ver2 메세지로 커밋되었던 내용은 취소되어 스테이지로 돌아갔고 cat으로 보면 작업 트리의 파일은 아직 영향 안..
자료 출처 : 플레이데이터 Git 입문 강의 (변영인 강사님) * 브랜치들을 합치는 방법 1) 브랜치의 기록을 남기면서 합치는 방법(자동/수동) 2) 브랜치의 기록 없이 한 줄로 합치는 방법 * 기록을 남기는 방식을 선택했을 때 충돌이 발생하지 않는다면 Fast-forward나 Recursive 방식으로 자동으로 깃이 합쳐줌. 1) Fast-forward : 이력을 공유하며 분기하지 않은 브랜치를 병합할 때 추가적인 커밋 없이 합치는 방법 2) Recursive : 특정 지점에서 분기한 브랜치를 병합할 때의 상황이며 추가적 커밋이 자동으로 생성 * 기록을 남기면서 합치는 방법 1) 커밋 이력을 공유하는 브랜치 합치기 (브랜치를 합쳐주려면, 다른 브랜치 내용을 추가하여 합쳐주려는 브랜치로 이동해야 한다.)..
자료 출처 : 플레이데이터 Git 입문 강의 (변영인 강사님) - 브랜치는 버전 관리의 핵심을 이룸. - 브랜치는 독립적으로 작업을 진행하기 위해 갈라져나온 버전. - 브랜치는 독립적인 작업 영역 - 브랜치는 서로 영향을 받지 않으므로 각 브랜치 안에서 소스코드를 변경하는 등 여러 작업 동시에 진행 가능. 분리된 작업 영역에서 변경된 내용은 나중에 원래의 버전과 비교해서 하나의 새로운 버전으로 합칠 수 있음 - 마스터 브랜치(Master Branch) : 저장소를 처음 만들었을 시 기본으로 생성되는 브랜치 - 현재 존재하는 브랜치 보기 - 브랜치 추가 : 브랜치 추가시 현재까지 진행된 커밋을 기준으로 분기됨. - 브랜치 수정 - 브랜치 삭제 - 브랜치 전환 (master에서 version1으로 브랜치 전..
자료 출처 : 플레이데이터 Git 입문 강의 (변영인 강사님) * 다른 팀원들이 이미 만들어놓은 저장소를 복사해오거나 오픈소스 프로젝트를 깃 명령어로 다운로드 받는 방법 - 원격 저장소를 복사해 올 폴더로 이동 - 폴더 내부에서 오른쪽 클릭을 한 뒤 Git Bash Here를 눌러서 Git Bash를 켠다. - 이미 존재하는 깃허브의 원격 저장소의 주소를 복사한다. (원격 저장소를 다운로드하면 별도 초기 설정할 필요 없이 바로 연결된 상태로 저장됨.) * 스테이징과 커밋하기 : 변경사항을 저장하고 커밋을 반영 및 취소하는 방법 새 파일 추가하기 - 지역 저장소에 테스트할 새 파일을 만든다. - git status 명령어로 현재 스테이징 상태 확인 - 특정 파일 스테이징 (git add .이나 git ad..
자료 출처 : 플레이데이터 Git 입문 강의 (변영인 강사님) - 깃허브에서 원격 저장소 생성하기 - 원격 저장소 주소 확인 * Git Bash : 깃을 명령어로 관리하는 툴. 깃 설치시 자동 설치됨 - 깃 다운로드 https://www.git-scm.com/download - 설치 후 지역 저장소로 지정할 폴더에 들어가서 오른쪽 마우스를 클릭한 후 Git Bash Here를 클릭해서 시작하면 됨 * Git 초기 설정 * Git 시작하기 - 지역 저장소를 지정할 빈 폴더 생성 - 폴더 내부에서 오른쪽 클릭 후 Git Bash Here 클릭 - 지역 저장소 초기화 - 원격 저장소 주소 복사해오기 - 원격 저장소 연결 (Ctrl C+Ctrl V로 복사가 안 되므로 오른쪽 마우스 클..
* 파일을 편집 전 상태로 되돌리고 싶다면? -> 편집하기 전에 파일을 미리 복사해둠(사본을 통한 관리). 파일과 폴더명 뒤에 편집한 날짜를 붙여줌. -> 파일이 별로 없는 단기, 소규모 프로젝트에서는 합리적. -> 하지만 장기간, 대규모 프로젝트에서는 비효율적. * 사본을 통한 관리의 단점 1) 파일 관리의 어려움 : 파일 편집시 매번 복사하는 건 번거로움, 실수할 가능성, 용량 차지 2) 버전 관리의 어려움 : 어느 파일이 최신인지, 파일의 변경된 지점이 어디인지 파악 어려움 3) 협업의 어려움 : 공유한 파일을 동시에 편집하는 경우 다른 사람의 변경 내용을 내가 지워버릴 수 있음. => Git이 이런 어려운 점들을 해결. * Git : History(변경 이력..
3.1은 web.xml을 선택적으로 만들 수 있다.(Generate web.xml deployment desciptor을 선택적으로 체크) web.xml이 없으면 자바 코드에다가 하는데 Annotation으로 한다. 개발자 입장에서는 Annotation 구조로 하는 게 편하다.(주로 SI 업체) 대기업의 관리자, 유지, 보수하는 입장에서는 web.xml로 만들어주는 게 좋다.(주로 SM 업체) 서블릿 annotation에서 load-on-startup 처리 참고 https://dololak.tistory.com/737 [서블릿/JSP] 톰캣(서블릿 컨테이너) 시작시 Servlet 초기화 되도록 설정하기 참고글 [서블릿/JSP] 서블릿의 초기화 과정 및 초기화 방법 [서블릿/JSP] init() 메서드를 ..
MVC(Model-View-Controller) 패턴 : Model(DAO와 VO) & View(JSP) & Controller(Servlet) 서블릿은 앞에서는 화면과 손 잡고, 뒤에서는 DAO와 손 잡는다. 1. 서블릿이 제일 먼저 클라이언트로부터 폼값을 받는다. 2. 폼값을 바탕으로 VO 객체를 생성한다. - 폼값 3개면 VO의 필드 3개, DB 테이블 컬럼 3개. - id로 회원 검색하는 경우 id 하나 밖에 없으니까 이 과정 패스. 경우에 따라 다름. 3. DAO(이 때 DAO는 싱글톤) 리턴 받고 Business Logic을 호출 → DAO가 DB의 데이터를 조작하거나 DB로부터 데이터를 받아온다. - 예: registerMember(vo), getMember(id) - 이에 따라 DAO가 D..