Study
-
MVC, MVVMProgramming 2020. 6. 26. 22:21
MVC(Model View Controller) controller 가 입력과 출력을 모두 컨트롤. 컨트롤러에게 많은 역할이 주어졌었음. View(UIView) : 화면에 보여줄 부분 담당 controller(UIViewController) : 사용자 Input, 처리로직, 화면에 뿌리는것도 컨트롤러가 담당 Model : 데이터 담당 // list에서 데이터를 삭제 하는 작업을 할때 //1. 뷰 데이터에서 해당 데이터 삭제 self.productList.remove(at: indexPath.section) // 2. UI update self.productListTableView.deleteSections(IndexSet(integer: indexPath.section), with: .automatic)..
-
[SwiftUI] 동적 데이터를 리스트로 표현Programming/iOS 2020. 6. 26. 14:31
동적 데이터 리스트를 표현하기 위해서는, 데이터가 Identifiable 프로토콜을 따르도록 정의 해야 한다. 또한, 리스트내에서 각 항목을 식별하기 위해 id 라는 이름의 프로퍼티가 객체에 있어야 한다. UUID() 는 각 항목마다 고유한 ID를 자동으로 생성하는데 사용된다. struct ToDoItem: Identifiable { var id = UUID() var task: String var imageName: String } var listData: [ToDoItem] = [ ToDoItem(task: "방청소", imageName: "trash.circle.fill"), ToDoItem(task: "장보기", imageName: "cart"), ToDoItem(task: "공부", imageN..
-
[iOS_MyBag] 설정메뉴 - 저장, 노티등록카테고리 없음 2020. 6. 24. 18:33
작업 진행 사항 텍스트 필드에 시간을 picker로 입력할 수 있도록 변경 설정 옵션 저장시, UserDefaults 로 값 저장 설정된 시간에 알림 뜨도록 연결 노티 알림이 생각보다 작업량, 테스트가 많아질거 같음... 일단 설정페이지없이 앱스토어에 출시하고, 나중에 추가하는 식으로 해야겠다. 다음 작업 타임라인 테스트 애플 개발자 등록 로고, 설명 이미지 만들기 알림 설정 작업 관련 1. 제일 간단한 방법 알림시간을 바꿨을때와 / 상품 추가, 수정, 삭제했을때 지금으로 부터 유통기한이 한달 이내라면 전체 노티를 지우고, 재등록 2. 현재 등록한 노티가 있는지 조회해서 등록하는 방법 (DB or UserDefaults 에 노티uid 를 저장해서 관리) 상품 알림 노티 설정(AppDelegate - 앱 ..
-
[SwiftUI] Image 의 systemName 이란Programming/iOS 2020. 6. 24. 11:03
Image(systemName: "wifi") 이미지를 불러올때, 위과 같이 와이파이 아이콘을 불러올 수 있다. Asstes 에는 wifi 이미지가 들어있지 않은데, 어디서 이미지를 가져오는 것일까? 이것은 바로 Apple 에서 제공해주는 SF Symbol 라이브러리에서 가져오는 것이다. 애플 플랫폼용 앱을 개발할때 사용할 수 있는 2400여가지 벡터 이미지 모음이며, 애플의 샌프란시스코 시스템 폰트를 보완하기 위해 디자인되어 졌다. Apple HIG SF Symbol https://developer.apple.com/design/human-interface-guidelines/sf-symbols/overview/ SF Symbols - SF Symbols - Human Interface Guidelin..
-
[SwiftUI] 상태 프로퍼티Programming/iOS 2020. 6. 23. 23:23
상태 프로퍼티란? 뷰 레이아웃의 현재상태값을 저장하기 위해 사용됨 예) 텍스트필드에 입력된 String 문자열 예제) 텍스트 필드와 바인딩 struct StateProperty: View { // 상태 프로퍼티 선언 @State private var userName = "" var body: some View { VStack { // 뷰와 바인딩 => 바인딩되어 있는 뷰에서 변경이 일어나면, 상태프로퍼티에 자동으로 반영됨 TextField("Enter name", text: $userName) } } } struct StateProperty_Previews: PreviewProvider { static var previews: some View { StateProperty() } } 상태프로퍼티와 뷰를 ..
-
[NodeJS] REST APIProgramming/javascript 2020. 6. 23. 16:31
요청 - HTTP Method 서버 자원에 대한 행동을 동사로 표현 GET : 자원 조회 POST: 자원 생성 PUT: 자원 갱신 DELETE: 자원 삭제 ⇒ 익스프레스 어플리케이션의 메소드로 구현되어 있다! 사용자 요청 curl -X POST 'localhost:3000/users' 요청에 대한 라우팅 설정 const express = require('express'); const app = express(); app.get('/users', function(req, res){ res.send('user list'); }); app.post('/users', function(req, res){ // 유저를 만들고, 만든 유저를 응답 res.send('만든유저'); }); app.listen(3000, ..