본문 바로가기

분류 전체보기

(664)
[Chapter 2.5] git의 기본 작동 원리 - stage, commit, 그리고 스냅샷 이번 아티클에서는 본격적으로 브랜치를 활용한 협업 방식에 대해서 알아보기 전에, git의 기본적인 작동원리와 파일 추적 프로세스에 대해서 알아보고자 합니다. 지금까지 간단하게 알아본 사용법 만으로는 git의 다양하고 복잡한 기능들을 이해하기에는 한계가 있기 때문이죠. ○ 스냅샷 방식 우선, git의 작동방식은 기본적으로 스냅샷(snapshot) 방식입니다. 이 스냅샷 방식이 어떻게 동작하는지, 그리고 스냅샷 방식이 아닌 경우에는 어떤 식으로 동작하는지에 대해 텍스트 파일에 변화가 생겼을 때 버전을 기록하는 방식으로 구분해 보겠습니다. git에서 채택하고 있는 스냅샷 방식은 하나의 파일에 변동이 생겼을 때, 파일의 상태 "전체"를 그대로 저장해 비교합니다. 반대로 SVN 같은 시스템에서는 델타(delta)..
상속(11) - 객체의 타입 확인(instanceof) 우리는 앞선 아티클에서, 다소 머리는 아팠지만 자식 클래스 타입의 객체를 부모 클래스 타입 객체로 강제 타입 변환을 진행하는 과정을 살펴보았습니다. 여기서, 당연한 이야기를 하나 하자면 "순수 부모 클래스 타입의 객체"는 자식 클래스 타입의 객체로 강제 타입 변환이 불가능합니다. 아래와 같은 경우를 의미하죠. Parent parent = new Parent(); Child child = (Child) parent; // 불가능 반복되는 얘기지만, 부모 클래스의 경우에는 자식 클래스 고유의 속성들을 갖고 있지 않기 때문에 이런 변환은 불가능합니다. 자, 그럼 어떤 코드를 설계하는 과정에서, "부모 클래스 타입의 변수"가 있다고 가정하고 이를 캐스팅(casting)할 때 우리는 한 가지를 주의해야 합니다. ..
3. 입력 양식 작성(2) - input 태그 4 계속해서 input 타입의 여러 종류에 대해서 살펴보도록 하겠습니다. 이번에는 날짜, 시간과 관련된 태그를 살펴보도록 하겠습니다. ○ type="date" / "month" / "week" : 날짜 입력을 위한 input type 타입 값으로만 보았을 때는 일/월/주를 단일로 입력하는 필드일 것으로 보이지만, 실제로 각 타입에 따라 입력되는 값들은 다음과 같습니다. - data : yyyy-mm-dd - month : yyyy-mm - week : 특정 주를 선택해 표시(yyyy-w) 이 태그는 설명하는 것보다는 직접 태그를 입력하고, 결과를 보는 것이 좋을 것으로 보입니다. 아래 코드를 참고해 주세요. 날짜 지정 타입 사용예시 HTML 삽입 미리보기할 수 없는 소스 ○ type="time" / "dat..
3. 입력 양식 작성(2) - input 태그 3 이번에는 지난 시간에 이어서 주요 input type 중 숫자 입력 필드와 관련된 내용을 체크해 보도록 하겠습니다. ○ type="number" / "range" : 숫자 입력 전용 타입 '숫자'를 입력한다고 설명했는데, 단순히 키보드나 키패드로 입력하는 것을 의미하는 것이 아니라 숫자 전용 UI를 이용해 입력할 수 있는 필드를 의미합니다. 정확하게는 타입 "number"의 경우에는 스핀 박스(화살표를 클릭해 숫자를 증가/감소)를 의미하고 "range"의 경우에는 슬라이드 막대를 이용해 숫자 값을 조정하게 됩니다. 그럼 input type "number"와 "range"에서 사용할 수 있는 속성도 알아보겠습니다. - min : 필드 입력 최솟값(디폴트는 0) - max : 필드 입력 최댓값(디폴트는 10..
상속(10) - 강제 타입 변환(Casting) 우리가 앞선 과정에서 부모 클래스를 상속받는 자식 클래스와 관련하여, [자동 타입 변환]에 대해서 학습했습니다. 요약하면, 주요 원칙은 '자식 클래스는 부모 클래스 타입으로 사용될 수 있다'였죠? 이는 필드에서 인스턴스로 사용될 때 혹은 파라미터 일 경우에도 적용하였습니다. 다시 한번 노파심에 짚고 넘어가자면, 자식 클래스는 기본적으로 부모 클래스의 모든 필드와 메서드 요소를 그대로 가지고 있으며(또는 오버라이드로 메서드 재정의) 여기에 자식 클래스 고유의 요소들을 갖고 있기 때문에 부모 클래스로 자동 타입 변환이 되더라도 사용에 지장이 없습니다. Parent parent = new Child(); 자, 여기서 '자동' 타입 변환에 대해서 말했으면 자동이 아닌 것도 있겠죠? 맞습니다. 이는 [강제 타입 ..
[Chapter 2] Sourcetree 처음 사용해보기 - repository 생성, origin과 master 지금부터는, 앞서 만들었던 로컬 저장소와 github에 생성해 연결한 repository를 CLI가 아닌 소스트리를 통해서 실행해 보도록 하겠습니다. 일단, 기본적으로 소스트리 다운로드 및 설치와 Atlassian 계정 생성 등의 작업은 진행한 것으로 가정하겠습니다. 혼선을 방지하기 위해서, Atlassian 계정과 유저 명은 github와 동일하게 설정하였습니다. 또한, 설치 과정에서 git을 연결할 때 사용할 계정을 묻는 스텝이 나오면 우리가 앞서서 git과 연결했던 github 계정과 Username 정보를 입력해 줍니다. 소스트리에서는 이제 해당 github 계정에 있는 repository 리스트를 자동으로 불러오게 되거든요. Sourcetree | Free Git GUI for Mac and W..
3. 입력 양식 작성(2) - input 태그 2 지난 아티클부터 input type 종류별 특성에 대해서 하나씩 살펴보고 있습니다. 계속해서 다양한 input type에 대해서 살펴보도록 하겠습니다. ○ type="search" / "url" / "email" / "tel" : 입력 유형 자동 인식타입 위 속성들의 경우, HTML5 이전까지 각 입력값의 종류를 직접 확인하는 등 텍스트 필드에서 구분하기 어려웠던 속성들입니다. HTML5에 들어서는 intput type을 명시해 주면 브라우저나 작동 환경에 따라서 다소 차이는 있지만, 해당 필드에서 입력되는 값이 어떤 유형인지 자동으로 인식해 분류할 수 있게 되었습니다. - search : 일반적인 텍스트 필드처럼 보이지만, '검색'을 위한 텍스트 필드로 인식됩니다. 자동으로 X 버튼이 노출됩니다. - ..
3. 입력 양식 작성(2) - input 태그 1 이번 아티클부터, 본격적으로 input 태그의 종류와 속성에 대해서 살펴보겠습니다. 사실 input 태그에는 꽤 여러 가지 종류의 타입과 속성이 존재하기 때문에, 일일이 망라하는 것은 어려운 일입니다. 우선은 최대한 자주 사용하는 것들 중심으로 살펴보겠습니다. 여기서 설명하는 것 이외의 타입이나 속성들이 궁금하면, 아래의 페이지에서 예시와 함께 살펴보시기를 추천드립니다. 본 내용들을 어느 정도 이해한 이후에는 이런 리스트에서 원하는 내용만 빠르게 찾아서 사용하실 수 있을 것입니다. : 입력 요소 - HTML: Hypertext Markup Language | MDN HTML 요소는 웹 기반 양식에서 사용자의 데이터를 받을 수 있는 대화형 컨트롤을 생성합니다. 사용자 에이전트에 따라서 다양한 종류의 입력 ..