일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
31 |
- 생각로그
- react
- CS
- 주간회고
- 생각일기
- nest.js
- WIL
- MongoDB
- Java
- 코테
- Git
- til
- 기록
- javascript
- 회고
- typescript
- Grafana
- 리눅스
- 트러블슈팅
- mongo
- array
- js
- next.js
- 자바스크립트
- mysql
- 네트워크
- 피드백
- mongoose
- 알고리즘
- 생각정리
- Today
- Total
목록전체 글 (285)
코딩일상

오늘 내가 백엔드로써 node.js를 선택한 이유중 하나가 프론트또한 해보고 싶었기 때문이다. 프론트에서 React는 현업 대부분에서 사용하는 만큼 React가 뭐가 좋길래 다들 사용하나 싶어서 한번 공부를 해보았다. 다수가 사용하는데는 그만한 이유들이 있다고 생각하기 때문이다. 일단 가장 특이했던점은 내가아는 html과 js의 관계는 html의 요소와 내용을 우선 만들어 뼈대를 잡아 두고 그 뼈대를 유동적으로 움직일수있게 만들어주는게 JS의 역할로써 배웠는데 React는 이를 반대로 해주게 만들어주는 엔진인것이다. 즉 JS만으로 HTML을 다루겠다는것이다. 과연이게 얼마나 도움이 될지 모르겠지만 일단 조금은 흥미롭다. 여튼 조금씩조금씩 React도 하면서 나만의 전체 웹서비스를 만들어 내가 생각하는 문..

객체지향 프로그래밍을 공부를 하고 있는데 코드의 재활용성을 위해 상속을쓰게 되었는데 상속 만을 사용하다보면 수직적인 관계에서생기는 문제인 부모요소가 바뀌게 되면 자식요소들이 전부 바뀐다는 점이 문제이며 부모별로 가지고 있는 요소들을 가져다 쓰려고 하면 하나의 부모에게서만 상속을 받을수 있어 뭔가 게륵 같은 느낌이다 분명 나쁜것을 아니지만 지속 적으로 사용하다보면 나중에 유지 보수에서 머리가 아플것 같은 느낌.. 다 갈아 엎어야 할수도.. 그래서 이러한 문제를 해결해 줄수 있는 방법중 하나가 Composition을 이용하다는것이다. 내가 이해 한부분에 대해 설명을 하자면 그냥 각각의 클래스를 블럭처럼 가져와서 그 블럭으로 또다른 블럭을 만드는것이다. 근데 여기서 또 문제는 이렇게 만들어진 블럭은 결속력이 ..

트랜젝션?? 여러작업들을 하나로 묶은 단위입니다. 한 덩어리의 작업들은 모두 실행되거나, 실행되지 않습니다. (all-or-nothing) 트랜잭션은 수행중에 한 작업이라도 실패하면 전부 실패하고, 모두 성공해야 성공이라고 할 수 있습니다. 트랜젝션이 필요한 이유?? 예를 들면, A 은행 → B은행으로 돈을 보내기 위하여 출금하고 송금한다고 가정합니다. A은행에서 돈을 출금하고나서 B은행으로 송금하려고 하는데 갑자기 시스템이 멈추면 어떻게 될까요? 돈은 출금되었지만, 송금되지 않고 증발하게 되는 끔찍한 상황이 발생합니다. 트랜젝션은 이런 상황이 일어나지 않도록 보장해줍니다. 트랜젝션 commit & rollback commit commit 연산은 하나의 트랜잭션이 성공적으로 끝났고, 데이터베이스가 일관성..

결론 데이터베이스에서 인덱스를 사용하는 이유는 검색성능을 향상시키기 위해서 이다. 하지만 검색성능을 실질적으로 향상시키기 위해서는 해당 쿼리가 index를 사용하는지 카디널리티, Selectivity 같은 요소들이 고려된 인덱스가 생성되어야 합니다. 일반적인 경우의 장점으로는 빠른 검색 성능을 들 수 있습니다. 일반적인 경우의 단점으로는 인덱스를 구성하는 비용 즉, 추가, 수정, 삭제 연산시에 인덱스를 형성하기 위한 추가적인 연산이 수행됩니다. 따라서, 인덱스를 생성할 때에는 트레이드 오프 관계에 놓여있는 요소들을 종합적으로 고려하여 생성해야합니다. *트레이드오프: 객체의 어느 한부분의 품질을 높이거나 낮추는게, 다른 부분의 품질을 높이거나 낮추는데 영향을 끼치는 상황을 이야기한다 Index란? 사전 의..

절차지향 프로그래밍 { type CoffeeCup = { shots: number; hasMilk: boolean; }; const BEANS_GRAMM_PER_SHOT: number = 7; let coffeeBeans: number = 0; function makeCoffee(shots: number): CoffeeCup { if (coffeeBeans < shots * BEANS_GRAMM_PER_SHOT) { throw new Error("Not enough coffee beans!"); } coffeeBeans -= shots * BEANS_GRAMM_PER_SHOT; return { shots: shots, hasMilk: false, }; } coffeeBeans = 3 * BEANS_GRA..

계산기 함수 만들기 console.log(calculate('add', 1, 3)); // 4 console.log(calculate('substract', 3, 1)); // 2 console.log(calculate('multiply', 4, 2)); // 8 console.log(calculate('divide', 4, 2)); // 2 console.log(calculate('remainder', 5, 2)); // 1 위 조건을 이뤄낼수 있는 함수를 만들어내는것이었다. 어려운것이 아니지만 강사님이 작성한것과 내가 작성한것에 차이를 적으면서 비교를 기록으로 남기려고한다. 내가 만든함수방식 type Tool = 'add' | 'substract' | 'multiply' | 'divide' | 're..

OSI 7 계층이란? OSI 7 계층은 네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것을 말한다. 국제표준화기구(ISO, International Organization for Standardization)에서 네트워크 간의 호환을 위해 OSI 7 계층이라는 표준 네트워크 모델을 만들었다. 그렇다면 왜 계층을 나누었을까? 분명 이유 없이 계층을 나누지는 않았을 것이다. 계층을 분리함으로써 각 계층은 독립적인 역할을 할 수 있다. 역할이 분리가 되면서 문제 발생 시 문제의 현상응 보았을 때 어떤 계층에서 문제가 발생했는지도 파악이 가능하다. 각계층은 하위계층을 사용하고 현계층의 기능을 포함하여 상위 계층에 제공한다. 그래서 계층구조는 위에서 바라보았을 때 아래층이 안 보이는 구조라고 볼 수 있다. 결..

면접을 보고왔다.내가 보아왔던 다른 곳보다 지원자를 대해주는 태도가 좋았다. 뭐 그냥 잘챙겨주고 이런것 으로 쓰는것이 아니라. 나의 이력서를 미리 읽어서 질문을 해주셨고(미리 이력서를 하나하나 봐주신 느낌이 질문에서 느껴짐) 나의 깃험과 블로그 글들을 다들 읽어보셨고 이에 대한이야기들도 해주셨다. 솔직히 첫번째 면접에서는 너무 이런거 없이 백엔드 개발자로써 나를 바라봐주지 않고 그냥 이야기만 하는느낌이어서, 좀 아쉬웠었다. 그렇기에 더 지원한곳에 대한 애착이 면접을 통해서 커졌으며, 생각지 못한 애정을 조금은 가질수 있었다. 어,, 추가로 감사하게도 면접이 끝나고 개인적으로 이력서, 면접, github에 대한 피드백또한 요청을 했는데 그부분들도 괘념치 않게 이야기를 해주셔서 그냥 단순 면접을 본게 아니라..

요즘 node.js 백엔드 채용공고를 보니 TypeScript 를 다룰수있냐라는 부분이 너무 많이 보여 TypeScript 공부해야겠다는 생각이 들었다. 하지만 그냥 무작정 공부를 하는것보다 역시 이유가 있어야 좀 더 내가 공부를 하는데 목표와 동기가 생길것 같아 TypeScript가 왜 생겨 났으며? 뭐가 좋은지에 대해 알아 보았다. 타입스크립트란? JavaScript With Syntax For Types. TypeScript extends JavaScript by adding types to the language. TypeScript speeds up your development experience by catching errors and providing fixes before you even..

입사 면접 과제로 NewsApi를 이용하여 프로젝트를 만들면서 NewsApi 사용법에 대해 정리해보려고 한다.이 API를 통해서 하니 정말 쉽게 전세계 곳곳의 News를 쉽게 가져올수 있어서 좋았다. NewsApi 소개api명답게 news정보를 가져올수 있는 open api 이다. News API – Search News and Blog Articles on the Web“Ascender AI has a mission to apply AI to the media, and NewsAPI is one of our most valuable resources. Ascender is redefining how users interact with complex information, and the NewsAPI ..