분류 전체보기

    [TIL] 21. 01. 30

    👑 오늘 한 일 아침부터 저녁까지 알바갔다오구,, 어제 들었던 왕초보를 위한 iOS 앱 개발 lesson 3-6까지 들었다! 💡기억해야 할 것 Asset 👉 다양한 디바이스들에서 사용하기 위해 여러 파일로 이루어져있다. Asset Catalog 👉 에셋을 관리하기 위한 폴더이며 App Icon, color, image, data 등등 다양한 에셋을 관리할 수 있다.

    [TIL] 21. 01. 29

    👑 Today I Learned 야곰의 왕초보를 위한 iOS 앱 개발 lesson 1, 2 들었다! 역시 문법 공부했을 때보다 훨씬 재밌다😆 (후딱 들을 수 있을 것 같은 느낌...!) 💡기억해야 할 것 device orientation -> 앱 시작할때 화면 방향 UIKit(User Interface Kit) -> 사용자에게 보여질 것들 @IBOutlet -> 인터페이스 빌더에 올라온 ui 요소의 값을 가져오고 싶을 때 혹은 코드에서 쓰고 싶을 때 @IBAction -> 인터페이스 빌더에 어떤 요소들이 이벤트를 받았을 때 호출되는 액션을 정의한 것

    [TIL] 21. 01. 28

    👑 오늘 한 일 스위프트 프로토콜에 대해 공부했다. 2021/01/28 - [Swift] - [Swift] 프로토콜(Protocol) (TMI) 맨날 집에만 있다보니까 햇빛도 잘 못보고..내 몸에 대해 신경을 못 써준 것 같아서 영양제 먹으려고 폭풍 검색했다,,ㅎ 종류가 너무 많아서 유튜브보고 후기 찾아보고 그랬더니 시간 순삭,,,😓 비타민c, b, d, 오메가 3, 마그네슘 주문했다! 꾸준히 챙겨먹어야징 ㅎㅎ 💡기억해야 할 것 타입에서 채택한 프로토콜을 준수하려면 프로토콜이 제시하는 청사진의 기능을 모두 구현해야 한다. 프로토콜은 클래스, 구조체, 열거형 모두 상속 가능하며 다중상속도 가능하다.

    [Swift] 프로토콜(Protocol)

    💡프로토콜 (Protocol) 프로토콜은 특정 역할을 수행하기 위한 메서드, 프로퍼티, 기타 요구사항 등의 청사진을 정의합니다. 쉽게 말하자면 어떤 타입(클래스, 구조체 등등)이 특정 기능이 필요해서 이 기능을 꼭 구현해야 한다고 강요하는 것과 같습니다. 이러한 구조체, 클래스, 열거형은 프로토콜을 채택해서 프로토콜의 요구사항을 실제로 구현할 수 있습니다. 어떤 프로토콜의 요구사항을 모두 따르는 타입은 '해당 프로토콜을 준수한다' 고 표현합니다. 타입에서 프로토콜의 요구사항을 충족시키려면 프로토콜이 제시하는 청사진의 기능을 모두 구현해야 합니다. 즉, 프로토콜은 정의를 하고 제시를 할 뿐이지 스스로 기능을 구현하지는 않습니다. 프로토콜은 다음과 같이 protocol 키워드를 사용하여 정의합니다. prot..

    [TIL] 21. 01. 26

    👑 오늘 한 일 오늘은 밖에 나갔다가 저녁에 들어와서 어제 다 못한 타입캐스팅에 대해 마저 공부했다. 타입캐스팅,,책을 봐도 너무 헷갈리고 이해가 잘 되지않았다,,😂 유튜브에서 찾아보다가 야곰님의 강의를 듣고 어느정도 이해가 됐다! 이해하느라 바빠서 블로그 글을 쓰지못했지만,, 자고 일어나서 후딱 쓸 예정!! 💡기억해야 할 것 다운캐스팅은 as? 또는 as!를 사용한다. (as?를 쓰는 것이 안전함)

    [Swift] 타입캐스팅(Type Casting)

    💡타입캐스팅 스위프트에서 타입캐스팅이란? 인스턴스의 타입을 확인하거나 자신을 다른 타입의 인스턴스인양 행세할 수 있는 방법으로 사용할 수 있습니다. class Person { var name: String = "" func breath() { print("숨을 쉽니다") } } class Student: Person { var school: String = "" func goToSchool() { print("등교를 합니다") } } class UniversityStudent: Student { var major: String = "" func goToMT() { print("멤버쉽 트레이닝을 갑니다") } } // 인스턴스 생성 var eunseo: Person = Person() var hana: S..

    [TIL] 21. 01. 25

    👑 오늘 한 일 야곰 스타터 캠프 코딩 과제를 했다. 분명 다른 언어로 풀어본 문제인데 막상 스위프트로 하려니까 어떻게 해야될지 감이 안왔다,, 그리고..충격받았던건 이렇게 스위프트를 공부하고 있는데 입력받는 방법을 모르고 있었다는 것,,,지금이라도 알아서 다행이다😂 저녁에 스위프트 타입캐스팅에 대해 공부했다. (아직 다 못 끝내서 내일 이어서 할 예정!) 💡기억해야 할 것 스위프트에서 입력받으려면 readLine()을 쓰면 된다! print()의 줄바꿈을 없애려면 print("", terminator = "") 이렇게 해주면 된다! is를 사용하여 데이터 타입을 확인할 수 있다. as를 사용하여 업캐스팅해줄 수 있다.

    [TIL] 21. 01. 22

    👑 오늘 한 일 스위프트의 assert 함수와 빠른 종료에 대해 공부했다. 2021/01/22 - [Swift] - [Swift] 빠른 종료(Early Exit) 💡기억해야 할 것 assert 함수는 디버깅 모드에서만 동작하며 주로 디버깅 중 조건의 검증을 위해 사용한다. guard 구문을 사용하여 빠른 종료를 할 수 있으며 guard의 else 블록 내부에는 제어문 전환 명령이 있어야한다.

    [Swift] 빠른 종료(Early Exit)

    💡빠른 종료 (Early Exit) guard 키워드를 사용하여 특정 조건에 부합하지 않는다면 재빠르게 코드 블록의 실행을 종료할 수 있습니다. guard 구문은 Bool 타입의 값으로 동작하는 기능이며, 항상 else 구문이 뒤에 따라와야 합니다. 또한, guard의 else 블록 내부에는 특정 코드 블록을 종료하는 return, break, continue, throw 등의 제어문 전환 명령이 꼭 있어야 합니다. 다음은 guard 구문 표현 방식입니다. guard Bool 타입 값 else { 예외사항 실행문 제어문 전환 명령어 } if 구문을 사용하면 else 블록으로 예외사항을 처리해야 하지만 예외사항만 처리하고 싶다면 guard 구문을 사용하는 것이 훨씬 간편하고 읽기 좋게 구성할 수 있습니다...

    [42 Seoul] 온라인 테스트 & 체크인 미팅 후기

    💡42 Seoul이란? 42서울은 이노베이션 아카데미의 소프트웨어 교육프로그램입니다! 자세한 설명은 아래 링크를 참고해주세요👇👇 https://42seoul.kr 42 Seoul | 이노베이션 아카데미 교육 프로그램 42서울은 이노베이션 아카데미의 소프트웨어 개발자 양성프로그램입니다. 42seoul.kr 홈페이지에 나와있는 설명을 보고 의문이 들었던 점이 있었는데요 바로 42서울의 교육 시스템입니다! 42서울은 가르치는 교수도, 정해진 교재도, 학비도 없다고 합니다. 저는 이 글을 보고 그럼 '누구한테 무엇을 배우지?'라는 생각이 들었습니다. 42서울은 동료 간 학습(peer-to-peer learning) 방식을 통해 교육생 스스로가 과제를 해결하고 서로 간의 협업을 통해 학습하고 성장하는 교육 과정을..