TIL Today I Learned

[TIL] 211107

adore_voy 2021. 11. 7. 20:51

주말을 맞아... 열심히 클론코딩 스터디를 위한 클론코딩을 진행하였다.

토요일에는 계속 클론코딩만 진행하였고,

일요일에는 클론코딩을 어느정도 다 마친 상태에서 cs 지식을 몇가지 공부하였다.

막간 클론코딩 결과물을 보여주자면 아래와 같다.


이것이 원본이다. 꽤나 비슷하지 않은가 ㅎㅎ

 

- 클론코딩을 제대로 진행 한 점은 이번이 처음이다. 우리 팀도 '처음인데 쉬워보이는거 하죠?'라고 해서 선택한 것이 위의 웹인데... 생각보다 호락호락하지 않았다. 물론 완벽히 클론 한 것은 아니지만, 그래도 결과물은 잘 나와서 나쁘지 않았다.

 

- 전체 틀은 grid로 잡았고, 나머지 위치는 flex로 잡았다.

 

- 변수명 짓는것이 왜 어렵다고 하는지 알았다. 어서 팀원분들에게 코드 리뷰를 받고 싶다. 코드 리뷰를 제대로 받아본 후 성장에 정말 큰 도움이 된다는 것을 깨달았다.

 

- div태그를 쓰지 않으려고 노력했으나 쉽지 않았다. 과연 section 태그를 남발해도 되는 것일까? 아주 조금만 div 태그를 사용한 것 으로 성장했다고 생각하고 싶다. 확실히 시멘틱 태그를 더 익숙하게 사용할 수 있어진 것 같다.

 

- ul li태그도 남발해도 되는것일까? 리스트나 라인이 보이면(특히 푸터) 다 ul li같다. dl dt dd였어야 할까?

 

- 시간이 된다면 완벽한 반응형과 애니메이션 구현을 진행하여야겠다. 그리고 좀 더 발전 된 코드로 다음 웹사이트를 클론하고싶다.


- OSI 7계층은 국제표준화 기구가 표준화되지 않는 네트워킹 장치의 불편함을 없애기 위해 발표한 개념이다.

각각의 계층들은 독립적이어서 다른 계층에 직접적인 영향을 주지 않는다. 각자 자기 할 일만 한다는 말.

하위계층부터 하드웨어인 물리계층, 다리역할을 하는 데이터 링크 계층, 라우팅 기능을 하는 네트워크 계층, 신뢰성 있는 데이터를 주고받기 위한 전송 계층, 두 컴퓨터 간 대화나 세션을 관리하는 세션 계층, 코드 간 번역이 이루어지는 표현 계층 그리고 최종적으로 사용자가 볼 수 있는 응용 계층으로 나뉜다.

 

- 함수형 프로그래밍이란, 함수가 다른 역할을 하지 않고 오직 한가지 일만, 함수가 외부에 영향을 끼치지 않는 순수 함수를 사용하여 프로그래밍 하는 것이다. 선언형 프로그래밍으로서 어떻게 할 건지보다 무엇을 할 건지를 설명하는 방식이다. 이는 이전의 명령형 프로그래밍인 절차지향 프로그래밍과 객체지향 프로그래밍과는 다른 방식이다.

 

역시나 가독성이 좋고 유지보수를 용이하게 하기 위함이다. 남이 내 코드를 읽었을 때 잘 읽히고 깔끔하고 유지보수 잘 되는 코드가 좋은 코드이기 때문에 고통받았던 개발자들이 머리를 맞대고 생각해 낸 결과물인 것 같다.

 

- 메모리 구조는 코드영역, 데이터영역, 힙영역, 스택영역으로 나뉜다. 

데이터 영역은 프로그램이 종료되면 소멸한다. 전역변수와 정적변수들이 저장된다. 힙 영역은 낮은 주소에서 높은 주소로 메모리가 할당된다. 스택영역은 높은 주소에서 낮은 주소로 메모리가 할당된다. 지역변수와 매개변수가 저장된다.

 

- 프레임워크와 라이브러리의 차이는 권한이 누구에게 있는지에 따라 달라진다. 라이브러리는 사용자가 필요한 곳에 가져다 사용할 수 있지만 프레임워크는 주어진 구성에서 사용자가 사용해야하며 제한적이다.

 

- TCP/IP는 데이터가 의도된 목적지에 닿을 수 있도록 보장해주는 통신 규약이다. TCP는 데이터를 서버와 클라이언트간에 전달해주기 위한 프로토콜이다. IP주소는 통신사에게서 받기 때문에 바뀔 수 있다.

 


참고:

https://mangkyu.tistory.com/111

https://mangkyu.tistory.com/91

https://velog.io/@rosewwross/TCPIP

반응형