오늘 한 것
설계관점
- 논리적인 순서
- 설계 디자인도 중요하지만 논리적 순서가 탄탄해야한다. 이는 브라우저가 구문을 파싱(구문해석)할 때 논리적 흐름에 따라 랜더링하기 때문이다.
- Semantic MarkUp
- semantic 마크업에 대한 얘기는 전에도 많이 했기 때문에 생략한다.
- naming
- 네이밍은 직관적이어야한다. 변수명부터 class명까지 직관적이고 연관성이 있는 이름을 작성해야한다.
- 구조설계
- 위의 과정을 통해 전체 구조를 논리적, 직관적이고 접근성이 높게 설계한다.
interpreter 언어와 compile 언어
- 프로그래밍 언어에는 interpreter 언어와 compile 언어가 있다.
interpreter
- interpreter 언어는 소스코드를 한줄 한줄 읽는 동시에 실행한다.
- 위와 같은 특징 때문에 실행 중 에러 발생 시 더 이상 실행이 이뤄지지 않는다.
- 구문에 대한 해석과 실행이 동시에 이뤄지기 때문에 별도의 실행파일이 존재하지 않는다.
- 컴파일이 없기 때문에 신속하게 동작한다.
- 대표적으로 HTML, CSS, JavaScript, Python 등이 있다.
compile
- compile 언어는 interpreter 언어와 다르게 소스코드를 전부 해석하고 수집한 후 재구성한다.
- 전체 코드를 변환 후 에러를 보고한다. 이렇기 때문에 보안측에서는 interpreter 언어보다 취약하다.
- 컴파일 언어는 한번 컴파일하게 되면 실행 파일이 생성되며 실행파일은 interpreter 언어보다 빠르다.
- 대표적으로 C, C++, JAVA 등이 있다.
기타
- 캡처링은 상위 요소(최상위=Window)로부터 이벤트 발생 요소까지 하위 요소로 전파된다. 반면 버블링은 이벤트 발생 요소부터 상위요소로 전파한다.
오늘 느낀 것
변경된 약관은
<a>여기</a>를 클릭하세요.
,변경된 <a title=”공지사항”>약관</a>을 클릭하세요.
후자가 더 접근성이나 직관적으로 좋지 않을까?라는 생각을 진지하게 해봤다.HTML/CSS는 어렵지만 참 재밌다.
실습은 참 많이하지만 TIL에 정리하기는 애매하다. 실습한 내용은 대부분 gitHub에 남겼으니 괜찮겠지.
오늘도 고생했다. 내일도 즐코..