한국어 | English
백준 자바스크립트 프레임워크.
자바스크립트 알고리즘 문제 풀이의 새로운 패러다임.
Important
const whyBananass = {
banana: '🍌',
bananas: '🍌🍌',
bananass: '🍌🍌🍌🍌',
}
console.log(('b' + 'a' + +'a' + 'a').toLowerCase() + (!(1/0) + [])[3].repeat(2));
바나나Bananass 프레임워크에 오신 것을 환영합니다!
바나나는 자바스크립트JavaScript 및 타입스크립트TypeScript 기반의 알고리즘 문제 풀이를 위한 프레임워크로, 백준ㆍ코드포스 등 다양한 문제 풀이 플랫폼들의 Node.js 환경에서 반복적으로 마주치는 문제점들을 해결하며, 간결하고 편리한 사용자 경험을 제공합니다.
- 타입스크립트TypeScript 지원이 필요하시다고요?
- ES16ES2025 등 자바스크립트 최신 문법을 쓰고 싶은데 막히셨나요?
- 외부 라이브러리를 사용하고 싶으신가요?
- 매번
readline
/fs
템플릿 코드 복붙하기 지치셨나요?
이제 걱정하지 마세요! 바나나 프레임워크는 이런 문제점들을 모두 해결합니다.
함께 자바스크립트를 이용한 백준 1000번: A+B 문제 풀이 예제를 살펴봅시다!
-
기존 방법을 통한 문제 풀이.
const readline = require('node:readline'); const { EOL } = require('node:os'); let inputStr = ''; const rl = readline.createInterface({ input: process.stdin, output: process.stdout, }); rl.on('line', line => { inputStr = `${inputStr}${line}${EOL}`; }).on('close', () => { console.log(solution(inputStr)); process.exit(0); }); function solution(input) { const [a, b] = input .trim() .split(' ') .map(val => Number(val)); return a + b; }
-
바나나 프레임워크를 이용한 문제 풀이.
function solution(input) { const [a, b] = input .trim() .split(' ') .map(Number); return a + b; } export default { solution };
더 간결하고, 더 직관적인 코드! 입력 처리에 들이던 시간은 줄이고, 오직 알고리즘에만 집중할 수 있습니다.
물론, 아닙니다!
- 자바스크립트JavaScript 및 타입스크립트TypeScript 지원.
- ESMECMAScript Module 및 CommonJS 모듈 시스템 지원.
- 백준 Node.js 환경에 구애받지 않는 ES16ES2025 등 최신 문법 지원.
- 사용자 정의 모듈 및
lodash
등 외부 라이브러리 불러오기 지원. - 프로그래머스처럼
solution
함수 하나로 시작하기 지원. - 테스트 케이스 작성 및 실행 지원.
create-bananass
로 시작하기 지원.fs
모듈을 사용한 더욱 빠른 입출력 지원.- 편의를 위한 다양한 CLI 명령어 지원.
- 풍부하고 상세한 문서 지원.
- ESLint 및 Prettier 자체 지원.
어떤가요? 바나나 프레임워크를 통해 더욱 편리한 문제 풀이를 경험해보고 싶지 않으신가요?
React의 create-react-app
, Next.js의 create-next-app
처럼, 바나나 프레임워크에서 제공하는 create-bananass
로 지금 바로 새로운 문제 풀이 패러다임을 경험해보세요!
바나나 프레임워크는 create-bananass
를 통해 즉시 설치하고 사용할 수 있습니다.
npm create bananass@latest
더 자세한 사용법은 바나나 프레임워크 문서를 참고해주세요.
바나나 프레임워크는 문서화를 가장 큰 가치로 여깁니다. 바나나 프레임워크의 모든 사용법과 기능은 바나나 프레임워크 문서에서 확인하실 수 있습니다.
바나나 프레임워크 기여에 관심을 가져주셔서 감사합니다!
버그Bug 및 제안Suggestion 등 여러 주제에 대한 이슈Issue, 끌어오기 요청Pull Request, 토론Discussion 등을 모두 환영합니다.
다만, 올바른 커뮤니티 환경을 준수하고 더 나은 오픈 소스를 만들기 위해, 바나나 프레임워크에 기여하기 전 반드시 아래 내용들을 확인해주세요.
바나나 프레임워크는 유의적 버전 정책Sementic Versioning을 따릅니다. 모든 릴리즈 버전은 주(MAJOR).부(MINOR).수(PATCH)
형식을 따릅니다.
커뮤니티에 기여하기 전, 기여자 행동 강령 규약을 참고해주세요.
변경 사항에 대한 상세한 내용을 확인하려면, 변경 사항을 참고해주세요.
보안 문제를 발견하셨나요? 보안 문서를 참고해주세요.
바나나 프레임워크는 MIT 라이선스를 따릅니다. 라이선스 문서를 참고해주세요.