전체 글
-
210124 - TILTIL/2021 2021. 1. 25. 02:44
벌써 2021년의 1월도 끝나간다. 오늘도 열심히 복습에 치중했다. Swift, iOS 오늘 복습한 부분은 extension이다. Extension은 프로젝트를 만들 때도 많이 쓰던 문법이므로 자세히 공부를 했다. 그중에서 자주 사용할 거 같은 extension은 안전하게 String을 [Int] 정수 인덱스로 접근하게 하는 방법이었다. 그리고 Equatable과 Hashable, Comparable 프로토콜을 extension으로 확장하는 방법을 다시 공부했다. iOS는 View에 대해서 복습을 했다. View의 속성들은 워낙 많이 사용했기 때문에 크게 어려운 부분은 없었다. C#과 그 외.. C#은 데이터 타입에 대해서 공부했는데 그중에서 숫자 데이터에 대해서 복습을 했고 swift에서 공부했었던 v..
-
210123 - TILTIL/2021 2021. 1. 24. 02:11
Swift 오늘은 protocol에 대해서 복습을 했다. Protocol은 정의하거나 주의해야 할 점은 어렵지 않은데 이제 이것을 가지고 어떻게 활용하냐가 문제인 거 같다. 지금 생각나는 활용 방법은 delegate 만들때 사용하는 것이고 구조체나 열거형을 class의 상속 기능처럼 사용하는 방법?? 이게 이렇게 많이 쓰일지는 아직 모르기때문에 POP에 대해서 설명된 책을 한 번 봐야겠다. C# Terminal에서 C# 컴파일한 .dll 파일을 실행해보는 별거 아닌 것을 해보고 기초적인 것에 대해서 공부를 했다. using namespace project solution CLR(Common Language Runtime) IL(Intermediate Language) JIT(JustInTime) comf..
-
210120 - TILTIL/2021 2021. 1. 21. 03:54
Swift 오늘은 상속과 생성자에 대해서 복습을 했다. 주의 깊게 본 부분은 class의 init과 init의 2단계 초기화이다. Initializer Designated Initializer Convenience Initializer Required init Failable Init Initializer Delegation Project 및 그 외... 개인 프로젝트 디자인을 거의 끝 마쳤다... 이제 남은 화면은 두 개?? 미알못인 나에게 디자인이란 ㅠㅠ 그래도 저번 디자인은 못 봐줄 지경이었지만 지금 디자인은 보면서 만족 중이다. 알고리즘 공부도 틈틈이 하며 블로그 글들도 수정 중이다. 조만간 Swift문법 글도 다시 올릴 예정!
-
Swift 값 입력 받기Programming/Data Structure & Algorithm 2021. 1. 21. 03:45
211207 추가내용 : 글 초반에는 ?를 이용하여 Unwrapping하고 있습니다. 이는 !사용에 익숙해지면 실제 프로젝트에서 ?대신 !을 많이 사용하게 되고 이는 좋지 않은 결과를 초래할 수 있으므로 경각심을 가지고 조심스럽게 사용하자 라는 의미에서 작성했습니다. 하지만 TestCase나 CodingTest과 같은 특수한 경우에서는 일부러 crash를 발생시키고 어느 부분에서 문제가 발생하는지 쉽게 알아야하는 이유와 속도의 차이로 ?보다는 !를 사용하시는게 좋습니다. 안녕하세요 BeePeach입니다 :) 다른 언어를 하다가 swift를 하면 만나게 되는 문제! 바로 콘솔에 값을 입력하는 문제입니다. 알고리즘 문제를 풀려고 하는데 값을 입력받아서 하는 게 대부분이죠?? 그런데 어떻게 입력을 받지 난감했..
-
210117 - TILTIL/2021 2021. 1. 18. 02:28
Swift 오랜만에 문법을 복습했다. 오늘은 string에 대해서 공부했는데 가물가물하다 다시 알게 된 내용들이 있었다. 유니코드 \u{} 사용법 String(format:_:...) CustomStringConvertible 프로토콜 drop 메서드 CharacterSet iOS XCode 버그인거 같은데 StackView의 background 컬러가 바뀌지 않는 문제가 있는 거 같다. 분명 어제까지는 background가 잘 나오다가 안나오니 UI 수정을 하다가 잘못된 줄 알고 코드 고쳐보려 했지만 변화가 없어서 결국 stackView를 view로 바꿔 적용시켰다... XCode야 제발... 요즘은 왜이리 또 자주 먹통 되는 거니??
-
210113 - TILTIL/2021 2021. 1. 14. 03:06
iOS 오늘 프로젝트를 구현하며 공부한 부분은 textField의 delegate이다. TextField의 delegate를 이용하면 위와 같이 입력한 ID가 E-mail 형식이고 password가 4글자 이상이라면 로그인 버튼이 활성화되도록 구현할 수 있다. delegate에 선언된 textField(_:shouldChangeCharactersIn:replacementString:) 에서 코드를 구현하면 된다. 이메일은 정규식을 사용하여 검증하면 쉽게 검증이 가능하고 패스워드의 자리수도 count속성으로 쉽게 검증할 수 있다. 특수문자가 포함되어야하거나 대소문자가 포함돼야 하는 것도 구현할 수 있지만 개인적으로 의미 없이 귀찮게 하므로 빼버렸다!
-
210111 - TILTIL/2021 2021. 1. 12. 02:28
C# C#문법을 공부했다... Swift랑 왔다 갔다 헷갈리지만 많이 연습을 안 한 탓이겠지..! 시간을 더 내서 투자해야 하는데 할게 너무 많다. Extension - extension keyword가 따로 없다. Interface - Swift의 protocol Collection Anonymous Type - Tuple과 유사 Array - 배열이지만 swift 배열과는 조금 다르다. ArrayList - 그나마 조금 비슷한 배열 Hashtable - Dictionary랑 비슷 Stack Queue List - 이게 swift 배열과 가장 유사 Dictionary - 이것도! Error handling - try catch finally Generic 유사한게 많아서 다행이다. iOS 오늘 한 부분..
-
210110 - TILTIL/2021 2021. 1. 11. 03:41
오늘은 로그인 화면을 다시 구상했다. 이유는 디자인이 너무 구렸기 때문에.... 그러면서 공부하게 된 개념은 animation을 적용하는 방법과 notification 복습이었다. 로고가 중앙에서 위로 올라가도록 구현했는데 화면에 변화가 있으면 로고가 다시 내려오는 문제가 발생했다. 문제는 autolayout으로 제약을 설정했는데 animate메서드에서 frame을 변경했기 때문이다. 이 문제를 해결하려면 autolayout으로 설정한 제약을 원하는 값으로 변경한 후에 animate 메서드에서 self.view.layoutIfNeeded()를 호출해야 한다. 그렇게 하지 않으면 저렇게 다시 돌아가게 된다. 몇 가지 content를 추가한 후에 키보드가 나타나게 되면 contentsInset을 키보드의 높..