본문 바로가기

분류 전체보기42

TIL - 23.12.08 오늘은 어제까지 진행했던 과제 코드를 제출했다. 그리고 얼마 지나지 않아 과제 해설 영상이 올라왔다. 과제 해설 영상에선 생각보다 간단하게 코드를 구성했다. fun main(){ // 더하기 val addCalc = Calculator(AddOperation()) println("10 더하기 20 결과는 : ${addCalc.operate(10, 20)}입니다.") // 빼기 val subsCalc = Calculator(SubstractOperation()) println("10 빼기 20 결과는 : ${subsCalc.operate(10, 20)}입니다.") // 곱하기 val mulCalc = Calculator(MultiplyOperation()) println("10 곱하기 20 결과는 : ${.. 2023. 12. 8.
TIL - 23.12.07 오늘은 오전에 학교를 다녀온 탓에 코딩할 시간이 평소보다 적었다... 그래도 내일이 과제 제출일이므로 마저 하던 과제를 끝내고자 했다. lv4 파트를 구현했다. Lv4 : AddOperation(더하기), SubtractOperation(빼기), MultiplyOperation(곱하기), DivideOperation(나누기) 연산 클래스들을 AbstractOperation라는 클래스명으로 만들어 사용하여 추상화하고 Calculator 클래스의 내부 코드를 변경합니다. Lv3 와 비교해서 어떠한 점이 개선 되었는지 스스로 생각해 봅니다. hint. 클래스간의 결합도, 의존성(의존성역전원칙) lv4는 추상화 클래스를 이용하는 코드를 작성하는 문제였다. 추상화 클래스는 찾아보니 강의때 들은 인터페이스와 유사했.. 2023. 12. 7.
TIL - 23.12.06 오늘은 kotlin 3주차 후반, 4,5주차 강의까지 모두 수강했다. 원래라면 강의 내용을 이해하기 위해 천천히 곱씹어 보면서 이해하는 방식으로 했지만 앞으로 제출해야 할 과제도 있기 떄문에 일단 나머지 강의는 흐름을 이해하는 식으로 수강했다, 3주차 후반 내용은 class의 상속과 오버라이딩, 오버로딩, 인터페이스에 관한 내용이였다. 4, 5주차엔 접근 제한자, null 세이프티, 배열, 예외처리, 확장함수, 쓰레드, 코루틴에 관한 내용이였다. 강의 내용은 대체로 기본 구조만 알려주는 식이라 나중에 제대로 복습을 해야 할 필요성을 느꼈다. 오늘부터 금요일까지 제출해야 할 과제를 시작했다. 과제 내용은 계산기 구현이였는데, kotlin의 클래스가 어떤식으로 사용되는지, SOLID원칙이 어떤 식으로 적용되.. 2023. 12. 6.
TIL - 23.12.05 오늘은 Kotlin 3주차 강의를 수강했다. 3주차부터 본격적으로 kotlin문법에 대해 배운다. 예전에 배웠던 C++이 생각나는 내용이였다. 1. 메소드 메소드는 클래스 내에서 사용하는 함수라고 생각하면 될 거같다. fun add(num1:Int, num2:Int){ println("${num1} + ${num2} = ${num1+num2}") } 이런 형태로 사용한다. 2. 클래스 kotlin은 객체지향 언어(OOP)이다. 모든 코드를 클래스 형태로 객체화 시킬수 있으며 객체들간의 결합을 통해 유지보수를 쉽게 할 수 있다. OOP의 5대 키워드는 클래스, 추상화, 캡슐화, 상속, 다형성이다. 클래스는 각 요소별 설계도라고 볼 수 있다. 하나의 파일 형식으로 저장한다. 클래스는 기본적으로 정보(프로퍼티.. 2023. 12. 5.