본문 바로가기

728x90

분류 전체보기

(104)
[Network] LAN과 WAN 네트워크는 접속할 수 있는 범위에 따라 크게 두 가지 종류로 나눌 수 있다. 첫 번째로 건물 안이나 특정 지역을 범위로 하는 네트워크. 바로 LAN(근거리 통신망- Local Area Network)이다. LAN은 가정이나 빌딩 안에 있는 사무실 같이 지리적으로 제한된 곳에서 컴퓨터와 프린터를 연결할 수 있는 네트워크다. 두 번째로는 지리적으로 넓은 범위에 구축된 네트워크 WAN(광역 통신망- Wide Area Network) WAN은 인터넷 서비스 제공자(ISP)가 제공하는 서비스를 사용하여 구축된 네트워크를 말한다. 랜과 랜을 연결하는 것으로 생각해도 된다. 서울과 부산에 사무실이 있다고 가정하면 두 사무실을 네트워크로 연결 하게 해주는것.
[Network] 패킷(Packet) 네트워크나 인터넷에서 데이터를 주고 받기 위한 규칙이 필요하다. 이 규칙에 패킷(packet)을 사용한다. 패킷은 컴퓨터 간에 데이터를 주고 받을 때 네트워크를 통해 전송되는 데이터의 작은 조각 을 말한다. 네트워크의 데이터 전송 시 큰 데이터도 작게 나누어 전송하는데 작게 나누는 이유는 커다란 데이터가 네트워크의 대역폭을 너무 많이 차지(점유) 하면 다른 패킷의 흐름을 막을 위험이 있기 때문이다. - 작은 승용차만 다니는 도로에 커다란 화물차가 길을 다 차지하고 움직인다고 생각하면 이해된다. 대역폭(bandwidth) 일반적으로는 네트워크에서 이용 가능한 최대 전송 속도로 정보를 전송할 수 있는단위 시간당 전송량을 말한다. 용량이 큰 데이터는 패킷으로 분할하여 전송하게 되는데 패킷을 수신하면 패킷을 모..
[Network] Network 란? 모두의 네트워크 초보자와 비전공자를 위한 가장 쉬운 네트워크 입문서. 네트워크의 개념, 비트, 바이트부터 OSI 계층, 무선 랜 구조까지 160개의 일러스트와 유쾌한 캐릭터들의 대화로 설명해 그림책을 읽듯 쉽고 www.aladin.co.kr 모두의 네트워크를 읽으며 목차 별 중요 내용을 간단하게 정리해본다. 네트워크란 ? 컴퓨터 분야의 네트워크는 쉽게 말해서 컴퓨터와 컴퓨터 간의 연결을 말한다. 네트워크를 통해 컴퓨터는 다른 컴퓨터에게 데이터(파일) 을 보낼 수 있으며 웹사이트 열람, 메일 송수신 같은 일을 가능하게 해준다. Internet 네트워크의 종류 중 하나인 인터넷은 전 세계의 크고 작은 네트워크를 연결하는 거대한 네트워크를 말한다.
[자료구조] 해시 충돌 해결 2021.08.01 - [자료구조] - [자료구조] Hash / Hash Function / Hash Table 에 이어서. 해시 함수가 서로 다른 key를 해시 값으로 변환했음에도 동일한 결과물이 나온 상황이다. 어떤 상황인지 코드와 함께 알아보자. 앞선 포스팅에서 10개의 데이터를 저장할 10개의 Slot을 지닌 해시테이블을 만들었다. let keys = [10, 21, 32, 43, 54, 65, 76, 87, 98, 109] let values = ["홍길동", "이석훈", "강호동", "유재석", "박명수", "이효리", "하창수", "박지원", "김구", "윤봉길"] func getHash(_ key: Int) -> Int { let hashValue = key % hashTable.count..
[자료구조] Hash / Hash Function / Hash Table 해시테이블 은 키(Key)와 값(Value)로 이뤄진 자료구조이다. Swift의 딕셔너리를 떠올리면 쉬운데, 내부 동작은 실제론 배열과 같다. key를 해시함수를 통해 해시 값으로 변환하고 해시테이블에 해시 값과 대응되는 저장공간에 Value를 저장하는 것이다. 용어 키 Key : 고유한 값으로 Hash Function을 통해 HashValue로 변환한다. 해시 Hash : 임의의 값(Value)를 고정된 길이로 변환하는 것 해시함수 Hash Function : Key에 대한 산술 연산을 이용해 데이터가 저장된 공간을 가리키는 Hash Value 를 구한다. 해시 값 Hash Value : Key 를 Hash Function로 연산한 결과. 이를 기반으로 Hash Table에서 해당 Key에 대응 되는 ..
연락처 저장화면 호출하기 CNContactViewController 전화번호를 저장하면서 직접 입력이 가능한 컨트롤러를 불러야 할 때 . 아래와 같이 사용한다. CNContactViewController는 하나의 연락처에 대한 정보를 편집 할 수 있는데 , 편집말고도 새 연락처를 저장하것이 가능하다. CNContactViewController를 생성하면서 forNewContact로 넘겨주는 인자값으로 CNContact 클래스객체를 넘겨주면 된다. 이때 CNContact는 immutable한 속성이므로 CNContact를 상속했고 Mutable한 CNMutableContact를 넘겨주자. let contact = CNMutableContact() contact.phoneNumbers contact.familyName contact.postalAddresses 주소록 작성시..
UITextField LeftPadding 텍스트 필드에 디자인을 적용하다보면 입력되는 텍스트 옆으로 padding이 들어가야 할 경우가 생긴다. 이때 UITextField의 leftView를 사용해서 간단하게 padding을 넣어줄 수 있다. leftView에 대한 설명을 한 번 보자면... TextField의 leftView를 설명한 부분 왼쪽 공간에 자리한 leftView가 있는데 이것은 optional이므로 여기에 내가 원하는 만큼 넓이를 가진 view를 넣어주게 되면 그 공간이 띄어진 것 처럼 보여질 수 있다. 이 때 텍스트 필드의 색상에 따라 삽입되는 paddingView의 background색상을 맞춰줘야하는것은 필수! clear컬러로 둬서 뒤가 보이도록 두는것도 방법이다. 그리고 leftview에 이미지나 또 다른 view를 add..
Equatable Equatable은 Equatable을 채택한 대상끼리 같은 값인지 확인할때 사용하는 Protocol이다. 간단히 설명을 보면 Equatable 을 채택했을 경우 == 연산자와 != 연산자를 사용하여 같음 또는 같지 않음을 확인할 수 있고 SwiftStandardLibrary의 대부분 타입이 이 Equatable Protocol을 따른다고 한다. 우리가 흔히 사용하는 Int, Float같은 자료형은 모두 ==, != 연산자를 통해 값을 비교하는데 이는 Int,Float같은 자료형이 Equatable Protocol을 채택했기 때문이다. Int타입의 변수를 선언하고 command+Click 으로 그 정의를 따라가보면 Int 옆에 채택한 Protocol 이 나오는데 이 프로토콜들의 뿌리를 따라가다보면 Equ..
유용한 오픈소스들 Hero - 화면 전환이나 뷰 이동 등 애니메이션이 필요한 부분에서 간편한 코드로 구현이 되게끔 도와준다. GitHub - HeroTransitions/Hero: Elegant transition library for iOS & tvOS Elegant transition library for iOS & tvOS. Contribute to HeroTransitions/Hero development by creating an account on GitHub. github.com 사용경험 : https://github.com/KimDuni/Hero-Test CollectionView - 간단해보이지만 구현하기 복잡한 CollectionView FlowLayout을 쉽게! GitHub - KelvinJin/An..
RTL 서비스 국가에 따라 텍스트 또는 UI배치가 좌우 반전이 되야할 때도 있다. 아랍문화권의 국가는 글을 작성할 때 좌에서 우로(Left-to-Right) 작성하는 것이 아닌 우에서 좌로(Right-to-Left) 작성하는데 이에 따라 앱에서도 좌우반전을 시켜줘야 하는것이다. 해당 국가로 서비스를 하려면 당연히..! 우리나라도 100년 전까지만 해도 RTL방식으로 글을 작성하고 있었다고 한다. https://hyperconnect.github.io/2020/05/30/MENA-service-cautions-part1.html MENA(중동 및 북아프리카) 지역 서비스 개발 시 고려해야 할 문화 차이 아랍 문자를 사용하는 지역에 서비스를 런칭하기 위해 신경쓰면 좋은 점들을 소개합니다. hyperconnect.g..

728x90