분류 전체보기 106

자바스크립트에서 undefined와 null의 차이

var score; 다음과 같이 변수를 선언할 때, 자바스크립트는 해당 메모리 공간을 undefiend로 초기화한다. 따라서 변수를 선언한 이후 값을 할당하지 않으면, undefined가 반환된다. 따라서, 변수를 참조했을 때 undefined가 반환된다면, 선언 이후 값이 할당된 적 없는 초기화되지 않은 변수라는 것을 알 수 있다. null은 이와 다르게 변수에 값이 없다는 것을 명시하고 싶을 때 사용해야 한다. 변수에 null을 할당하는 것은 이전에 할당되어 있던 값에 대한 참조를 명시적으로 제거하는 것이며, 자바스크립트 엔진은 이 공간에 대해 가비지 콜렉션을 수행할 것이다. 예시로, document.querySelector 메서드는 조건에 부합하는 HTML 요소를 검색할 수 없을 경우 null을 반..

자바스크립트에서의 변수 선언, 호이스팅, 동작 방식과 그 원리

변수 선언 변수 선언이란, 메모리 공간을 확보하고 변수 이름과 확보된 메모리 공간의 주소를 연결하여 값을 저장할 수 있도록 준비하는 것이다. 변수 선언에 의해 확보된 메모리 공간은 확보가 해제되기 전까지는 누구도 확보된 메모리 공간을 사용할 수 없도록 보호된다. var, let, const 키워드를 사용하여 변수 선언 한다. let, const 키워드는 var 키워드의 여러 단점을 보완하기 위해서 ES6에서 도입되었다. 변수 선언을 할 때 자바스크립트 엔진에서 하는 일 var score; 선언 단계 : 변수 이름을 실행 컨텍스트에 키/값 형식인 객체로 등록한다. 자바스크립트 엔진에 변수의 존재를 알린다. 초기화 단계 : 값을 저장하기 위해 메모리 공간을 확보하고 암묵적으로 undefined를 할당해 초기..

자바스크립트의 역사, 특징, 관련 용어 정리

자바스크립트의 역사 태초의 웹 페이지 로딩 방식 => html태그로 시작해서 html 태그로 끝나는 완전한 HTML 코드를 서버로부터 전송받아 웹 페이지 전체를 렌더링하는 방식 화면 전환이 될 때, 변경필요가 없는 부분까지 필요한 HTML 코드를 다시 전송받기 때문에 성능적으로 불리하다. Ajax의 등장 => 서버로부터 필요한 데이터만 전송받아 변경해야 하는 부분만 한정적으로 렌더링하는 방식 웹 브라우저에서 빠른 성능과 부드러운 화면 전환이 가능해졌다. SPA 프레임워크의 등장 SPA란? Single Page Application의 약자로, 단일 페이지 어플리케이션을 의미한다. 웹 사이트 전체 페이지를 하나의 페이지에 담아 동적으로 화면을 변경해 표시해주는 기술로, 매번 새롭게 페이지를 렌더링해서 제공해..

슬랙봇 개발기 ③ - 슬랙봇에게 말을 걸면 답장 보내기 (socket mode)

슬랙봇 개발기 ② - python slack sdk + flask 서버 구축 슬랙봇 개발기 ① - 소켓 모드란 무엇일까? 슬랙봇을 개발할 경우에는 HTTP통신을 기반으로 하거나 웹소켓 통신을 기반으로 하는 두가지 방법이 있다. 먼저 HTTP 통신을 기반으로 하는 방법은 public bboglebbogle.tistory.com 슬랙봇 개발기1, 2에서 소켓 모드를 사용하여 프로젝트를 세팅하는 방법에 대해서 서술했다. 이번에는 커맨드를 사용할 때마다 사용자에게 답장을 보내는 슬랙봇을 만들어보자 ! 슬랙봇에게 메시지를 보낼 수 있도록 하려면 Features-App Home-Show Tabs-Message Tab에서 Allow users to send Slack commands and message from t..

카카오페이 주니어 개발자로 1년 반 동안 일하며 ,,

카카오페이 인턴으로 6개월 일한 후에 정규직으로 전환 성공, 팀 이동을 하여 다시 본격적인 서버 개발자로 1년 조금 안되게 일했다. 그러면서 카카오페이 기술 블로그에 주니어 개발자의 일상이라는 글도 썼다. 카카오페이 주니어 서버 개발자의 이모저모 | 카카오페이 기술 블로그 카카오페이 주니어 서버 개발자가 전하는 카카오페이 입사 꿀팁, 업무 적응기, 신사옥 엿보기, 마케팅플랫폼팀 소개 이야기 tech.kakaopay.com 새로운 팀에서는 DB 분리보관, 스칼라 프로젝트, 어드민 개선 프로젝트를 순차적으로 하였다. 또 회사 내에서 꾸준히 역량 강화를 하기 위해 카프카, 마이크로 서비스, 함께 자라기, 스칼라, 이펙티브 자바 책을 읽으며 스터디를 진행했다. 업무외 시간에 틈틈히 짬을 내서 책을 읽고 정리하고..

슬랙봇 개발기 ② - python slack sdk + flask 서버 구축

슬랙봇 개발기 ① - 소켓 모드란 무엇일까? 슬랙봇을 개발할 경우에는 HTTP통신을 기반으로 하거나 웹소켓 통신을 기반으로 하는 두가지 방법이 있다. 먼저 HTTP 통신을 기반으로 하는 방법은 public으로 열어놓은 REST API를 기반으로 하는 방 bboglebbogle.tistory.com 이전 글에서 소켓모드를 사용해서 웹소켓 기반의 슬랙봇을 구축해야 하는 이유에 대해서 살펴보았다. Socket Mode Client — Python Slack SDK Socket Mode is a method of connecting your app to Slack’s APIs using WebSockets instead of HTTP. You can use slack_sdk.socket_mode.SocketMo..

슬랙봇 개발기 ① - 소켓 모드란 무엇일까?

슬랙봇을 개발할 경우에는 HTTP통신을 기반으로 하거나 웹소켓 통신을 기반으로 하는 두가지 방법이 있다. 먼저 HTTP 통신을 기반으로 하는 방법은 public으로 열어놓은 REST API를 기반으로 하는 방법이다. 이를 위해선 퍼블릭 도메인을 하나 파야하고, 서버를 그 도메인으로 띄워야한다. 슬랙봇에서 커맨드를 입력할 때마다 해당 URL로 POST 요청이 전달해지는 방식일 것이다. 요것은 슬랙 커맨드 입력창인데, 해당 커맨드를 사용할 때마다 적어놓은 RequestURL로 요청이 간다고 보면 된다. 그러나 이러한 HTTP 통신 방식의 단점은 - 퍼블릭 도메인을 생성해야 하므로, 보안상 위험할 수 있다는 점이다. - 또한 사내망이나 방화벽 내에서 통신하는 슬랙봇을 만들기 위해서는 이러한 방식은 불가능하다...

인프콘 2022 참석 후기, 개발 컨퍼런스에서 알게된 것

8월 26일, 인프런에서 주최한 인프콘에 좋은 기회로 참여하게 되었다. 원래는 개발 컨퍼런스같은 거에 1도 관심이 없었던 상황이었는 데 .... 팀장 00의 적극 추천과 초대로 가게 되었다 - !! 이것 또한 좋은 기회라고 생각해서 정말 감사합니다 :-) 와 근데 사람이 진짜 개많았어요 ..... .... 보통 추첨을 통해서 인프콘 당첨된는 데, 인기가 워낙 많았어서 당첨되는 것도 어려웠다고 하더라구요. 이런식으로 기업부스가 8개 있었는 데, 당근마켓, 무신사, 토스, 오늘의집, 야놀자, 우아한형제들, JetBrain 이런 기업들이 참여했었다. 일단 기념품을 나누어주셨었고, 원하면 채용 관련 상담도 가능하다고 한다. 컨퍼런스 시작이 1시부터라서 12시 반? 이정도에 도착했었는 데 사람이 워낙많았어서 이런..

일상 2022.08.28

나의 프로그래밍 과외 이야기 (현직 개발자, 과외로 돈벌다(?))

과외 시작 전까지 일단, 나는 대학교때부터 과외를 하고 싶다 라는 막연한 생각이 있었다. 물론 돈도 많이 벌고 싶었구,, 물론 내가 수학, 영어를 엄청나게 잘 하는 편이 아니었기 때문에 아무것도 없었던 대학생으로서는 과외 구하기를 하늘의 별따기 였다. 어떻게 하면 과외를 구할 수 있을까 하다가.. 21살이 되었을 때, C언어를 가르쳐보자 ! 라는 엄청난 결심을 하게 되었다. - 그 당시 프로그래밍 과외를 하는 선생님이 별로 없었던 점 - 프로그래밍 과외를 하는 여자 선생님이 더 없었던 점 이 두가지를 강점으로, 첫 수업이니만큼 낮은 가격(시간당 2만원 이하)을 강점으로 내세워 구하게 되었다. 그 당시 커넥츠튜터라는 사이트에서 과외를 구하게 되었고, 운좋게(?) 2명의 첫 과외학생을 받게 되었다. 첫 번째..

일상 2022.03.19

[취업] 카카오페이 인턴 합격 에서 정규직 전환까지의 후기 (개발자/서류/면접/코딩테스트)

대학교 5년 다니구 드디어 졸업 성공 그리고 인턴에서 정규직 전환에 성공하면서 취업도 성공 ! 작년 동안에 중구난방이었던 취업 이야기에 대해서 정리해보면서 글을 써보려고 한다. 2020년 12월, 본격적인 취업 준비 시작 2020년 말, 내가 백엔드 개발 분야로 취업하겠다는 것을 결정하고 첫 프로젝트를 시작하게 되었다. 그리고 알고리즘 공부도 시작하면서 본격적인 코딩테스트 준비도 시작하게 되었다. 나는 계속 학교만 열심히 다니다가 늦게 취업 분야를 정하게 되었고, 빠른 시간안에 포트폴리오를 완성하기 위해서 하루의 거의 모든 시간을 취업 준비하는 데 사용했다. 아무래도 그 학기 동안 추가학기를 다니면서 수업을 1개만 듣고 있던 상황이어서 가능했던 것 같다. 2020년 12월 ~ 2021년 7월까지 취업준비..

일상/취업후기 2022.02.22