전체 글
클래스 vs 구조체/열거형, 무엇이 다를까? Swift 값 타입과 참조 타입 정리
클래스 vs 구조체/열거형, 무엇이 다를까? Swift 값 타입과 참조 타입 정리
2025.05.02이전 시간에는 각각의 데이터 타입에 대해서 배웠다. 오늘은 ‘왜 이런 차이가 중요할까?’, ‘언제 어떤 것을 써야 할까?’에 대해 기록해 보고자 한다(:Swift를 처음 배우기 시작하면 꼭 마주하게 되는 개념이 있다. 바로 클래스(class)와 구조체(struct), 그리고 열거형(enum)의 차이다. 이 세 가지는 데이터 타입을 설계하는 방식이지만, 사용법이나 작동 방식이 크게 다르다. 특히 클래스는 참조 타입, 구조체와 열거형은 값 타입이라는 점에서 근본적인 차이가 있다. 1. 값 타입과 참조 타입 개념먼저 가장 기본적인 차이인 값 타입(Value Type)과 참조 타입(Reference Type)의 개념부터 살펴보자.값 타입은 데이터를 전달할 때 값을 '복사'해서 전달한다. 예를 들어 구조체 인스턴..
Swift enum 제대로 이해하기: rawValue부터 메서드까지
Swift enum 제대로 이해하기: rawValue부터 메서드까지
2025.04.30Swift 열거형(Enum) 완전 정복하기1. 열거형(Enum)이란?열거형(Enum)은 비슷한 종류의 값들을 하나로 묶는 타입이다. 예를 들어, 요일, 계절, 과일 등을 하나로 묶을 수 있다. 여러 개의 관련된 값을 하나의 그룹으로 관리하고 싶을 때 유용하다.타입 이름은 대문자 카멜케이스(PascalCase)로, 각 case는 소문자 카멜케이스(camelCase)로 작성한다.enum Weekday { case mon, tue, wed, thu, fri, sat, sun}위 코드에서 Weekday라는 이름의 열거형을 만들었다. 여기서 mon, tue, wed 등이 case로 정의된 값들이다. 요일을 나타내는 값들이 한 곳에 묶여 있는 것!(: 2. 열거형 사용하기열거형을 사용할 때, 타입을 먼저 선언..
참조 타입과 값 타입의 차이점, Swift에서 클래스 사용법
참조 타입과 값 타입의 차이점, Swift에서 클래스 사용법
2025.04.29클래스란 무엇일까?클래스는 참조 타입(reference type) 이다.참조 타입이란, 어떤 값을 대입하거나 전달할 때, 값 자체를 복사(copy) 하는 게 아니라 그 값이 저장된 '주소(reference)'를 공유한다는 뜻이다.Swift에서 클래스를 정의할 때는 class 키워드를 사용하고, 클래스 이름은 대문자 카멜케이스(예: Person, Student)를 따른다.class Sample { var mutableProperty: Int = 100 let immutableProperty: Int = 100 static var typeProperty: Int = 100 func instanceMethod() { print("instance method") }..
스위프트 구조체와 객체지향 프로그래밍 기초
스위프트 구조체와 객체지향 프로그래밍 기초
2025.04.281. 구조체스위프트에서 구조체는 값 타입(value type)이다. 구조체는 값을 저장하고 관리하는데 사용되는 데이터 타입이며, 구조체를 사용하여 복잡한 데이터를 간편하게 처리할 수 있다. (스위프트에서 대부분의 기본 타입은 구조체로 이루어져 있다는 것!)구조체의 문법스위프트에서 구조체를 정의하려면 struct라는 키워드를 사용한다. 아래는 구조체를 정의하는 기본 문법이다:struct Sample { // 가변 프로퍼티 var mutableProperty: Int // 불변 프로퍼티 let immutableProperty: Int // 타입 프로퍼티 static var typeProperty: Int = 100 // 인스턴스 메서드 func..
체지방률 표 분석: 나이대별 기준으로 알아보는 여성·남성 체지방
체지방률 표 분석: 나이대별 기준으로 알아보는 여성·남성 체지방
2025.04.281. 체지방률이란 체지방률은 전체 체중에서 지방이 차지하는 비율을 의미한다. 단순히 몸무게만으로는 알 수 없는 건강 상태를 세밀하게 나타내는 중요한 지표다. 체지방률은 낮다고 무조건 좋은 것도 아니고, 높다고 모두 위험한 것도 아니다. 개인의 나이, 성별, 라이프스타일에 따라 적정 체지방률을 유지하는 것이 핵심이다.2. 남성과 여성의 체지방률 표 구분운동선수 수준건강한 범위보통 수준과체중비만남성6~13%14~17%18~24%25~29%30% 이상여성14~20%21~24%25~30%31~39%40% 이상 3. 나이대별 체지방률 표 (남성/여성)남성연령대운동선수 수준건강한 범위보통 수준과체중비만20대6~10%11~16%17~21%22~26%27% 이상30대7~11%12~17%18~22%23~27%28% 이상..
내가 틀릴 수도 있습니다: 불완전함을 받아들이는 삶의 힘
내가 틀릴 수도 있습니다: 불완전함을 받아들이는 삶의 힘
2025.04.28세상은 점점 더 완벽을 요구한다. 실수는 용납되지 않고, 작은 실패조차 과하게 비난받는 시대다. 이런 흐름 속에서 우리는 점점 더 긴장하고, 스스로를 옥죄게 된다. 그러나 여기, 조용히 속삭이는 책 한 권이 있다. '내가 틀릴 수도 있습니다'는 완벽을 강요하는 세상에서 불완전함을 받아들이는 용기, 그리고 자기 자신을 온전히 책임지는 삶의 태도를 전한다.완벽을 향한 강박에서 벗어나기우리는 사회가 강요하는 완벽함에 너무 쉽게 휘둘린다. 그러나 이 책은 아주 단순하지만 강렬한 진실을 전한다. "나는 틀릴 수도 있다."이 한 문장이 전하는 힘은 놀랍다. 틀릴 수 있다는 걸 인정하는 순간, 우리는 더 이상 두려워할 필요가 없다. 완벽을 추구하기보다, 자신의 모든 선택을 책임지고 받아들이는 삶이 얼마나 자유로운지 ..
싯타르타 - 헤르만 헤세: 영적 성장과 자아 발견의 여정
싯타르타 - 헤르만 헤세: 영적 성장과 자아 발견의 여정
2025.04.27인간 존재의 의미와 자아를 찾는 여정은 무엇보다 깊은 울림을 주는 주제다. 우리는 모두 삶의 길을 걷다 보면 ‘나는 누구인가?’ ‘내 삶의 진정한 목적은 무엇인가?’ 하는 근원적인 질문에 마주하게 된다. 헤르만 헤세의 소설 ‘싯타르타’는 바로 이러한 질문들에 대한 답을 찾기 위한 한 인간의 여정을 그린 작품이다. 이 책은 단순한 성장소설을 넘어, 영적 성장과 자아 발견의 깊이를 탐구하는 영적 고전으로, 수많은 독자에게 삶에 대한 통찰을 선사한다. 1. 싯타르타의 자아 찾기 여정‘싯타르타’는 고대 인도를 배경으로 한 소설로, 주인공 싯타르타는 브라만의 아들로 태어났다. 그는 어린 시절부터 깊은 깨달음을 향한 갈망을 느끼며, 기존의 종교적 교리와 사회적 관습이 그의 내면의 공허를 채울 수 없다는 사실을 깨닫..
앱 크래시 방지! Swift 옵셔널 바인딩과 강제 추출 차이점
앱 크래시 방지! Swift 옵셔널 바인딩과 강제 추출 차이점
2025.04.26Swift 옵셔널 추출 — 안전하게 꺼내는 법, 그리고 절대 해선 안 될 일저번시간에 공부했지만, Swift를 처음 배울 때 가장 낯설게 느껴지는 개념 중 하나가 바로 옵셔널(Optional) 이다. 옵셔널은 말 그대로 “값이 있을 수도 있고, 없을 수도 있다”는 것을 표현하기 위한 Swift만의 특별한 타입이다.그런데 이 옵셔널은 그냥 꺼내 쓸 수 없다. 안에 있는 값을 꺼내기 위해서는 반드시 "추출(Unwrapping)" 과정이 필요하기 때문이다(:오늘은 그 옵셔널을 안전하게 추출하는 방법에 대해 알아보고, 무심코 쓰기 쉬운 강제 추출(Forced Unwrapping) 이 얼마나 위험한지 기록해 보고자한다🥰. 🍏 옵셔널을 꺼내야 하는 이유옵셔널은 이런 식으로 선언한다.var name: String..
Swift 옵셔널 정리 : ?와 ! 차이 + 안전한 사용법
Swift 옵셔널 정리 : ?와 ! 차이 + 안전한 사용법
2025.04.25Swift 옵셔널(Optional)nil이 될 수도 있는 값, 어떻게 다룰까?Swift를 공부하다 보면 가장 먼저 마주치는 개념 중 하나가 바로 옵셔널(Optional) 이다. 옵셔널은 말 그대로 값이 있을 수도, 없을 수도 있는 상태를 표현한다. 오늘은 옵셔널의 기본 개념부터 실전 사용법, 그리고 헷갈리기 쉬운 부분을 기록해보았다:) 1. 옵셔널이란?옵셔널(Optional)은 어떤 변수에 값이 있을 수도 있고, 없을 수도 있는 상황을 표현하는 Swift의 강력한 타입 시스템이다. 즉, 변수에 nil(값 없음) 이 들어갈 수 있는지 여부를 명확하게 표시할 수 있다.// someOptionalParam은 nil이 될 수 있음func someFunction(someOptionalParam: Int?) { ..
if, switch, for-in, while: Swift에서 흐름을 다루는 방법
if, switch, for-in, while: Swift에서 흐름을 다루는 방법
2025.04.24Swift에서 조건문과 반복문 활용하기Swift는 iOS와 macOS 애플리케이션 개발에 많이 사용되는 프로그래밍 언어다. 이 언어에서 가장 기본적이고 중요한 개념 중 하나는 조건문과 반복문이다. 이 두 가지는 프로그램의 흐름을 제어하는 핵심 요소로, 다양한 상황에서 조건에 맞는 코드 블록을 실행하거나, 특정 작업을 반복하는 데 사용된다. 어늘은 if-else와 switch 조건문, 그리고 for-in, while, repeat-while 반복문에 대해 정리해보고자 한다. (Swift에서 이들을 어떻게 활용할 수 있는지 구체적인 예시를 통해 살펴봐야지✨.) 1. 조건문: 흐름을 제어하는 첫걸음조건문은 프로그램이 실행 중일 때 특정 조건을 만족할 때만 실행할 코드 블록을 지정하는 데 사용된다. Swift에..
Swift 함수 문법: 매개변수, 반환값, 함수 타입까지
Swift 함수 문법: 매개변수, 반환값, 함수 타입까지
2025.04.23Swift 함수 1. 함수의 기본 형태func 함수이름(매개변수이름: 타입, ...) -> 반환타입 { // 구현부 return 반환값}예시:func sum(a: Int, b: Int) -> Int { return a + b}함수 이름은 sum, 두 개의 정수형 매개변수 a, b를 받고, 두 값을 더한 결과(Int)를 반환한다. 2. 반환값이 없는 함수반환값이 없을 때는 Void 또는 아무것도 쓰지 않아도 된다.func printName(name: String) -> Void { print(name)}// 또는func printName(name: String) { print(name)} 3. 매개변수가 없는 함수func maximumIntegerValue() -> Int { ..
사랑도 기술이다: 프롬의 철학으로 다시 보는 사랑의 의미
사랑도 기술이다: 프롬의 철학으로 다시 보는 사랑의 의미
2025.04.22사랑이란 무엇일까. 이 물음은 철학자나 시인만의 몫이 아니다. 사랑은 누구에게나 삶의 본질에 해당하는 주제이며, 우리는 매일 크고 작은 관계 속에서 이 질문과 마주한다. 하지만 사랑을 진지하게 배우고 연습해본 사람은 얼마나 될까? 대부분의 사람들은 사랑을 ‘느끼는 것’, 혹은 ‘자연스럽게 생겨나는 감정’이라 여긴다. 마치 누군가를 만나기만 하면 저절로 시작되는 마법처럼 말이다.그러나 에리히 프롬(Erich Fromm)의 저서 '사랑의 기술(The Art of Loving)'은 이러한 통념에 정면으로 도전한다. 그는 사랑을 하나의 기술로 정의하며, 그 어떤 예술보다도 더 많은 지식과 노력, 인격의 성숙이 필요하다고 말한다. 이 책은 단순한 사랑 이론서가 아니다. 오히려 인간 존재에 대한 깊은 통찰과 함께,..