swift 172

Swift5 코테 공부 사전설정

✅ 이번 시간에는 사전 설정 간단하게 짚고 넘어가자. playground 사용하려고 했는데, readLine()을 쓸 수가 없었다. 이유를 찾아보니... -> zedd님 글을 읽어보자...! https://zeddios.tistory.com/68 Swift3 ) Swift에서 키보드 입력 받는법(user input) 안녕하세요. 오늘은 Swift에서 표준입력받는법을 알아보려고해요. 지금 Swift로 백준사이트에서 A+B라는 문제를 풀려고 했어요.. 그리고 let a, let b해주고 이제 입력을 받아볼까..했는데 도무지 생 zeddios.tistory.com ✅ 코테에서 주로 사용되는 문법들을 정리해둔 곳인데, 지속적으로 업데이트 할 예정 https://github.com/lgvv/Algorithm_Sw..

[iOS14] Swift5 alertDialog 함수로 만들어 사용하기

✅이번 시간에는 AlertDialog를 함수로 만들어서 사용하는 것을 볼 예정이다. Alert의 경우 다양한 곳에서 사용하는데, 사용할 때 마다 만드니까 생각보다 너무 귀찮아졌다. 그래서 함수로 만들어서 사용해보기로 했는데 어떻게 했는지 확인해보자. func alert(_ message : String, completion : (()->Void)? = nil) { // 메인 스레드에서 실행하도록 변경 DispatchQueue.main.async { let alert = UIAlertController(title: nil, message: message, preferredStyle: .alert) let okAction = UIAlertAction(title: "확인", style: .cancel) { (..

String HTMLTag 지우기 (정규표현식)

(init) 2021. 7. 29. 12:25 (update 2023. 04. 18 00:50 - 정규표현식 완성. 정규표현식을 완성했습니다. 이 포스팅을 또 다시 작성할 줄은 몰랐습니다. 포스팅을 작성하게 된 이유는 구글링을 통해 찾은 코드에서 크래시가 발생했기 때문입니다. 아래는 html태그를 해 작성했던 코드이지만 아주 폭신한 아기 고양이 파피용 고양이 병원에 가다 글, 그림 A.N. 강 옮김 김애나 솜털처럼 날아다니는 고양이 파피용이 기분이 안 좋았어요 무슨 일이 생긴게 틀림 없어요! 한 밤 중 병원으로 가서 하룻밤... 위의 케이스를 제거하지 못하고 일부 경우에는 크래시가 발생합니다. ❌ 아래 코드는 사용하지 말기 extension String { /// String에서 html 태그를 모두 제..

Swift5 네이버 검색 API 사용하기(뉴스)

✅ 이번시간에는 네이버 검색 API에 대해서 알아볼 예정이야. 이 글을 작성하는 네이버 검색 API를 사용하는데 생각보다 오랜시간이 걸렸어서 ㅠㅠ 다시금 정리해보고자 하는 목적! (목차) 1. 네이버 API 발급받아서 세팅하기 2. 내 프로젝트에 적용하기 (+ Codable 쉽게 만드는 법) ✅ 1. 네이버 API 발급받아서 세팅하기 https://developers.naver.com/docs/search/news/ 검색 API 뉴스 검색 개발가이드 NAVER Developers - 검색 API 뉴스 검색 개발가이드 developers.naver.com 위에 보이는 사이트에 들어가서 API 발급신청을 하면 끝 이후로는 네이버에서 안내해주는대로 하면 신청은 끝! 다음은 내 애플리케이션 개요 부분으로 이동하..

Swift XML Parsing (OpenAPI)

Swift5 Open API - xml parsing 공공 데이터를 이용한 코로나 open api를 통해 XML parsing에 대해서 알아볼 예정. 목차1. 공공 데이터 open API 사용하는 방법2. 전체 코드 및 사용법에 대한 설명 ✅ 1. 공공 데이터 open API 사용하는 방법 1. 공공데이터 포털에 접속한다(https://www.data.go.kr/index.do) 2. 공공데이터 포털에서 [코로나]를 검색하고, 아래에 보이는 것을 신청이미 신청완료한 상태라 마이페이지에서 확인한 모습!신청 후 즉시 되는 건 아니고 약간의 시간이 흘러야 가능 (금방 처리)    3. 공공데이터 활용 지원센터를 클릭해서 상세보기여기서 중요한 것은 [참고문서] 부분에서 워드 파일을 다운받아서 어떻게 사용되는지 ..

ch15 escaping과 non-escaping 클로저에 대해서 알아보자

✅ 이번시간에는 escaping과 관련한 지식에 대해서 알아볼 예정이야. 왜 이걸 찾아보게 되었는가? 예전에 책으로 공부할 때도 보았는데, 그때는 이런게 있다~~ 정도로만 알았어. 그런데 이번에 completion이 존재하는 함수를 만들면서 escaping에 대해서 알 필요가 있어서 정리하게 되었어. ✅ 그럼 escaping과 non-escaping의 정의는 무엇일까? -> escaping 클로저는 클로저가 함수의 인자로 전달됐을 때, 함수의 실행이 종료된 후 실행되는 클로저 -> non-escaping 클로저는 이와 반대로 함수의 실행이 종료되기 전에 실행되는 클로저 이스케이핑과 논이스케이핑을 사용하면, 둘다 사용할 수 있는데, 왜 둘이 나눌까? 이유 !!! 참고 - https://jusung.gith..

🍜 ch15 인스턴스 메소드 vs 타입메소드

✅ 이번 시간에는 인스턴스 메소드와 타입 메소드에 대해서 아주 간략히 알아보고 넘어가보자. 스위프트에서 이를 이해하기 위해서는 구조체와 클래스에 대한 이해가 있으면 좋아. 구조체와 클래스에 대해서는 거의 비슷하면서도 다른데, 두 개의 정확한 차이에 대해서는 이번시간에는 다루지 않아. 그래도 큰 차이는 클래스는 상속이 되고, 구조체는 안된다는 점은 이 시간에 알아둬야 해! 나의 경우는 구조체는 주로 아직까지 cell을 만들때 캡슐화 하기 위해서 사용했고, 클래스의 경우는 그 외의 경우에 주로 사용했던 것 같아. 구조체던 클래스던간에 자바에서 처럼 인스턴스를 생성해서 사용해야하는데, 그렇지 않고 사용할 수 있는 방법이 있어. 바로 static을 붙이면 인스턴스를 생성하지 않고도 접근해서 사용할 수 있다는 사..

📡 ch14 URLSession (feat. Codable)

✅ 자 그럼 이번시간에는 URLSession에 대해서 알아보도록 하자. ✅ URLSessionConfiguration Class에 대해서 보자 대부분은 default로 사용 가능하다. Ephemeral 같은 경우는 크롬의 시크릿모드 처럼 쿠키나 정보들을 저장하지 않을 때 이용한다. ✅ 다음은 URLSessionTask다 이걸 통해서 실제로 서버와 통신한다. 데이터 받는거면 DataTask를 사용하면 된다. 이건 background 세션에 대한 지원이 안되서 네트워킹을 통해 데이터를 받아오는게 안된다. 나머지 2개는 업로드랑 다운로드에 사용한다. ✅ 그럼 이제 코드리뷰를 몇몇 부분만 한번 봐볼까? (코드에 대한 내용은 이 글의 맨끝에 첨부해 두었어) ⭐️1️⃣ Codable의 사용 struct Respon..

😂 ch13 swift Equatable?!

✅ 이번 시간에는 Equtable에 대해서 알아보도록 할게. Equatable이 뭐냐? 두 값이 동일한지 확인할 수 있는 프로토콜이야. 우리가 코딩을 하면서 "abc" == "abc" 혹은 33 != 33 등 스위프트의 기본 타입을 같은지 다른지 비교해본적이 있었지? 너무 단순하게 그냥 비교하면 되는거 아닌가..? 썼던 것들인데,, 우리는 이러한 문제에 부딪히게 돼 그럼 swift에서 구조체나 클래스의 인스턴스들의 값이 같은지는 어떻게 비교할 수 있을까? 아래의 예시를 한번 봐보자. class A{ var aNum : Int init(_ aNum :Int) { self.aNum = aNum } } if A(1) == A(2) //error! { } 출처: https://zeddios.tistory.com..

ch12 애플뮤직st 음악앱 코드리뷰

✅ 이번 시간에는 주된 내용은 AVFoundation을 활용한 미디어 객체를 사용하는 작업이야. 확실히 코드리뷰를 하고 지나가야 온전히 내것으로 만드는 느낌이 있어서 진도가 조금 느려지더라도 꼭 하고 지나가는걸로..! AVFoundation에 대해 사용해본 경험이 적어서 이번에는 짚고 넘어가야할 코드가 많은 것 같다..! 익숙하지 않을때는 역시나 애플 개발자 문서를 보면서 지나가보자! 애플 개발자 문서 https://developer.apple.com/documentation/avfoundation/ Apple Developer Documentation developer.apple.com 그럼 코드 리뷰 시작해보자!! (목차) 1. 컬렉션 뷰 헤더 2. AVFoundation 메타 데이터 추출 3. Tr..