PM의 아는 만큼 보이는 개발지식! js? 와 프레임워크?
[개발PM이 쉽게 쓰는 IT 이야기]
안녕하세요! 오늘은 개발PM에게 도움되는 개발 기본지식에 대해 나누어 보도록 하겠습니다.
개발자들 혹은 클라이언트와 소통할때, 개발관련 언어나 프레임워크에 대해서 들어보실 수 있습니다.
하나, 예시를 들어보도록 하겠습니다.
* Client: React에 Node.js가 이번 프로젝트에 메인 기술 스택 입니다.
- 어떤 프로덕트가 생산 될지, 예상가시나요?
혹시 안가신다면, 이 글을 무조건 읽고 가시는걸 추천드립니다.
제품을 만들기 위해 개발자와 협업하는 개발PM은 개발에 대한 기본적인 이해가 필요합니다. 개발에 대한 깊은 지식이 없어도 제품의 비전과 고객의 니즈를 잘 파악하고 전달하는 것이 PM의 핵심 역량이지만, 개발자와의 소통을 원활하게 하고, 기술적인 제약과 가능성을 파악하고, 효율적인 제품 개선을 위해서는 개발에 대한 기본적인 지식이 도움이 됩니다.
이 글에서는 PM이 알아야 할 기본적인 개발 지식 중, 웹 개발에 필수적인 JavaScript와 프레임워크에 대해 간단하게 소개하고자 합니다. JavaScript는 웹 페이지에 동적인 기능을 추가하기 위한 프로그래밍 언어이고, 프레임워크는 웹 개발을 쉽고 빠르게 할 수 있도록 도와주는 도구입니다. JavaScript와 프레임워크를 이해하면, 웹 개발의 전반적인 흐름과 구조를 파악할 수 있고, 웹 제품의 기능과 디자인을 개선하기 위한 아이디어를 제시할 수 있습니다.
JavaScript는 웹 페이지에 동적인 기능을 추가하기 위한 프로그래밍 언어입니다. 웹 페이지는 HTML, CSS, JavaScript로 구성됩니다. HTML은 웹 페이지의 내용을 구성하고, CSS는 웹 페이지의 스타일을 꾸미고, JavaScript는 웹 페이지에 상호작용과 로직을 추가합니다. 예를 들어, 웹 페이지에 버튼을 클릭하면 팝업창이 뜨거나, 스크롤을 하면 새로운 내용이 로딩되거나, 입력창에 값을 입력하면 검증이 되거나 하는 기능들은 모두 JavaScript로 구현할 수 있습니다.
JavaScript는 웹 브라우저에서 실행되는 언어입니다. 즉, 웹 페이지를 열면 웹 브라우저가 JavaScript 코드를 해석하고 실행합니다. 이를 클라이언트 사이드라고 합니다. 반대로, 웹 서버에서 실행되는 언어를 서버 사이드라고 합니다. 예를 들어, 웹 페이지에 회원가입을 하면, 웹 서버에서 회원 정보를 데이터베이스에 저장하고, 로그인을 하면, 웹 서버에서 회원 정보를 확인하고 인증합니다. 이러한 서버 사이드의 기능들은 PHP, Python, Ruby, Java 등 다양한 언어로 구현할 수 있습니다.
JavaScript는 원래 클라이언트 사이드 언어로 만들어졌지만, 2009년에 Node.js라는 플랫폼이 등장하면서 서버 사이드에서도 사용할 수 있게 되었습니다. Node.js는 JavaScript 코드를 웹 서버에서 실행할 수 있도록 해주는 환경입니다. Node.js를 사용하면, 웹 개발자는 하나의 언어로 클라이언트와 서버를 모두 구현할 수 있습니다. 이를 풀스택(프론트엔드 + 백엔드) 이라고 합니다.
프레임워크는 웹 개발을 쉽고 빠르게 할 수 있도록 도와주는 도구입니다. 프레임워크는 웹 개발에 필요한 기본적인 구조와 기능을 제공하고, 개발자는 그 위에 필요한 부분을 추가하거나 수정하면 됩니다. 예를 들어, 웹 페이지의 레이아웃을 잡거나, 데이터베이스와의 연동을 하거나, 보안을 강화하거나, 성능을 향상시키거나 하는 작업들을 프레임워크가 대신 해주거나 쉽게 할 수 있도록 해줍니다.
프레임워크는 언어별로 다양하게 존재합니다. 예를 들어, JavaScript의 프레임워크로는 React, Angular, Vue 등이 있고, Python의 프레임워크로는 Django, Flask, FastAPI 등이 있고, Java의 프레임워크로는 Spring, Struts, Hibernate 등이 있습니다. 각 프레임워크는 자신만의 특징과 장단점을 가지고 있으므로, 웹 개발의 목적과 요구사항에 따라 적절한 프레임워크를 선택해야 합니다.
프레임워크와 비슷한 개념으로 라이브러리가 있습니다. 라이브러리는 웹 개발에 필요한 특정 기능을 모아놓은 코드의 집합입니다. 예를 들어, jQuery는 웹 페이지에 동적인 효과를 쉽게 추가할 수 있도록 해주는 라이브러리이고, Bootstrap은 웹 페이지의 디자인을 쉽게 만들 수 있도록 해주는 라이브러리입니다. 라이브러리는 프레임워크와 달리 웹 개발의 전체적인 구조를 제공하지 않고, 필요한 부분에만 사용할 수 있습니다. 또한, 라이브러리는 프레임워크와 함께 사용할 수도 있습니다.
이 글에서는 PM이 알아야 할 기본적인 개발 지식 중, 웹 개발에 필수적인 JavaScript와 프레임워크에 대해 간단하게 소개했습니다. JavaScript는 웹 페이지에 동적인 기능을 추가하기 위한 프로그래밍 언어이고, 프레임워크는 웹 개발을 쉽고 빠르게 할 수 있도록 도와주는 도구입니다. JavaScript와 프레임워크를 이해하면, 웹 개발의 전반적인 흐름과 구조를 파악할 수 있고, 웹 제품의 기능과 디자인을 개선하기 위한 아이디어를 제시할 수 있습니다.
웹 개발은 빠르게 변화하는 분야이므로, PM은 항상 새로운 기술과 트렌드에 대해 꾸준히 학습하고, 개발자와의 소통을 통해 제품의 품질을 높여야 합니다. 이 글이 PM이 되기 위한 분들에게 도움이 되었으면 좋겠습니다. 감사합니다.
2023/12/13 Jayden
추가로, 비정형 데이터베이스에 대해서 알고싶으시다면?!
https://brunch.co.kr/@joohyung-im/6