티스토리 뷰
학습내용
야곰의 한마디
조금 늦게 가는 건 괜찮다. 늦게 가더라도 제대로 가자.
팀 프로젝트 이유
- 혼자 공부하면 남에게 설명할 기회가 없다.
- 확실히 공부하기 위해서는 설명을 할 줄 알아야 한다.
- 옆에 있는 사람에게 최선을 다해야 한다.
- 우리는 혼자 잘 살기 위해서 모인 게 아니고, 상향 평준화 되기 위해 모였다.
- 빨리 갈려고 하면 안된다.
- 나를 위해서라도 다른 사람을 도와야 한다.
- 나 때문에 방해가 되는 것 같다라는 생각 접어라. 서로 기회를 주는 거다.
- 같이 가는 사람이 훨씬 더 멀리가고, 깊게 파고들 수 있다.
문법, 기본기
- 시간을 들여서 playground 1,2 꼭 해라. 쉽게 생각하지 마라.
- 기초가 정말 중요하다.
코드리뷰
- 일주일동안 PR 하나도 못 보내도 괜찮다.
- 코드 리뷰를 받는 것도 중요하지만 질도 중요하다.
Type, Property, Method
야곰 설명
[속보] 야곰 천원단위 맘에 들지 않아 - "십천원이라 읽을 수 없어"
😡 🤬
import UIKit
/// Type(유형)
// class, struct, enum
// 설명서
struct Person {
var name: String
private var money: Int // 접근불가
// 접근은 할 수 있는데 수정은 할 수 없는 건?
func simburum(to: String, by: Person, item: String) {
print("\(name)이/가 \(to)로 \(by.name)가 시켜서 \(item)을 사러 심부름을 갑니다")
}
private mutating func dropMoney() {
money = 0
}
}
// instance - 같은 설명서에서 나왔지만 실체화 할 땐 다를 수 있다.
/// jimmy -> Person's instance
var jimmy: Person = Person(name: "찌미", money: 0)
/// yagom -> Person's instance
// [속보] 야곰 천원단위 맘에 들지 않아 - "십천원이라 읽을 수 없어"
var yagom: Person = Person(name: "예곰", money: 10_000)
yagom.simburum(to: "점빵", by: jimmy, item: "88한갑")
jimmy.simburum(to: "이케아", by: yagom, item: "소파")
//yagom.money = 0 // 외부에서 건들면 안되는 거라 보호하고 싶다. private으로 설정하면 접근할 수 없다.
//yagom.dropMoney() // 다른사람이 돈을 잃게 할수가 있다니... private으로 하면 접근 불가
// access level
/*
open
public
internal(생략을 해도 기본적으로 쓰이는 것, 프로젝트 내에서 어디서든 접근가능한걸로 알자 일단은)
fileprivate(같은 파일 안에서는 쓸 수 있다)
private(같은 파일이라도 못 쓴다)
*/
/// Instance property
struct Person {
var name: String
var money: Int
func simburum(to: String, by: Person, item: String) {
print("\(name)이/가 \(to)로 \(by.name)가 시켜서 \(item)을 사러 심부름을 갑니다")
}
}
/// Type property - 지금 당장은 이해가 어렵다. 차차 알아가보자. 비유가 어렵다.
struct Person {
static var amount: Int = 6_000_000_000
var name: String
static var money: Int
func simburum(to: String, by: Person, item: String) {
print("\(name)이/가 \(to)로 \(by.name)가 시켜서 \(item)을 사러 심부름을 갑니다")
}
}
/* james 생각
모든 앱 화면마다 배경화면을 바꾸고 싶은데 화면마다 배경을 바꾸면 싶은데
static값을 적용하면 모든 화면을 바꿀 수 있다.
전역변수 같기도 하고, type자체에 값을 할당해주는 거라서 전역배경화면
그러한 변수들에 사용하면 좋겠다고 생각함
/*
neph, james과 공유한 static 관련 블로그
https://neph3779.github.io/til/2021.03.09-TIL/
https://www.donnywals.com/effectively-using-static-and-class-methods-and-properties/
모듈 - xcode에서 실행하는 project 하나가 모듈이다. 일단은.
- 모듈(Module)은 배포할 코드의 묶음 단위입니다. 통상 하나의 프레임워크나 라이브러리 또는 애플리케이션이 모듈 단위가 될 수 있습니다. 스위프트에서는 import키워드를 사용해 불러옵니다. - 스위프트 프로그래밍 3판
은닉화
캡슐화
get, set 연산 property
Ryan 질문) enum의 rawValue를 enum 타입 외부에서 rawValue를 활용해서 코드를 작성하는 방식은 은닉화 측면에서 떨어지는 구현 방식이라고 볼 수 있을까요?
- 딱히 그렇다라고 생각하지 않는다 - 야곰
- 은닉화 관점에서 좋다 나쁘다 라고 표현하기에 애매하다.
- 열거형은 잘 쓰면 좋은데 독이 될 수도 있다. switch구문과도 마찬가지로. switch 잘 쓰기 쉽지 않다.
2주차 Kahoot Quiz
-
내비게이션 방식과 모달리티 방식의 차이는
정보
의 흐름으로 결정한다. -
UI요소 중 텍스트뷰는 한 줄 텍스트 입력을 위한 요소이다. →
X
, Textfield에 대한 설명 -
화면의 상단의 바 이름으로 알맞은 것은 →
Status Bar
-
화면 하단에 액션을 모아둔 바의 이름은 →
Tool Bar
-
불투명도 감소, 화면 읽기, 글자크키 변경 등 사용자의 접근성을 향상하기 위해 살펴보아야 할 내용은?
→
Accessibility
-
값을 보관하는 공간을 만들 때 앞으로 값이 어떻게 바뀔지 모르니 변수로 선언하는 게 좋다.
X
-
타입에 연관된 값을
프로퍼티
라고 부른다. -
타입 요소의 기본 접근 수준은 inernal이다.
O
-
공부하다가 막히거나 어려움을 겪는다면 어떡하나요? →
맥북을 던진다
-
스위프트의 기본 실수타입은 Double이다.
O
왕초보를 위한 iOS 앱개발
- stpe1 PR 이후로 정주행중
- 오프닝곡과 엔딩곡이 머릿속에 떠나지 않는다 😱
고민한 점 & 새로 알게 된 점
문법
- 이번 프로젝트 기간동안 최대한 공부해야 하는데 해도해도 밀려든다.
- 그리고 하는 게 문제라기보다 이해를 해야하는데 후우... 보고 바로 날아가는 휘발성의 나의 뇌 🤯
- 뇌를 쥐어뜯고 싶은 심정쓰! 그래도 계속 해보자
프로젝트
- Type을 어떤 걸로 해야할지 고민
- 팀 프로젝트를 어떻게 하면 효율적으로 할 수 있을지 😭
- 재고관리를 어떻게 해줘야 할지
Xcode
-
git pull을 했는데 새로 추가한 file이 터미널에는 있지만 Xcode상에 보이지 않고 추가하려고 하면 이미 존재하는 파일이라고 나온다.
-
임시방편으로 다른 이름의 file을 생성하여 복사한 후, 원본을 삭제
-
Xcode의 문제로 재설치...? 😱 😱 😱
→ 오늘 물어본 사람 중 대다수가 같은 증상인데 모두가 Xcode 오류인 것인가...?
-
'TIL' 카테고리의 다른 글
TIL ('21.03.15) (0) | 2021.03.16 |
---|---|
TIL ('21.03.12) (0) | 2021.03.14 |
TIL ('21.03.09) (0) | 2021.03.10 |
TIL ('21.03.08) (0) | 2021.03.09 |
TIL ('21.03.07) (0) | 2021.03.08 |
- Total
- Today
- Yesterday
- 삼항연산자
- 훈련법
- Functions
- datatypes
- optional
- 반복문
- 결합성
- iOS View Life Cycle
- 구문이름표
- Constants
- 오토레이아웃
- labeled
- swift
- scope
- enumerations
- 범위연산자
- conditional
- playground
- overflow
- continue
- 세자리수마다 콤마넣기
- 산술연산자
- 비트연산자
- variables
- 객체지향 생활체조
- 흐름제어구문
- RawValues
- 옵셔널
- 오버플로우연산자
- 전산구문 기초용어
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |