일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 서평
- 지혜를가진흑곰
- 성분
- C++
- Java
- 화장품
- 자바
- JavaScript
- C
- 알고리즘 공부
- 채권
- algorithmStudy
- 프로그래밍언어
- 백준알고리즘
- 책을알려주는남자
- 알고리즘트레이닝
- 프로그래머스 알고리즘 공부
- 투자
- 재테크
- 다독
- 알고리즘공부
- 주식
- 경제
- 자바스크립트
- 독후감
- 돈
- algorithmtraining
- 독서
- algorithmTest
- 책알남
- Today
- Total
목록[Snow-ball]프로그래밍(컴퓨터) (331)
탁월함은 어떻게 나오는가?
자바스크립트의 함수는 가장 중요한 핵심 개념이다. 스코프, 실행 컨텍스트, 클로저, 생성자 함수에 의한 객체 생성, 메서드, this, 프로토타입, 모듈화 등이 모두 함수와 깊은 관련이 있다. 함수 정의 방법 함수는 함수 정의(function definition)를 통해 생성한다. 자바스크립트의 함수는 다양한 방법으로 정의할 수 있다. 밑에 방식을 제외하고도 다양한 방법이 있지만, 대표적으로 사용하는 2가지이다. 1 2 3 4 // 함수 선언문으로 함수 정의 function add(x, y) { return x + y; } cs 1 2 3 4 5 6 7 8 // 화살표 함수 정의 const add = (x, y) => { return x + y; } // 화살표 함수 간결한 방식 정의 const add ..
1 warning: in the working copy of 'loan/nestjs-back/.idea/workspace.xml', LF will be replaced by CRLF the next time Git touches it cs 맥과 윈도우로 작업을 깃으로 병행할 때 생기는 Whitespace 에러이다. 유닉스 시스템에서는 한 줄의 끝이 LF(Line Feed)로 이루어지는 반면, 윈도우에서는 줄 하나가 CR(Carriage Return)와 LF(Line Feed), 즉 CRLF로 이루어지기 때문이다. 따라서 어느 한 쪽을 선택할지 Git에게 혼란이 온 것이다. 유닉스 OS를 사용한다면 ... CRLF will be replace by LF ... 에러, 윈도우 OS를 사용한다면 ... LF ..
최근에 개발자들이랑 이야기를 하다보면 예측가능한 코드가 좋다고 이야기를 하고 있는 편이다. 왜 나는 코드가 예측가능해야지 좋다라고 이야기를 하는것일까? 그 부분에 대한 정리가 필요하다고 생각이 들었고, 내 생각을 정리한 내용이다. * 언어는 typescript * 예측가능해지면 좋은건 무엇일까? 첫번째. 코드를 읽으면서 어떻게 동작할지 예측 가능해진다면 우리가 코드를 개선하거나 추가할 때 모든 코드를 보지 않아도 원하는 기능을 제거하거나 추가하거나 개선하기가 쉬워질것이다. 간단하게 코드를 만들어 보았다. 1 const userProfile: UsersModel = user.importProfile(); cs 위의 코드를 보면 네이밍과 타입을 지정함으로써 누가봐도 어떤 데이터가 담길지에 대한 예측이 가능해..
import, export를 사용하는 이유 개발을 하는 애플리케이션의 크기가 커지면 언젠가는 파일을 여러 개로 분리해야 하는 시점이 생긴다. 이때 분리된 파일 각각을 '모듈(module)'이라고 부르는데, 모듈은 대개 클래스 하나 혹은 특정한 목적을 가진 복수의 함수로 구성된 라이브러리 하나로 구성된다. 곧 모듈들을 나누는것을 모듈화라고 부르며, 소프트웨어를 각 기능별로 나누는 것을 말한다. 그리고 각각의 기능별로 나눠진 모듈화의 결과를 모듈이라고 하며 서브루틴, 소프트웨어 내의 프로그램 또는 작업 단위 등의 의미로 사용된다. 여기서 좋은 모듈화는 목적에 맞는 기능만으로 모듈을 나누는 것이다. 각각의 모듈은 주어진 기능만을 독립적으로 수행하며 다른 모듈과 적게 연관되야 한다. 즉, 독립성이 높은 모듈일수..
자바스크립트 객체(Object)란? 자바스크립트는 객체(object) 기반의 스크립트 언어이며 자바스크립트를 이루고 있는 거의 "모든 것"이 객체이다. 메모리(실제 저장공간)에 할당된 것으로 프로그래밍에서 사용되는 데이터 또는 식별자에 의해 참조되는 공간을 의미하며, 변수, 자료 구조, 함수 또는 메소드가 될 수 있다. 자바스크립트에서는 원시타입(Primitives)을 제외한 나머지 값들(함수, 배열, 정규표현식 등)은 모두 객체가 된다. 프로그래밍 언어는 변수를 이용해 객 체에 접근하므로 객체와 변수라는 용어를 함께 사용된다. 그러나 메모리(실제 저장공간)가 할당되기 전까지 객체는 존재하지 않는다. 자바스크립트의 객체는 키(key)과 값(value)으로 구성된 프로퍼티(Property)들의 집합니다. ..
문제 설명 준호는 요즘 디펜스 게임에 푹 빠져 있습니다. 디펜스 게임은 준호가 보유한 병사 n명으로 연속되는 적의 공격을 순서대로 막는 게임입니다. 디펜스 게임은 다음과 같은 규칙으로 진행됩니다. * 준호는 처음에 병사 n명을 가지고 있습니다. * 매 라운드마다 enemy[i]마리의 적이 등장합니다. * 남은 병사 중 enemy[i]명 만큼 소모하여 enemy[i]마리의 적을 막을 수 있습니다. ** 예를 들어 남은 병사가 7명이고, 적의 수가 2마리인 경우, 현재 라운드를 막으면 7 - 2 = 5명의 병사가 남습니다. ** 남은 병사의 수보다 현재 라운드의 적의 수가 더 많으면 게임이 종료됩니다. * 게임에는 무적권이라는 스킬이 있으며, 무적권을 사용하면 병사의 소모없이 한 라운드의 공격을 막을 수 있..
문제 설명 과일 장수가 사과 상자를 포장하고 있습니다. 사과는 상태에 따라 1점부터 k점까지의 점수로 분류하며, k점이 최상품의 사과이고 1점이 최하품의 사과입니다. 사과 한 상자의 가격은 다음과 같이 결정됩니다. 한 상자에 사과를 m개씩 담아 포장합니다. 상자에 담긴 사과 중 가장 낮은 점수가 p (1 loopLength || count >= loopLength) { break; } answer += arr[index] * m count += m; index += m } return answer; } Colored by Color Scripter cs 풀이의 복기 처음에는 while 문으로 로직을 구성했다. 하지만 테스트 11~15번에서 시간 초과가 발생했다. 1) 1 2 3 4 5 6 7 8 9 10..
문제 설명 한국중학교에 다니는 학생들은 각장 정수 번호를 갖고 있습니다. 이 학교 학생 3명의 정수 번호를 더했을 때 0이 되면 3명의 학생은 삼총사라고 합니다. 예를 들어, 5명의 학생이 있고, 각각의 정수 번호가 순서대로 -2, 3, 0, 2, -5일 때, 첫 번째, 세 번째, 네 번째 학생의 정수 번호를 더하면 0이므로 세 학생은 삼총사입니다. 또한, 두 번째, 네 번째, 다섯 번째 학생의 정수 번호를 더해도 0이므로 세 학생도 삼총사입니다. 따라서 이 경우 한국중학교에서는 두 가지 방법으로 삼총사를 만들 수 있습니다. 한국 중학교 학생들의 번호를 나타내는 정수 배열 number 가 매개변수로 주어질 때, 학생들 중 삼총사를 만들 수 있는 방법의 수를 return 하도록 solution 함수를 완성..