[Dev.to]꼭 사용 해봐야 할 오픈소스 프로젝트 및 도구
오픈 소스 프로젝트는 모든 수준의 개발자가 자신의 기술을 향상하고, 같은 생각을 가진 사람들과 교류하며, 방대한 기술 환경에 기여할 수 있는 특별한 기회를 제공합니다. 이미 많은 개발자와 엔지니어들이 사용하고 있거나 사용해 볼 필요가 있는 프로젝트 및 도구를 소개해봅니다. :-) 1. Docker(도커) * 개발 간소화 도구 * https://www.docker.com/ * 리눅스의 응용 프로그램들을 프로세스 격리 기술들을 사용해 컨테이너로 실행하고 관리하는 오픈 소스 프로젝트 2. Kubernetes(쿠버네티스) * 컨테이너 오케스트레이션 * https://kubernetes.io/ * 컨테이너화된 애플리케이션의 자동 디플로이, 스케일링 등을 제공하는 관리시스템으로 구글에서 개발 및 코드 컨트리뷰션하였고, 현재는 리눅스재단에서 관리하고 있는 오픈 소스 컨테이너 오케스트레이션 플랫폼 3. VSCode(비주얼 스튜디오 코드) * 다용도 소스코드 IDE * https://code.visualstudio.com/ * 마이크로소프트가 윈도우, macOS, 리눅스용으로 개발한 소스 코드 편집기로 디버깅 지원과 Git 제어, 구문 강조 기능, SSH 접속 등이 포함되어 있으며, 사용자가 편집기의 테마와 단축키, 설정 등을 지원 4. React(리액트) * 사용자 인터페이스 구축 * https://ko.legacy.reactjs.org/ * 메타에서 개발한 오픈 소스 자바스크립트 라이브러리로 프론트엔드 개발시 다수 사용 5. 텐서플로 * 엔드 투 엔드 오픈소스 머신러닝 플랫폼 * https://www.tensorflow.org/?hl=ko * 구글리서치 산하의 딥러닝 팀인 구글브레인 팀이 오픈 소스로 공개한 기계학습 라이브러리로 수치 계산, 대규모 머신 러닝, 딥러닝, 기타 통계 및 예측 분석 워크로드를 위한 라이브러리 6. Git * 소스코드 관련 분산형 버전 관리 시스템(VCS) * https://git-scm.com/ * 리눅스를 만든 리누스 토발즈가 개발한 컴퓨터 파일의 변경사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율하기 위한 스냅샷 스트림 기반의 분산 버전 관리 시스템 * Git vs Github vs Gitlab * Git: 개발자의 로컬 컴퓨터에서 동작하며, 소스 코드의 버전 관리를 담당하는 S/W * Github: 깃(Git)을 사용하는 프로젝트를 지원하는 웹 호스팅 서비스. 2018년 마이크로스프트가 인수 * Gitlab: 기업용을 위한 지속적 통합/지속적 전달(CI/CD)와 데브옵스 워크플로우를 내장 7. 웹 크럼블 * React 웹사이트를 위한 노코드 관리 패널 * https://www.webcrumbs.org/waitlist * React 플러그인의 중앙 레지스트리를 제공하여 웹개발자들의 협업을 지원하고 개별 프로젝트를 향상시키는 동시에 웹개발자 커뮤니티를 형성하는 것을 목표 *Source: https://dev.to/buildwebcrumbs/open-source-essentials-must-try-projects-and-tools-2f7k