PGR21.com
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다.
통합 규정을 준수해 주십시오. (2015.12.25.)
Date 2023/09/22 11:51:47
Name klados
Subject [질문] canva, figma 같은 웹 서비스는 어떻게 개발하나요?
안녕하세요.

일반적인 홈페이지나 애플리케이션의 개발과는 별개로,
Canva, Figma 같이 브라우저에서 이미지를 회전, 크롭, 확대 축소, 밝기 조정 등을 하고
그림판/포토샵 처럼 레이어 조작같은걸 할 수 있는 "서비스"는 보통 어떠한 구조로 개발되나요?

예를 들어,
온라인 브라우저에서 구동할 수 있는 윈도우 그림판의 단순 버전을 만든다고 할 때
어떤 프레임워크나 기법(?)으로 개발되는지 궁금합니다. 이러한 브라우저에서 구동되는 사이트를 만든다고 할 때 어디서부터 시작할 수 있을까요?

정말 자체적으로 javascript를 활용해서 제작한 것일지
아니면 예를들어 django, react 등을 이용한 것일까요?

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
사비알론소
23/09/22 13:14
수정 아이콘
당연히 프론트엔드는 js(+wasm) 입니다
23/09/22 21:22
수정 아이콘
감사드립니다!
초콜릿
23/09/23 01:36
수정 아이콘
간단한 포토샵 수준을 말씀하셔서 비슷한 걸 들어보면, https://fengyuanchen.github.io/photo-editor/
같은 건 자바스크립트 프론트엔드로 되어 있습니다. https://github.com/fengyuanchen/cropperjs 보시면 따라 만드실 수 있을 것 같습니다.
성능을 더 끌어올리자면 WASM을 쓸 수 있을 거고요.
적어주신 django, react에 관해서는, django는 파이썬 백엔드 프레임워크라 상관이 없고, react 또한 어차피 자바스크립트로 구현하는 것이니 이게 react이든 vue이든 svelte이든 어떤 프레임워크를 쓰시든 상관은 없습니다.
23/09/23 20:40
수정 아이콘
감사합니다. 비교적 간단하고 협업이 필요없는 기능이라면 자바스크립트 프론트엔드만으로도 어느정도 되는거군요. 그러면 백엔드도 크게 상관없어 지겠네요.
23/09/24 06:36
수정 아이콘
수학이 왜 필요하냐는 질문에 대표적으로 꼽을 수 있는 기능 개발입니다. 벡터/행렬을 기본으로 알아야 제대로 개발할 수 있죠. Scale, rotate 과 같은 기능이 전부다 행렬로 변환됩니다. 언어야 그냥 아무 자바스크립트 프레임워크로 로컬 브라우져에서 돌아가는거 개발하면 되고, 공동으로 편집을 하고 싶다던가 여러 사람이 공용 리소스를 공유하고자 할 때부터 백엔드가 들어가면 좋을 겁니다. 간단한 기능은 canvas에다가 그림을 그리는 수준으로 쉽게 됩니다. 그냥 그리는거는 아주 쉽지만, 보통 삭제 / 편집이 들어가기 시작하면서부터 복잡도가 기하급수적으로 늘어나게 됩니다.
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
172831 [질문] 풀업 한개도 불가능합니다. [23] 파이억7850 23/09/27 7850
172830 [질문] 푸쉬업 빡센거 같네요. [3] 파이억7036 23/09/27 7036
172829 [질문] 배터리 거의 안써왔던 노트북이 전원연결상태에서 배터리가 다됐다며 꺼지네요 [14] Scene7813 23/09/27 7813
172828 [질문] 방심하다를 영어로 자연스럽게 어떻게 쓸까요? [16] 모나크모나크9122 23/09/27 9122
172827 [질문] 프라다 백 구매 질문입니다 [24] 월터화이트9155 23/09/27 9155
172826 [질문] 닌텐도 스위치용 어쌔신 크리드 질문 드립니다. [1] 먼산바라기7123 23/09/27 7123
172825 [질문] C드라이브 용량 부족 [4] LeNTE6696 23/09/27 6696
172824 [질문] 아이패드 중고구매 조언좀 부탁드립니다 [1] 리코타홀릭6619 23/09/27 6619
172823 [질문] 노래방 음정 조절에서 정확하게 한 옥타브만큼을 내릴 수 있나요? [13] 별빛정원8348 23/09/27 8348
172822 [삭제예정] [디아 4] 부끄럽지만 틀린 그림 찾기 좀 도와주십시오 [2] 삭제됨7719 23/09/26 7719
172821 [질문] 무슨 벌레일까요? [1] 여자친구6924 23/09/26 6924
172820 [질문] 뮤지컬 관람 좌석 추천 부탁드립니다(블루스퀘어홀) [16] 귀여운호랑이7875 23/09/26 7875
172819 [질문] pc 고장 질문 입니다 [13] 박군9367 23/09/26 9367
172818 [질문] 크롬 엔비디아 이슈는 언제 고쳐질까요? [4] 폰지사기7455 23/09/26 7455
172817 [질문] 이거를 영어로 표현하면 어떤 말들이 적합할까요? [13] SaiNT9021 23/09/26 9021
172816 [질문] 건물 공사로 골목 통행을 막는 행위 신고하는 법 [5] 원해랑7170 23/09/26 7170
172815 [질문] 주택연금에 대해서 어떻게 생각하시나요? [12] blessed8751 23/09/26 8751
172814 [질문] 보험점검전화 잊을만 하면 수 없이 계속 옵니다. [7] 애플댄스6504 23/09/26 6504
172813 [질문] 달리기(조깅)을 할 때 심박수가 너무 높은데, 훈련으로 나아질 수 있을까요? [27] superiordd9583 23/09/26 9583
172812 [질문] 차에 대한 고민 [34] 펩시제로라임8935 23/09/26 8935
172811 [질문] 곰팡이 검사지 같은게 있나요? [3] 개떵이다7466 23/09/26 7466
172810 [질문] 웹, 앱 UX/UI 기획 공부하는법? 학원? 같은게 있을까요 [4] 티맥타임7549 23/09/26 7549
172809 [질문] 여러분이 생애 마지막으로 먹고 싶은 음식은? [37] 쎌라비9181 23/09/25 9181
목록 이전 다음
댓글

+ : 최근 1시간내에 달린 댓글
+ : 최근 2시간내에 달린 댓글
맨 위로