반응형 IT372 100 days of SwiftUI - Day23 이번 클래스는 왜 View 가 클래스가 아닌 struct 인지 와 기본 템플릿의 body 는 왜 some View 를 리턴하는가에 대한 이야기 였다. 결론만 요약해서 말하면,클래스 인 경우 쓰지 않는 속성과 메소드로 간단한 장면을 그릴때에도 무거워지기 때문에 가볍고 빠르게 만들기 위해 View 를 쓰고 있고some View 는 역시 어떤걸 리턴할 지 모르지만모두 대응하는 값으로 설정하기 위한것이다! 로 볼수 있겠다. (View 는 protocol 이다 )추가적으로, modifier 의 순서는 중요하다! modifier 는 구조체의 끝에 .로 선언 및 추가 수정을 가하는것 인데,그냥 UI 컴포넌트를 빌더 패턴 체인 호출(java에서처럼) 같이 쓴다고 보면 될듯 하다. 어쨌든 순서의 중요성은 아래의 예를 확.. 2024. 11. 19. 100 days of SwiftUI - Day20, Day21, Day22 유우명한 깃발 게임을 swiftUI를 이용해 만드는 방법이다. 이제 좀 봐줄만 하면서 내가 만들었지만 재밌다 흐흐..색감? 같은게 정하는 방법이 있어서 간단한데 제법 이쁘게 나오니 먼가 한거 같은 감도가 업! 도전과제 ( 점수 표시하기, 8번 하면 다시 처음으로 돌아가기, 정답 틀리면 찍은 국기명 보여주기 ) 까지 완료해본 소스 //// ContentView.swift// GuessTheFlag//// Created by HanTJ on 11/18/24.//import SwiftUIstruct ContentView: View { @State private var showingScore = false @State private var gameEnd = false @State priva.. 2024. 11. 18. 100 days of SwiftUI - Day19 19일차는 과제 데이 다!저번 뿜빠이 프로그램을 베이스로 하여 단위 변환툴을 만드는 것이다. 난 온도와 길이 변환 툴을 만들어따!//// ContentView.swift// Changer//// Created by HanTJ on 11/17/24.//import SwiftUIstruct ContentView: View { @State private var selectedTemperture: String = "섭씨" @State private var inputTempeture:Double = 0 let tempertures = ["섭씨", "화씨", "켈빈"] var calculateTemperture:Double { switch selectedTemperture {.. 2024. 11. 17. 100 days of SwiftUI - Day16, Day17, Day18 드디어 본격적인 보이는? 프로그램의 시작!. SwiftUI 를 이용해, 뿜빠이 프로그램을 만들었다.//// ContentView.swift// WeSplit//// Created by HanTJ on 11/16/24.//import SwiftUIstruct ContentView: View { @State private var checkAmount = 0.0 @State private var numberOfPeople = 2 @State private var tipPercentage = 20 @FocusState private var amountIsFocused: Bool @State private var totalAmount: Double = 0 @State priv.. 2024. 11. 16. 100 days of SwiftUI - Day13, Day14, Day15 protocol 과 extension protocol 은 java 의 interface 와 비슷 extension 은 c#의 partial class 같이 일부를 재 정가능한데 class 가 아닌 struct 와 protocol 을 추가 지정이 가능함. 그래서 extension 을 이용해서 c++의 연산자 오버라이딩 이 구현 가능함 . 물론 기존 타입(String, Array) 등도 확장가능함. 기존타입들이 struct이기 때문에 가능 함 protocol Person { var name: String { get } func sayHello()}extension Person { func sayHello() { print("Hi, I'm \(name)") }}struct E.. 2024. 11. 15. 100 days of SwiftUI - Day12 오늘은 class 관련 공부다.java , c++ 의 클래스와 크게 다를점이 없다. struct 와 class의 차이를 아는게 많은 도움이 되겠다.struct 는 값복사, class 는 값참조다. 복사하려면 복사 구문을 만들어줘야 한다.값참조 이기 때문에 같은 참조하는 클래스들이 모두 사라져야 메모리 해제가 된다. 그래서 init , deinit 함수가 있다. deinit 은 c++의 파괴자로 생각하면 된다. ( 파괴자라는 말은 좀 여전히 맘에 안든다... )struct 와 다르게 var를 다루는 func 에 mutating 을 안붙여도 된다. 여기서 struct는 상수같구나! 해주면 된다. 가장 큰 struct vs class 의 차이점은 상속이다. class B : A 하면 B는 A를 상속.. 2024. 11. 14. 100 days of SwiftUI - Day10 ~ Day11 swift 에서는 class 보다 struct 를 많이 쓴다고 합니다. java에서는 wrapping class 라고 하는 원시타입(int, float, double 등등등) 의 클래스들도 struct 로 구현되었다고 하네요! 오호! c의 struct 같은 경우에는 별도 함수정의가 없는데 swift 에서는 함수정의가 되고, 대신 struct 내의 변수 조작을 하려면 함수 앞에 mutating 을 써야 합니다. 또, 해당 구조체를 이용한 변수 선언시에 상수(let)로 선언하면 오류가 발생합니다. struct Employee { let name: String var vacationRemaining: Int mutating func takeVacation(days: Int) { .. 2024. 11. 13. 100 days of SwiftUI 시작! Day 0 ~ Day 9 항상 중도 포기중인 swift 공부를 또! 시작해 봅니다.이번엔 perplexity에서 물어봤는데 이 사이트를 알려주더라구요. 또 최근에 읽은 기사에 300개 앱 만들어서 회사탈출한 사람 이야기를 듣고, 열심히 하기로 했습니다. 깐바레! https://www.hackingwithswift.com/100/swiftui 첫날은 뽐뿌에 차서 달려봅니다. Day0. 준비끝Day1. string 길이 함수는 countDay2. 머 없음Day3. enum 선언에 case를 쓰는구나Day4. 머 없음Day5. 머 없음Day6. 아는 내용이지만 루프 돌릴때 1...10 1..Day7. func 펑크가 함수, 튜플로 2개이상 리턴 가능 이름 생략도 가능Day8. 머없음 Day9. 시~~작~~let sayHello .. 2024. 11. 12. react-native setting without Framework 회사에서 열심히 밀고 있는 Mendix의 Native Mobile 빌드를 위해 react-native를 알아봐야 될것 같아서설치를 진행해보도록 했다. https://reactnative.dev/docs/set-up-your-environment Set Up Your Environment · React NativeIn this guide, you'll learn how to set up your environment, so that you can run your project with Android Studio and Xcode. This will allow you to develop with Android emulators and iOS simulators, build your app locally, .. 2024. 11. 7. 이전 1 2 3 4 5 6 7 ··· 42 다음 반응형