일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- wireshark
- TypeScript
- typeorm
- React
- postman
- Network
- python
- Crawling
- algorithm
- S3
- Express
- Scheduling
- mongoose
- MongoDB
- OS
- AWS
- Kotlin
- docker
- OOAD
- node.js
- linux
- Util
- ubuntu
- macos
- Android
- mysql
- sequelize
- css
- HTML
- DATABASE
- Today
- Total
목록
반응형
전체 글 (146)
SW

서론 객체 지향 프로그래밍(OOP) 개발에서 가장 중요한 요소 중 하나는 산출물의 명세화, 시각화, 문서화이다. 우리는 위의 3가지 것들을 수행할 때 모델링 기술과 방법론을 통합하여 만든 표준화된 모델링 언어인 UML(Unified Modeling Language)을 사용하여 설계를 한다. '모델링 언어'라는 단어만 보고 UML을 프로그래밍 언어로 오해하는 사람들이 있지만, UML은 프로그래밍 언어가 아니라 기호, 도식, 도형 등을 통해서 표현하는 것임을 기억해야 한다. 또한, UML은 사물(Things), 관계(Relationships), 다이어그램(Diagrams) 3개의 구성요소로 이루어져 있다. 구성요소 내용 사물 - 추상적인 개념, 주제를 나타내는 요소 - 단어 관점에서 '명사' 또는 '동사'를..

서론 파이썬 언어로 프로그래밍을 할 때 흔히 사용하는 정렬 메소드는 sort(), sorted() 등이 존재한다. 보통은 [1,3,2,5,4] 처럼 집합 안에 단일 숫자 혹은 문자가 들어올 때의 정렬을 하는 경우가 많지만, 가끔 첫번째 요소를 기준으로 정렬을 한 뒤, 첫번째 요소가 같으면 두번째 요소를 다시 정렬하는 경우를 요구하기도 한다. 예를 들어 리스트 내 데이터가 튜플로 구성된 경우를 생각해보자. [(2,1), (4,2), (1,2), (1,3)] 이러한 경우, 튜플의 첫번째 요소를 기준으로 오름차순을 한 뒤, 첫번째 요소의 값이 같다면 두번째 요소를 기준으로 내림차순을 수행하는 로직을 요구할 수 있다. 그래서 이번 글에서는 해당 메소드들을 이용하여 다중 조건으로 정렬을 하는 방법을 간단하게 알아..

서론 이번 글에서는 객체지향 설계의 5가지 기본 원칙 중에서 O에 해당하는 개방 폐쇄 원칙(OCP)에 대한 개념 및 예제를 다루고자 한다. 단일 책임 원칙(SRP)에 대한 개념은 이전 글에서 다루었으므로 해당 원칙에 대한 개념 이해가 필요한 분들은 아래 글을 참고하면 좋을 것 같다. [OOP] 객체지향 설계 원칙 SOLID - SRP(단일 책임 원칙) 이란? [OOP] 객체지향 설계 원칙 SOLID - SRP(단일 책임 원칙) 이란? 서론 객체 지향 프로그래밍을 할 때 좋은 설계를 하는 것은 매우 중요하다. 따라서 사람들은 다양한 디자인 패턴들을 적용하여 개발을 진행한다. 이렇게 다양한 디자인 패턴에 기반하여 설계를 limsw.tistory.com 개방 폐쇄 원칙 - OCP(Open Closed Prin..

서론 객체 지향 프로그래밍을 할 때 좋은 설계를 하는 것은 매우 중요하다. 따라서 사람들은 다양한 디자인 패턴들을 적용하여 개발을 진행한다. 이렇게 다양한 디자인 패턴에 기반하여 설계를 해야 추후에 시스템 유지보수 측면 혹은 시스템을 확장할 때 용이하게 개발을 진행할 수 있다. 이번 글에서는 객체 지향 설계에서 사용되는 다양한 원칙(디자인 패턴) 중에서, 2000년대 초반 로버트 마틴에 의해 정의된 객체지향 설계의 5가지 기본 원칙을 마이클 페더스가 5가지 원칙의 앞글자만 따서 정의한 SOLID 원칙 중에서 S에 해당하는 단일 책임 원칙(SRP)의 개념에 대해서 알아보고자 한다. 단일 책임 원칙 - SRP(Single Responsibility Principle) 단일 책임 원칙은 모든 클래스는 단 하나..

서론 이전 글에서 AlertDialog를 이용하여 선택창을 구현하는 예제를 다루었다. 이번 글에서는 AlertDialog를 응용하여 확인, 취소 2개의 선택지 중에서 선택하는 것이 아니라, 리스트에 들어있는 여러 데이터 중에서 하나를 선택하는 콤보박스 다이얼로그를 구현해보고자 한다. AlertDialog에 대한 개념과 간단한 예시는 이전 글에서 다루었으므로 해당 글에서는 다루지 않으며 추가 이해가 필요한 분들은 아래 글을 참고하면 좋을 것 같다. [Kotlin] AlertDialog를 이용한 경고창(대화 상자) 띄우기 [Kotlin] AlertDialog를 이용한 경고창(대화 상자) 띄우기 서론 이번 글에서는 앱을 사용할 때 사용자에게 팝업 메세지를 띄어줄 필요가 있는 경우에 사용하는 다이얼로그(Dial..

서론 이번 글에서는 앱을 사용할 때 사용자에게 팝업 메세지를 띄어줄 필요가 있는 경우에 사용하는 다이얼로그(Dialog)의 사용 방법에 대해서 간단하게 알아보고자 한다. 다이얼로그는 쉽게 말해서 팝업창이라고 생각해도 무방하며, 다이얼로그의 사용 목적은 서비스와 사용자가 대화 화면을 통해서 상호작용을 하는 데에 목적이 있다. AlertDialog AlertDialog는 사용자에게 경고 메세지를 띄울 때 사용하는 다이얼로그이다. 특히 해당 다이얼로그는 서비스를 사용할 때 사용자에게 선택을 요구하는 경우에 많이 사용된다. 예를 들어, 수정 사항을 저장하시겠습니까? 라는 문구가 있다면 사용자는 예 또는 아니오 두 개의 선택지 중에서 하나를 선택하는 경우가 될 수 있다. 물론, 꼭 선택을 할 때에만 사용하는 것은..

서론 이번 글에서는 코틀린에서 다른 액티비티(Activity)로 데이터를 전달하는 방법을 알아보고자 한다. 액티비티의 데이터 전달은 페이지 이동 시 사용하는 인텐트(Intent) 메서드를 활용하므로 인텐트에 대한 개념이 부족한 분들은 아래 글을 참고하면 좋을 것 같다. [Android] 코틀린(Kotlin) Intent를 이용하여 페이지 이동하기 [Android] 코틀린(Kotlin) Intent를 이용하여 페이지 이동하기 서론 이번 글에서는 코틀린에서 Intent를 사용하여 다른 페이지로 이동하는 기능을 간단하게 구현해보고자 한다. 또한, 간단한 예제이므로 데이터의 이동을 다루지는 않으며 단순히 페이지 슬라 limsw.tistory.com 이번 예제는 메인 액티비티에서 EditText를 통해 2개의 정..

서론 이번 글에서는 코틀린에서 Intent를 사용하여 다른 페이지로 이동하는 기능을 간단하게 구현해보고자 한다. 또한, 간단한 예제이므로 데이터의 이동을 다루지는 않으며 단순히 페이지 슬라이드를 위한 기능만을 구현한다. 프로젝트 생성하기 프로젝트는 Empty Activity를 선택한다. 다음으로 넘어가면 생성할 프로젝트의 구성을 설정할 수 있다. 언어를 코틀린으로 바꿔준 뒤 프로젝트를 생성한다. activity_main.xml 파일 수정하기 버튼을 클릭했을 때 페이지를 이동하는 기능을 구현할 예정이므로 버튼 위젯을 하나 추가했다. 또한 해당 버튼을 코틀린 파일에서 사용하기 위해 id값을 btnNewPage 라는 문자열로 정의했다. MainActivity.kt 파일 수정하기 이제 버튼을 클릭했을 때 페이..

서론 MacOS 환경에서 리액트로 개발을 진행할 때 yarn을 이용하여 라이브러리를 설치하는 경우가 있다. 리액트는 npm 또는 yarn을 사용하여 대부분의 라이브러리를 설치하는데, 가끔씩 yarn을 사용하면 아래와 같은 에러가 발생하는 경우가 종종 있다. zsh: command not found: yarn yarn : 자바스크립트 패키지 매니저로 패키지 및 모듈의 설치를 돕고 의존성을 관리하며 사용중인 패키지 버전을 업데이트 하는 기능을 제공하는 툴이다. 따라서 이번 글에서는 yarn 사용 시 발생하는 위 에러를 해결하는 방법을 살펴보고자 한다. 해결 방법 1 homebrew를 이용하여 yarn을 설치한다. $ brew install yarn [Util] 맥북 Homebrew란? 설치 및 삭제 방법 알..

서론 작년 겨울 즈음에 React Router v6가 나오면서 라우터를 적용하는 방법이 기존의 라우터를 적용하는 방법과 조금 달라졌다. 그래서 이번 글에서는 리액트에서 제공하는 react-router-dom v6 버전 라이브러리를 이용하여 프로젝트 경로에 따라 다른 화면을 보여주는 기능을 구현해보고자 한다. 이번 글의 목차는 다음과 같다. 프로젝트 생성하기 react-router-dom 라이브러리 설치하기 화면 전환을 위한 서브 페이지 생성하기 라우터 적용하기 파라미터 적용하기 프로젝트 생성하기 npx create-react-app router-example router-example 자리에는 프로젝트명으로 정의할 문자열을 입력한다. 프로젝트가 생성되면 해당 프로젝트로 이동 후 프로젝트가 정상적으로 실행..