전체 글 51

[iOS] 2025.02.21 Struct와 Class / 프로토콜

Struct와 Class1. Struct(구조체)값 타입(Value Type)으로, 메모리에서 값을 복사해 사용하므로 독립된 인스턴스를 생성.상속 불가능.주로 데이터를 저장하거나 간단한 로직을 수행할 때 사용.2. Class(클래스)참조 타입(Reference Type)으로, 메모리에서 동일한 인스턴스를 여러 곳에서 참조.상속 가능.객체지향 프로그래밍의 주요 개념으로 사용. * init이란? Swift에서 Class(클래스)나 Struct(구조체)의 인스턴스를 생성할 때 호출되는 초기화 메서드(initializer)임.* 인스턴스란? Class나 Struct를 사용하여 만들어 낸 실제 객체를 의미. Class나 Struct는 설계도라고 이해하면 편함.* Struct(구조체)를 정의하면 자동으로 모든 속성..

iOS 2025.02.21

[iOS] 2025.02.12 프로젝트 : "간단한 가위바위보 게임 만들기"

프로젝트 : "간단한 가위바위보 게임 만들기"기능 목록1. 사용자가 "가위", "바위", "보" 중 하나를 입력하면 컴퓨터가 무작위 선택을 한다.2. 조건문을 사용하여 승패를 판별하고 결과를 출력한다.3. 사용자가 "그만"을 입력할 때 까지 반복적으로 게임을 진행한다.4. 사용자의 입력이 올바르지 않으면 다시 입력하도록 처리한다. 1단계 : 컴퓨터가 무작위 선택하는 함수 만들기가위바위보 게임에서는 컴퓨터가 랜덤하게 "가위", "바위", "보" 중 하나를 선택해야 함.* 처음 본 .randomElement()!, 느낌표가 꼭 있어야 하는 것 확인. 2단계 : 승패를 판별하는 함수 만들기사용자와 컴퓨터의 선택을 비교하여 승패를 판별하는 로직을 작성.3단계 : 사용자 입력을 받아 게임을 반복하기사용자가 "그만..

iOS 2025.02.12

[iOS] 2025.02.11 함수의 사용 방법 이해하기

함수의 사용 방법 이해하기 반환값이 있는 함수함수가 특정 연산을 수행한 후, 결과를 반환하는 형태.func multiply(a: Int, b: Int) -> Int { return a * b } let result = multiply(a: 5, b: 3) print(result) // 15 출력여러 개의 매개변수를 받는 함수두 개 이상의 값을 입력받아 다양한 결과를 출력할 수 있음.func introduce(name: String, age: Int) { print("제 이름은 \(name)이고, 나이는 \(age)살입니다.") } introduce(name: "Tom", age: 25)함수 사용해보기과제 1: 두 수를 더하는 함수 만들기문제: 두 개의 정수를 입력받아 합을 반환하는 함수를 작성하세요.함수..

iOS 2025.02.11

[iOS] 2025.02.10 함수의 선언과 사용 방법 이해하기

함수의 선언 방법 이해하기 매개변수가 없는 함수매개변수를 받지 않고, 호출하면 항상 같은 결과를 출력하는 함수. func sayHello() { print("안녕하세요!") } sayHello() // "안녕하세요!" 출력매개변수가 있는 함수함수를 호출할 때 특정 값을 전달하여 다양한 결과를 출력할 수 있음.func greet(name: String) { print("안녕하세요, \(name)님!") }  greet(name: "Alice") // "안녕하세요, Alice님!" 출력 greet(name: "Bob") // "안녕하세요, Bob님!" 출력반환값이 있는 함수함수를 호출하면 결과를 반환하는 함수.func add(a: Int, b: Int) -> Int { return a + b } let su..

iOS 2025.02.10

[iOS] 2025.02.07 반복문 이해하기

반복문 이해하기1. for-in 문정해진 횟수만큼 반복해야 할 때 사용.배열(Array) 또는 범위(Range)의 요소를 순회할 때 사용.단, 반복 횟수가 미리 정해져 있어야 함.범위를 사용하여 특정 범위의 숫자를 반복할 수 있음.예시 코드for i in 1...5 { print("반복 \(i)회") }예시코드// 배열 요소 출력 let names = ["Alice", "Bob", "Charlie"] for name in names { print("이름: \(name)") }2. while 문반복 횟수가 정해져 있지 않고, 특정 조건이 참일 동안 반복할 때 사용루프를 실행하기 전 조건을 먼저 검사.조건이 거짓이면 반복을 실행하지 않음.사용 사례반복 횟수를 미리 알 수 없을 때.사용자가 특정 조건을 만족할..

iOS 2025.02.07

[iOS] 2025.02.07 조건문 이해하기

*오늘도 Online Swift Playground는 먹통이라 Swift Fiddle 이용.*실제로 Xcode에서 어떻게 돌아가는지 눈으로 보고싶음..조건문 이해하기 1. if - else 문특정조건이 참이되면 실행되고, 거짓이면 다른 코드가 실행됨.단순한 조건을 확인할 때 주로 사용됨.(두 가지 경우를 나누어 처리할 때) 예시 코드let temperature = 30 if temperature > 25 { print("더운 날씨입니다.") } else { print("시원한 날씨입니다.") }  2. else if 문여러 개의 조건을 순차적으로 검사할 때.조건이 여러 개, 우선순위에 따라 차례로 검사할 때. 예시 코드let score = 85 if score >= 90 { print("A 등급입니다!"..

iOS 2025.02.07

[iOS] 2025.02.06 연산자의 이해

*여전히 맥북은 없고 Online Swift Playground는 접속이 안돼서 Swift Fiddle 이용함. 연산자의 이해 산술 연산자(Arithmatic Operators) 덧셈 +, 뺄셈 -, 곱셈 *, 나눗셈 /, 나머지 % 예시 코드let a = 10let b = 3 print("덧셈: \\(a + b), 뺄셈: \\(a - b)") print("곱셈: \\(a * b), 나눗셈: \\(a / b), 나머지: \\(a % b)") *코드가 대소문자 구분한다는 걸 알게됨!*4 나누기 10을 하면 나머지가 4가 나오는데, 소수점 표현은 못하는걸까...?(질문) 비교 연산자(Comparison Operators) ==  값이 같은지 비교 !=   값이 다른지 비교 >    왼쪽 값이 더 큰지 비교 ..

iOS 2025.02.06

[iOS] 2025.02.05 Swift 첫 번째 프로젝트

* 사전캠프 3일차, 맥북이 없어서 우선 Online Swift Playground로 해봤었는데 오늘은 무슨일인지 접속이 안됐다.* 다행히 Swift Fiddle이란 곳을 찾아서 실습을 해볼 수 있었음 Swift 배우기 : 첫 번째 프로젝트 1. Swift Playgrounds 시작하기새로운 프로젝트 만들기코드 작성과 실행* 디테일한 버튼은 맥북이 오면 실습해보는 걸로~ 예제 코드 : print("안녕하세요, Swift Playgrounds!")코드 수정과 반복 실행 - 간단한 계산기 예제let number1 = 10let number2 = 5 let sum = number1 + number2 print("10 + 5 = \(sum)") * 각 숫자를 바꿔 넣어보니 결과물이 바뀌는 모습을 볼 수 있었음 ..

iOS 2025.02.05

[iOS] Swift와 iOS 생태계 이해하기

1. Swift의 주요 특징 3가지  - 안전성(safety) : 엄격한 문법을 통해 프로그래머의 실수를 방지 - 신속성(Fast) : C 언어와 동등한 성능을 유지하도록 설계되어 빠른 실행 속도를 자랑 - 표현력(Expressive) : 간결하면서도 표현력이 풍부한 구문을 제공 2. Swift가 iOS 개발에서 중요한 이유  - 안전성Swift는 옵셔널(optional), 타입 안정성(type safety), 자동 메모리 관리(ARC:Automatic Reference Counting) 등의 기능을 통해 런타임 오류를 줄이고, 코드 안정성을 높임. 이는 더 안정적이고 신뢰할 수 있는 앱 개발을 가능하게 함.  - 성능LLVM 컴파일러를 사용하여 최적화된 기계어 코드로 변환, 실행 속도가 빠름. C++과..

iOS 2025.02.04

iOS 스타터 노트

1. 내가 iOS 스타터 트랙에 참여한 계기는 무엇인가요? -  오랫동안 생각만 하던 ios개발을 경험하고자 참여했습니다. 또한 직무 전환에 대한 고민 중 내일배움캠프를 알게 되어 참여하게 되었습니다.    2. 나는 프로그래밍에 대해 어느정도의 사전지식이 있나요? -  지인들을 통해서 접하게 되어 여러방면으로 찾아보았으나, 실질적인 지식은 전혀 없습니다.   3. 내일배움캠프를 통해 단기적, 장기적으로 얻고 싶은 목표는 무엇인가요? -  단기적으로는 ios 개발자로서의 커리어를 시작하고 싶고, 장기적으로는 창업을 하고싶습니다.   4. 앱 개발자의 역할을 수행하는 데에 있어 나의 강점과 연관된 부분은 무엇이라고 생각하나요? 혹은 보완, 개선하고 싶은 개인 역량이 있나요 ? (과거 혹은 현재의 업무와 연..

카테고리 없음 2025.02.04