얄팍한 코딩사전
얄팍한 코딩사전
  • 99
  • 4 330 143
03. 템플릿 메소드(Template Method) 패턴
#OODP #디자인패턴 #객체지향
이 영상에서는 템플릿 메소드 패턴을 다룹니다. 이 패턴은 정해진 단계들을 특정 순서에 따라 실행할 때 사용되며, 각 단계는 다양하게 구현할 수도 있습니다. 프랑스 레스토랑에서의 식사 코스를 예로 들며, 각 단계에서 제공되는 요리에 따라 다양한 메뉴 조합이 가능하지만, 순서는 반드시 지켜야 한다는 점을 강조합니다.
그 후, 뜨거운 음료 제조 과정을 예로 들어 추상 클래스와 인터페이스의 차이를 설명하고, 이 과정을 구현한 'Tea'와 'Coffee' 클래스를 공개합니다. 이 메소드들이 어떻게 구현되든 간에, 순서대로 실행된다는 것을 보여줍니다.
또한 파일을 읽어 처리해 다른 형태로 저장하는 프로그램을 사용해 보다 실용적인 예제를 제공합니다. 여기서는 파일을 로드하고, 형식을 확인하고, 알고리즘에 따라 처리하며 결과를 저장하는 메소드들이 선언되며, 이를 'process'라는 템플릿 메소드에 의해 조건부로 실행되는 것을 볼 수 있습니다. 마지막으로, CSV 데이터와 JSON 데이터를 처리하는 클래스를 상속받아 구현하는 방법을 보여줍니다. 이 결과 각각에 대한 출력 내용을 확인할 수 있습니다. 이 제어 흐름은 템플릿 메소드 패턴의 유용성을 잘 보여줍니다.
= = =
🏠 얄코사이트: www.yalco.kr
📖 얄코 도서: www.yalco.kr/book/
🧑‍🏫 얄코 강의: www.yalco.kr/#lectures
🎥 제대로 파는 Git & GitHub: ua-cam.com/video/1I3hMwQU6GU/v-deo.html
🎥 제대로 파는 자바: ua-cam.com/video/iN22AgS_Chk/v-deo.html
🎥 제대로 파는 파이썬: ua-cam.com/video/Da_-qnyPhhc/v-deo.html
🎥 제대로 파는 자바스크립트: ua-cam.com/video/RHoPpjKRT38/v-deo.html
🎥 제대로 파는 HTML & CSS: ua-cam.com/video/TrC2x4N0XqY/v-deo.html
🎥 갖고 노는 MySQL 강좌: ua-cam.com/video/dgpBXNa9vJc/v-deo.html
🎥 반응형 프로그래밍 RxJS 강좌: ua-cam.com/video/KDiE5qQ3bZI/v-deo.html
Переглядів: 1 383

Відео

02. 전략(Strategy) 패턴
Переглядів 1,6 тис.21 годину тому
#OODP #객체지향디자인패턴 #객체지향 전략(Strategy) 패턴은 특정 작업 방식들을 여럿 두고 필요에 따라 갈아끼울 수 있도록 하는 패턴입니다. 주어진 기능을 수행하는 여러 '모드'들을 각각 클래스로 만들어 선택해서 사용합니다. 그 예로, 대형 마트의 계산대에 쇼핑카트들이 '계산'이라는 기능을 여러 방법을 통해 수행하게 되는 것입니다. 전략 패턴을 구현하는 예제 코드를 통해 'PaymentStrategy'라는 인터페이스를 만들고, 이를 구현한 'CreditCardPayment'와 'PayPalPayment' 두 클래스를 만든다. 이 두 클래스는 'PaymentStrategy'라는 범주 안에 들어가며, 각각의 'pay' 메소드를 구현한다. 여기서 중요한 점은 두 클래스의 객체들이 'PaymentS...
01. 파사드(Facade) 패턴
Переглядів 2,7 тис.День тому
#OODP #객체지향 #Facade 객체지향 디자인 패턴(OODP)의 주요 패턴들을 알아보고, 어떻게 사용하는지에 대해 설명하는 강의 내용입니다. 참고로 이 강의는 Java나 C#등의 프로그래밍 언어를 이해하는 사람들을 대상으로 하고 있습니다. 강의 내용은 크게 다음의 패턴을 다룹니다. - Facade 패턴: 복잡한 시스템을 간단히 사용할 수 있도록 한 패턴으로, 서브시스템의 복잡성을 통합 인터페이스로 감춰 클라이언트가 쉽게 이용할 수 있도록 도와줍니다. 예시로, 집안의 여러 전자기기를 스마트홈 시스템을 통해 쉽게 조작하는 사례와, 파일 읽기, 쓰기, 삭제 기능을 통합하는 FileSystemFacade 클래스를 소개하였습니다. 상세한 설명과 실제 코드 예시를 통해 각 패턴의 원리와 사용 방법을 이해하는...
SOLID 원칙 - 객체지향 디자인 패턴의 기본기
Переглядів 3,2 тис.14 днів тому
#객체지향 #코딩 #프로그래밍 이 영상에서는 객체지향 프로그래밍의 SOLID 원칙에 대해 알아봅니다. SOLID 원칙은 효과적이고 견고하며, 유지보수가 용이한 프로그램을 만드는 데 도움이 될 다섯 가지 원칙을 말합니다. 첫 번째, 단일 책임 원칙(SRP)은 각 클래스는 하나의 업무만을 수행해야 한다는 뜻입니다. 두 번째, 개방/폐쇄 원칙(OCP)은 클래스는 확장에는 열려 있고, 변경에는 닫혀 있어야 한다는 것을 말합니다. 세 번째, 리스코프 치환 원칙(LSP)은 자식 클래스가 부모 클래스를 대체할 수 있어야 한다는 곳에 초점을 맞춥니다. 네 번째, 인터페이스 분리 원칙(ISP)은 클래스가 사용하지 않는 메소드를 구현하도록 강요받지 않아야 한다는 원칙입니다. 마지막으로, 의존성 역전 원칙(DIP)은 고수...
코드 없이 알려주는 객체지향 프로그래밍
Переглядів 5 тис.21 день тому
#객체지향 #코딩 #프로그래밍 이 영상에서는 객체지향 프로그래밍의 다양한 분야를 상세하게 살펴봅니다. 우선 객체지향 프로그래밍이 무엇인지, 그 해답을 찾기 위해 우리는 성을 건축하는 업무를 다룹니다. 성을 만들기 위한 다양한 역할과 그 역할을 맡아 수행하는 행동들을 다루며, 이들이 모두 프로그래밍에 어떻게 적용되는지 알아봅니다. 부모 클래스에서 자식 클래스에 정보를 상속하는 방법, 코드의 중복성을 줄이는 올바른 방법, 클래스의 내부 작동에 대한 정보를 숨기는 캡슐화, 그리고 클래스의 속성과 기능을 다루는 방법을 구체적으로 분석합니다. 개발자들은이 '클래스' 개념을 이해하고 객체지향 프로그래밍에서 어떻게 이를 활용할 수 있는지를 배우게 될 것입니다. 이 뒤에 인터페이스와 상속, 그리고 추상 클래스에 대해...
모나드(Monad)는 사실 쉽습니다. - 함수형 프로그래밍 끝판왕 깨기
Переглядів 3,9 тис.Місяць тому
#함수형 #프로그래밍 #코딩 이 영상에서는 함수형 프로그래밍 개념 중 하나인 모나드에 대해 설명합니다. 모나드는 값에 함수를 적용하여 새로운 값이 담긴 상자를 만들어내는 기능을 가진 상자로 이해하면 됩니다. 모나드의 기본 기능으로는 유닛(Unit), 맵(Map), 플랫맵(FlatMap)이 있습니다. 유닛은 주어진 값을 모나드로 감싸는 기능, 맵은 주어진 함수를 실행한 결과를 다시 상자에 담아 내보내는 기능, 플랫맵은 이미 상자에 담긴 값을 반환하는 함수를 처리합니다. 이런 기능들 덕분에 모나드는 프로그래밍에서 편리하게 값을 처리하고, 어려운 문제를 간소화 하는 데 도움이 됩니다. 그러므로, 이해하고 사용할 줄 아는 것은 프로그래밍 실력 향상에 큰 도움이 됩니다. 이 영상을 통해 모나드의 기본 개념과 작...
개발자 얄코 실버버튼 언박싱 ( + 강의 반의반값 할인 이벤트)
Переглядів 1,5 тис.Місяць тому
#유튜브크리에이터어워즈 #코딩 #프로그래밍 = = = 얄코가 드디어 실버버튼을 받았습니다. 얄코 채널을 구독해주시고, 조언과 격려들로 힘이 되어주신 10만 구독자 여러분, 정말 감사드립니다. = = = 🏠 얄코사이트: www.yalco.kr 얄코 도서: www.yalco.kr/book/ 🧑‍🏫 얄코 강의: www.yalco.kr/#lectures 🎥 제대로 파는 Git & GitHub: ua-cam.com/video/1I3hMwQU6GU/v-deo.html 🎥 제대로 파는 자바: ua-cam.com/video/iN22AgS_Chk/v-deo.html 🎥 제대로 파는 파이썬: ua-cam.com/video/Da_-qnyPhhc/v-deo.html 🎥 제대로 파는 자바스크립트: ua-cam.com/vid...
커링 (Currying) - 세련된 함수형 코드 작성하기
Переглядів 4,4 тис.Місяць тому
#함수형프로그래밍 #코딩 #프로그래밍 이번 영상에서는 함수형 프로그래밍의 대표적인 테크닉 중 하나인 currying에 대해 알아본다. Currying는 한 번에 해야 하는 일을 여러 단계로 쪼개 처리하는 코딩 방식이다. 이를 설명하기 위해 샌드위치를 만드는 함수를 예로 드는데, 기존의 방식은 한 함수가 샌드위치의 세 가지 재료(빵, 고기, 채소)를 한 번에 처리하지만, Currying은 이 공정을 각 재료, 즉 인자별로 분할한다. 이를 적용하여 함수를 단계별로 분할해서 실행할 수 있다. 이렇게 함으로써 기존의 공정을 각각의 재료별로 여러 단계와 갈래로 분화해서 처리할 수 있다는 장점이 있다. 이번 영상에서는 이에 대한 자세한 코드 예시와 설명을 제공한다. 다음 영상에서는 함수형 프로그래밍의 가장 까다로...
클로저(Closure) - 죽은 함수의 망령
Переглядів 4,9 тис.Місяць тому
#closure #코딩 #프로그래밍 이번 영상은 JavaScript에서 closure에 대한 개념 설명입니다. closure는 실행이 끝난 함수의 지역 변수나 매개변수가 메모리상에 유지되는 원리입니다. 이때 함수 내부의 함수가 외부 함수의 변수를 참조하는 경우, 외부 함수가 실행을 마친 후에도 이 변수가 메모리에서 삭제되지 않고 유지됩니다. 이를 이용해 실행될 때마다 설정된 값만큼 증가하는 카운터를 만드는 등의 기능을 구현할 수 있습니다. 또한 closure는 함수가 일급 객체이며, 중첩 함수와 렉시컬 스코핑이 지원되는 모든 프로그래밍 언어에서 사용 가능합니다. 포인트는 closure를 이해하면 비공개 필드와 유사한 기능을 갖추며, 메모리를 효율적으로 사용할 수 있습니다. = = = 🏠 얄코사이트: w...
함수형 프로그래밍 - 개발자 내공 업그레이드하기
Переглядів 8 тис.Місяць тому
#코딩 #프로그래밍 #함수형 함수형 프로그래밍은 객체지향 프로그래밍과 함께 프로그래밍 코드를 작성하는 방법 중 하나로, 절차지향적 코드와 비교하여 코드가 간결해질 수 있으며, 다수의 변수를 다루지 않아 에러 발생 가능성을 줄입니다. 또한, 시점에 따라 달라지는 상태를 최소화하여 멀티스레딩 과정에서의 문제를 방지하고 병렬처리의 효율성을 높이는 등이 가능해집니다. 함수형 프로그래밍에서는 순수 함수, 즉 같은 입력값에 대해 항상 같은 결과값을 반환하는 함수를 사용하며, 외부 데이터를 변경하지 않아 예측과 테스트가 용이합니다. 함수형 프로그래밍이 실무에서 가장 많이 사용되는 형태는 고차함수로, 다른 함수를 매개변수로 받거나 반환값으로 내놓는 함수를 말합니다. 이를 통해 복잡한 작업을 손쉽게 처리할 수 있습니다...
Call Stack - 디버깅을 위해 꼭 알아야 할 지식
Переглядів 3,7 тис.Місяць тому
#코딩 #프로그래밍 #디버깅 이 강의에서는 프로그래밍 언어의 핵심 개념 중 하나인 'Call Stack'에 대해 소개합니다. Call Stack은 함수가 호출될 때 그와 관련된 정보가 저장되는 메모리 구조입니다. Call Stack은 Last In Last Out(LILO) 원리에 기반하며, 이는 나중에 들어온 것이 먼저 나간다는 것을 의미합니다. 이 강의에서는 Call Stack을 이해하고 사용하는 것이 왜 중요한지, 그리고 이를 이해하는데 도움이 될 수 있는 예제들을 자세히 살펴봅니다. 더불어, Call Stack이 함수의 호출 순서, 실행과 종료, 그리고 오류 처리에 어떻게 영향을 미치는지까지도 세세하게 설명합니다. 이는 Stack Frame의 개념과 함께 각 함수에서 접근 가능한 데이터 범위인 ...
웹 어셈블리 (WASM) - 자바스크립트의 대체제?
Переглядів 4,2 тис.Місяць тому
#자바스크립트 #WebAssembly #코딩 브라우저에서 동작하는 프론트엔드 어플리케이션의 프로그래밍은 주로 JavaScript로 이루어져 왔지만, Web Assembly의 등장으로 개발자에게 더 많은 선택지가 제공되었습니다. Web Assembly는 프로그래밍 언어가 아니라, C나 Rust 등의 프로그래밍 언어로 작성된 결과가 컴파일된 결과입니다. 이는 브라우저에서 특정 기능을 실행하는데 활용됩니다. Web Assembly는 고성능과 빠른 속도를 자랑하지만, Web API를 직접 다루지 못하며, DOM 조작 같은 기능은 JavaScript를 통해서만 실행될 수 있습니다. 그러나, 복잡한 그래픽 작업이나 대량의 데이터 처리 등 높은 성능을 필요로 하는 작업에는 Web Assembly가 매우 효율적입니다...
AJAX - 우리가 무한스크롤을 사용할 수 있는 이유
Переглядів 4,2 тис.Місяць тому
#AJAX #coding #programming 이번 영상에서는 AJAX의 개념과 작동원리, 구현방법에 대해 알아봅니다. AJAX는 웹페이지에서 필요한 정보만 서버로부터 받아와 화면을 새로 고침 없이 업데이트하는 기술입니다. AJAX가 없던 시대에는 사용자의 모든 행동마다 화면이 깜빡이면서 새로 리로드되었고, 이는 사용자의 불편함과 네트워크 트래픽 낭비를 초래했습니다. 하지만 AJAX의 등장으로 페이지 전체가 아닌 필요한 부분만을 동적으로 업데이트할 수 있게 되어 사용성이 크게 향상되었습니다. AJAX의 구현방법으로는 XMLHTTPRequest와 Fetch API가 대표적입니다. 두 API 모두 웹 브라우저에서 제공하는 Web API의 일부로서, 따로 라이브러리를 설치하지 않고 사용할 수 있습니다. 실...
DOM & CSSOM - 프론트엔드 개발자 필수지식
Переглядів 3,9 тис.2 місяці тому
#DOM #coding #programming 이번 영상에서는 웹 페이지의 작동 방식과 프론트엔드 개발의 핵심 요소인 DOM(Document Object Model)과 CSSOM(CSS Object Model)에 대해 다룹니다. DOM은 HTML 문서를 읽는 브라우저가 HTML의 구조와 내용을 확인하고 해당 구조에 맞는 '객체'를 만들어 내는 것이며, 이 과정을 '파싱'이라 합니다. 모든 HTML 태그, 태그의 속성, 태그 내부의 텍스트 등은 모두 DOM 내부에서 노드로서 자리를 차지하게 됩니다. 이렇게 만들어진 DOM은 마치 나무와 같은 트리 구조를 형성하게 됩니다. 또한, CSSOM은 CSS로부터 생성되며, DOM과 함께 브라우저가 Web 페이지의 구조를 이해하고 렌더링하는데 사용됩니다. 가장 중요...
Message Broker - 카프카와 RabbitMQ를 알아보자
Переглядів 7 тис.2 місяці тому
#Kafka #RabbitMQ #MessageBroker 이번 영상에서는 Message Broker의 두가지 종류인 RabbitMQ와 Kafka에 대해 알아보았습니다. Message Broker는 프로듀서와 컨슈머를 서로로부터 독립시켜 데이터의 유실을 방지하고, 수평적 확장이 용이하도록 만듭니다. RabbitMQ는 메시지들을 큐 형태로 저장합니다. 이 큐는 선입선출 형태로 메시지를 보관하며, 컨슈머가 메시지를 요청할 때마다 큐에서 메시지를 제거합니다. 이런 방식은 'smart broker, dumb consumer'라 불립니다. 반면에 Kafka는 메시지들을 디스크에 로그 형태로 저장합니다. 로그 안의 메시지들은 한번 보내진 메시지가 삭제되지 않으며, 컨슈머는 필요한 메시지를 오프셋을 이용해 접근합니다...
WebRTC - 클라이언트끼리 소통하기
Переглядів 7 тис.2 місяці тому
WebRTC - 클라이언트끼리 소통하기
SSE (Server Sent Events) - 서버가 그대에게 보낸다
Переглядів 4,8 тис.2 місяці тому
SSE (Server Sent Events) - 서버가 그대에게 보낸다
웹소켓을 알아봅시다.
Переглядів 15 тис.2 місяці тому
웹소켓을 알아봅시다.
gRPC - 알고 나면 쉬움
Переглядів 13 тис.2 місяці тому
gRPC - 알고 나면 쉬움
GraphQL - 한 방에 이해하기
Переглядів 7 тис.2 місяці тому
GraphQL - 한 방에 이해하기
SOAP (REST API가 대세가 된 이유)
Переглядів 6 тис.2 місяці тому
SOAP (REST API가 대세가 된 이유)
REST API - 이거 하나로 끝남
Переглядів 15 тис.3 місяці тому
REST API - 이거 하나로 끝남
API가 뭔가요? 가장 쉽게 이해시켜드림
Переглядів 8 тис.3 місяці тому
API가 뭔가요? 가장 쉽게 이해시켜드림
제대로 파는 파이썬 - Python 끝장내기 (대학생 전체강의 반값할인)
Переглядів 12 тис.3 місяці тому
제대로 파는 파이썬 - Python 끝장내기 (대학생 전체강의 반값할인)
[자막 ON 필수] 30분만 귀가 썩으면 리눅스 주요 명령어가 외워지는 노래
Переглядів 11 тис.4 місяці тому
[자막 ON 필수] 30분만 귀가 썩으면 리눅스 주요 명령어가 외워지는 노래
[제대로 파는 HTML & CSS 강의]가 책으로 나왔습니다.
Переглядів 1,7 тис.5 місяців тому
[제대로 파는 HTML & CSS 강의]가 책으로 나왔습니다.
코딩이 처음인 분들을 위한 자바스크립트 - 무료입문강좌
Переглядів 43 тис.8 місяців тому
코딩이 처음인 분들을 위한 자바스크립트 - 무료입문강좌
제대로 파는 자바스크립트(JavaScript) - 업데이트판 + 대학생 전체강의 반값할인
Переглядів 39 тис.9 місяців тому
제대로 파는 자바스크립트(JavaScript) - 업데이트판 대학생 전체강의 반값할인
비트연산자들을 알아보자. (+ 자바에서의 특별한 활용)
Переглядів 6 тис.9 місяців тому
비트연산자들을 알아보자. ( 자바에서의 특별한 활용)
자바스크립트 ES14(2023년 6월 공개)에서 달라진 점들
Переглядів 6 тис.10 місяців тому
자바스크립트 ES14(2023년 6월 공개)에서 달라진 점들

КОМЕНТАРІ

  • @roeniss
    @roeniss 5 годин тому

    (건의) 이 영상에 들어가긴 애매하고 약간 보너스 영상이어야 할 것 같은데... 모나드의 성질이나 법칙에 대해서 "왜 이 규칙이 있어야 하는가", "이 규칙을 어기는 반례는 무엇인가" 같은 내용이 있으면 훨씬 이해하기 쉬울 것 같습니다. 예를 들면 11:18 에서 미토가 얘기한 것처럼 left unit law 와 right unit law 는 (관점에 따라선) 그냥 '당연한거 아냐?' 라는 생각이 드는 부분들입니다. 물론 그렇게 느껴지도록 쉽게 설명해주셨기 때문이겠지만 ㅎㅎㅎ 이 법칙들이 탄생하게 된, 혹은 있어야만 하는 스토리를 설명해주시면 너무 재밌을 것 같습니다! -엥 이거 완전 범주론 아니냐?-

    • @yalco-coding
      @yalco-coding 40 хвилин тому

      감사합니다. 굳이 그걸 넣지 않았던게, 프로그래밍에서는 사실상 그게 의미가 없다시피 합니다. 이 영상에 달린 정도현 님의 댓글에서 나눈 이야기를 살펴보시면 도움이 될 거예요. (요점은 범주론의 모나드와 프로그래밍의 모나드(라고 오버해서 불리는 것)은 사실상 다르다는 것입니다)

  • @yoonkim7111
    @yoonkim7111 11 годин тому

    뭔가 잘 정리된 절차지향 아닙니까 ? ㅠㅠ

  • @user-pp4eo9dt8w
    @user-pp4eo9dt8w 22 години тому

    안녕하세요, 영상 설명 친절하게 단계별로 잘 해주셔서 너무 고맙습니다! 영상이 조금 오래 된 건 알고있지만 문의드립니다!!! 제가 실습을 따라 하고 있는데, 문제가 있어서 문의드립니다. 저 같은 경우엔, m1 mac을 쓰고 있는데, 에러 또는 워닝으로 나는게 몇가지 있어서 문의드립니다. 우선 첫번째는 database The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested 이런 에러가 나서 database Dockerfile에서 From에 FROM --platform=linux/amd64 mysql:5.7 작성을 해봤는데도 계속 같은 에러가 나네요. 구글링으로도 잘 해결이 안되서 혹시 이런 경우는 없으셨는지 문의드립니다. 추가적으로 이건 좀 크리티컬한 문제인데, backend 실행이 전혀 안되네요. running 상태도 Exited(1)로 떠서 몇번이고 재시도를 해도 같은 상태입니다. 로그에서는 ImportError: cannot import name '_app_ctx_stack' from 'flask' (/usr/local/lib/python3.8/site-packages/flask/__init__.py) ImportError: cannot import name '_request_ctx_stack' from 'flask' (/usr/local/lib/python3.8/site-packages/flask/__init__.py) 이렇게 에러가 두개 나는데 flask관련해서 문제인것 같습니다. 해당부분 설정을 어떻게 해야 할 지 구글링을 해봤는데도 어디에서 어떻게 설정할 지 모르겠어서 염치불구하고 댓글 남깁니다!

  • @leerickss
    @leerickss 3 дні тому

    혹시 롱 폴링이 아니라 SSE를 써야할 구체적인 상황이나 둘 사이의 결정적인 차이점이 있나요? 영상 감사합니다

    • @yalco-coding
      @yalco-coding 3 дні тому

      앗... 혹시 영상을 다 보신 게 맞을까요?? (영상에서 다 말씀드리는 내용이라서요 😅)

  • @Dev_pig
    @Dev_pig 3 дні тому

    지렸다

  • @baisai
    @baisai 4 дні тому

    처음에는 오글거려서 계속 껏는데 지금은 중독되어 계속 듣는중입니다. ㅠㅠㅠㅠㅋㅋㅋㅋ

  • @baisai
    @baisai 5 днів тому

    강의의 퀄리티나 학생들을 대하는 것을 볼 때 최선을 다하려고 노력하시는 것 같아서 잘되시면 좋겠습니다. 그리고 항상 도움 많이 받고 있습니다. 감사합니다!

    • @yalco-coding
      @yalco-coding 5 днів тому

      좋게 보아주셔서 감사합니다!!

  • @user-qj5zm5tj3b
    @user-qj5zm5tj3b 5 днів тому

    안녕하세요 얄코님! 이번학기에 객체지향 분석설계에 대해 배웠는데, 이렇게 채널에서 객체지향 패턴에 대해 다뤄주셔서 객체지향에 대해 더 배울 수 있게되어 감사합니다. 질문이 하나 있습니다. java8에서 도입된 interface의 default를 사용한다면 interface에서도 구현을 할 수 있는데 그렇다면 abstract class 대신 interface를 사용하는게 더 바람직하게 되는건가요?

    • @yalco-coding
      @yalco-coding 5 днів тому

      시청해주셔서 감사합니다. 해당 기능을 특정 계열 산하의 클래스들에 적용할지, 상속관계에 상관없이 쓸 수 있는 인터페이스로 만들지에 따라 결정하면 됩니다. 두 문법의 차이를 생각해보시면 판단해볼 수 있습니다. 🙂 이 강의는 자바 베이스지만 가능한 한 한 모든 언어 사용자들이 볼 수 있게 하기 위함이므로 옛 버전을 기준으로 예제들이 많이 작성될거예요.

  • @yalco-coding
    @yalco-coding 6 днів тому

    🎫 얄코 강의 선착순 반값쿠폰 (매주 갱신) bit.ly/yalco-fcfs-coupon 얄코 강좌들 보기: www.yalco.kr/#lectures 얄코 책 보기: www.yalco.kr/#books

  • @bxjsiwuegev
    @bxjsiwuegev 7 днів тому

    5년째 보고있습니다. 모르겠습니다.

  • @user-op5zq1dp5j
    @user-op5zq1dp5j 8 днів тому

    springboot의 STOMP 방식도 설명해주신 기본 원리는 같다고 이해하면 될까요? Publisher가 broker에게 전달하고 subscriber가 받는 형태요.

    • @yalco-coding
      @yalco-coding 8 днів тому

      STOMP는 제가 안 써봤지만, 메시지 브로커와 함께 사용된다고 나오는 걸 보면 둘이 연관은 있지만 같은 것은 아닌 것으로 보입니다. STOMP에도 말씀하신 것 외에 이 영상에 말씀드린 요소들이 모두 들어있는지 생각해보시면 될 것 같습니다.

  • @tisoessiao2036
    @tisoessiao2036 8 днів тому

    축하드립니다. 화이팅!

  • @januaryc
    @januaryc 9 днів тому

    너무 좋은 내용이네요 많이 배웁니다!

  • @user-eu7ob7tk5g
    @user-eu7ob7tk5g 9 днів тому

    간만에 보니 재밌네요 ㅎㅎ

  • @yalco-coding
    @yalco-coding 9 днів тому

    🎫 얄코 강의 선착순 반값쿠폰 (매주 갱신) bit.ly/yalco-fcfs-coupon 얄코 강좌들 보기: www.yalco.kr/#lectures 얄코 책 보기: www.yalco.kr/#books

  • @yalco-coding
    @yalco-coding 9 днів тому

    🎫 얄코 강의 선착순 반값쿠폰 (매주 갱신) bit.ly/yalco-fcfs-coupon 얄코 강좌들 보기: www.yalco.kr/#lectures 얄코 책 보기: www.yalco.kr/#books

  • @user-di6zn5in7f
    @user-di6zn5in7f 10 днів тому

    잘봤습니다 좋은 영상 감사합니다

  • @Hyeonji-hd5tt
    @Hyeonji-hd5tt 10 днів тому

    RabbitMQ가 뭔지 너무 이해안됐는데 감사합니다 !!

  • @user-sg9wn7kh9b
    @user-sg9wn7kh9b 11 днів тому

    인가 ㅎㅎ 어써와 ㅎㅎ 절대안잊혀질거같아요😂😂

  • @user-sg9wn7kh9b
    @user-sg9wn7kh9b 11 днів тому

    인가 ㅎㅎ 어써와 ㅎㅎ 절대안잊혀질거같아요😂😂

  • @yoonkim7111
    @yoonkim7111 11 днів тому

    스마트 홈 , 스마트 카 같은 파사드들을 또 모아서 =>스마트 타운 파사드 같은걸 만들고 또 그런것들을 모아모아모아서...... 결국 무슨일이 벌어지는거죠?

    • @tpag20
      @tpag20 11 днів тому

      버튼 하나로 우주의 끝에 도달하게 됩니다

    • @KimsGambit
      @KimsGambit 10 днів тому

      마지막 절대 파사드의 버튼을 누르면, 당신은 50억년동안 갇히는 대신 현실에서는 그 기억을 지우고 10억을 받게 됩니다..

  • @user-vj6bu9qy6h
    @user-vj6bu9qy6h 11 днів тому

    설명 깔끔하고 이해잘되네용, 감사하빈당

  • @seokjinkim1903
    @seokjinkim1903 11 днів тому

    다음 영상이 기대되네요. 좋은 영상 감사합니다!

  • @erwqsdasq768
    @erwqsdasq768 11 днів тому

    자바를 배우는 것과 객체지향을 배우는건 다른 건가요? 저번에 교수님이 그렇게 말씀하셨는데 잘 이해가 안되더라구요. 자바는 기본적으로 객체지향인데 자바 배우면 객체지향도 따라오는게 아닌가 싶어서요.

    • @yalco-coding
      @yalco-coding 11 днів тому

      아반떼(자바)를 사용하는 방법과 교통법규대로 운전하는 법, 레이싱 스킬(객체지향, 함수형 등 프로그래밍 방법론)은 다른 것과 같습니다. 자바가 객체지향 언어라는 건 객체지향 관련 기능이 제공된다는거지 자바가 곧 객체지향이라는게 아니예요. (요즘 어지간한 프로그래밍 언어는 다 객체지향입니다) 아반떼로 난폭운전도 곡예운전도 할 수 있듯 자바란 언어를 아는 것과 객체지향 프로그래밍은 다른겁니다.

  • @cgn1195
    @cgn1195 11 днів тому

    1등! 항상 감사합니다!!

  • @yz.21
    @yz.21 12 днів тому

    개인적으로는 oop이 가장 사람 사고방식이랑 맞는거같아서 맘에 드는데 대규모 프로젝트에서 꾸덕꾸덕해진 코드 때문에 요즘 트렌드에서는 저물어가는게 보기 안타깝습니다 아마 초보자분들이 oop을 어렵게 느끼는건 코드부터 봐서 그런 것 같네요 이런 영상이 많이 퍼졌으면 좋겠습니다!

  • @user-nb8fr4uy8s
    @user-nb8fr4uy8s 12 днів тому

    1:25:08

  • @user-zm1gj4nx8g
    @user-zm1gj4nx8g 13 днів тому

    어느 펭귄괴물이 떠오르는 목소리네요

  • @user-ih3rm8rn8s
    @user-ih3rm8rn8s 14 днів тому

    그냥 개무시 해요..익스플로러 사용자들은 그러면 아무리 나이 많이 먹은 사람들도 아들이 얘기해줘서 크롬이나 폭스로 갈아 타겠죠...익스플로러에 맞춰주니까 계속 익스플로러에서 못 떠나죠..꼰대 아줌 아짐들이.. 개발자들이 그냥 익스플로러는 개무시하는 방향으로 가면 안될까요?

    • @yalco-coding
      @yalco-coding 11 днів тому

      이 영상은 5년 전 영상입니다. 이제는 익플 신경 안 쓰고 개발합니다 😀

  • @user-ih3rm8rn8s
    @user-ih3rm8rn8s 14 днів тому

    강의 아주 훌륭합니다...감사합니다..

  • @LegWorkout
    @LegWorkout 14 днів тому

    예제들이 아주 훌륭하네요

  • @gtdggtdg
    @gtdggtdg 14 днів тому

    인터페이스와 추상클래스를 이런식의 비유로 접하면 구분하기 쉬운데 막상 적용할 시점이 되면 헷갈리더라구여.. 만약 네이버, 쿠팡, 지마켓, 11번가 등 쇼핑몰에서 내 주문목록들을 크롤링해서 가져오는 역할을 하는 클래스들을 설계한다고 했을때, 공통적으로 사이트에 로그인을 하는 메소드, 주문목록을 가져오는 메소드가 있다면, 이것들을 인터페이스로 정의하는게 맞을지 추상클래스로 정의하는게 맞을지 궁금합니다. 추상클래스인가..?

    • @yalco-coding
      @yalco-coding 14 днів тому

      추상 클래스를 생각하셨다는 건, 그 기능을 특정 족보상의 클래스들에만 적용할거고 그에 속한 모든 클래스가 포함해야 할 메소드이고 필드도 두실 계획이신건가요? 프로그램 설계마다 알맞은 선택을 내리면 됩니다.

    • @gtdggtdg
      @gtdggtdg 14 днів тому

      rest요청시 쇼핑몰 파라미터로 지정 -> 서비스단에서 크롤링하는 객체 생성 -> OrderCollector를 상속받은 AOrderCollector를 생성하면서 크롤링객체 주입 순인데 OrderCollector라는 추상클래스 or 인터페이스에 login(), getOrders() 꼴랑 2개밖에 없긴 하네여

    • @gtdggtdg
      @gtdggtdg 14 днів тому

      네이버OrderCollector, 쿠팡OrderCollector 뭐 이런식으로 구현체들을 만들고 그들은 login() getOrder()를 상속받아 구현하게 될 예정입니다..

    • @yalco-coding
      @yalco-coding 14 днів тому

      말씀주신 바로는 어떤 구조인지, 제가 여쭤본 바에.대한 답을 명확히 알 수 없어요. 추상 클래스와 인터페이스의 문법적 차이, 적용할 수 있는 곳의 차이를 알고 계시죠? 해당 기능을 특정 계열의 최고조상으로부터 독점적 &필수적으로 내려받게 할 건가요 아니면 계열에 상관없이 필요한 클래스에 적용할 수 있게 할 건가요? 그것에 맞게 사용하시면 되는겁니다.

    • @gtdggtdg
      @gtdggtdg 14 днів тому

      제가 중간에 달았던 대댓글 2개가 저한텐 지금 안보이는데 그거에 대해 다시 답을 달아주신거죠? 일단 실제로 코드를 작성하면서 생각해보겠읍니다

  • @user-fh3sr2lr2x
    @user-fh3sr2lr2x 15 днів тому

    좋은 영상 감사합니다. 이해가 쏙쏙 잘됩니다 ㅎ

  • @whatfood
    @whatfood 17 днів тому

    JS 배우는 과정에서 DOM을 글이나 그림으로 이해하기 참 어려웠는데 이제 확실히 이해됐습니다. 너무 감사하게 잘 배웠습니다.

    • @yalco-coding
      @yalco-coding 17 днів тому

      이건 옛날 버전입니다 ㅠㅜ 고정댓글에 링크된 새 버전 영상으로 보시길 권장드립니다. 감사합니다!

  • @GoldStarGreat
    @GoldStarGreat 17 днів тому

    DRY 원칙도 있어요

    • @yalco-coding
      @yalco-coding 17 днів тому

      네, KISS, YAGNI, DRY는 꼭 객체지향 뿐 아니라 폭넓은 분야의 프로그래밍에 적용 가능합니다.

  • @masshunter
    @masshunter 17 днів тому

    유익한 내용이네요. 약간 곁가지 이야기이지만 코드 수정할 때도 비슷한 방식이 필요하더라고요. 코드를 고치다보면 원래 고치려던 부분외에도 다른 고칠 부분도 여기저기 많이 보이게 되는데 그런것들도 손대기 시작하면 코드가 산으로 가더라고요. 고칠덴 아무리 옆에 잘못된 다른 부분이 보이더라도 메모만 해 놓고 원래 고치려던 부분만 고쳐서 테스트해야 되겠더라고요. Single Responsibility와 약간 유사한 개념이지 아닐까요?

    • @yalco-coding
      @yalco-coding 17 днів тому

      말씀주신대로 코드 리펙토링에도 적용될 수 있는 개념입니다. 때문에 애초에 코드를 설계할 때부터 이런 부분들을 유념하지 않으면 이후에 고생하게 되더군요 😰

  • @elwynn144
    @elwynn144 18 днів тому

    정말 감사합니다!

  • @unuj9136
    @unuj9136 18 днів тому

    재밌어요 감사합니다

  • @KimchiGoogle
    @KimchiGoogle 18 днів тому

    알겠나요 왜없어

    • @yalco-coding
      @yalco-coding 18 днів тому

      윽 그거 요즘 안합니다 ㄷㄷ

    • @KimchiGoogle
      @KimchiGoogle 18 днів тому

      @@yalco-coding 님 옛날영상꺼보다 요즘꺼보니까 흑흑 완전 다른사람이...

    • @yalco-coding
      @yalco-coding 18 днів тому

      그때 영상들은 부끄러워서 못 봅니다🥶

    • @KimchiGoogle
      @KimchiGoogle 18 днів тому

      @@yalco-coding 저는 완전 좋았어요 머리에 쏙쏙들어오고 ㅎㅎ 아무튼 영상감사합니다!!

    • @yalco-coding
      @yalco-coding 18 днів тому

      좋게 보아주셔서 감사합니다!!

  • @kyungjunim13
    @kyungjunim13 18 днів тому

    정말 잘 설명해주신거 같습니다. 감샇바니다.

  • @user-fu9ej9ri7j
    @user-fu9ej9ri7j 18 днів тому

    그림이랑 비유가 너무 귀엽고 찰떡같아요 최고 .. !!

  • @sungminyun233
    @sungminyun233 18 днів тому

    유익한 내용 감사합니다

  • @Home-Gavity
    @Home-Gavity 18 днів тому

    하나의 클래스에 기능을 몰아넣지 말고 기능을 분활하라 이런건가 🤔

  • @yalco-coding
    @yalco-coding 18 днів тому

    🎫 얄코 강의 선착순 반값쿠폰 (매주 갱신) bit.ly/yalco-fcfs-coupon 예제코드 확인 : yalco.notion.site/SOLID-Principles-581f158bec174916b5b41df3dd72d250?pvs=4 얄코 강좌들 보기: www.yalco.kr/#lectures 얄코 책 보기: www.yalco.kr/#books

  • @modify_.
    @modify_. 18 днів тому

    30분 영상 만들어주세요….

  • @zxc9761
    @zxc9761 19 днів тому

    감사합니다 !!

  • @user-nb8fr4uy8s
    @user-nb8fr4uy8s 19 днів тому

    1:17:00

  • @1020HeyHo
    @1020HeyHo 19 днів тому

    어떻게 이런 강의를 만드시는거죠? 핵심은 다 들어가 있는데 심지어 이해도 쏙쏙됩니다. 감탄했습니다. 감사합니다.

    • @yalco-coding
      @yalco-coding 19 днів тому

      좋게 보아주셔서 감사합니다!!

  • @user-nb8fr4uy8s
    @user-nb8fr4uy8s 20 днів тому

    1:09:15