본문 바로가기

전체 글100

[JIRA] 지라 사용하기. github 연동. 협업을 위해 이번에는 Jira를 사용해본다. 우선, 프로젝트(Jira)에 앱을 깔아야한다. 상단 네비게이션 바에서 '앱'을 누르자 더 많은 앱 살펴보기 클릭. 좌측에 생긴 Github for Jira를 클릭하여 이동. 이제 Github랑 연동할 예정이다. 연동 이전에 우선 본인의 깃허브 계정이 로그인되어있는 상태인지 고민해보자. 만약 깃허브가 자동로그인 상태거나 로그인되어있는 상태라면 해당 계정으로 연동하여 연동 가능한 '계정' 혹은 '조직'을 보여줄 것이다. 만약 당신 개인프로젝트라면 '계정'으로 연동해도 상관 없지만, 팀 프로젝트라면 '조직'을 만들자. 연동 전에 우선 조직을 만드는 것이다. '조직'을 만들었다면 해당 조직이 연동 목록에 잘 나올것이다. 여기서 내가 수 시간을 쏟은 에러가 하나 있다... 2023. 1. 20.
[TS] Typescript와 차세대 자바스크립트 본 포스팅은 Maximilian Schwarzmüller 님의 강의를 바탕으로 작성되었습니다. let과 var의 차이점 var를 사용하면 자바스크립트는 함수의 유효 범위 및 전역 유효 범위 이외의 다른 유효 범위를 알지 못하는데 let을 사용하면 다르다. let과 const는 '유효 범위'라는 새로운 개념이 도입되어있다. 즉, 변수나 상수가 정의된 블록이나 하위 블록에서만 항상 유효하다는 것이다. 그러나 var는 마치 전역 변수처럼 유효 범위가 없이 작동한다는 것이 문제다. arrow 함수 'function' 대신 '=>' 를 사용하여 함수를 만들 수 있다. 또한, 표현식이 하나일 경우 return과 중괄호를 제거할 수 있다. 함수의 인자가 하나일 경우에 다음과 같이 작성할 수도 있다. const pri.. 2023. 1. 19.
[TS] Typescript 컴파일러2 본 포스팅은 Maximilian Schwarzmüller 님의 강의를 바탕으로 작성되었습니다. strict 옵션 개별 옵션을 각각 false로 설정하거나, 모든 옵션을 true로 하거나. strict - noImplicitAny 함수의 인자는 타입을 명시하지 않으면 에러를 발생시킨다. 하지만 변수의 경우에는 any 타입으로 추론된다. 왜 그럴까? 변수의 경우에는 '미리' 선언되기 때문에 any 타입으로 추론되지만, 함수의 인자는 '미리' 선언될 수 없기 때문에 타입스크립트가 any로 추론하면서 동시에 에러를 발생시키는 것이다. 이런 경우 에러를 유발시키지 않고 any로 추론하게 만들기 위해서는 strict 옵션중 noImplicitAny 옵션은 false로 설정하면 된다. any로 추론하며, 에러를 발생.. 2023. 1. 19.
[TS] Typescript 컴파일러 본 포스팅은 Maximilian Schwarzmüller 님의 강의를 바탕으로 작성되었습니다. watch mode 타입스크립트가 파일을 관찰하고 파일에 변경 사항이 있을 때마다 다시 컴파일하게 된다. tsc {파일명.확장자명} --watch --watch 말고 -w 라고 입력해도 된다. watch mode를 활성화 시키면, 저장할 때마다 리컴파일한 자바스크립트도 디스크에 저장된다. 주의할 점 : 개발중에 watch모드를 나가지(quit) 마라. 꼭 CTRL + C 를 통해서 나가라. tsc --init tsc --init을 터미널에 입력하게 되면 해당 프로젝트(디렉토리)를 타입스크립트가 관리한다. tsconfig.json 파일이 생성되며, 해당 json파일은 타입스크립트가 관리해야 하는 이 파일이 포함된.. 2023. 1. 19.
[TS] TypeScript 기본 & 기본 타입2 본 포스팅은 Maximilian Schwarzmüller 님의 강의를 바탕으로 작성되었습니다. Tuple 타입스크립트는 튜플 타입을 제공한다. 위와 같이 객체 타입을 각각 지정하여 array구문 안에 각 요소의 타입을 지정하면 튜플로 명시된다. 하지만, 안타깝게도 push에 대한 보호가 안된다. 대신 array의 길이에 대한 것과 해당 인덱스의 타입은 보호할 수 있다. 다음과 같이 push된 "admin"은 존재하는 것을 볼 수 있다. enum 타입스크립트에만 있는 타입(자바스크립트에 없다). 기본적으로 enum 값이 0부터 시작하지만, 만약 수정하고 싶다면 등호(=)를 사용하여 변경할 수 있다. 또한 string 데이터로 명시할 수도 있다. union 두개 이상의 타입을 명시하고 싶을 때 union 타.. 2023. 1. 18.
[TS] TypeScript 기본 & 기본 타입 본 포스팅은 Maximilian Schwarzmüller 님의 강의를 바탕으로 작성되었습니다. Core Types 타입스크립트는 자바스크립트보다 더 많은 타입들을 명시할 수 있다. 1. number : int, float, double .. ➡️ 모든 숫자들, 정수와 실수의 차이가 없이 number 타입을 사용. 2. string : 'Hi', "Hi", `hi` ➡️모든 text value 3. boolean : true, false ➡️ 오직 true or false. 위 세가지의 코어 데이터 타입을 어떻게 사용할 수 있을까. number 위와 같은 함수를 호출한 경우 tsc app.ts 를 터미널에서 호출하여 .js 파일로 컴파일 시키면 아무런 문제없이 7.8이 찍힌다. 하지만 number1 에 s.. 2023. 1. 18.
[pintOS 3] Thierry Snas의 Virtual Memory 개요 https://www.youtube.com/watch?v=HWxMH_SNnNM&ab_channel=ThierrySans 토론토 대학 pintOS강의 Thierry Sans의 토론토 대학 강의를 참고하여 작성하였습니다. 지난 프로젝트2에서는 사용자 가상 메모리는 다음과 같이 배치됐다. USER_STACK +----------------------------------+ | user stack | | | | | | | | V | | grows downward | | | | | | | | | | grows upward | | ^ | | | | | | | +----------------------------------+ | uninitialized data segment (BSS) | +-------------.. 2023. 1. 3.
pintOS project 2 team WIL 🔑 1. 모든 함수, 전문용어들은 영어로 표현 (ex: 쓰레드 -> thread, 프로세스 -> process) ( 이유 : 엄밀성을 위해. 프로세스 vs 스레드 구분도 명확히) 2. 단원 제목이 아닌 경우, 모든 영어는 소문자 유지 (ex : Process -> process, PintOS-> pintOS) 1. Passing Arguments Goal 🔍 user program을 적재하고 실행할 때, command line argument가 stack에 쌓여 올바르게 전달될 수 있도록 해야한다. process_exec() 실행을 위해 command line argument를 ‘parsing’하는 것이 목표 이를 위해서 user program이 load될 수 있는 기반 구조를 작성해야한다. proces.. 2023. 1. 3.
[WEEK 10] 크래프톤 정글 1기 WIL - Weekly I Learned 크래프톤 정글에서의 일주일간 성장일지입니다. 매주 주말 업데이트 예정이며, 앞으로도 잘 부탁드립니다. WIL은 에세이 형태로 진행되며 기술적인 내용이 전무합니다. 8주 차 9주 차는 어디 갔나요? 감사하게도 많은 분들이 블로그에 방문했다. 같은 반 분들의 반응도 좋고, 마음이 뿌듯했다. 그와 반대로 포스팅 계획은 연기되다 어느새 3개 주차를 밀려 버렸다. 정말 죄송할 따름이다. [WEEK08] tiny web, 왜 원숭이죠? 8주 차부터 종종 들어온 말이다. 블로그가 원숭이에 점령당했는가에 대한 의문은 당연하다. 이에 대해서 여러 가지 가설이 있다. 1. 혹성 탈출을 감명 깊게 감상했다. 2. 원숭이를 좋아한다. 3. 사실 원숭이다. 이에 대한 대답으로 처음에는 .. 2023. 1. 2.