일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- Swift
- Xcode
- 내일배움캠프
- Wil
- Flutter
- Storyboard Reference
- 오토레이아웃
- 앱개발
- ios
- 코드스니펫
- 내배캠
- 메모장만들기
- attributedText
- 날짜처리
- pull down button
- 커맨드라인툴
- ListTile
- 스파르타코딩클럽
- 계산기만들기
- 개발자
- UISlider
- userdefaults
- pop up button
- 알고리즘
- strikeThrough
- Storyboard
- URLSession
- DART
- 플러터
- todolist
- Today
- Total
목록전체 글 (49)
이리메라 갖다가
FACTS 프로젝트명 : 영화관 키오스크 프로그래밍 필수 작업 : (1) 키오스크 프로그래밍 기획 (2) 입력받은 숫자에 따라 로직 실행, if/switch/guard 활용, 프로그램 종료, readLine() 함수 사용 (3) 클래스 설계 및 프로퍼티, 메소드 정의, 상속관계 구성 (4) 잔액 비교 기능, n초 이후 코드 실행 기능, 멀티스레드 환경 구축 FINDINGS 문제점 커맨드라인툴에 익숙하지 않음 중복되는 문자열이 팀원마다 각기 다른 형태로 작성되어 혼돈 존재 팀원간 실력차에 따른 역할분담의 어려움 while문 안에 if문, if문 안에 또 while문을 작성하게 되면서 코드 정렬이 안됨 클래스 상속 관계 설계의 어려움(굳이 상속을 받아야 하는지 의문) 입력값에 따라 다음 while문에서 입력..
상수와 변수 상수(Constant) 변할 수 없는 값을 의미하며 let으로 선언한다. 초기 선언 시 타입만 지정한 후 나중에 값을 지정할 수 있다. let 상수:String = "값" print(상수) // 값 변수(Variable) 변할 수 있는 값을 의미하며, 언제든 값을 바꿀 수 있다. 상수와 동일하게 타입만 지정한 후 나중에 값을 지정할 수 있다. var 변수:Int = 0 print(변수) // 0 기본 데이터 타입 부울(Booleans) 참(true)과 거짓(false)으로 나타내며, 논리적인 결과를 도출할 때 사용된다. var someBool: Bool = true print(someBool) // true 정수형(Integers) 정수형 타입이며 Int로 타입을 지정할 수 있다. *양의 정..
팀프로젝트 마무리 작업 1. UX/UI 개선 앱이 아닌 커맨드라인툴 프로그램이지만 그래도 가독성을 높이기 위해 UX/UI 작업을 수행했다. 입력값 상단 개행 및 구분선 추가 영화별 프로모션은 예매차트 선택 이후 안내(결제시 ➡️ 영화선택시 변경) 빠른 예매 상영작 문구 알림형태로 수정 폰트 수정 2. 코드 수정 및 보완 잔고 충전 시 랜덤으로 지급되는 단위가 1 이라서 돈(원)의 단위라고 하기엔 어색해서 천원 단위로 랜덤 금액을 충전할 수 있게 코드를 보완했다. 천원 단위 랜덤 비용 지급 let balance = userBalance[phoneNumber!] ?? Int.random(in: 5...70)*1000 userBalance[phoneNumber!, default: balance] += 0 같은..
과제 수행 중 5초마다 콘솔창에 업데이트 되는 데이터를 프린트 해야하는 선택 요구사항이 있다. 해당 요구사항을 충족하기 위해서는 먼저 우리가 만드려고 하는 프로그램에 업데이트 되는 항목이 뭐가 있는지부터 고민을 해야한다. 우리는 영화관 키오스크이기 때문에 사실 n초 마다 업데이트 해야 할 사항은 딱히 없다. 만약에 해당 프로그램을 어플로 만드려고 하는거면 좌석표라던지 팝업창으로 광고를 띄우는 등의 기능이 있을테지만, 화면이 하나뿐인 콘솔창에서 어떤 데이터를 보여줘야 하는지부터 고민이 많았다. 그래도 해당 기능을 구현하고자 하는 팀원들의 의지로 현재 시간 기준 가장 빨리 예매할 수 있는 상영작 리스트를 업데이트 해주기로 했다. 해당 기능을 구현하기 위해서 멀티스레드를 활용했다. 1. GDC(Grand Ce..
팀 프로젝트 : 키오스크 만들기 1. 프로젝트 개요 Swift 문법을 응용해서 키오스크 프로그래밍 하기 필수 구현 사항 Lv0 - 요구사항별로 상세 기능 기획 - 예외 사항 확인 - 프로젝트 생성 : macOS command line tool Lv1 - 입력받은 숫자에 따라 다른 로직을 실행 - if, switch, guard 문 활용 - 반복문 활용하여 특정 번호 입력 시 프로그램 종료 - readLine() 함수로 값을 입력받기 Lv2 - 클래스 설계 - 클래스들의 프로퍼티와 메소드 정의 - 메소드를 이용해서 Lv1 코드 개선 Lv3 - Lv2 설계 클래스의 상속 관계 구성 - 하나의 객체 리스트로 모든 매뉴 관리 - 리스트 요소 삭제 선택 구현 사항 Lv4 - 입력값 서식 지정 및 재입력 - 현재 ..
알고리즘 스터디 1. 몫 구하기 몫을 구하는 연산자: / return num1 / num2 제한사항을 고려해서 조건문을 추가 작성 import Foundation func solution(_ num1:Int, _ num2:Int) -> Int { if num1 > 0 && num1 0 && num2 Int { guard 1...100 ~= num1, 1...100 ~= num2 else { return 0 } return num1 / num2 } 범위연산자(A...B) : A부터 B까지의 수를 묶어 범위를 표현함(A와 B는 포함) 비교연산자(~=) : 패턴이 매치되는지 확인 📍 처음엔 제한사항을 무시하고 나눈 값을 바로 return 하는 코드로 작성했는데, 테스트 값이 만족할 때는 에러가 없었지만 검증을..