전체 글

· Swift
1. 단일 책임 원칙 (Single Reponsibility Principle): 한 가지 일에만 집중!한 가지 클래스는 한 가지 일만 해야한다. 이는 클래스를 더 쉽게 이해할 수 있도록 도와준다.예를 들어, 만약 당신이 과일 판매상이라면 과일을 파는 일에만 집중해야 한다. (예를 들어 의류, 음료, 과자 판매 등등에는 관여 X)// 단일 책임 원칙class FruitSeller{ func sellFruit(){ // 과일을 판매하는 로직 }} class PaymentProcessor{ func processPayment{ // 결제를 처리하는 로직 }} 2. 개방-폐쇠 원칙 (Open/Closed Principle): 바꿀 수 있지만, 바꾸지 않아! 클래스나 모듈은 확장에..
· Swift
객체 지향 프로그래밍(Object-Oriented Programming)줄여서 OOP라고 부르기도 한다.프로그램을 어떻게 설계해야하는 지에 대한 방법론 중 하나특징은 다음과 같다.추상화, 캡슐화, 상속, 다형성이라는 개념이 있다.1. 추상화는 객체 지향 프로그래밍의 핵심 개념 중 하나로, 복잡한 시스템을 단순화 하여 중요한 부분을 강조하고 불필요한 부분을 숨기는 것을 의미한다. 클래스나 프로토콜을 통해 데이터와 동작을 추상화하여 필요한 정보만을 노출시키는 것을 포함한다.//추상화class Account{}struct Account {}protocol Account {} 2. 캡슐화는 객체의 상태와 행동을 하나로 묶고, 외부에서 접근을 제한하여 객체 내부의 세부 구현을 숨기는 것을 의미한다. 이를 통해 객..
· Swift
배열(Array) 배열 비었는지 확인 방법var array1 = [1,2,3]let isEmpty: Bool = array1.isEmpty // false 배열에 요소 추가하기1. append : 끝에 추가var array1 = [1,2,3]array1.append(4) //[1, 2, 3, 4]array1.append(contentsOf: [5,6,7]) //[1, 2, 3, 4, 5, 6, 7, 8]2. inset : 중간에 추가var array2 = [1,2,3]array2.insert(0, at: 0) //[0, 1, 2, 3]array2.insert(contentsOfL [10, 100], at : 2) //[0, 1, 10, 100, 2, 3]​ 배열에 요소 변경하기// ..
· Swift
스택,큐큐와 스택은 데이터에 대한 개념이다. Swift에서는 따로 큐와 스택을 지원하지 않는데, Array 등을 이용해 직접 구현할 수 있다.-> QueueFirst - In - First - Out(FIFO)먼저 들어온 값을 먼저 내보내는 구조이다.Swift Queue 구현struct Queue { private var queue: [T] = [] public var count: Int { return queue.count } public var isEmpty: Bool{ return queue.isEmpty } public mutating func enqueue(_ element: T){ queue.append(element) ..
· Swift
멀티라인 텍스트var greeting = """ Hello World """""" 내용 """을 사용하여 표현한다.Swift의 표준 문자열은 따옴표로 시작하고 끝나지만 줄 바꿈을 해서는 안 된다.짧은 텍스트에서는 잘 작동하지만 저장하려는 텍스트가 길다면 보기 힘들어진다. 특히, 다른 사람과 코드를 공유하며 협업 하려눈 경우에는 멀티라인 텍스트를 사용하는것이 효과적이다. 문자 보간법let name = "대성"var greeting = "Hello \(name)" // 출력값 : Hello 대성let = height = 184let myInfo = "My height is \(height)" // 출력값 : My height is 1..
· Team Project
팀 프로젝트 주제: 자기소개 어플리케이션 만들기드디어 길고 긴..? 한 주가 끝났다 처음으로 깃을 통해 협업을 진행해 봤었는데 쉽지 않았다.. 진작에 좀 배워둘걸... 그래도 이번에 프로젝트를 진행하며 많이 사용해보기도 하고 서로 붙잡고 물어보고 해결하고를 반복하니 어느 정도는 괜찮아진 것 같다. 다음 프로젝트 때 열심히 써먹어야지 ㅋㅋ요건 우리 프로젝트의 main.Storyboard인데, 우리는 화면 전환을 위해 Storyboard Reference를 사용했다. 하나의 Storyboard에 모든 것을 병합하면 보기에는 쉽고 한눈에 들어오지만, 충돌 오류가 많이 발생하기 때문이다.(구글링을 통해 얻은 지식 ㅋㅋ)  첫 번째 사진은 저번에 1일차에서 말했듯이 table View로 최초에는 카카오톡 채팅방처..
pockpock
머성이의 개인 스터디