일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 파이썬
- 몽고디비 렘
- 도메인 주도 개발
- 백준 파이썬
- 자바 디자인 패턴
- 백준 12761
- 12761 돌다리
- 12761번 돌다리
- String 함수
- ddd
- hadoop
- domain driven develop
- 고 배열
- http 완벽가이드
- 백준 12761번
- 하둡
- 정렬
- 트리 순회
- 백준 사이트
- http 개념
- 자바
- 백준
- golang
- 도메인 주도 개발 시작하기
- golang struct
- 자바 디자인패턴
- 우분투
- flask
- go
- MongoDB Realm
- Today
- Total
목록분류 전체보기 (211)
개발바닥
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cQ1Ewt/btrxwAu4J2H/MU3APJGid5fKWH9vKEodiK/img.gif)
원문 : https://blog.bitsrc.io/effects-of-too-much-lazy-loading-on-performance-4dbe8df33c37 최근 회사에서 개발 문화를 만들고자 노력중이다.. 그 중에 하나인 일주일에 하나씩 IT 기사를 보고 간단하게 발표하는 시간을 갖고 서로 읽은 내용을 공유하자는 문화이다. 좋은 개발 문화라는 것은 딱 정해진 게 없어서 좋을지 안좋을지 모르겠지만 이렇게 좋은 문화를 만들기 위해서 다양한 시도를 하는 것은 좋은거 같다. 그래서 읽은 기사거리를 정리할 겸 포스팅을 작성하고자 한다. 오늘은 지연 로딩을 적절하게 사용하여 웹 성능 향상에 기여하는 포스팅을 읽고 정리하고자 한다. 지연 로딩이란? 필요한 리소스가 필요할 때까지 리소스를 가져오기를 일시적으로 연기..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dSVY7L/btrxiHbguOc/222ZBxcYJ1pojkW7GHgY80/img.png)
golang에는 여러 웹 프레임워크가 존재한다. 대표적인 웹 프레임워크들로는 gin, beego, Iris, Echo, Fiber ... 등이 있다. 현재 실무에서는 Echo 프레임워크를 사용하고 있습니다. 사용한 이유로는 다른 프레임워크에 비해 잘 정리된 문서로 처음 개발하는 사람들이 쉽게 따라할 수 있도록 문서가 잘 관리 되어 있고, 자신의 미들웨어를 정의하여 사용할 수 있다는 장점이 있습니다. 오늘은 Echo 프레임워크로 간단한 웹 서버를 구축해 보겠습니다. echo 프레임워크 가져오기 $ go mod init # 모듈 초기화 $ go get github.com/labstack/echo/v4#echo v4 가져오기 성공적으로 가져오면 go.mod 파일에 추가된 것을 확인할 수 있습니다. 서버 만들기..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cmuyFz/btrxcaxjpHm/duqjVfKzjqkZAYLku5jra0/img.png)
mongodb write 하는 중 아래와 같이 에러 발생 문제 원인 mongodb 접속한 계정이 해당 db에 대한 write 권한이 없어서 발생하는 문제이다. dev_admin db에 대한 권한이 빠져있기 때문에 해당 유저가 wrtie를 못하는 상황 $ use admin $ show users // 유저에 접근 권한을 확인할 수 있다. 해결 방법 권한을 부여해 주자. $ db.grantRolesToUser('계정명', [{role:'권한', db:'디비명'}]) ex) ryan 계정에 대해서 test_db의 readWrite 권한을 부여한다. $ db.grantRolesToUser('ryan', [{role:'readWrite', db:'test_db'}]) Role 종류 범위 Role 명 기능 데이터베..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cntOaG/btrwrGCwpdC/2LOkSh3rNl3sll1enCfuW1/img.png)
Strapi ? Strapi란 Bootstrap + API를 줄여서 Strapi라고 한다. Headless CMS 툴 중 하나로 컨텐츠와 view를 분리하는것이 Headless CMS의 핵심이다. Strapi는 Node.js 웹 프레임워크 중 하나인 Koa 기반으로 구현되었으며 설치하기 위해서는 node.js 설치가 필요하다. Strapi를 설정에 연결할 DB를 설정하게 되면 자동으로 api를 만들어주고 api를 통해서 컨텐츠에 접근 및 수정이 가능하다. 현재 실무에서 admin 사이트 구축을 위해 strapi를 사용하려고 했으나 아쉽게 무산돼서 사용을 안하고 있지만 사용하기 위해 알아둔 지식들을 공유하면 좋을 거 같아서 포스팅을 하게 됐다. Strapi는 오픈소스이다. 유료도 있지만 무료로 충분히 사용..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bDWdjm/btrwdkUaqFm/IP1CylNkBATGbkNn86PZy0/img.jpg)
Newman이란? Newman은 포스트맨을 cmd/터미널에서 실행시킬 수 있는 러너입니다. 포스트맨에 만들어 놓은 컬렉션과 환경 변수를 지정해서 실행하고 테스트할 수 있습니다. 일반적으로 서버는 윈도우보다는 Unix 계열 OS를 많이 사용하기 때문에 newman을 설치해서 배치성이나 api 자동화 테스트하는 데 사용하고 있습니다. Newman Install 뉴맨을 설치하기 위해서 선행으로 설치되어 있어야 되는 것이 있습니다. node.js (https://nodejs.org/en/download/current/) 링크에 들어가서 os에 맞게 node.js를 설치해주세요. node.js가 설치 완료됐다면 newman을 설치하겠습니다. cmd/터미널을 열고 newman 패키지를 설치합시다. $npm inst..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/CPzHe/btrwahYoIII/PYspkvYrktTK0mNpldKuFK/img.jpg)
개발하다보면 api 호출을 위해서 다양한 도구들을 사용한다. 저는 실무에서 Postman 도구를 사용하여 api 호출 및 api 자동화 테스트 스크립트, 배치성 테스트 등 다양한 방면으로 사용을 하고 있습니다. 참 유용한 도구인거 같습니다. Postman 사용 방법이랑 실무에서 어떻게 쓰이고 있는 공유드리고자 합니다. 포스트맨 설치 아래 링크 들어가셔서 OS에 맞는 설치 파일 다운받고 실행해서 설치해주시면 됩니다. https://www.postman.com/downloads/ Download Postman | Get Started for Free Try Postman for free! Join 17 million developers who rely on Postman, the collaboration p..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bib6kF/btrvymk97St/lvCf6VWCx422jgIcELkENk/img.png)
Go에서 유닛 테스트 작성 방법에 대해 알아보기 전에 유닛 테스트에 대한 개념을 짚고 가겠습니다. 테스트 유형에는 여러 유형이 있지만, 크게 3가지로 단위 테스트, 통합 테스트, 인수 테스트에 대해서 간단하게 알아 보겠습니다. 단위 테스트(Unit Test) 단위 테스트는 응용 프로그램에서 테스트 가능한 가장 작은 소프트웨어를 실행하여 예상대로 동작하는지 확인하는 테스트이다. 일반적으로 클래스 또는 메소드 수준으로 정해진다. 통합 테스트(Integration Test) 통합 테스트는 단위 테스트보다 더 큰 동작을 달성하기 위해 여러 모듈들을 모아 이들이 의도대로 협력하는지 확인하는 테스트이다. 단위 테스트보다 더 큰 범위로 개발자가 변경할 수 없는 부분(ex 외부 라이브러리)까지 묶어 검증할 떄 사용한다..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b83CF0/btrvkGQ9FUU/azFkKY0bLyK9NuKGbg2kF1/img.png)
Go 인터페이스란? 이기종간 기능을 약속하여 서로 다른 기기일지라도 오직 기능적인 관점에서 일관성을 유지하기 위해 사용한다. Go에서 구조체는 필드들의 집합체라면, 인터페이스는 메서드들의 집합체이다. 인터페이스는 타입이 구현해야 하는 메서드 원형들을 정의한다. 인터페이스의 이름은 보통 변수에 ~er이 붙는다. 특정 타입이 인터페이스에서 정의된 메소드를 구현했다면, 해당 타입은 인터페이스를 구현했다고 본다. 인터페이스 선언 type 인터페이스명 interface{ ... 메소드 ... } 인터페이스를 왜 쓰는가? 타입 확장에 유연하게 대응하기 위함 Go 언어에서는 매개변수와 반환이 다르더라도 이름이 같은 메서드는 있을 수 없다. 이러한 문제점을 해결하기 위해서 메소드명을 다르게 해서 해결할 수 있지만, 좋..