궁금한데 스벨트의 단점은 어떤게 있을까요? 정보
SVELTE 궁금한데 스벨트의 단점은 어떤게 있을까요?본문
사용해보신분들 중에서 스벨트 단점은 어떤게 있을까요??
저도 지금 스벨트 한번 공부 시도 하고 있는데요.
장단점 그냥 구글링으로 찾아본것도 있지만.. 실제로 써보신분들이 알고 있는 단점을 좀 알고싶네요..
추천
0
0
댓글 5개
아직 배우고 있어서 다른분의 글로..
https://velog.io/@composite/Svelte-%EC%9E%A5%EB%8B%A8%EC%A0%90
https://velog.io/@composite/Svelte-%EC%9E%A5%EB%8B%A8%EC%A0%90
화명이 껌벅거린다.
화면이 먼저 나오고 데이터를 그뒤에 불러와져서
화면이 2번 액션이 취해집니다.
이 문제는 svelte-query 를 이용해서 개발을 하면됩니다.
그러면, 로딩 바라던가, 브라우저 캐시 이용으로 이용자 만족도가 괭장히 높아집니다.
그런데 svelte-query 사용하면, 개발 복잡도가 높아 집니다. 그래도 react, vue 보다 복잡하지 않습니다.
개발 로직이 방대해지면, 오히려 react나 vue 보다 용량이 늘어납니다.
react 나 vue는 그들만의 독특한 환경을 만들기 위해 초기에 환경 파일들이 로드 됩니다.
그게 좀 큽니다. 그래서 초기에는 svelte가 경량이다 라는 말을 하게 됩니다. 이때 좀 많이 차이 납니다. 그러나 서비스의 규모가 엄청 로직이 많은 프로젝트로 가게 되면, svelte의 용량이 커지게 됩니다. 그건 svelte는 바닐라 자바스크립트로 변환되어서 매 페이지마다 기능을 직접 구현하기 때문이라고 합니다. 그래도 일반 JS보다 용량은 작습니다.
결과물 스크래핑이 어려울 수도
CLASS 를 임의의 값으로 새로 생성해서 지시자로 사용해서 CLASS를 지시자로 이용한 스크래핑을 못할수도 있습니다. ID 를 달아줘야할수도 있습니다. 검색엔진 SEO도 라이브러리가 있어서
설치하면 SEO 잡아 줄수도 있습니다.
배포가 좀 복잡합니다.
php는 ftp로 걍 파일 업로드 다운로드하면 끝인데,
이건 서버 환경이 달라서 이걸 최적화 해주려면,
git에 업로드하고, 서버에서 git 으로 다운로드 받고
다시 서버 환경에서 모듈설치하고 빌드하고 서버 올려주고
뭐 이런 과정을 거져야합니다.
아니면, saas 서비스를 이용하면 됩니다.
아마도 svelte는 SAAS를 먹여살리려고 나온 서비스 인 것 같습니다.
그런데 하이브리드앱을 개발하려고하면 엄청 쉽게 배포 됩니다.
그래서 배포 생각하면 스벨트는 하이브리디앱 개발용이 아닌가 싶기도 합니다.
컨텐트몰 보면 5배만원씩하면서 웹뷰로 개발해준다는 내용있는데,
스밸트로 하면 걍 수~욱 개발 가능합니다.
cordova 나 capacitor 생태계에 쉽게 입문할 수 있습니다.
택스트에디터가 마땅한게 없네요.
tiny 하고 ckediter 는 적용 해보았는데, 그외에 유명한 에디터들이 적용이 되지 않습니다.
일반 SVELTE 환경에서는 되는데, SVELTEKIT 환경에서는 잘 안됩니다.
곧 대응하기는 할텐데, sveltekit 이 정식버전 나온게 작년 12월 달이라서 그여파가 있습니다.
빌드시간이 오래 걸립니다.
컴이 구리면 빌드가 바로 안되고. 여러번 시도해야 됩니다.
아니면 서버에 올리고 빌드하면 좀 쉽게 됩니다.
그래도 sveltekit 에서 vite와 협력하면서 개발할 때는 변경사항이 실시간으로 반영되어서
중간에 빌드할 일은 없습니다.
그리고 하이브리드앱 개발할때도 내컴주소 이용해서 포트번호로 접속가능해서 앱에서도 실시간 반영됩니다. 예전처럼 빌드하고 앱싱크하고 테스트하고를 반복하는 번거로움이 거의 사라졌습니다.
하이브리드앱 단가 하향 조절
하이브리드 앱 만드는게 너무 쉬워서 노임 단가가 내려갈 것을 걱정해야 할 수도.
화면이 먼저 나오고 데이터를 그뒤에 불러와져서
화면이 2번 액션이 취해집니다.
이 문제는 svelte-query 를 이용해서 개발을 하면됩니다.
그러면, 로딩 바라던가, 브라우저 캐시 이용으로 이용자 만족도가 괭장히 높아집니다.
그런데 svelte-query 사용하면, 개발 복잡도가 높아 집니다. 그래도 react, vue 보다 복잡하지 않습니다.
개발 로직이 방대해지면, 오히려 react나 vue 보다 용량이 늘어납니다.
react 나 vue는 그들만의 독특한 환경을 만들기 위해 초기에 환경 파일들이 로드 됩니다.
그게 좀 큽니다. 그래서 초기에는 svelte가 경량이다 라는 말을 하게 됩니다. 이때 좀 많이 차이 납니다. 그러나 서비스의 규모가 엄청 로직이 많은 프로젝트로 가게 되면, svelte의 용량이 커지게 됩니다. 그건 svelte는 바닐라 자바스크립트로 변환되어서 매 페이지마다 기능을 직접 구현하기 때문이라고 합니다. 그래도 일반 JS보다 용량은 작습니다.
결과물 스크래핑이 어려울 수도
CLASS 를 임의의 값으로 새로 생성해서 지시자로 사용해서 CLASS를 지시자로 이용한 스크래핑을 못할수도 있습니다. ID 를 달아줘야할수도 있습니다. 검색엔진 SEO도 라이브러리가 있어서
설치하면 SEO 잡아 줄수도 있습니다.
배포가 좀 복잡합니다.
php는 ftp로 걍 파일 업로드 다운로드하면 끝인데,
이건 서버 환경이 달라서 이걸 최적화 해주려면,
git에 업로드하고, 서버에서 git 으로 다운로드 받고
다시 서버 환경에서 모듈설치하고 빌드하고 서버 올려주고
뭐 이런 과정을 거져야합니다.
아니면, saas 서비스를 이용하면 됩니다.
아마도 svelte는 SAAS를 먹여살리려고 나온 서비스 인 것 같습니다.
그런데 하이브리드앱을 개발하려고하면 엄청 쉽게 배포 됩니다.
그래서 배포 생각하면 스벨트는 하이브리디앱 개발용이 아닌가 싶기도 합니다.
컨텐트몰 보면 5배만원씩하면서 웹뷰로 개발해준다는 내용있는데,
스밸트로 하면 걍 수~욱 개발 가능합니다.
cordova 나 capacitor 생태계에 쉽게 입문할 수 있습니다.
택스트에디터가 마땅한게 없네요.
tiny 하고 ckediter 는 적용 해보았는데, 그외에 유명한 에디터들이 적용이 되지 않습니다.
일반 SVELTE 환경에서는 되는데, SVELTEKIT 환경에서는 잘 안됩니다.
곧 대응하기는 할텐데, sveltekit 이 정식버전 나온게 작년 12월 달이라서 그여파가 있습니다.
빌드시간이 오래 걸립니다.
컴이 구리면 빌드가 바로 안되고. 여러번 시도해야 됩니다.
아니면 서버에 올리고 빌드하면 좀 쉽게 됩니다.
그래도 sveltekit 에서 vite와 협력하면서 개발할 때는 변경사항이 실시간으로 반영되어서
중간에 빌드할 일은 없습니다.
그리고 하이브리드앱 개발할때도 내컴주소 이용해서 포트번호로 접속가능해서 앱에서도 실시간 반영됩니다. 예전처럼 빌드하고 앱싱크하고 테스트하고를 반복하는 번거로움이 거의 사라졌습니다.
하이브리드앱 단가 하향 조절
하이브리드 앱 만드는게 너무 쉬워서 노임 단가가 내려갈 것을 걱정해야 할 수도.
@틀불 장문 대단히 감사합니다.. 추천 버튼 이 없네요..
우선적으로 빌드관련해서는 아쉬운 부분이네요..?!
제가 vue2 할때도 번들링 할때는 진짜 어렵게 찾아서 했는데.. 스벨트 번들하고 배포할때가 복잡하다고하니...
그냥 따로 앱개발 할때만 쓸까하다가도.. 배포가 좀 복잡하다하니.. 앱 배포할때는 쉬울까요??
여러 고민이 드네요...
또 다른 생각으로는 vue3로 다시 배울까 그 생각도 있고,, 맨날 찾아본다고 만하다가... 다시 또 앱개발쪽 제한의 들어왔는데... 그냥 말뿐으로 스치게 됐어요.. 제가 실력이 아예 없는것도 아닌데~ 그냥 아무말도 없고 묻어서 갔어요... 그래서 좀 현타오고... 어떻게든 큰맘먹고 하이브리드앱에 대해서 찾아보려 하는데~ 딱히 도움 청할만곳도 없고.. 네이티브로 껍데기로 사과폰이나 안드폰 따로 배울까... 별난 생각드네요...
우선적으로 빌드관련해서는 아쉬운 부분이네요..?!
제가 vue2 할때도 번들링 할때는 진짜 어렵게 찾아서 했는데.. 스벨트 번들하고 배포할때가 복잡하다고하니...
그냥 따로 앱개발 할때만 쓸까하다가도.. 배포가 좀 복잡하다하니.. 앱 배포할때는 쉬울까요??
여러 고민이 드네요...
또 다른 생각으로는 vue3로 다시 배울까 그 생각도 있고,, 맨날 찾아본다고 만하다가... 다시 또 앱개발쪽 제한의 들어왔는데... 그냥 말뿐으로 스치게 됐어요.. 제가 실력이 아예 없는것도 아닌데~ 그냥 아무말도 없고 묻어서 갔어요... 그래서 좀 현타오고... 어떻게든 큰맘먹고 하이브리드앱에 대해서 찾아보려 하는데~ 딱히 도움 청할만곳도 없고.. 네이티브로 껍데기로 사과폰이나 안드폰 따로 배울까... 별난 생각드네요...
@리오닥터
다른방법 다 버리시고 스벨트로 갈아탈 것을 추천 드립니다.
우리가 JQUERY 배울때 배운다는 느낌이라도 있었나요. 어 이렇게 되네. 하면서
넘 쉬워서 이거 안하면 안되겠다 하면서 슈~웅 다다닥 ... 개발 했잖아요.
스벨트도 그정도 수준입니다.
스밸트 개발한 리치헤리슨이 말한것 처럼
개발자의 개발 경험을 중요하게 생각한 언어 입니다.
그래서 우리 PHP개발하시는 분들이라면
오히려 더욱 직관적이라서 쉽습니다.
REACT 나 VUE 처럼 변수에 담아서 컴포넌트 주입하고 이런일 하지 않습니다.
svelte를 구현하기 위한 별도의 구조 따위는 없습니다.
그냥 html 에다가 표현은{title} 조건은 {#if} {/if} 나열은 {#each list as item, i} {/each}
이렇게 써주면 바로 나옵니다. 마치 php 코딩하듯이 하면 됩니다.
바닐라 자바스크립트 그대로 이용하면서 페이지에 넘길때 바인딩이 쉽고 직관적입니다.
이만한 장점이 없습니다. 그래서 이부분만 보면 jquery 보다 더 짧고 쉽습니다.
그러면서 못하는 기능이 없을정도 입니다.
react , vue 라이브러리 거의 대부분 다 사용가능하고요.
그리고 앱빌드배포는 간단하게 말하면 쉽습니다.
npm run build
npx cap sync
이렇게 하면 안드로이드 스튜디오에 딱 붙습니다.
다른방법 다 버리시고 스벨트로 갈아탈 것을 추천 드립니다.
우리가 JQUERY 배울때 배운다는 느낌이라도 있었나요. 어 이렇게 되네. 하면서
넘 쉬워서 이거 안하면 안되겠다 하면서 슈~웅 다다닥 ... 개발 했잖아요.
스벨트도 그정도 수준입니다.
스밸트 개발한 리치헤리슨이 말한것 처럼
개발자의 개발 경험을 중요하게 생각한 언어 입니다.
그래서 우리 PHP개발하시는 분들이라면
오히려 더욱 직관적이라서 쉽습니다.
REACT 나 VUE 처럼 변수에 담아서 컴포넌트 주입하고 이런일 하지 않습니다.
svelte를 구현하기 위한 별도의 구조 따위는 없습니다.
그냥 html 에다가 표현은{title} 조건은 {#if} {/if} 나열은 {#each list as item, i} {/each}
이렇게 써주면 바로 나옵니다. 마치 php 코딩하듯이 하면 됩니다.
바닐라 자바스크립트 그대로 이용하면서 페이지에 넘길때 바인딩이 쉽고 직관적입니다.
이만한 장점이 없습니다. 그래서 이부분만 보면 jquery 보다 더 짧고 쉽습니다.
그러면서 못하는 기능이 없을정도 입니다.
react , vue 라이브러리 거의 대부분 다 사용가능하고요.
그리고 앱빌드배포는 간단하게 말하면 쉽습니다.
npm run build
npx cap sync
이렇게 하면 안드로이드 스튜디오에 딱 붙습니다.
@틀불 아!! 그럼 웹 빌드가 좀 까다롭다는거죠?? 앱은 간단한데~