[Tistory] [개발지식] 라이브러리 vs 프레임워크

📌 라이브러리단순 활용가능한 도구들의 집합개발자가 필요에 따라 라이브러리를 선택하여 사용할 수 있다.예시TensorFlow: 머신러닝과 딥러닝을 위한 Python 라이브러리Pandas: 데이터 분석과 조작을 위한 Python 라이브러리Numpy: 수치 계산을 위한 Python 라이브러리jQeury: HTML 문서 탐색 및 조작, 이벤트 처리, 애니메이션, Ajax를 쉽게 처리할 수 있게 하는 Javascript 라이브러리Lodash: JavaScript 유틸리티 라이브러리로서 배열, 객체, 문자열 등 다양한 작업을 편리하게 처리할 수 있게 한다.  📌 프레임워크프레임워크는 코드를 프레임에 맞춰서 개발한다.ex) vue에서는 파일을 만들 때 .vue 라는 형태에 맞춰 사용한다.프레임워크는 프레임을 따라..

[Tistory] [CS 지식 공부] POP와 OOP의 차이에 관하여

서론 안녕하세요~! 개발자 제라스입니다!👋🏻🤖👋🏻 이번주에 제가 P.O.P를 학습하겠다고 무지무지 다짐했거든요? 그래서 열심히 포스팅을 쓰다가… 갑자기 또 ‘포스팅 ADHD’에 걸려버렸습니다…껄껄 https://xerathcoder.tistory.com/271 [Swift 지식] Swift에서 프로토콜이 클래스를 상속한다고? 서론 안녕하세요! 라스입니다~!👋🏻🤖👋🏻 (라디오 스타 아닙니다.) 제가 이번주에 P.O.P(Protocol Oriented Programming)에 대한 포스팅을 쓰고 있었는데요… D.D.D(the Deadly Diamond of Death)를 공부하면서 xerathcoder.tistory.com 요런 글을 써버렸죠 ㅎㅎㅎ 꽤나 짧은 시간에 딥다이브를 해보았는데 나름 재..

[Tistory] 3-way handshake, 4-way handshake

3-Way Handshake 는 TCP의 접속,4-Way Handshake는 TCP의 접속 해제 과정이다. 3-way handshake클라이언트, 서버 간의 논리적 접속을 성립하기 위해 사용하는 연결 확인 방식클라이언트가 서버에 연결 요청 (SYN 단계)SYN Flag = 1Sequenct Number에 시퀀스 번호 a(ISN : 임의의 랜덤 숫자) 함께 전송서버가 연결 허락 (SYN+ACK 단계)SYN Flag = 1, ACK Flag = 1Acknowledgment Number(a + 1), Sequenct Number(다른 ISN b) 전송클라이언트와 서버 연결 설정 (ACK 단계)- ACK Flag = 1- Acknowledgment Number(b + 1) 전송- max segment size ..

[Tistory] Today I Learned 2024.07.18

최종 프로젝트 3일차  기술면접 예상 질문 연습     브라우저의 렌더링 과정에 대해서 설명해주세요.의도 : 단순히 자바스크립트, 리액트 등의 코딩 기술이 아니라 전반적인 프론트엔드 지식을 가지고 있는지 확인!?!?내 답변 : 브라우저의 렌더링 과정은 HTML 파싱 – CSS 파싱 – COM트리와 CSSOM트리 결합 – 레이아웃 계산 – 페인팅 단계로 이루어집니다.HTML을 파싱해 COM트리를 만들고, 비슷하게 CSS를 파싱해 CSSOM트리를 만듭니다.이후에 두 트리를 결합하여 렌더트리를 생성하고 페이지에 렌더링 하기 위해 필요한 공간을 계산합니다.마지막으로 레이아웃에 따라 화면에 요소를 페인팅합니다.쿼리 스트링은 주로 어디에 사용하셨나요?의도 : 쿼리 스트링의 개념과 작동 방식에 대해 이해하고 있는지 ..

[Tistory] #기본기20_콜스택, 이벤트 루프, 비동기에 대하여

이벤트 루프는 비동기 함수를 태스크 큐로 보내고 콜스택이 비워지면 태스크큐에서 콜스택으로 이동한다고 한다. 콜스택에 먼저 스택이된 함수부터 실행이 되고 그 이후에 비동기 함수들이 실행된다는 뜻이다. 함수 실행순서를 1. 비동기 함수 2. 일반 함수 3. 일반 함수 로 실행해도 2->3->1 순으로 실행이 된다. // 지연시키는 함수 function delay(n){ for (let i = 0; i < n; i++) { console.log('delaying...'); } } // 콜스택 함수(일반함수) function a() { delay(1000) console.log('a is activated!'); } // 콜스택 함수(일반함수) function b() { console.log('b is acti..

[Tistory] 점 뺀 후 흉터가 남지 않게 재생크림으로 관리한 후기

어릴 때부터 별명이 점순이였을 정도로 점이 많은 편이었는데요. 피부과를 가서 점을 빼고 난 후 관리를 안 했더니 하나, 둘 다시 점이 생기는 거예요. 다시 점을 빼기 전 원인과 방법을 찾아 점 뺀 후 관리를 하기 시작했더니 더이상 점이 생기지도 않고 피부결이 매끈하고 환해보여서 요즘 너무 행복해요.  먼저 점 뺀 후 관리하기 전과 후 사진 보여드릴게요. 안녕하세요. 저는 어릴 때부터 별명이 점순이였을 정도로 점이 많았어요. 텔레비전에서 연예인들을 보거나 친구들, 당장 가족인 언니만 봐도 저와 달리 점 하나 없는 매끈한 피부를 가지고 있어서 얼마나 부럽던지.. 친구들이 장난친다고 점순이라고 부를 때면  장난인 걸 알지만 창피하고 스트레스가 되더라구요. 조금 큰 뒤로는 메이크업으로 가리려고 많은 노력을 했던..

[Tistory] Ubuntu에 Apache 앱 서버 설치

집에 있는 안 쓰는 컴이 있어서 우분투 서버로 만들어 연습용 웹페이지를 띄워볼까 싶었다동네 컴퓨터 수리점에서 3만원짜리 고물 모니터랑 랜케이블 사옴  많은 분들이 정보를 상세하게 공유해 주셔서 새삼 감동약간의 오류와 함께 순조롭게 진행하고 있지만, 아직 개념도 안 잡혔고 몇 번 더 해봐야 이해할 수 있을 것 같다아래는 도움 된 링크들  목표는 Gpt보단 직접 검색으로 울집 컴에 리눅스 서버 구축, 웹페이지 플라스크로 띄우고 CRUD 구현 이제 DB 셋팅하고 웹앱만 만들면 됨 (? 주말까지 할 수 있을까..)아직까진 뭐가 뭔지 몰라도 재밌음 그런데 오래된 컴이긴 하지만 멀쩡한 걸 버릴 뻔 했다 ;램 문제인지 슬롯 문제인지2번째 램 슬롯을 비우니까굉음도 안 나고 뭐든지 된다 ㅋㅋ라즈베리파이 귀여워서 갖고 싶..

[Tistory] 7/1 ~ 7/7

7/1리스트 불러올 때, 원본 그대로 불러오면 당연히 용량을 너무 많이 불러옴. 이미지 리사이징을 해야하는데,나는 multipart를 사용 안하고, presigned url을 사용해서, 자바 코드로 서버에서 리사이징이 불가능함. (애초에 서버리스로 설계해서 서버를 통해 리사이징 한다는게 말이 안됨.) 그래서 aws lambda@edge를 사용해 원본 origin s3버킷에 접근해서 이미지를 받아올 때, cloud front에 캐싱이 되는데, 이 받아올 때 리사이징을 해서, cloud front에는 캐싱된 이미지를 저장하면 처음 요청시에만 좀 걸리고, 이후 요청부터는 캐싱 + 리사이징으로 인한 용량 저하로 매우 대단한 효과 나타남. !그런데 계속 안되다가,온갖 재시도 끝에 aws lambda@edge와 a..

[Tistory] AWS IAM 계정으로 배포하기 (1)

학교 동아리(Devkor)로부터 AWS IAM 계정을 받았다.해당 계정을 통해 현재 이용 가능한 것은 EC2, RDS, S3이다.현재 내 계정으로 돌아가고 있는 EC2와 RDS를 옮기고 CI/CD를 구축하고자 한다. 1. 환경변수 수정일단 application.yml의 환경변수를 수정해준다. DB 정보 관련인텔리제이에 RDS의 정보를 입력하여 연결해준다. 할당 받은 RDS에 database가 없어서 만들어준다.연결한 RDS의 콘솔창을 연 후 다음과 같이 입력하여 실행한다.create database kodaero; 위 인텔리제이 창에 있는 URL에 /kodaero를 추가해서 application.yml의 DB_URL에 저장해준다.username과 password도 수정한다. 그 외 기존 나의 ec2 ip..

[Tistory] [MAC] Elastic Serach이란? Elastic Search/Kibana 설치 및 기본 셋팅

[Elastic Search란?] 간단히 말하면, 다양한 데이터를 위한 검색 엔진이다. 검색엔진이란 무엇일까? 우리가 흔하게 알고 있는 관계형DB와 비교해서 생각해보자. 관계형 DB는 테이블 안에 행, 열에 맞게 데이터를 쪼개서 넣고 쿼리문으로 데이터를 선별한다. 이와 비교해서 검색엔진은 보다 유연하게 데이터를 넣고, 검색할 수 있다. [Elastic Search의 필요성] 시스템을 운영하다 보면, 운영 안정성 향상 및 이슈 대응을 위해 로그를 수집하고 분석해야 하는 일이 잦다. 그러나 발생하는 로그는 비정형 데이터인 경우가 많으며, 그 양도 많아 많은 양의 로그에서 인사이트를 도출하는 것이 필요한데 이 때 유용하게 사용할 수 있는 것이 Elastic Search 툴이다. [ELK Stack이란?] – ..