본문 바로가기

DEV10

싱글톤(Singleton) - 생성 패턴(Creational Patterns) 가장 많이 사용하는 패턴 중 하나인 싱글톤 패턴은 특정 클래스의 인스턴스가 프로그램 전체에 하나만 존재하도록 보장하는 것이다. 싱글톤 패턴을 사용하면 동일한 개체를 여러 번 생성하지 않고 일관된 접근성을 제공할 수 있다. 클래스가 스스로 자신의 유일한 인스턴스를 관리하고 이에 대해서 전역 접근 지점을 제공하는데 주로 리소스를 공유하거나 구성을 설정하는 데 사용한다.  싱글턴에 대해 간단하게 예시로 설명하면 아파트 단지에 하나만 있는 관리사무소로 이해하면 쉬울 것 같다. 아파트단지에 공통적으로 사용하는 관리사무소는 단지 내에 유일하고, 아파트 주민들은 관리 사무소를 통해 다양한 서비스를 받는다. 이 때문에 아파트 주민들은 관리 사무소를 직접 만들거나 복제할 필요가 없고, 이미 존재하는 관리사무소를 이용하면.. 2024. 5. 10.
디자인 패턴이란 디자인 패턴이란 소프트웨어 설계 과정에서 자주 발생하는 문제들을 해결하기 위해 일반화된 재사용 가능한 솔루션을 제공하는 것이다. 특정 문제에 구체적인 코드를 제시하는 게 아니라 문제를 해결하는 방법의 템플릿을 제공하여 설계시간을 단축하고 코드의 재사용성을 높이는 것이다.  디자인 패턴은 90년대 초쯤에 등장했으며, 프로그래밍 초기에 개발자들이 비슷한 문제에 대해서 반복적으로 비슷하게 풀어가고 이를  표준화하고 체계화하여 개발자가 효율적으로 문제를 해결할 수 있도록 정의되었다  디자인 패턴을 학습하기 위해 정보를 찾다 보면 가장 먼저 GoF라는 단어를 볼 수 있는데 이는 Gang of Four의 약자인데 Erich Gammma, Richard Helm, Ralph Johnson, John Vlissides.. 2024. 5. 10.
Azure AD DS(Active Directory Domain Services) 출처 본인 timetodev.co.kr/blog/172 Azure AD DS(Active Directory Domain Services) 안녕하세요. 엠소프트웨어 김민준입니다. 이전 글 Azure AD(Active Directory)와 Windows AD(Active Directory) 에 이어서Azure AD DS을 직접 Azure Portal에서 사용해보겠습니다.Azure AD(Active Directory) 와 Windows AD(Active Di www.timetodev.co.kr 안녕하세요. 엠소프트웨어 김민준입니다. 이전 글 Azure AD(Active Directory)와 Windows AD(Active Directory) 에 이어서 Azure AD DS을 직접 Azure Portal에서 사.. 2021. 4. 8.
Azure AD(Active Directory) 와 Windows AD(Active Directory) 출처 : timetodev.co.kr/blog/171 (본인) Azure AD(Active Directory) 와 Windows AD(Active Directory) 안녕하세요. 엠소프웨어 김민준입니다. Azure에서는 Azure AD를 이용하여 사용자 및 그룹관리를 합니다. 보통은 이렇게만 생각합니다... 하지만 Azure AD는 그 이상의 관리 서비스입니다. Azure AD에 대 www.timetodev.co.kr Azure에서는 Azure AD를 이용하여 사용자 및 그룹관리를 합니다. 보통은 이렇게만 생각합니다... 하지만 Azure AD는 그 이상의 관리 서비스입니다. Azure AD에 대해 알아보겠습니다. Azure AD는 사용자의 로그인과 클라우드 서비스 권한 부여 등을 담당하는 '사용자 계정.. 2021. 3. 24.
[MASOCON 2019] 컨퍼런스 트랙 - 서버리스를 활용한 분산 처리 DEMO MASOCON 2019 데모 자료 입니다. 발표 내용을 참고해주시면 됩니다. - 사이트 : https://www.imaso.co.kr/masocon2019 - 발표자료 : https://www.slideshare.net/MinJunKim5/masocon-2019-serverless-kimminjun (슬라이드쉐어) https://speakerdeck.com/microsoftware/masokon-2019-seobeoriseureul-hwalyonghan-bunsan-ceori-gimminjun (스피커덱 - 마소콘공식) [MASOCON 2019] Serverless - Kimminjun from Kim Minjun 데모를 무엇으로 준비할지 고민이 엄청 많았습니다. 공공기관의 API는 대부분 한도가 있다보.. 2019. 11. 28.
Pyhton(v3.6)으로 AWS 를 활용한 분산 처리 #2 Pyhton(v3.6)으로 AWS를 활용한 분산 처리 #1 (이전글) Pyhton(v3.6)으로 AWS를 활용한 분산 처리 #2 (현재글) 프로젝트 내용 1. SAP 의 데이터를 취합하여 SAOP로 AWS Lambda 에 I/F 를 진행 2. AWS Lambda 에서 취합한 데이터를 나누어 Amazon SNS(Simple Notification Service) 를 이용함. 3. Amazon SNS에서 또 다른 AWS Lambda 로 분산하여 데이터를 던지고, AWS Lambda 에서는 관세청 (UNIPASS API)를 SAOP 로 호출하여 XML 기반 데이터를 리턴 받음. 4. 리턴 받은 데이터는 SAP 로 I/F 진행함. 5. 동일하게 Web 에서도 조금 더 빨리 확인할 수 있기를 원하는 데이터가 존재.. 2019. 5. 14.
Pyhton(v3.6)으로 AWS를 활용한 분산 처리 #1 Pyhton(v3.6)으로 AWS를 활용한 분산 처리 #1 (현재글) Pyhton(v3.6)으로 AWS를 활용한 분산 처리 #2 프로젝트 내용 1. SAP 의 데이터를 취합하여 SAOP로 AWS Lambda 에 I/F 를 진행 2. AWS Lambda 에서 취합한 데이터를 나누어 Amazon SNS(Simple Notification Service) 를 이용함. 3. Amazon SNS에서 또 다른 AWS Lambda 로 분산하여 데이터를 던지고, AWS Lambda 에서는 관세청 (UNIPASS API)를 SAOP 로 호출하여 XML 기반 데이터를 리턴 받음. 4. 리턴 받은 데이터는 SAP 로 I/F 진행함. 5. 동일하게 Web 에서도 조금 더 빨리 확인할수 있기를 원하는 데이터가 존재할수 있기에 .. 2019. 5. 11.
Visual Studio Code 로 .NET Core 2.1 사용하여 AWS Lambda 만들기 Visual Studio Code 로 .NET Core 2.1 사용하여 AWS Lambda 만들기 1. Visual Studio Code 다운로드 2. 확장 프로그램 설치 - C# for Visual Studio Code 3. 경로 설정 (예) c드라이브/project 4. 새 터미널 실행 5. 터미널에 입력 → dotnet new -i Amazon.Lambda.Templates::* 사용 가능한 아마존 람다 템플릿 리스트가 나온다. 6. 터미널에 입력 → dotnet new lambda.EmptyFunction --name MyProject --profile default --region seoul 위에 나온 EmptyFunction 을 생성 한다 프로젝트 이름과 프로파일 그리고 리전을 입력한다. 7... 2019. 5. 8.
ASP.NET Core 2.0 Preview & VS 2017 Preview 설치 .NET Core 2.0 Preview 설치를 진행합니다. 현재 코어 2.0 버전은 프리뷰 버전입니다. (2017년 07월 기준) https://www.microsoft.com/net/core/preview 접속시 인스톨 방법이 상세하게 설명되어 있습니다. 해당 사이트에서 OS 에 맞는 설치법에 따라 진행하면 됩니다. (Window 기준으로 작성하였습니다.) 코어 2.0버전은 기존에 사용하고 있던 Visual Studio 에서는 사용이 불가능합니다. 반드시 Visual Studio 2017 Preview 를 다운받아 진행하시길 권장합니다. 설치를 진행하고 실행을 하게 되면 우측 상단에 PREVIEW 라고 노출이 되고 있으니 꼭 확인해주세요. (저는 그냥 VS 2017 버전을 설치했다가 한참 고생했습니다... 2017. 7. 12.