본문 바로가기
반응형

전체 글195

Iterator(반복자) 패턴 배열의 요소를 표시하려면 다음과 같이 for 문을 사용한다. for(int i = 0; i < arr.length; i++) { System.out.println(arr[i]); } arr[i]에서 i에 주목해야 한다. 변수 i는 0으로 초기화되고 그 다음 1, 2, 3,...으로 증가하고, 그때마다 arr[i]의 값이 표시된다. 이렇게 i를 늘려 가다보면 배열 arr의 요소 전체를 처음부터 순서대로 검색하게 된다. 여기에서 사용되는 변수 i의 기능을 추상화하여 일반화한 것을 디자인 패턴에서 Iterator 패턴이라고 한다. Iterator 패턴은 무엇인가 많이 모여 있을 때 이를 순서대로 가리키며 전체를 검색하고 처리를 반복하는 것이다. 이름 설명 Iterable 집합체를 나타내는 인터페이스(java... 2024. 3. 6.
git commit시 편집기가 파일을 닫기를 기다리는 중입니다. 에러 git commit을 하니 위와 같은 메세지가 뜨면서 편집기가 열리지 않는다. 아래와 같이 입력하면 해결된다. git config --global core.editor "vim" 2024. 3. 2.
01. UML에 대해서(클래스/시퀀스 다이어그램) UML - UML은 Unified Modeling Language의 약자. - 시스템을 시각화하거나 시스템의 사양이나 설계를 문서화하기 위한 표현 방법 클래스 다이어그램 - UML의 클래스 다이어그램(Class Diagram)은 클래스나 인스턴스, 인터페이스 등의 정적인 관계를 표현 클래스의 계층 관계를 표현한 클래스 다이어그램 인터페이스와 구현 -추상 클래스와의 유사성을 강조하기 위해 인터페이스 이름에 이탤릭체를 사용하였지만, 사용하지 않는 경우도 많음. - 점선의 화살표는 인터페이스와 구현 클래스의 관계를 나타내고 있음. 화살표는 구현 클래스에서 인터페이스로 향하고 있음.(implements) - '갖고 있는' 관계를 집약(aggregation)이라고 함. 어떤 구현이라해도 인스턴스를 갖고 있으면 개.. 2024. 2. 27.
npm run serve permission 에러 1. vue create vue3-cli로 뷰 프로젝트를 생성했다. 2. 성공 후 나온 명령어를 입력하여 실행시키려는데, 계속 permission 에러가 떴다. 그래서 에러나는 폴더들를 생성하거나 권한을 주거나 했는데, 다른 폴더나 파일들 permission이 계속 떠서 이런 방법으로는 해결이 되지 않을 거 같았다. 그래서 혹시나 하는 마음에 실행을 sudo 권한으로 하니 잘 된다. 3. sudo npm run serve 를 입력하면 잘 실행되는 걸 볼 수 있다. (참고: 나는 package.json scripts에 serve를 s를 변경한 상태여서 sudo npm run s를 입력해줬다.) 2024. 2. 27.
zsh: command not found: vue vue create vue3-cli을 입력하니 아래와 같은 메세지가 계속 떴다.zsh: command not found: vue구글링도 해보고, chatGpt도 돌려서 환경변수 설정을 해봤지만 잘 안 됐는데 결국 해결! 아래와 같이 입력해주면 된다.vim ~/.zshrc1) 우선 ./zshrc 편집기를 연다.export PATH=$PATH:/Users/[사용자이름]/.npm-global/bin2) 위 내용을 입력한다. 사용자이름에는 맥북 사용자 이름을 입력하면 된다.source ~/.zshrc3) 새로고침 해준다. 그리고, vue --version을 확인해보면 잘 나오는 걸 확인할 수 있다. 2024. 2. 27.
VO, DAO, DTO, ENTITY 차이점 VO(Value Object) - 목적 : VO는 값을 나타내는 객체로, 주로 불변(Immutable)하게 구현되어 값의 변화를 방지하고 객체 간의 안전한 데이터 전달을 지원한다. - 특징 : - 불변성을 유지하며 주로 값(Attributes)을 가지고 있다. - 주로 도메인 모델에서 사용되며, 동일한 값을 가진 객체는 동등하다고 간주된다. - 비즈니스 로직이나 행위를 가지지 않고 데이터를 보관하며, 값의 일관성을 유지하기 위해 사용된다. public class AddressVO { private final String city; private final String zipCode; public AddressVO(String city, String zipCode) { this.city = city; th.. 2024. 1. 23.
방귀소리 앱 - 리얼한 방귀소리 방귀소리 장난 어플. 4번째 어플. https://play.google.com/store/apps/details?id=com.fartsound.devmango1128&pcampaignid=web_share 방귀 소리 - 장난 앱 - Google Play 앱 재미로 방귀 소리를 낼 수 있어요. play.google.com 2023. 12. 19.
오늘은 뭐 먹지? - 메뉴 추천 앱/어플리케이션 세 번째 프로젝트는 오늘은 뭐 먹지? 라는 메뉴 추천, 음식 메뉴 고르는 어플리케이션이다. 단순하게 몇 백개의 메뉴가 아닌 몇 천개의 메뉴가 세분화 되어 등록되어 있다. https://play.google.com/store/apps/details?id=com.selectmenu.devmango1128 오늘은 뭐 먹지? - 메뉴 추천, 음식 메뉴 고르기 - Google Play 앱 메뉴 선택 장애가 있는 분들을 위한 메뉴 선택 앱! play.google.com 2023. 12. 4.
[mac os] 맥에서 Port 8080 was already in use 처리하기 1. 터미널을 켠다. 2. 아래 명령어를 입력하고, 맥북 비밀번호를 입력하라고 나오면 입력해서 8080 포트를 종료하면 된다. lsof -i tcp:8080 sudo kill -9 47791 오늘은 뭐 먹지? - 메뉴 추천, 음식 메뉴 고르기 - Google Play 앱 메뉴 선택 장애가 있는 분들을 위한 메뉴 선택 앱! play.google.com 2023. 11. 30.
반응형