Dev Log40 Interface 와 Abstract Class 비슷해 보이지만 다른, 그래서 헷갈리는 둘에 대한 이야기입니다. 들어가며코틀린으로 코드를 짜다 보면 한 번쯤 마주치는 고민이 있습니다."이거 인터페이스로 만들까, 추상 클래스로 만들까?" 둘 다 공통된 무언가를 추상화한다는 점에서 비슷해 보이지만, 분명한 차이가 있고 상황에 맞게 골라 쓰는 게 좋은 설계의 시작입니다.오늘은 이 둘의 차이를 알아보고, 언제 무엇을 써야 할지 정리해보겠습니다. 정의Interface인터페이스는 '할 수 있는 것들의 명세'입니다."이 인터페이스를 구현한 애는 이런 걸 할 수 있어야 해"라고 약속하는 것입니다.interface Clickable { fun click()}인터페이스는 메서드의 선언만 있을 수 있고(구현은 선택), 상태를 가질 수 없으며(값을 저장 못 함), 한.. 2026. 5. 25. 인텐트(Intent)는 무엇인가? | 명시적 인텐트와 암시적 인텐트 Intent 는 크게 두 가지 상황에서 나오는 개념이다.1. 안드로이드 코어 프레임워크의 Intent2. 아키텍처 패턴에서의 Intent2번에서의 Intent 개념은 '사용자의 액션(의도)' 그 자체를 의미한다. 이번 글에서는 1번에서의 Intent 에 관해 이야기한다.https://developer.android.com/guide/components/intents-filters?hl=ko 인텐트 및 인텐트 필터 | App architecture | Android Developers인텐트는 Android에서 다른 앱 구성요소의 작업을 요청하는 데 사용되는 메시지 객체로, 활동, 서비스, broadcast receiver 간의 통신을 지원합니다. 이 가이드에서는 명시적 인텐트와 암시적 인텐트를dev.. 2026. 4. 30. [코틀린] 복잡한 문자열 검증, 한 줄로 끝내는 정규식(Regex) 정복하기 개발을 하다 보면 사용자로부터 받은 입력값이 우리가 원하는 형식인지 확인해야 할 때가 많습니다. "이름은 5자 이하인가?", "숫자만 들어왔는가?", "쉼표로 잘 구분되어 있는가?" 같은 질문들 말이죠. 이 모든 조건을 `if`문과 `for`문으로 노가다 하듯 짰다면, 이젠 정규식(Regex)라는 방법을 사용할 수 있습니다.1. 정규식(Regex)이란 무엇인가요?정규식(Regular Expression)은 특정한 규칙을 가진 문자열의 패턴을 정의하는 언어입니다. 방대한 텍스트 중에서 내가 원하는 모양의 글자들만 걸러내는 '정밀 필터'나 '스텐실 도안'이라고 생각하면 쉽습니다.복잡한 로직 없이 패턴 하나만 잘 정의하면, 컴퓨터가 알아서 "이 문자열은 합격!", "저건 불합격!"을 외쳐줍니다.2. 핵심 문법.. 2026. 1. 31. [코틀린] 복잡한 '연속 근무 방지' 로직, Queue(큐) 하나로 깔끔하게 해결하기 이번 미션의 핵심 로직은 "비상 근무표를 짜되, 한 사람이 이틀 연속 근무할 수 없다"는 규칙을 지키는 것이었습니다. 만약 연속 근무가 발생하면, 다음 순번의 근무자와 순서를 바꿔야 합니다. 처음에는 직관적으로 생각나는 대로 코드를 짰지만, 곧 복잡한 `for`문과 `while`문의 늪에 빠지고 말았습니다. 어떻게 이 로직을 개선했는지, 그 리팩토링 과정을 공유합니다.1. 초기 접근: 일단 배정하고, 나중에 고치자 처음에는 단순하게 생각했습니다.순서대로 날짜에 사원을 다 집어넣는다.처음부터 끝까지 훑으면서 "어? 얘 연속이네?" 싶으면 뒤의 사람과 바꾼다.바꾸고 나서 또 겹칠 수 있으니, 문제가 없어질 때까지 `while(true)`로 계속 검사한다.// 개선 전 코드 (의사 코드)while (hasCo.. 2026. 1. 7. "코드는 완벽한데 왜 빌드가 안 될까?" 윈도우 개발자가 꼭 알아야 할 Gradle 트러블슈팅 개발을 공부하다 보면 코딩보다 '환경 설정'이 더 어렵다는 말을 실감하게 됩니다. 특히 맥(Mac) OS 위주의 강의나 문서를 보며 윈도우(Windows)에서 실습하다 보면, 예상치 못한 에러들을 마주하게 되죠. 오늘은 우아한테크코스 프리코스 과제를 진행하며 겪었던, "분명히 코드는 맞는데 테스트가 실패하거나 아예 실행조차 안 되는" 기이한 현상들과 그 해결 방법을 정리해보려 합니다. 1. 공포의 `ClassNotFoundException`과 OneDrive 가장 저를 괴롭혔던 건 멀쩡히 존재하는 테스트 파일(ApplicationTest)을 찾을 수 없다는 에러였습니다.Caused by: java.lang.ClassNotFoundException: oncall.ApplicationTest 패키지 경로도 .. 2026. 1. 7. [우테코 | 안드로이드] 코틀린 최종 코딩테스트 준비, 과제 모음 이번 우테코 8기를 준비하며, 과제와 과제 요구사항을 모아보았습니다.찾아보니 안드로이드 기수는 4기부터 생긴 것 같더라고요. 4기와 5기는 자바 베이스에 코딩을 했던 것 같아서 최근 기수인 6기와 7기 문제를 모아봤습니다.1. [7기 최종] 📙 출석부 7기 문제는 구글링으로 찾은 pdf 가 있어 이를 첨부합니다.https://github.com/woowacourse-precourse/kotlin-attendance-7 GitHub - woowacourse-precourse/kotlin-attendance-7Contribute to woowacourse-precourse/kotlin-attendance-7 development by creating an account on GitHub.github.com.. 2026. 1. 6. 이전 1 2 3 4 ··· 7 다음