한국어 | English
바나나Bananass, 🍌🍌🍌🍌: 명사 자바스크립트를 위한 백준 프레임워크.
Important
const whyBananass = {
banana: '🍌',
bananas: '🍌🍌',
bananass: '🍌🍌🍌🍌',
}
console.log(('b' + 'a' + +'a' + 'a').toLowerCase() + (!(1/0) + [])[3].repeat(2));
바나나Bananass, 🍌🍌🍌🍌 프레임워크에 오신 것을 환영합니다.🎉
바나나 프레임워크는 루밀LuMir이 제작한 자바스크립트JavaScript를 위한 백준 프레임워크로, 백준 Node.js 환경에서의 보다 편리한 문제풀이를 위해 설계되었습니다.
이제 더 이상 readline
혹은 fs
모듈을 이용한 템플릿Template 코드를 작성한 후, 일일이 복사 붙여넣기할 필요가 없습니다! 바나나 프레임워크를 통해 프로그래머스에서 하나의 솔루션 함수function solution() {}
를 작성하듯 더욱 간편한 문제 풀이를 경험해보세요.
그런데, 백준 문제 풀이를 하는데 굳이 프레임워크까지 알아야 할까요? 아래에서 그 이유를 찾아보죠!
왜 자바스크립트JavaScript 생태계의 수 많은 프레임워크 중 문제 풀이에 특화된 프레임워크는 없었을까요? 함께 자바스크립트를 이용한 백준 1000번: A+B 문제 풀이 예제를 살펴보죠!
-
전Before: 기존 방법을 통한 문제 풀이.
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(inputStr) { const input = inputStr .trim() .split(' ') .map(val => Number(val)); const [a, b] = input; return a + b; }
-
후After: 바나나 프레임워크를 이용한 문제 풀이.
function solution(input) { const [a, b] = input .trim() .split(' ') .map(Number); console.log(a + b); } module.exports = solution;
와우!😲 놀랍지 않나요? 이제 여러분들은 단순해진 코드와 더불어 알고리즘 로직에만 집중할 수 있습니다.
근데, 이게 전부냐고요? 물론 아닙니다!
- 백준 Node.js 환경에 구애받지 않는 ES2025 등 최신 문법의 사용
- 사용자 정의 모듈 및
lodash
등 외부 라이브러리의 사용 - ESLint 및 Prettier 자체 지원
- 풍부한 문서 및 커뮤니티 지원
- ...
어떤가요? 바나나 프레임워크를 통해 더욱 편리한 문제 풀이를 경험해보고 싶지 않으신가요?🤔
React의 create-react-app
, Next.js의 create-next-app
처럼,
바나나 프레임워크에서 제공하는 create-bananass-app
으로 지금 바로 새로운 문제 풀이 패러다임을 경험해보세요!
바나나 프레임워크는 create-bananass-app
을 통해 즉시 설치하고 사용할 수 있습니다! (사실 앱App은 아니지만, 그건 중요한게 아닙니다...🤔)
npx create-bananass-app my-bananass-app --no-install
더욱 자세한 사용법은 바나나 프레임워크 문서를 참고해주세요.
바나나 프레임워크는 문서화를 가장 큰 가치로 여깁니다. 바나나 프레임워크의 모든 사용법과 기능은 바나나 프레임워크 문서에서 확인하실 수 있습니다.
바나나 프레임워크에 관심을 가져주셔서 감사합니다.🙇♂️ 저희는 여러분들의 소중한 시간을 바나나 프레임워크에 투자해주신 것에 대해 고마움을 가지고 있습니다.
모든 버그Bug 및 제안Suggestion 등 여러 주제에 대한 이슈Issue, 끌어오기 요청Pull Request 및 토론Discussion 등을 환영합니다.
다만, 올바른 커뮤니티 환경을 준수하고 더 나은 오픈소스를 만들기 위해, 바나나 프레임워크에 기여하기 전 반드시 아래 내용들을 확인해주세요.
바나나 프레임워크는 유의적 버전 정책Sementic Versioning을 따릅니다. 모든 릴리즈 버전은 주(MAJOR).부(MINOR).수(PATCH)
형식을 따릅니다.
커뮤니티에 기여하기 전, 기여자 행동 강령 규약을 참고해주세요.
변경 사항에 대한 상세한 내용을 확인하려면, 변경 사항을 참고해주세요.
보안 문제를 발견하셨나요? 보안 문서를 참고해주세요.
바나나 프레임워크는 MIT 라이센스를 따릅니다. 라이센스 문서를 참고해주세요.