위에 보이는 CSS 프로퍼티들을 많이 보셨겠지만, 위 프로퍼티들이 어떤 요소에 영향을 주는지 또 사용하면서 원하던 크기대로 잡히지 않는 경우가 발생하기도 하는데 왜 그런지 살펴보도록 하겠습니다. 이 부분을 이해하기 위해선 먼저 박스 모델(box model)이라는 개념을 알아야 합니다. 박스 모델(Box Model)이란? HTML의 모든 요소들은 BOX 모양으로 구성되어 있는데, 이것을 박스 모델(box model)이라고 부릅니다. 박스 모델은 안쪽부터 content, padding, border, margin으로 구분합니다. content 텍스트, 이미지, Input, div 요소 등 모든 콘텐츠 가로는 width, 세로는 height로 표현 padding - content를 둘러싼 공간(border와 ..
싱글톤 패턴(Singleton pattern) 하나의 클래스에 오직 하나의 인스턴스만 가지는 패턴 class NetworkService { static let shared = NetworkService() private init() {} } 스위프트에서는 static let으로 객체의 인스턴스를 할당해주면 끝. 그리고 인스턴스가 추가로 생성되는 것을 방지하기 위해 init()함수의 접근제어자를 private로 선언한다. 보통 데이터베이스나 네트워크등 서비스 모듈에 많이 사용합니다. 싱글톤 패턴의 장단점 장점 인스턴스를 최초 1회만 생성하므로 메모리와 성능 측면에서 효율이 좋다. 전역 인스턴스로 다른 모듈 및 클래스간 데이터 공유가 쉽고 접근이 쉽다. 단점 전역으로 어디서든 접근 하여 안티패턴으로 불릴수 ..
비전공자 및 기획자 등 현업에서 사용하는 필수 지식들을 간단하게 정리하고자 합니다. 1. IT 큰그림 Infomation vs Data 개념 생선(Data) => 생선조림(Infomation) 숫자(Data) => 잔고(Infomation) Data는 가공되지 않은 값 Infomation은 가공되어 의미 있는 값 Program Data를 Infomation으로 만들어 의미있는 정보를 사용자가 이용할수게 해주는 것 은행앱, 날씨앱 등 IT 필수 프로세스 개발(프로그램) Data를 Infomation이 되도록 하는 일 프로그램을 만드는 일 개발자, 기획자, 디자이너, PM 등으로 구성 동작(서버) 프로그램이 동작하게 해주는 컴퓨터 전달(네트워크) 정보가 나에게 전해지는 전 과정 인터넷, 라우터, 방화벽 등 ..
문자열 인코딩은 실무 개발에서 중요한 개념이지만, 인코딩으로 인한 문제가 생기기 전까지는 배울 기회가 없는 기술 입니다. 아스키 코드, EUC-KR, UTF-8, UTF-16, UTF-32와 같은 단어를 한 번 이상 들어봤어도 이 단어들이 무슨 뜻인지, 문자열 인코딩이 정확이 무엇인지 모르는 경우가 많아 이번 포스트에서 살펴 보도록 하겠습니다. 위와 같이 글자가 깨지거나 보이지 않는 문제가 발생한걸 자주 본적이 있으셨을 겁니다. 호환되지 않은 문자열을 인코딩을 사용하여 문자를 읽었기 때문입니다. 컴퓨터가 처음 등장했을 때 모든 프로그램은 영어와 일부 특수문자만 지원을 했습니다. 그러나 여러 국가에서 컴퓨터를 사용하기 위해 국가별로 사용하는 언어를 표현하고자 독자적인 규칙을 만들기 시작했습니다. 문자열 인..