Si Jong Tech Blog
close
프로필 배경
프로필 로고

Si Jong Tech Blog

  • 분류 전체보기 (254)
    • ◽️ Programming (254)
      • T I L (93)
      • Swift 문법 (23)
      • UIKit (18)
      • SwiftUI (13)
      • TCA (7)
      • RxSwift (7)
      • iOS (44)
      • 회고 (5)
      • ◽️ Algorithm (32)
      • ◽️ Computer Science (12)
  • 홈
  • 태그
  • 방명록

제일 작은 수 제거하기

문제 설명 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다. func solution(_ arr:[Int]) -> [Int] { guard arr.count > 1 else { return [-1] } let minNumber = arr.min() let result = arr.filter { $0 != minNumber } return result } guard 를 통해 arr 배열의 숫자가 1개 이하일 경우 [-1] 을 출력하도록 작성한 후 arr 배열의 최소..

  • format_list_bulleted ◽️ Programming/◽️ Algorithm
  • · 2024. 3. 12.
  • textsms

접근 제한자 , mutating , 클로저 , 고차함수

접근제한자 클래스, 구조체, 열거형, 포로토콜 등 접근을 제어하는데 사용된다. Open: 가장 넓은 접근 수준을 가지며, 해당 멤버가 선언된 모듈 외부에서도 상속하고 재정의할 수 있다. Public: 해당 멤버가 선언된 모듈은 외부에서도 접근할 수 있지만, 재정의는 할 수 없다. 일반적으로 프레임워크의 API 로 공개될 때 사용한다. Internal : 기본 접근 수준이며 동일한 모듈 내에서만 접근이 가능하다. File-private: 같은 소스 파일 내에서만 접근할 수 있습니다. 다른 소스 파일에서는 접근할 수 없습니다. Private: 가장 제한적인 접근 수준을 가지며, 같은 선언 블록내에서만 접근할 수 있다. 이러한 접근 제한자는 코드의 가시성과 모듈간의 의존성을 관리하고 코드의 안전성과 유지 보수..

  • format_list_bulleted ◽️ Programming/T I L
  • · 2024. 3. 11.
  • textsms

없는 숫자 더하기

문제 설명 0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. import Foundation func solution(_ numbers:[Int]) -> Int { var counts = Array(repeating: 0, count: 10) for number in numbers { counts[number] += 1 } var sum = 0 for i in 0..

  • format_list_bulleted ◽️ Programming/◽️ Algorithm
  • · 2024. 3. 11.
  • textsms

프로퍼티 옵저버 (didSet , willSet) , 타입 캐스팅 (is , as)

프로퍼티 옵저버 프로퍼티 옵저버는 프로퍼티의 값이 변경될 때 특정한 동작을 수행할 수 있게 해주는 기능이다. 프로퍼티의 값이 변경되기 전 (willSet) 과 변경된 후 (didSet) 에 호출됩니다. 이를 통해 값의 변화를 감지하고 추가 작업을 수행할 수 있다. didSet 프로퍼티의 값이 변경된 후에 호출되는 옵저버, 이 옵저버는 이전 값과 새로운 값 사이의 변화를 감지하거나, 값에 따른 추가적인 동작을 수행할 수 있다. 매개변수로는 변경되기 전의 값이 전달된다. willSet 프로퍼티의 값이 변경되기 전에 호출되는 옵저버, 이 옵저버는 새로운 값이 어떤 것인지 파악하거나, 변경 전 상태를 저장하는 등 작업을 수행할 수 있다. 매개변수로는 변경될 값이 전달된다. class StepCounter { v..

  • format_list_bulleted ◽️ Programming/T I L
  • · 2024. 3. 10.
  • textsms

코드로 오토레이아웃 함수 모아 놓기

오토레이아웃 잡을때 class ViewController: UIViewController { let emailTextFieldView = UIView() override func viewDidLoad() { super.viewDidLoad() makeUI } func makeUI() { emailTextFieldView.backgroundColor = .darkGray view.addSubview(emailTextFieldView) emailTextFieldView.translatesAutoresizingMaskIntoConstraints = false emailTextFieldView.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: 30..

  • format_list_bulleted ◽️ Programming/UIKit
  • · 2024. 3. 9.
  • textsms

UIKit 사용법

버튼의 타이틀 변경 button.setTitle("my text here", forSate: .normal) 레이블 텍스트 변경 label.text = "안녕하세요" 버튼의 테두리 둥글게 하는법 @IBOutlet weak var calculateButton: UIButton! // 버튼 변수 설정 후 calculateButton.clipsToBounds = true calculateButton.layer.cornerRadius = 5 버튼 누르면 이전 내용으로 돌아가는 메서드 @IBAction func backButtonTapped(_ sender: UIButton) { dismiss(animated: true, completion: nil) }

  • format_list_bulleted ◽️ Programming/UIKit
  • · 2024. 3. 9.
  • textsms

텍스트 필드 ( Text Field )

텍스트 필드 사용법 textField.keyboardType = UIKeyboardType.emailAddress // 텍스트필드의 키보드 스타일 textField.placeholder = "이메일 입력" textField.borderStyle = .roundedRect // 텍스트필드의 선 스타일 textField.clearButtonMode = .always // 텍스트삭제 버튼 textField.returnKeyType = .go // 엔터의 형태 설정 텍스트 필드 선택 함수 정리 // 텍스트필드의 입력을 시작할때 호출 되는 메서드 ( 시작할지 말지 여부 허락 하는 것 ) func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool { re..

  • format_list_bulleted ◽️ Programming/UIKit
  • · 2024. 3. 9.
  • textsms

핸드폰 번호 가리기

문제 설명 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. func solution(_ phone_number: String) -> String { guard phone_number.count >= 4 else { return phone_number } let number = phone_number.index(phone_number.endIndex, offsetBy: -4) let remove = String(repeating: "*", count: phone_number.coun..

  • format_list_bulleted ◽️ Programming/◽️ Algorithm
  • · 2024. 3. 8.
  • textsms

델리게이트 패턴 , 텍스트 필드

델리게이트 패턴은 객체 지향 프로그래밍에서 자주 사용되는 디자인 패턴 중 하나이다. 하나의 객체가 다른 객체의 동작을 직접 구현할 필요가 없을때 객체 간의 결합도를 낮추고 유연성을 높이고자 할 때 이벤트 처리, 데이터 소스 및 테이블 뷰와 같은 UI 구성 요소에서 사용자 이벤트를 처리할 때 등 델리게이트(Delegate) : 델리게이트는 특정 작업을 수행하기 위해 다른 객체에게 일부 책임을 위임하는 객체(대리자) , 델리게이트는 프로토콜을 준수하여 정의되며, 메서드를 호출하여 작업을 수행한다. 델리게이트 프로토콜(Delegate Protocol): 델리게이트를 구현하기 위해 정의된 프로토콜 이다. 델리게이트 프로토콜은 델리게이트 객체가 구현해야 하는 메서드를 정의하고 있다. 델리게이트 객체(Delegat..

  • format_list_bulleted ◽️ Programming/T I L
  • · 2024. 3. 7.
  • textsms

음양 더하기

문제 설명 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요. import Foundation func solution(_ absolutes:[Int], _ signs:[Bool]) -> Int { var plusValue = 0 for i in 0..

  • format_list_bulleted ◽️ Programming/◽️ Algorithm
  • · 2024. 3. 7.
  • textsms
  • navigate_before
  • 1
  • ···
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • ···
  • 26
  • navigate_next
프로필 로고

Si Jong Tech Blog

전체 카테고리
  • 분류 전체보기 (254)
    • ◽️ Programming (254)
      • T I L (93)
      • Swift 문법 (23)
      • UIKit (18)
      • SwiftUI (13)
      • TCA (7)
      • RxSwift (7)
      • iOS (44)
      • 회고 (5)
      • ◽️ Algorithm (32)
      • ◽️ Computer Science (12)
최근 글
인기 글
최근 댓글
태그
  • #project
  • #swift
  • #IOS
  • #오블완
  • #알고리즘
  • #티스토리챌린지
  • #uikit
  • #tableView
  • #TIL
  • #MVC
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바