Vscode: ์•„์ดํŒจ๋“œ์šฉ ๋น„์ฃผ์–ผ ์ŠคํŠœ๋””์˜ค ์ฝ”๋“œ

์— ๋งŒ๋“  2019๋…„ 03์›” 19์ผ  ยท  182์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: microsoft/vscode

ipad์—์„œ Visual Studio Code๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

install-update ios

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

WWDC ์ดํ›„, iPad OS๊ฐ€ ๋‚˜๊ฐ‘๋‹ˆ๋‹ค. ipad์šฉ vscode๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ?

๋ชจ๋“  182 ๋Œ“๊ธ€

iOS์šฉ ๊ธฐ๋ณธ ์•ฑ ๋นŒ๋“œ๊ฐ€ ์—†๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ตœ๊ทผ์— iPad pro๋ฅผ ๊ตฌ์ž…ํ•  ๋•Œ๋„ ๊ฐ™์€ ์งˆ๋ฌธ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

iOS์—๋Š” ์‹ค์ œ๋กœ ์ž‘๋™ํ•˜๊ธฐ์—๋Š” ๋„ˆ๋ฌด ๋งŽ์€ ์ œํ•œ ์‚ฌํ•ญ์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

VSCode๋Š” Electron์—์„œ ์‹คํ–‰๋˜๋ฉฐ ๋ฐ์Šคํฌํ†ฑ ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค. ์ฆ‰, Windows, macOS ๋ฐ Linux์—์„œ๋งŒ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. iPad๋Š” ๋ชจ๋ฐ”์ผ ํ”„๋ ˆ์ž„์›Œํฌ์ธ iOS๋ฅผ ์‹คํ–‰ํ•˜๋ฏ€๋กœ ํŒ€์ด ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค ์ƒ๊ฐ์„ ํ•˜์ง€ ์•Š๋Š” ํ•œ ์„ฑ๊ณตํ•˜์ง€ ๋ชปํ•  ๊ฐ€๋Šฅ์„ฑ์ด ํฝ๋‹ˆ๋‹ค.

์ฐธ๊ณ ๋กœ, ๋ฏธ๋””์–ด ์ž‘์—… ๋ฐ ์†Œ๋น„์— MediaPad M5๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์•„๋งˆ๋„ Android ๋ฒ„์ „๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.>

์ด ์•„์ด๋””์–ด๊ฐ€ ๋งค์šฐ ์ข‹๋‹ค๊ณ  ์ƒ๊ฐํ•˜์—ฌ ์ด ์งˆ๋ฌธ์„ ์ œ๊ธฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๋งํฌ๋Š” ์˜ˆ๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

https://medium.com/@igorandreev/how -to-code-with-ipad-pro-make-your-2019-year-of-mobile-development-e4e678daab77

electronjs๋Š” ios์—์„œ๋„ ๋‹ค์ค‘ ํ”Œ๋žซํผ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ์ƒ์„ฑํ•˜๋ฏ€๋กœ ipad์—์„œ๋„ ์ž‘๋™ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

iOS ์ œํ•œ์œผ๋กœ ์ธํ•ด iPad์—์„œ ์ด ๊ธฐ๋Šฅ์„ ์‹คํ–‰ํ•˜๊ณ  ์ „์ฒด ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋งŽ์€ ์–ด๋ ค์›€์ด ์žˆ์Šต๋‹ˆ๋‹ค.

VSCode์˜ Live Share๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ผ์ดํŠธ ๋ฒ„์ „์€ ์–ด๋–ป์Šต๋‹ˆ๊นŒ? ๋ฐ์Šคํฌํ†ฑ์—์„œ ์ •์‹ ๋ฒ„์ „์„ ์‹คํ–‰ํ•˜์—ฌ ๋ฌด๊ฑฐ์šด ์ž‘์—…๊ณผ ํŒŒ์ผ ๊ด€๋ฆฌ๋ฅผ ๋ชจ๋‘ ์ˆ˜ํ–‰ํ•˜๊ณ  iPad๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์›๊ฒฉ ํŽธ์ง‘์„ ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

์˜ˆ, @sean256์ด ์ œ์•ˆํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ฐ์Šคํฌํƒ‘์˜ ๋งˆ๋ ฅ๊ณผ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๊ณ  ๋ธŒ๋ผ์šฐ์ €์˜ iPad ๋˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฐœ๋ฐœ์— ํ•„์š”ํ•œ ํŠน์ˆ˜ ๊ธฐ๋Šฅ์„ ์ง€์›ํ•˜๋Š” ์ตœ์ ํ™”๋œ ์•ฑ์—์„œ ์›๊ฒฉ์œผ๋กœ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ๋Š” ๊ณณ์—์„œ ์ผ์ข…์˜ ๊ตฌํ˜„์„ ๋ณด๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ESC ํ‚ค.

@hugheba https://github.com/cdr/code-server ๋ฅผ ์‚ฌ์šฉํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค

@scottgrobinson code-server ์œ ๋งํ•ด ๋ณด์ž…๋‹ˆ๋‹ค.

์„ค์น˜ํ•˜๊ณ  iPad์šฉ์œผ๋กœ ์„ค์ •ํ•˜๋ ค๊ณ  ํ–ˆ์ง€๋งŒ ํŒŒ์ผ ์‹œ์Šคํ…œ์—์„œ ์ž‘์—… ๊ณต๊ฐ„ ์ถ”๊ฐ€, ํ”Œ๋Ÿฌ๊ทธ์ธ ์„ค์น˜ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ ๋™๊ธฐํ™” ๋“ฑ๊ณผ ๊ฐ™์€ ๋งŽ์€ ์ž‘์—…์ด ์ž‘๋™ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

VSCode ์„ค์น˜์™€ ๋ณ„๋„๋กœ ์„ค์น˜๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ ๊ฐ™์œผ๋ฏ€๋กœ ํ™˜๊ฒฝ์„ ๋‹ค์‹œ ์„ค์ •ํ•ด์•ผ ํ•˜๋ฏ€๋กœ ์„ค์ • ๋™๊ธฐํ™” ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์ž‘๋™์‹œํ‚ค๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค(์‹คํŒจ).

์œ ๋ฃŒ ์ œํ’ˆ์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ ๊ฐ™์ง€๋งŒ ์•„์ง ๊ธฐ๋Šฅ์ด ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

iOS์—๋Š” https://github.com/cdr/code-server ์™€ ๊ฐ™์€ ๊ฒƒ์ด ์ž‘๋™ํ•˜๋„๋ก ํ•˜๋Š” ๊ฑฐ๋ž˜ ์ค‘๋‹จ ๋ฒ„๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŠน์ • ๋ฐ ์ค‘์š”ํ•œ ํ‚ค ์ด๋ฒคํŠธ๋Š” ์ž…๋ ฅ/ํ…์ŠคํŠธ ์˜์—ญ ํ•„๋“œ(ํ™”์‚ดํ‘œ ํ‚ค, ์‹œ์Šคํ…œ ํ‚ค)์— ๋Œ€ํ•ด ์‹คํ–‰๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ•ต์‹ฌ์— ์žˆ๋Š” VSCode์˜ ํŽธ์ง‘๊ธฐ๋Š” ์ด๋Ÿฌํ•œ ๋ˆ„๋ฝ๋œ ํ‚ค ์ด๋ฒคํŠธ์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ๋‚˜๋Š” ์œ ์ผํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋Š” ์ˆ˜์ •์ž(alt) ์ด๋ฒคํŠธ๋กœ i,j,k,l์„ ๊ฐ€๋กœ์ฑ„๊ณ  ํ™”์‚ดํ‘œ ํ‚ค์ฒ˜๋Ÿผ ๋ณด์ด๋„๋ก ์ด๋ฒคํŠธ๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑํ•˜๋Š” ๋”์ฐํ•œ ํ•ดํ‚น์„ ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋”์ฐํ•˜์ง€๋งŒ ํŽธ์ง‘์ž์—๊ฒŒ ์ผ์„ ์‹œ์ผฐ์Šต๋‹ˆ๋‹ค.

์• ํ”Œ์€ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. UIKit ํŒ€๊ณผ ํ•จ๊ป˜ ์ผํ•˜๋Š” ์˜ค๋žœ ์นœ๊ตฌ์—๊ฒŒ "ํ™”๋‚œ ํญ์–ธ"์„ ๋ณด๋ƒˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ iOS์—์„œ ๋งค์šฐ ํฅ๋ฏธ๋กœ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•ด๊ฒฐํ•ด์•ผ ํ•  ๋˜ ๋‹ค๋ฅธ ํ”„๋ ˆ์ž„์›Œํฌ ๋ฌธ์ œ์ด์ง€๋งŒ ๋งค์šฐ ํ›Œ๋ฅญํ•ฉ๋‹ˆ๋‹ค.

VS ์ฝ”๋“œ๊ฐ€ ์ด๋ฏธ "์›๊ฒฉ ๊ฐœ๋ฐœ" ํ™•์žฅ์„ ์ถœ์‹œํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ssh๋ฅผ ํ†ตํ•ด Linux ์„œ๋ฒ„๋กœ ์›๊ฒฉ์œผ๋กœ ์ž‘์—…ํ•˜๋Š” ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•ด iOS ํ”Œ๋žซํผ์šฉ VS ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ํ•ฉ๋ฆฌ์ ์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด๋ ‡๊ฒŒ ํ•˜๋ฉด iPad Pro ์‚ฌ์šฉ์ž๊ฐ€ ์›๊ฒฉ์œผ๋กœ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ๋Š” ๋” ๋‚˜์€ IDE๋ฅผ ๊ฐ–๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

App Store ๊ฒ€ํ†  ์ง€์นจ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋งํ•ฉ๋‹ˆ๋‹ค.

2.5.6 ์›น์„ ํƒ์ƒ‰ํ•˜๋Š” ์•ฑ์€ ์ ์ ˆํ•œ WebKit ํ”„๋ ˆ์ž„์›Œํฌ์™€ WebKit ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

iOS์šฉ VSCode๊ฐ€ ๋‹ค๋ฅธ ๋ Œ๋” ์—”์ง„์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋Š” ์ด์œ ๋ฅผ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ฒฐ๊ตญ "์›น์„ ํƒ์ƒ‰"ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

MSBuild2019์—์„œ ๋ผ์ด๋ธŒ ๊ณต์œ ๊ฐ€ ์ œ๊ณต๋˜์–ด ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. https://devblogs.microsoft.com/visualstudio/intelligent-productivity-and-collaboration-from-anywhere/ , https://visualstudio.microsoft.com/services/live -share/ , https://docs.microsoft.com/en-us/visualstudio/liveshare/use/vscode

๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ฐ˜ ์›น ๋„์šฐ๋ฏธ๊ฐ€ ๊ฐœ๋ฐœ ์ค‘์ž…๋‹ˆ๋‹ค(src: https://devblogs.microsoft.com/visualstudio/intelligent-productivity-and-collaboration-from-anywhere/ ).

์•ž์œผ๋กœ https://online.visualstudio.com ์œผ๋กœ ์ด๋™ํ•˜์—ฌ ์›๊ฒฉ ํ™˜๊ฒฝ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Visual Studio Online์€ Visual Studio Code๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— Visual Studio Code ์ž‘์—… ์˜์—ญ๊ณผ Visual Studio์˜ ํ”„๋กœ์ ํŠธ ๋ฐ ์†”๋ฃจ์…˜์„ ๋ชจ๋‘ ์ง€์›ํ•˜๋Š” ๋™์‹œ์— ์นœ์ˆ™ํ•œ ๋Š๋‚Œ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ด๋ฏธ ์•Œ๊ณ  ์žˆ๊ณ  ์• ์šฉํ•˜๋Š” ํ™•์žฅ ๊ธฐ๋Šฅ์˜ ํ’๋ถ€ํ•œ ์—์ฝ”์‹œ์Šคํ…œ์˜ ์ด์ ์„ ๋ˆ„๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ IntelliCode ๋ฐ Live Share๋ฅผ ์ฆ‰์‹œ ์ง€์›ํ•˜์—ฌ ๊ฐœ๋ฐœ์ž๊ฐ€ ํ•„์š”๋กœ ํ•˜๋Š” ํ’๋ถ€ํ•œ ํ˜‘์—… ๋ฐ ์ƒ์‚ฐ์„ฑ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋Œ€๋ถ€๋ถ„์˜ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ด์ œ ์›๊ฒฉ ๊ฐœ๋ฐœ์ด ์ œ์ž๋ฆฌ์— ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋ธŒ๋ผ์šฐ์ €(Safari์—์„œ ๋ƒ„์ƒˆ๊ฐ€ ๋‚˜๊ธฐ ๋•Œ๋ฌธ์—)๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์‹ค์ œ(html ๊ธฐ๋ฐ˜) ์•ฑ์—์„œ iOS ๋ฐ Android์—์„œ ์•ฑ์œผ๋กœ VS Code๋ฅผ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ์™„๋ฒฝํ•œ ๊ธฐํšŒ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์˜ˆ, ๋ถ€ํƒํ•ฉ๋‹ˆ๋‹ค! VS Code์˜ ๋ชจ๋“  ์›๊ฒฉ ์ž‘์—…์œผ๋กœ ๊ธฐ๋ณธ VS Code iPad ์•ฑ์€ ์ƒ๊ฐํ•  ํ•„์š”๊ฐ€ ์—†๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ˆ˜๋…„ ๋™์•ˆ ๋‚ด iPad๊ฐ€ ์ง„์ •ํ•œ ์ƒ์‚ฐ์„ฑ์ด ๋˜๊ธฐ๋ฅผ ๊ฐ„์ ˆํžˆ ๋ฐ”๋ž์Šต๋‹ˆ๋‹ค. ๋ง›๋ณผ ์ˆ˜ ์žˆ์„ ์ •๋„๋กœ ๊ฐ€๊นŒ์›Œ์š”!

WWDC ์ดํ›„, iPad OS๊ฐ€ ๋‚˜๊ฐ‘๋‹ˆ๋‹ค. ipad์šฉ vscode๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ?

๋™์˜ํ•ฉ๋‹ˆ๋‹ค... iPadOS๋Š” ์™„์ „ํžˆ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
์œ ์—ฐํ•˜๊ณ  ์‰ฝ๊ฒŒ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์™„์ „ํžˆ ์ƒˆ๋กœ์šด ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์ฝ”๋”ฉ์„ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋ˆ„๊ตฐ๊ฐ€๋Š” ์ด ์ผ์„ ์•„์ฃผ ์‰ฌ์›Œ ๋ณด์ด๋Š” ์ผ์— ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

https://medium.com/@ow/its -finally-possible-to-code-web-apps-on-an-ipad-pro-90ad9c1fb59a

์›๊ฒฉ SSH๋งŒ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ipads์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.๋ฉ‹์ง„ ์ผ์ธ ๊ฒƒ ๊ฐ™์•„์š”!!!๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ๋Š” ์ฝ”๋”ฉ์— kbd๋งŒ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ์‹œ๋„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์—ญ์‹œ ํ™˜์ƒ์ ์ž…๋‹ˆ๋‹ค!!

VSCode๋Š” Electron์—์„œ ์‹คํ–‰๋˜๋ฉฐ _desktop_ ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค. ์ฆ‰, Windows, macOS ๋ฐ Linux์—์„œ๋งŒ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. iPad๋Š” ๋ชจ๋ฐ”์ผ ํ”„๋ ˆ์ž„์›Œํฌ์ธ iOS๋ฅผ ์‹คํ–‰ํ•˜๋ฏ€๋กœ ํŒ€์ด ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค ์ƒ๊ฐ์„ ํ•˜์ง€ ์•Š๋Š” ํ•œ ์„ฑ๊ณตํ•˜์ง€ ๋ชปํ•  ๊ฐ€๋Šฅ์„ฑ์ด ํฝ๋‹ˆ๋‹ค.

์ฐธ๊ณ ๋กœ, ๋ฏธ๋””์–ด ์ž‘์—… ๋ฐ ์†Œ๋น„์— MediaPad M5๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์•„๋งˆ๋„ Android ๋ฒ„์ „๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.>

๊ทธ๋“ค์ด ํ•œ๋‹ค๋ฉด ์ •๋ง ์ •๋ง ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ž‘์—…์„ ์™„๋ฃŒํ•˜๋ ค๋ฉด iPad์™€ MacBook์„ ๋ชจ๋‘ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋ฉฐ ํ”„๋ ˆ์ž„ ์ž‘์—…์ด ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— Visual์ด ์—ฌ์ „ํžˆ iPad์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ํฐ ์‹œ๊ฐ„์„ ๋นจ์•„.

i/iPadOS์—์„œ ์ด ์ž‘์—…์˜ MVP/PoC๋ฅผ ์–ป๋Š” ๋ฐ ์ง„์ „์ด ์—†๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ €๋Š” iPad Pro์—์„œ Coda๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž‘์€ DigitalOcean ๊ฐœ๋ฐœ ์„œ๋ฒ„์—์„œ ๊ฐœ๋ฐœ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์Šคํฌํƒ‘์—์„œ ์ž‘์—…ํ•˜๊ณ  ์‹ถ์„ ๋•Œ VSCode์˜ ์ƒˆ๋กœ์šด ์›๊ฒฉ SSH ํ™•์žฅ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋™์ผํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ์ ์œผ๋กœ ์›๊ฒฉ SSH ๋ถ€๋ถ„(๋กœ์ปฌ ํŒŒ์ผ ์—†์Œ)๋งŒ ์ œ๊ณตํ•˜๋Š” "๋ผ์ดํŠธ" ๋ฒ„์ „์˜ VSCode๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ •๋ง ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์•„๋งˆ๋„ ๋‚ด๊ฐ€ ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ํ›จ์”ฌ ๋” ๋ณต์žกํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์†”์งํžˆ Coda๋Š” ํ›Œ๋ฅญํ•œ ์†”๋ฃจ์…˜์ด์ง€๋งŒ ์ €๋Š” Code๋ฅผ ์‚ฌ๋ž‘ํ•˜๋ฏ€๋กœ ์—ฌ๊ธฐ์—์„œ ๋ฐ”๋ผ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜!๋‚˜๋„ ๋„ˆ๋ž‘ ๊ฐ™์€ ์ƒํ™ฉ์ด์•ผ!

2019ๅนด7ๆœˆ10ๆ—ฅ๏ผŒไธ‹ๅˆ3:15๏ผŒCarlos Rodriguez [email protected]์—ๅ†™้“๏ผš

์ €๋Š” iPad Pro์—์„œ Coda๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž‘์€ DigitalOcean ๊ฐœ๋ฐœ ์„œ๋ฒ„์—์„œ ๊ฐœ๋ฐœ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์Šคํฌํƒ‘์—์„œ ์ž‘์—…ํ•˜๊ณ  ์‹ถ์„ ๋•Œ VSCode์˜ ์ƒˆ๋กœ์šด ์›๊ฒฉ SSH ํ™•์žฅ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋™์ผํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ์ ์œผ๋กœ ์›๊ฒฉ SSH ๋ถ€๋ถ„(๋กœ์ปฌ ํŒŒ์ผ ์—†์Œ)๋งŒ ์ œ๊ณตํ•˜๋Š” "๋ผ์ดํŠธ" ๋ฒ„์ „์˜ VSCode๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ •๋ง ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์•„๋งˆ๋„ ๋‚ด๊ฐ€ ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ํ›จ์”ฌ ๋” ๋ณต์žกํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์†”์งํžˆ Coda๋Š” ํ›Œ๋ฅญํ•œ ์†”๋ฃจ์…˜์ด์ง€๋งŒ ์ €๋Š” Code๋ฅผ ์‚ฌ๋ž‘ํ•˜๋ฏ€๋กœ ์—ฌ๊ธฐ์—์„œ ๋ฐ”๋ผ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

โ€”
๋‹น์‹ ์ด ๋Œ“๊ธ€์„ ๋‹ฌ์•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ฑฐ๋‚˜ GitHub์—์„œ ๋ณด๊ฑฐ๋‚˜ ์Šค๋ ˆ๋“œ๋ฅผ ์Œ์†Œ๊ฑฐํ•˜์„ธ์š”.

๋ผ์ฆˆ๋ฒ ๋ฆฌ ํŒŒ์ด๋ฅผ ๊ฐœ๋ฐœ ์„œ๋ฒ„๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅํ•˜์ง€ ์•Š์„๊นŒ์š”? ๋‘ ๊ฐ€์ง€ ์‹œ๋‚˜๋ฆฌ์˜ค๊ฐ€ ๋– ์˜ค๋ฆ…๋‹ˆ๋‹ค.

๋ผ์ฆˆ๋ฒ ๋ฆฌ ํŒŒ์ด VNC

USB-c(์ƒˆ๋กœ์šด Pi 4์—๋Š” ๊ธฐ๋ณธ usb-c ํ”Œ๋Ÿฌ๊ทธ๊ฐ€ ์žˆ์Œ)๋ฅผ ํ†ตํ•ด Raspberry Pi๋ฅผ iPad์— ์—ฐ๊ฒฐํ•˜๊ณ  USB-c๋ฅผ ํ†ตํ•ด iPad ์ด๋”๋„ท์„ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ์žฅ์น˜์—์„œ VNC๋ฅผ ํ™œ์„ฑํ™”ํ•˜์‹ญ์‹œ์˜ค. iPad์—์„œ Pi๋กœ Jump Desktop ๋˜๋Š” ๊ธฐํƒ€ VNC ํด๋ผ์ด์–ธํŠธ์™€ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.

๋ผ์ฆˆ๋ฒ ๋ฆฌ ํŒŒ์ด SSH/์ฝ”๋”

์œ„์™€ ๋™์ผํ•˜๊ฒŒ Pi์˜ VS Code Coder ์„œ๋ฒ„๋งŒ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ Coda๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Pi์— ๋Œ€ํ•œ SSH/SFTP ์—ฐ๊ฒฐ์„ ๊ตฌ์ถ•ํ•˜์‹ญ์‹œ์˜ค. ์ด๊ฒƒ์€ usb-c ๋Œ€์‹  ๋ธ”๋ฃจํˆฌ์Šค๋ฅผ ํ†ตํ•ด์„œ๋„ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(https://gist.github.com/rcarmo/6ad6c09e904c35857bad2dd2769edf76).

์˜คํ”„๋ผ์ธ(์—ฌํ–‰ ์ค‘)์—๋„ ์ž‘๋™ํ•˜๋Š” ์‹ค์ œ ์ปดํ“จํŒ…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ž‘์€ "๊ฐœ๋ฐœ ์ƒ์ž"๊ฐ€ ์žˆ์œผ๋ฉด ๊ต‰์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์„ค์ •์œผ๋กœ iPad์—์„œ Pi๋กœ ์ธํ„ฐ๋„ท์„ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

์›น IDE๋ฅผ ์‹œ๋„ํ•˜๊ณ  ์‚ฌ์šฉํ•˜๋Š” ๋Œ€์‹  ์•ฑ์œผ๋กœ SSH์šฉ VScode ์›๊ฒฉ์„ ์‚ฌ์šฉํ•˜๋ฉด ์—„์ฒญ๋‚œ ๊ฐœ์„ ์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. VScode๋งŒํผ ์ฝ”๋“œ๊ฐ€ ๋น„์Šทํ•œ ๋‹จ์ผ ios ์•ฑ์„ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ด๊ฒƒ์ด ์ผ์ด์—ˆ์œผ๋ฉด ์ข‹๊ฒ ๋‹ค. ์–ด์จŒ๋“  ์ €๋Š” ssh๋ฅผ ํ†ตํ•ด ๋ชจ๋“  ๊ฐœ๋ฐœ์„ ์ˆ˜ํ–‰ํ•˜๊ณ  12.9" ipad pro๋Š” ์™„๋ฒฝํ•œ "ํ„ฐ๋ฏธ๋„"์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๊ฒ€ํ† ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ? ์ œ๊ฐ€ ๋„์šธ ์ˆ˜ ์žˆ๋Š” ์ผ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

@yanshuf0 ๋‚ด๊ฐ€ ์ฐพ์€ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ฒƒ์€ code-server [ link ]๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์‚ฌ์šฉํ•˜๋ ค๋Š” ์„œ๋ฒ„๊ฐ€ ํ•˜๋‚˜์ผ ๋•Œ ์ข‹์€ ์„ค์ •์ž…๋‹ˆ๋‹ค(๋” ๋ช…ํ™•ํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๊ฐ๊ฐ์„ ๊ตฌ์„ฑํ•˜๋Š” ๋ฒˆ๊ฑฐ๋กœ์›€). ๋˜ํ•œ ์ฝ”๋“œ ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์•ˆ์ •์„ฑ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋•Œ๋•Œ๋กœ ssh์— ์ ‘์†ํ•˜๊ณ  ํ”„๋กœ์„ธ์Šค๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋” ๋‚˜์€ ๋Œ€์•ˆ์€ sshcode [ link ]์™€ ๊ฐ™์€ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋ชจ๋“  ์‹œ์Šคํ…œ์— ssh๋ฅผ ์—ฐ๊ฒฐํ•˜๊ณ  ์ฝ”๋“œ ์„œ๋ฒ„ ์ธ์Šคํ„ด์Šค๋ฅผ ์ž๋™์œผ๋กœ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋” ์ข‹์€ ์ ์€ ๋กœ์ปฌ ์„ค์ •์ด ํด๋ผ์ด์–ธํŠธ์™€ ํ˜ธ์ŠคํŠธ ๊ฐ„์— ๋™๊ธฐํ™”๋œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์•„์ง ๋„ค์ดํ‹ฐ๋ธŒ iOS์šฉ ํฌํŠธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.(๋งํฌ ์ฐธ์กฐ).

์•„์ดํŒจ๋“œ์šฉ์œผ๋กœ ํ•ด๋ณด์…จ๋‚˜์š” https://panic.com/coda/

๊ทธ๋“ค์€ ๋˜ํ•œ ์ƒˆ๋กœ์šด ์—…๋ฐ์ดํŠธ๋ฅผ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค https://panic.com/nova/

์ง€๊ธˆ Mac์—์„œ VS Code ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•˜๊ณ  iPad๋ฅผ ํ†ตํ•ด ์—ฐ๊ฒฐํ•˜์„ธ์š”.
ํŒŒ์ผ ์ด๋ฆ„์— ์˜คํƒ€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
๋งˆ์šฐ์Šค ์˜ค๋ฅธ์ชฝ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ์ด๋ฆ„์„ ๋ฐ”๊พธ๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ฉ๋‹ˆ๊นŒ?

@mrV25 ํŒŒ์ผ ์ด๋ฆ„์„ ๋งˆ์šฐ์Šค ์™ผ์ชฝ ๋ฒ„ํŠผ์œผ๋กœ ํด๋ฆญํ•œ ๋‹ค์Œ Enter ํ‚ค๋ฅผ ๋ˆ„๋ฆ…๋‹ˆ๋‹ค.

๋ผ์ฆˆ๋ฒ ๋ฆฌ ํŒŒ์ด๋ฅผ ๊ฐœ๋ฐœ ์„œ๋ฒ„๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅํ•˜์ง€ ์•Š์„๊นŒ์š”? ๋‘ ๊ฐ€์ง€ ์‹œ๋‚˜๋ฆฌ์˜ค๊ฐ€ ๋– ์˜ค๋ฆ…๋‹ˆ๋‹ค.

๋ผ์ฆˆ๋ฒ ๋ฆฌ ํŒŒ์ด VNC

USB-c(์ƒˆ๋กœ์šด Pi 4์—๋Š” ๊ธฐ๋ณธ usb-c ํ”Œ๋Ÿฌ๊ทธ๊ฐ€ ์žˆ์Œ)๋ฅผ ํ†ตํ•ด Raspberry Pi๋ฅผ iPad์— ์—ฐ๊ฒฐํ•˜๊ณ  USB-c๋ฅผ ํ†ตํ•ด iPad ์ด๋”๋„ท์„ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ์žฅ์น˜์—์„œ VNC๋ฅผ ํ™œ์„ฑํ™”ํ•˜์‹ญ์‹œ์˜ค. iPad์—์„œ Pi๋กœ Jump Desktop ๋˜๋Š” ๊ธฐํƒ€ VNC ํด๋ผ์ด์–ธํŠธ์™€ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.

๋ผ์ฆˆ๋ฒ ๋ฆฌ ํŒŒ์ด SSH/์ฝ”๋”

์œ„์™€ ๋™์ผํ•˜๊ฒŒ Pi์˜ VS Code Coder ์„œ๋ฒ„๋งŒ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ Coda๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Pi์— ๋Œ€ํ•œ SSH/SFTP ์—ฐ๊ฒฐ์„ ๊ตฌ์ถ•ํ•˜์‹ญ์‹œ์˜ค. ์ด๊ฒƒ์€ usb-c ๋Œ€์‹  ๋ธ”๋ฃจํˆฌ์Šค๋ฅผ ํ†ตํ•ด์„œ๋„ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(https://gist.github.com/rcarmo/6ad6c09e904c35857bad2dd2769edf76).

์˜คํ”„๋ผ์ธ(์—ฌํ–‰ ์ค‘)์—๋„ ์ž‘๋™ํ•˜๋Š” ์‹ค์ œ ์ปดํ“จํŒ…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ž‘์€ "๊ฐœ๋ฐœ ์ƒ์ž"๊ฐ€ ์žˆ์œผ๋ฉด ๊ต‰์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์„ค์ •์œผ๋กœ iPad์—์„œ Pi๋กœ ์ธํ„ฐ๋„ท์„ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฐฉ๋ฒ•์ด ๋” ์ข‹์€ ๊ฒƒ ๊ฐ™์•„์š” ๐Ÿ‘

์ด ์ž‘์—…์„ ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด ์•„์ง ๊ณ„ํš์— ์—†๋Š” ๊ฑด๊ฐ€์š”?

์ด ์ž‘์—…์„ ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด ์•„์ง ๊ณ„ํš์— ์—†๋Š” ๊ฑด๊ฐ€์š”?

์ฝ”๋“œ ์„œ๋ฒ„ https://github.com/cdr/code-server๋ฅผ ์‚ฌ์šฉํ•ด๋ณด์‹ญ์‹œ์˜ค.

@์ฐฝ์ฟค

์ด๊ฑฐ ์žˆ์œผ๋ฉด ์ •๋ง ์ข‹์„ ๊ฒƒ ๊ฐ™์•„์š”!

์ข‹์€ ์†Œ๋ฆฌ! iPad์šฉ ์ „์ฒด ๊ธฐ๋Šฅ VSCode๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์›๊ฒฉ ssh๋งŒ ์žˆ๋Š” ์ž‘์€ ํŽธ์ง‘๊ธฐ๋กœ ์ถฉ๋ถ„ํ•˜๋ฉฐ ํ˜ธ์ŠคํŠธ์— ํ™•์žฅ์„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๊ฒƒ์€ ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค! @microsoft

์ €๋Š” Raspberry Pi4 4gb๋ฅผ ์•ฝ๊ฐ„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ nodeJS ๊ฐœ๋ฐœ์— ์ถฉ๋ถ„ํ•œ ์„ฑ๋Šฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. iPad๋Š” Bluetooth, USB-C ๋˜๋Š” Wi-Fi๋ฅผ ํ†ตํ•ด ๋ฌด์„ ์œผ๋กœ ํ…Œ๋”๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Pi๋ฅผ ๊ฐ€๋ฐฉ์˜ ๋ณด์กฐ ๋ฐฐํ„ฐ๋ฆฌ์— ์—ฐ๊ฒฐํ•œ ์ƒํƒœ์—์„œ Bluetooth๋Š” ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋‚ด iPad์˜ Coda๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋น„ํ–‰๊ธฐ ๋น„ํ–‰ ์ค‘์— ์ผ๋ถ€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์—ˆ์ง€๋งŒ ์ž๋™ ์™„์„ฑ, ๊ตฌ๋ฌธ ๊ฐ•์กฐ ํ‘œ์‹œ, ์ž๋™ ์„œ์‹ ์ง€์ • ๋“ฑ์ด ์™„์ „ํžˆ ๋ˆ„๋ฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

code-server๋Š” vscode์™€ ๋งค์šฐ ์œ ์‚ฌํ•˜๊ฒŒ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์›น ์•ฑ์„ ํ™ˆ ํ™”๋ฉด์— ๊ณ ์ •ํ•˜์—ฌ ์‹ค์ œ ์•ฑ๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋ฏ€๋กœ URL ํ‘œ์‹œ์ค„์ด ์—†์Šต๋‹ˆ๋‹ค. code-server๋Š” ๊ฐœ๋ฐœ์ž(https://github.com/cdr/code-server/issues/35#issuecomment-536569212)์— ๋”ฐ๋ฅด๋ฉด ์ด๋ฒˆ ๋‹ฌ์— ARM/Pi์™€ ํ˜ธํ™˜๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ์ฝ”๋“œ ์„œ๋ฒ„ + iPad + ์™ธ๋ถ€ ํ‚ค๋ณด๋“œ(Apple Magic Keyboard)๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์•„์ฃผ ๋ฉ‹์ง„ ์˜คํ”„๋ผ์ธ ์„ค์ •์ด ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

SSH ํ˜ธ์ŠคํŠธ๊ฐ€ ์žˆ๋Š” ๊ธฐ๋ณธ vscode ๋ผ์ดํŠธ์กฐ์ฐจ๋„ ํ™•์žฅ๋œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด์ง€๋งŒ vscode์˜ ํฐ ๋„์ „์€ iOS(๋˜๋Š” ์•ˆ๋“œ๋กœ์ด๋“œ)์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์‹คํ–‰๋˜๊ธฐ ์œ„ํ•ด ๋งŽ์€ ์ž‘์—…์ด ํ•„์š”ํ•œ ๋ชจ๋‚˜์ฝ”๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. eslint, prettier ๋“ฑ๊ณผ ๊ฐ™์€ ๋ชจ๋“  ํ”Œ๋Ÿฌ๊ทธ์ธ์€ ํด๋ผ์ด์–ธํŠธ ์žฅ์น˜(iOS)์—์„œ ์‹คํ–‰ํ•ด์•ผ ํ•˜๋ฏ€๋กœ ๋‹ค์‹œ ๊ตฌํ˜„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ์•„๋ฌด๋„ iPad์—์„œ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๊ธฐ ์œ„ํ•ด ์ฒ˜์Œ๋ถ€ํ„ฐ vscode๋ฅผ ๋นŒ๋“œํ•˜๋Š” ๋ฐ ๊ทธ๋ ‡๊ฒŒ ์ „๋…ํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ตœ์„ ์˜ ๋ฐฉ๋ฒ•์€ IMHO๊ฐ€ ์›๊ฒฉ ์•ก์„ธ์Šค ๋˜๋Š” ์ฝ”๋“œ ์„œ๋ฒ„์™€ ๊ฐ™์€ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ๋Š” ์ด๋ฏธ ์•„์ดํŒจ๋“œ์šฉ ์—‘์…€, ์›Œ๋“œ, ์•„์›ƒ๋ฃฉ ๋“ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๊ทธ๊ฒƒ์ด ๋‚˜์˜ฌ ๋•Œ๋งˆ๋‹ค ๋น„์ฃผ์–ผ ์ŠคํŠœ๋””์˜ค ์˜จ๋ผ์ธ์šฉ ๋„ค์ดํ‹ฐ๋ธŒ ํด๋ผ์ด์–ธํŠธ๋„ ์ถœ์‹œํ•˜๋Š” ๊ฒƒ์ด ๋…ผ๋ฆฌ์ ์œผ๋กœ ๋ณด์ธ๋‹ค.

Textastic์€ iOS์šฉ์œผ๋กœ ์ข‹์€ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ์ž…๋‹ˆ๋‹ค. https://www.textasticapp.com/

codesandbox.io๋Š” Safari์—์„œ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์ „์ฒด VSCode ํŽธ์ง‘๊ธฐ๊ฐ€ ๋‚ด์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์Šคํฌํƒ‘์šฉ์œผ๋กœ ์ ๊ทน ๊ถŒ์žฅํ•˜์ง€๋งŒ ๊ฑฐ๊ธฐ์—์„œ ์™„์ „ํžˆ ํ…Œ์ŠคํŠธํ•  ์ œ ์•„์ดํŒจ๋“œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ์‹œ๋„ ํ–ˆ์Šต๋‹ˆ๊นŒ?

@ee0pdt ์˜ˆ, code-server ์™€ ๊ฐ™์€ ์ „์ฒด ๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ฐ˜ vs-code ํ™˜๊ฒฝ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ž˜ ์ž‘๋™ํ•œ๋‹ค๊ณ  ์ƒ๊ฐ

iOS์—๋Š” https://github.com/cdr/code-server ์™€ ๊ฐ™์€ ๊ฒƒ์ด ์ž‘๋™ํ•˜๋„๋ก ํ•˜๋Š” ๊ฑฐ๋ž˜ ์ค‘๋‹จ ๋ฒ„๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŠน์ • ๋ฐ ์ค‘์š”ํ•œ ํ‚ค ์ด๋ฒคํŠธ๋Š” ์ž…๋ ฅ/ํ…์ŠคํŠธ ์˜์—ญ ํ•„๋“œ(ํ™”์‚ดํ‘œ ํ‚ค, ์‹œ์Šคํ…œ ํ‚ค)์— ๋Œ€ํ•ด ์‹คํ–‰๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ•ต์‹ฌ์— ์žˆ๋Š” VSCode์˜ ํŽธ์ง‘๊ธฐ๋Š” ์ด๋Ÿฌํ•œ ๋ˆ„๋ฝ๋œ ํ‚ค ์ด๋ฒคํŠธ์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ๋‚˜๋Š” ์œ ์ผํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋Š” ์ˆ˜์ •์ž(alt) ์ด๋ฒคํŠธ๋กœ i,j,k,l์„ ๊ฐ€๋กœ์ฑ„๊ณ  ํ™”์‚ดํ‘œ ํ‚ค์ฒ˜๋Ÿผ ๋ณด์ด๋„๋ก ์ด๋ฒคํŠธ๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑํ•˜๋Š” ๋”์ฐํ•œ ํ•ดํ‚น์„ ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋”์ฐํ•˜์ง€๋งŒ ํŽธ์ง‘์ž์—๊ฒŒ ์ผ์„ ์‹œ์ผฐ์Šต๋‹ˆ๋‹ค.

์• ํ”Œ์€ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. UIKit ํŒ€๊ณผ ํ•จ๊ป˜ ์ผํ•˜๋Š” ์˜ค๋žœ ์นœ๊ตฌ์—๊ฒŒ "ํ™”๋‚œ ํญ์–ธ"์„ ๋ณด๋ƒˆ์Šต๋‹ˆ๋‹ค.

codesandbox.io์™€ ๊ด€๋ จํ•˜์—ฌ IPad์—์„œ ๋ฐฉ๋ฌธํ•˜๋ฉด ์ถ”๊ฐ€ ๋ฒ„๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

  • IntelliSense ํŒ์—…์€ ํ‚ค๋ณด๋“œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๊ฐ€์†ํ™”๋œ ๋ฐฉ์‹์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.
  • ํ‚ค๋ณด๋“œ๊ฐ€ ๊ฐ€๋” ์—ด๋ฆฌ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Codesandbox.io๋Š” ์ด ๋ฌธ์ œ๋ฅผ ์™„ํ™”ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ์ž ์ง€์ • "Keyboard Open" ๋ฒ„ํŠผ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๋‚ด๊ฐ€ ๋ฏฟ๋Š” vs-code๋กœ ํฌํŒ…๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(์ด๊ฒƒ์€ codesandbox์˜ ๋์—์„œ ๋ฒ„๊ทธ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์‹ค์ œ๋กœ IPad ์นœํ™”์ ์ธ ํŒจ์น˜๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒฝ์šฐ๋ฅผ ๋Œ€๋น„ํ•˜์—ฌ ์—ฌ๊ธฐ์—์„œ ์–ธ๊ธ‰ํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค)

Adobe๋Š” iPad์šฉ Photoshop ์ •์‹ ๋ฒ„์ „์„ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ์•˜์œผ๋ฏ€๋กœ Microsoft๋„ VS ์ฝ”๋“œ์˜ ์ •์‹ ๋ฒ„์ „์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Adobe๋Š” iPad์šฉ Photoshop ์ •์‹ ๋ฒ„์ „์„ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ์•˜์œผ๋ฏ€๋กœ Microsoft๋„ VS ์ฝ”๋“œ์˜ ์ •์‹ ๋ฒ„์ „์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@TechSnazzy ๋ฌผ๋ก 

30๋…„์ด ๊ฑธ๋ ธ์œผ๋‹ˆ ์ธ๋‚ด์‹ฌ์„ ๊ฐ€์ง€์„ธ์š” ;)

VSCode ์›๊ฒฉ ๋ฐ๋ธŒ ๋˜๋Š” ์ฝ”๋” ์›๊ฒฉ ์†”๋ฃจ์…˜๊ณผ ๊ฐ™์ด ์—ฐ๊ฒฐ๋œ ์‹œ๋‚˜๋ฆฌ์˜ค์— ๋Œ€ํ•œ ์ข‹์€ ๋ฐ˜๋ฉด, ๋‚˜๋Š” ์•„์ง๋„ ์ •๋ง ๊ธฐ๋ณธ HTML / CSS / ์ž๋ฐ” ์Šคํฌ๋ฆฝํŠธ ๊ฐœ๋ฐœ์„์œ„ํ•œ ์ง€์—ญ / ์› ๋“œ๋ผ์ด๋ธŒ ํ˜ธ์ŠคํŠธ ํŒŒ์ผ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค VSCode์˜ ๋…๋ฆฝ ์‹คํ–‰ ํ˜•, ์˜คํ”„๋ผ์ธ ๋ฒ„์ „์„๋ณด๊ณ  ์‹ถ์–ด์š” . ๊ดœ์ฐฎ์€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ˜์†”์„ ์ถ”๊ฐ€ํ•˜๋ฉด ๋””๋ฒ„๊น…์— ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์žฅ๊ธฐ์ ์œผ๋กœ ๋‚ด iPadPro์—์„œ๋„ PHP์™€ MySQL์„ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ด๊ฒƒ์ด ์‹ค์ œ๋กœ ์žฅ์น˜์—์„œ ๊ฐ€๋Šฅํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ ์‚ดํŽด๋ณผ ์‹œ๊ฐ„์ด ์—†์—ˆ์Šต๋‹ˆ๋‹ค.

2018๋…„ํ˜• iPad์— ํ‚ค๋ณด๋“œ ๋ฎ๊ฐœ๊ฐ€ ์žˆ์–ด์„œ ์ฐพ์•„๋‚ผ ์ˆ˜ ์žˆ์ง€๋งŒ Apple์ด iOS์—์„œ ์•ฑ ๊ฐ„ ํ†ต์‹ ์„ ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌํ•˜๋Š”์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ณธ์งˆ์ ์œผ๋กœ ๋‚˜๋Š” VS Code ์›๊ฒฉ ์„œ๋ฒ„ _inside_ iSH๋ฅผ iPad์—์„œ ์ง์ ‘ ์‹คํ–‰ํ•œ ๋‹ค์Œ Safari์—์„œ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ Safari์—์„œ ์ง์ ‘ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ํ„ฐ๋ฏธ๋„์€ iSH์— ์—ฐ๊ฒฐ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. iSH์ธ์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์žฅ์น˜์—์„œ ์›น ์„œ๋ฒ„๋ฅผ ํ˜ธ์ŠคํŒ…ํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์›๊ฒฉ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ์”ฌ ํด๋ผ์ด์–ธํŠธ๋ฅผ ๋งŒ๋“ค ์ˆ˜๋Š” ์—†๋‚˜์š”? VS Code์˜ ๋Œ€๋ถ€๋ถ„์˜ ๊ธฐ๋Šฅ์—๋Š” UI ํ™•์žฅ์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์†”์งํžˆ ๋งํ•ด์„œ, ์ด๊ฒƒ์˜ ์ตœ์†Œํ•œ์˜ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์ œํ’ˆ์€ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ ์™€ ํŒŒ์ผ ํƒ์ƒ‰๊ธฐ ๋งŒ ํฌํ•จํ•˜๋ฉด

์ฝ”๋“œ ํŽธ์ง‘๊ธฐ

  • ๊ตฌ๋ฌธ ๊ฐ•์กฐ
    ์ด๊ฒƒ์€ ๊ฐ€์žฅ ์–ด๋ ค์šด ๋ถ€๋ถ„ ์ค‘ ํ•˜๋‚˜์ผ ์ˆ˜ ์žˆ์œผ๋ฉฐ ํŠนํžˆ ๋ชจ๋ฐ”์ผ ํ™˜๊ฒฝ์„ ์œ„ํ•œ ์‚ฌ์šฉ์ž ์ •์˜ ๊ตฌํ˜„์ด ํ•„์š”ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์„œ๋ฒ„ ์ธก์—์„œ ์‹คํ–‰ํ•  ์ˆ˜๋Š” ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ฝ”๋“œ ์™„์„ฑ

ํŒŒ์ผ ํƒ์ƒ‰๊ธฐ

MVP ์ดํ›„ ๊ธฐ๋Šฅ

๊ผญ ํ•„์š”ํ•œ ๊ฒƒ์€ ์•„๋‹ˆ์ง€๋งŒ ์œ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ•œ ๊ตฌ์„ฑ ์š”์†Œ๋Š” ํ†ตํ•ฉ ์ฝ˜์†”์ž…๋‹ˆ๋‹ค.

@headmelted _Infuse 6_์ด๋ผ๋Š” ์•ฑ์€ ์›น์‚ฌ์ดํŠธ ๋ฐ/๋˜๋Š” FTP ์„œ๋น„์Šค๋ฅผ "ํ˜ธ์ŠคํŠธ"ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์•„์ง ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ iSH๊ฐ€ ์–ด๋–ป๊ฒŒ๋“  ์ด์— ๋Œ€ํ•œ ์ง€์›์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๋ ‡์ง€ ์•Š๋”๋ผ๋„ ๋Œ€๋ถ€๋ถ„์˜ ํ•ต์‹ฌ ๊ฒฝํ—˜์„ iOS๋กœ ์ด์‹ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋ฌผ๋ก  ํŠน์ • ๋„๊ตฌ ๋ฐ/๋˜๋Š” ํ™•์žฅ์„ ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ Python์„ ์„ค์น˜ํ•˜์ง€ ์•Š๊ณ  PATH์— ์ค€๋น„ํ•˜์ง€ ์•Š๊ณ  Python Extension์„ ์„ค์น˜ํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค(๋งค์šฐ ์ผ๋ฐ˜ํ™”๋œ ๋ฐฉ์‹์œผ๋กœ), ๊ทธ๋ ‡์ฃ ? ์™„์ „ํžˆ ์ƒˆ๋กœ์šด ํ”Œ๋žซํผ์œผ๋กœ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์•„์ด๋Ÿฌ๋‹ˆํ•˜๊ฒŒ๋„ ๊ธฐ๋Šฅ์ด ์ œํ•œ์ ์ž…๋‹ˆ๋‹ค.

์ €๋Š” iOS ๊ฐœ๋ฐœ์ž๋Š” ์•„๋‹ˆ์ง€๋งŒ Photoshop, Affinity Suite, iSH, [ํ…Œ์ŠคํŠธ ์ค‘์ธ] GitHub ์•ฑ ๋ฐ ์ƒˆ๋กœ์šด RDP ํด๋ผ์ด์–ธํŠธ์™€ ํ•จ๊ป˜ iPad Pro์— ํฌํ•จํ•  ์ˆ˜ ์žˆ๋Š” ํ›Œ๋ฅญํ•œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

@lazerl0rd , ๋‹ค์Œ์ด ์˜๋ฏธํ•˜๋Š” ๋ฐ”๋ฅผ ๋ช…ํ™•ํžˆ

ํ•ต์‹ฌ ๊ฒฝํ—˜

Visual Studio Code์˜ ์ฝ”๋“œ ํŽธ์ง‘ ๊ธฐ๋Šฅ์€ ์šฐ๋ฆฌ๊ฐ€ ๋ณต์ œํ•ด์•ผ ํ•˜๋Š” ์ฃผ์š” ์ธก๋ฉด์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์†”์งํžˆ ๋งํ•ด์„œ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ, FTP ํŒŒ์ผ ํƒ์ƒ‰๊ธฐ ๋ฐ SSH ํ„ฐ๋ฏธ๋„์ด ์ž‘๋™ํ•˜๋Š” ์ž‘์—… ๊ฐœ๋… ์ฆ๋ช…์„ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค๋ฉด ํฐ ์ง„์ „์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์‹ค๋ฃฉ ๊ฑฐ๋ฆฌ๋‹ค

์ฒ˜์Œ์—๋Š” Flutter๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์•ฑ์„ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด Mac(๋˜๋Š” iOS ๊ธฐ๊ธฐ)์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†๋Š” ์‚ฌ๋žŒ์„ ํฌํ•จํ•˜์—ฌ ๋ˆ„๊ตฌ๋‚˜ ์ด ํ”„๋กœ์ ํŠธ์—์„œ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณด๋„ˆ์Šค๋กœ Flutter๋Š” iOS ๋ฐ Android๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋ฐ์Šคํฌํ†ฑ ๋ฐ ์›น์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์›ํ™œํ•œ ํฌ๋กœ์Šค ํ”Œ๋žซํผ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฆ„

์•„์ง ์ด๋ฆ„์„ ์ƒ๊ฐํ•œ ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ? ๋ชจ๋ฐ”์ผ์šฉ Visual Studio Code๊ฐ€ ์•„๋‹ˆ๋ผ Visual Studio Code Lite ๋ผ๊ณ  ๋ถ€๋ฅผ๊นŒ ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค. Flutter๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ์ฒ˜๋Ÿผ ํ”Œ๋žซํผ ๊ฐ„ ์ง€์›์„ ๋ชฉํ‘œ๋กœ ํ•œ๋‹ค๋ฉด ๋ชจ๋“  ํ”Œ๋žซํผ์—์„œ Visual Studio Code ๊ฒฝํ—˜์ด ์ค„์–ด๋“ค ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ฐœ๋…์˜ ์ฆ๊ฑฐ

์‚ฌ๋žŒ๋“ค์ด ์ด๊ฒƒ์„ ์‹œ์ž‘ํ•˜๋„๋ก ์žฅ๋ คํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ€๋Šฅํ•œ ํ•œ ๋นจ๋ฆฌ ์ตœ์†Œํ•œ์˜ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์ œํ’ˆ์ด๋‚˜ ๊ฐœ๋… ์ฆ๋ช…์„ ์–ป์–ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ ๊ทธ๋Ÿฐ ์ผ์„ ํ•˜๊ธฐ ์ „์— ๋””์ž์ธ์„ ๋‚ด๋ ค์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋ฐฉ๊ด€์ž ์—ฌ๊ธฐ ์žˆ์ง€๋งŒ iPadOS 13.4 ์•ฑ์ด ์ด์ œ ์ง์ ‘ ํ‚ค๋ณด๋“œ ์ด๋ฒคํŠธ๋ฅผ ํ•ด์„ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค ยฏ\_(ใƒ„)_/ยฏ ๋ฌธ์„œ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค

UIํ”„๋ ˆ์Šค์—์„œ ์ƒˆ๋กœ์šด ํ‚ค ์ด๋ฒคํŠธ๋ฅผ ํ•˜๋Š” ๊ฒƒ์€ ๋‚ด๊ฐ€ ์ƒ๊ฐํ–ˆ๋˜ ๊ฒƒ์ด์—ˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์Šฌํ”„๊ฒŒ๋„ ๋‚˜๋Š” ์ด๊ฒƒ์ด ๋งˆ๋ฒ•์˜ ์ด์•Œ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์ง€๋งŒ ์ข‹์€ ์ง•์กฐ๋Š” ๊ฒฐ์ฝ” ์ ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์•„์ดํŒจ๋“œ ํ”„๋กœ์™€ ๋งค์ง ํ‚ค๋ณด๋“œ! ์ง€๊ธˆ์€ ๊ฐœ๋ฐœ๊ธฐ๊ณ„๊ฐ€ ๋˜์–ด๋„ ๋”ฑ! VScode๋‚˜ ๋‹ค๋ฅธ IDE๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ๋นจ๋ฆฌ ๊ตฌ๋งคํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

์•„์ดํŒจ๋“œ ๋ฒ„์ „์€ ๊ต‰์žฅํ•  ๊ฒƒ์ด๋‹ค! ํ•˜๋‚˜ ์ด์ƒ์˜ VSCode ์›๊ฒฉ ๋ฒ„์ „.

์š”์ฆ˜, Apple์€ iPad OS 13.4์—์„œ ํ…์ŠคํŠธ ์„ ํƒ์— ์™„๋ฒฝํ•œ ์ƒˆ๋กœ์šด iPad์šฉ ์ปค์„œ๋ฅผ ๋ฐœํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค!!!!
์•„์ดํŒจ๋“œ ๋ฒ„์ „์ด ๊ธฐ๋Œ€๋œ๋‹ค!!!!

์ด๊ฒƒ์„ ์ข‹์•„ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฐ€๋Šฅํ•œ ํ•œ ๊ธฐ๊บผ์ด ๋„์™€๋“œ๋ฆฝ๋‹ˆ๋‹ค.

@lazerl0rd , ๋‹ค์Œ์ด ์˜๋ฏธํ•˜๋Š” ๋ฐ”๋ฅผ ๋ช…ํ™•ํžˆ

ํ•ต์‹ฌ ๊ฒฝํ—˜

ํ•ต์‹ฌ ๊ฒฝํ—˜์€ @thomasio101 ํ™•์žฅ์ž๊ฐ€ ์—†๋Š” VS Code์˜ ํŽธ์ง‘๊ธฐ์™€ ๊ธฐ๋Šฅ ์„ธํŠธ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค๊ณ  ๋งํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

@lazerl0rd , ์ข‹์•„, ์šฐ๋ฆฌ๋Š” ๊ฐ™์€ ํŽ˜์ด์ง€์— ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค!

๋‚˜๋Š” ์•„์ง๋„ ๋–จ๋ฆผ์ด๋‚˜ ์Šค์œ„ํ”„ํŠธ ์ค‘ ํ•˜๋‚˜์—์„œ ๋ชจ๋‚˜์ฝ” ํŽธ์ง‘๊ธฐ๋ฅผ ๋‹ค์‹œ ๋˜๋Š” ๊ธฐ๋ณธ ๋ฐ˜์‘๊ณผ ๊ฐ™์€ ์‹œ์Šคํ…œ์„ ํ†ตํ•ด ๊ธฐ์กด ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ์ด์— ์˜์‹ฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ํ›„์ž์— ์ต์ˆ™ํ•˜์ง€ ์•Š์€๋ฐ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ๊ทธ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์ด๊ฒƒ์„ ์ข‹์•„ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฐ€๋Šฅํ•œ ํ•œ ๊ธฐ๊บผ์ด ๋„์™€๋“œ๋ฆฝ๋‹ˆ๋‹ค.

@theonlydaleking , ๋ฌผ๋ก  ๋‹น์‹ ์ด ๋„์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. JavaScript์— ๋Œ€ํ•œ ๊ฒฝํ—˜์ด ์ƒ๋‹นํžˆ ๋งŽ์œผ์‹  ๊ฒƒ ๊ฐ™์€๋ฐ, React Native๊ฐ€ ์ด ํ”„๋กœ์ ํŠธ์—์„œ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์˜ต์…˜์ธ์ง€ ํ™•์ธํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? (๋‚˜๋Š” React๋ฅผ ์‚ฌ์šฉํ–ˆ์ง€๋งŒ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ์—๋Š” JS๋ฅผ ์‚ฌ์šฉํ•œ ์ ์ด ์—†์Šต๋‹ˆ๋‹ค.)

@thomasio101 vscode๋ฅผ ํŽธ์ง‘๊ธฐ ๋ถ€๋ถ„์œผ๋กœ๋งŒ ์ค„์ด์‹œ๋ฉด ์š”์ ์„ ๋†“์น˜์‹  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. swift/cocoa๋กœ ๋นŒ๋“œํ•˜๋Š” ๋งŽ์€ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ๊ฐ€ ์žˆ์œผ๋ฉฐ ๋ฐ˜์‘ ๋„ค์ดํ‹ฐ๋ธŒ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์›น ๋ณด๊ธฐ์—์„œ Monaco ๋˜๋Š” CodeMirror๋ฅผ ์‰ฝ๊ฒŒ ๋ž˜ํ•‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ฐฉ๋Œ€ํ•œ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ชฉ๋ก, ์ธํ…”๋ฆฌ์„ผ์Šค, ์ฝ”๋“œ ํ˜•์‹ ์ง€์ •, ๋ฆฐํŒ… ๋ฐ ์ž‘์„ฑ ์ค‘์ธ ์ฝ”๋“œ๋ฅผ ์‹ค์ œ๋กœ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์€ ์–ด๋–ป์Šต๋‹ˆ๊นŒ?

์ด๋Ÿฌํ•œ ๋ฌธ์ œ์˜ ๋Œ€๋ถ€๋ถ„์€ ๋งŽ์€ ์‹œ๊ฐ„๊ณผ ๋…ธ๋ ฅ์œผ๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์€ ์—ฌ์ „ํžˆ โ€‹โ€‹๋ฌธ์ œ์ด๋ฉฐ ์ผ๋ถ€ node_modules ์„ค์น˜, ๋„ค์ดํ‹ฐ๋ธŒ ์ฝ”๋“œ ์ปดํŒŒ์ผ ๋“ฑ์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ sftp/webdav ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ๋ฟ์ด๋ผ๋ฉด Panic Code Editor ๋˜๋Š” Textastic์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ–‰์œ„. ์–ด์จŒ๋“  ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ํŒŒ์ผ ์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ Cloud9, VSCode Server ๋“ฑ๊ณผ ๊ฐ™์€ ์›๊ฒฉ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ๋ฅผ ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚ด iPad Pro๋งŒ ์ผ์ƒ์ ์ธ ๋“œ๋ผ์ด๋ฒ„๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž์ง€๋งŒ ๊ทธ๋Ÿด ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ usb-c๋ฅผ ํ†ตํ•ด RaspBerry Pi4๋ฅผ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๊ณ  VSCode ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์ปค์„œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์–ด ํ›จ์”ฌ ๋” ์ข‹์•„์กŒ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ๋กœ์„œ๋Š” ์ด๋ณด๋‹ค ๋” ์ข‹์„ ์ˆ˜๋Š” ์—†๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋„ค, ์—ฌ๋Ÿฌ๋ถ„๋„ ์š”์ ์„ ๋†“์น˜๊ณ  ์žˆ๋Š” ๊ฒƒ ๊ฐ™์•„์š”...

์ด๊ฒƒ์€ ๋ณธ์งˆ์ ์œผ๋กœ ์˜จ๋ผ์ธ ๋Œ€ ์›๊ฒฉ imo์— ๋Œ€ํ•œ ์”ฌ ํด๋ผ์ด์–ธํŠธ์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@thomasio101 vscode๋ฅผ ํŽธ์ง‘๊ธฐ ๋ถ€๋ถ„์œผ๋กœ๋งŒ ์ค„์ด์‹œ๋ฉด ์š”์ ์„ ๋†“์น˜์‹  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. swift/cocoa๋กœ ๋นŒ๋“œํ•˜๋Š” ๋งŽ์€ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ๊ฐ€ ์žˆ์œผ๋ฉฐ ๋ฐ˜์‘ ๋„ค์ดํ‹ฐ๋ธŒ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์›น ๋ณด๊ธฐ์—์„œ Monaco ๋˜๋Š” CodeMirror๋ฅผ ์‰ฝ๊ฒŒ ๋ž˜ํ•‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ฐฉ๋Œ€ํ•œ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ชฉ๋ก, ์ธํ…”๋ฆฌ์„ผ์Šค, ์ฝ”๋“œ ํ˜•์‹ ์ง€์ •, ๋ฆฐํŒ… ๋ฐ ์ž‘์„ฑ ์ค‘์ธ ์ฝ”๋“œ๋ฅผ ์‹ค์ œ๋กœ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์€ ์–ด๋–ป์Šต๋‹ˆ๊นŒ?

์ด๋Ÿฌํ•œ ๋ฌธ์ œ์˜ ๋Œ€๋ถ€๋ถ„์€ ๋งŽ์€ ์‹œ๊ฐ„๊ณผ ๋…ธ๋ ฅ์œผ๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์€ ์—ฌ์ „ํžˆ โ€‹โ€‹๋ฌธ์ œ์ด๋ฉฐ ์ผ๋ถ€ node_modules ์„ค์น˜, ๋„ค์ดํ‹ฐ๋ธŒ ์ฝ”๋“œ ์ปดํŒŒ์ผ ๋“ฑ์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ sftp/webdav ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ๋ฟ์ด๋ผ๋ฉด Panic Code Editor ๋˜๋Š” Textastic์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ–‰์œ„. ์–ด์จŒ๋“  ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ํŒŒ์ผ ์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ Cloud9, VSCode Server ๋“ฑ๊ณผ ๊ฐ™์€ ์›๊ฒฉ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ๋ฅผ ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚ด iPad Pro๋งŒ ์ผ์ƒ์ ์ธ ๋“œ๋ผ์ด๋ฒ„๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž์ง€๋งŒ ๊ทธ๋Ÿด ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ usb-c๋ฅผ ํ†ตํ•ด RaspBerry Pi4๋ฅผ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๊ณ  VSCode ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์ปค์„œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์–ด ํ›จ์”ฌ ๋” ์ข‹์•„์กŒ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ๋กœ์„œ๋Š” ์ด๋ณด๋‹ค ๋” ์ข‹์„ ์ˆ˜๋Š” ์—†๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ •ํ™•ํžˆ ๋งํ•˜์ž๋ฉด, ๋‚ด๊ฐ€ ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๋Š” ์•„์ดํŒจ๋“œ ํ”„๋กœ์˜ ์Šฌ๋กœ๊ฑด์ธ "๋‹น์‹ ์˜ ๋‹ค์Œ ์ปดํ“จํ„ฐ๋Š” ์ปดํ“จํ„ฐ๊ฐ€ ์•„๋‹ˆ๋‹ค"์ฒ˜๋Ÿผ ๋งฅ๋ถ(๋…ธํŠธ๋ถ)์„ ์•„์ดํŒจ๋“œ๋กœ ๋ฐ”๊พธ๋Š” ๊ฒƒ์ด๋‹ค.
๋ช‡ ๊ฐ€์ง€ ์šฐ์ˆ˜ํ•œ ๋…ธ๋“œ ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ํŽธ์ง‘๊ธฐ๋ฅผ ๋น ๋ฅด๊ฒŒ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ํŽธ์ง‘๊ธฐ ์ƒํƒœ, ํŠนํžˆ ์ด๋Ÿฌํ•œ ํ”Œ๋Ÿฌ๊ทธ์ธ์€ ์–ด๋–ป์Šต๋‹ˆ๊นŒ.. ์ด๋Ÿฌํ•œ ํ”Œ๋Ÿฌ๊ทธ์ธ ์—†์ด vscode ๋˜๋Š” atom์„ ์‚ฌ์šฉํ•  ๋•Œ์˜ ๊ฒฝํ—˜์„ ์ƒ์ƒํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์—„์ฒญ๋‚œ ์ž‘์—…์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋ฐฉ๊ธˆ ๋‚ด iPad Pro 2018 12.9"์—์„œ ๊ฐœ๋ฐœ์„ ์‹œ์ž‘ํ–ˆ๊ณ  ๊ทธ๊ฒƒ์€ ๋‚˜๋ฅผ ๋ฏธ์น˜๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ๋‚˜๋Š” Coders์˜ ์ฝ”๋“œ ์„œ๋ฒ„๋ฅผ ์‹œ๋„ํ–ˆ๊ณ  ๋ฐ์Šคํฌํƒ‘์ด๋‚˜ ๋žฉํƒ‘์—์„œ๋Š” ์ž˜ ์ž‘๋™ํ•˜์ง€๋งŒ iPadOS์—์„œ๋Š” ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฐ”๋กœ ๊ฐ€๊ธฐ๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํƒ์ƒ‰์€ ๊ณ ํ†ต์Šค๋Ÿฝ๊ณ  ๋ชจ๋“  ํ™•์žฅ์ด ์ž‘๋™ํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค.iPadOS์šฉ VS Code ๋ฒ„์ „, ์ตœ์†Œํ•œ ๋ผ์ดํŠธ ๋ฒ„์ „์—๋Š” ๋งŽ์€ ์˜๋ฏธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.Microsoft์—๋Š” Azure ๋ฐ Office๋ฅผ ํฌํ•จํ•œ ๋Œ€๋ถ€๋ถ„์˜ ์•ฑ์ด ์ด๋ฏธ ์•ฑ์— ์žˆ์Šต๋‹ˆ๋‹ค. ์™œ ์•„์ง๊นŒ์ง€ ์ด๋Ÿฐ ์ผ์ด ์ผ์–ด๋‚˜์ง€ ์•Š์•˜๋Š”์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

@GalacticLion7 ์œ ๋ฃŒ ์ œํ’ˆ๊ตฐ์˜ ์ผ๋ถ€์ด๊ธฐ ๋•Œ๋ฌธ์— Excel, Word ๋“ฑ์„ ์ด์‹ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ด์— ๋น„ํ•ด VSCode๋Š” ๋ฌด๋ฃŒ์ด๋ฉฐ ์ด๋ฏธ ํƒœ๋ธ”๋ฆฟ(Surface)์—์„œ ์ž‘๋™ํ•˜๋ฏ€๋กœ ๊ฒฝ์Ÿ ์ œํ’ˆ์„ ์ง€์›ํ•˜๊ณ  Surface๊ฐ€ ๋” ๋‚˜์€ ํ•œ ๊ฐ€์ง€์— ๋Œ€ํ•œ ๊ฒฌ์ธ๋ ฅ์„ ์–ป๋Š” ๋ฐ ๋„์›€์ด ๋˜๋„๋ก ์™„์ „ํžˆ ์ƒˆ๋กœ์šด ์†Œํ”„ํŠธ์›จ์–ด ์ œํ’ˆ์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐ ์—„์ฒญ๋‚œ ๋…ธ๋ ฅ์„ ๊ธฐ์šธ์—ฌ์•ผ ํ•˜๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ์•„์ดํŒจ๋“œ: ์ƒ์‚ฐ์„ฑ.

@bkniffler , ์ด๊ฒƒ์€ ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค! ์šฐ๋ฆฌ ๊ฐ€ ๊ธฐ๋Šฅ ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์„ ๋งŒ๋“ค ๊ฒƒ์ž…๋‹ˆ๋‹ค!

๊ทธ๋ฆฌ๊ณ  @Uyarn , ๊ฑฐ๊ธฐ์— ์ข‹์€ ์ง€์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํ™•์žฅ๊ณผ ๊ฐ™์€ ์‹œ์Šคํ…œ์„ ์ž‘๋™์‹œํ‚ค๊ธฐ ์ „์— ๋จผ์ € VS Code์˜ ํ•ต์‹ฌ ๊ฒฝํ—˜์ด ์ž‘๋™ํ•˜๋„๋ก ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์ด ๋ฌผ๊ฑด์„ ๋งŒ๋“ค๋„๋ก ๊ถŒ์žฅํ•˜์ง€๋งŒ, ๊ตฌ์ถ•ํ•  ์ œํ’ˆ์ด flutter ๋˜๋Š” swift๋กœ ์™„๋ฃŒ๋˜๋ฉด ์•„ํ‚คํ…์ฒ˜์™€ ๋น„์ฃผ์–ผ ๋‚ด์—์„œ ๋””์ž์ธ ์œ ์‚ฌ์„ฑ์„ ์ œ์™ธํ•˜๊ณ  vscode์™€ ์‹ค์ œ๋กœ ์•„๋ฌด ๊ด€๋ จ์ด ์—†์„ ๊ฒƒ์ด๋ฏ€๋กœ ์™œ ์ด๊ฒƒ์ด ์—ฌ๊ธฐ์„œ ๋…ผ์˜ํ•  ํ•„์š”๊ฐ€ ์žˆ๋‹ค. ๋‚˜๋Š” iOS์—์„œ vscode ๊ฒฝํ—˜์„ ๋งŒ๋“œ๋Š” ๋ฐ ์ง„์ •์œผ๋กœ ๊ด€์‹ฌ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ์—ฌ๊ธฐ์—์„œ ๋…ผ์˜ํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ๋Š” ํ•œ ๊ฐ€์ง€๋Š” ์™„์ „ํ•œ ์›๊ฒฉ ์†”๋ฃจ์…˜ ์™ธ์— vscode๊ฐ€ ์žฅ์น˜์˜ ๋ฐ˜์‘ ๋„ค์ดํ‹ฐ๋ธŒ ์›น ๋ณด๊ธฐ๋ฅผ ํ†ตํ•ด ์‹คํ–‰๋˜๋„๋ก ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@bkniffler , ์ด ๊ฐœ๋…๊ณผ ๊ด€๋ จ๋œ ์ž‘์—…์ด ์ด ์ €์žฅ์†Œ์— ์†ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋Š” ์šฐ๋ฆฌ๊ฐ€ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ์‹์— ํฌ๊ฒŒ ์˜์กดํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ผ๋ถ€ ์˜ต์…˜์„ ์‚ดํŽด๋ณด๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

ํ”„๋กœ๊ทธ๋ ˆ์‹œ๋ธŒ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜(PWA)

Visual Studio Code์˜ ๊ธฐ์กด ์›น ๊ตฌํ˜„์„ ์„ค์น˜ ๊ฐ€๋Šฅํ•œ ๋ฒ„์ „์œผ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

React Native(๋˜๋Š” ์œ ์‚ฌํ•œ ํ”„๋ ˆ์ž„์›Œํฌ)๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์•ฑ

Visual Studio Code์˜ Electron ๊ตฌํ˜„(๋˜๋Š” ์›น ๊ตฌํ˜„?)์„ ๋ชจ๋ฐ”์ผ ํ”„๋ ˆ์ž„์›Œํฌ๋กœ ์ด์‹ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์™„์ „ํ•œ ๋„ค์ดํ‹ฐ๋ธŒ ์žฌ์ž‘์—…

์ด ์˜ต์…˜์—๋Š” ๊ธฐ๋ณธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ Visual Studio Code ํ™˜๊ฒฝ์„ ์—๋ฎฌ๋ ˆ์ดํŠธํ•˜๋Š” ์ž‘์—…์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ž ์žฌ์ ์œผ๋กœ VS Code์˜ ์›๊ฒฉ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ง€์›์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. VS Code ๊ฒฝํ—˜์„ ์žฌ์ž‘์—…ํ•˜๋Š” ๋ฐ ์žˆ์–ด ์ž ์žฌ์ ์ธ ์žฅ์• ๋ฌผ์€ ๋ผ์ด์„ ์Šค์— ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (Visual Studio Code ๋””์ž์ธ์˜ ์ผ๋ถ€๋ฅผ ์žฌ์‚ฌ์šฉํ•˜๋Š” ๋ฐ ๋ฒ•์  ์ œํ•œ์ด ์žˆ๋Š”์ง€ ์•„๋Š” ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?)

๋‚˜๋Š” ์ด๊ฒƒ์„ ์—ฌ๊ธฐ์—์„œ ์ฒ™ํ•  ๊ฒƒ์ด๋‹ค:

https://discuss.atom.io/t/electron-on-ios-android/18223/9
https://www.nativescript.org

@thomasio101 [์˜คํ”ผ๋‹ˆ์–ธ๋งŒ] ๋ฆฌ

[์ผํ™”๋งŒ] - ๋‚˜๋Š” ํ•ญ์ƒ ์‚ฌ์šฉ์ž์™€ ํ•จ๊ป˜ ์‹œ์ž‘ํ•˜์—ฌ ๊ฑฐ๊พธ๋กœ ์ž‘์—…ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค(์ธ์šฉ์— ๋Œ€ํ•ด Steve Jobs์—๊ฒŒ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค). ๊ถ๊ทน์ ์ธ ์ตœ์ข… ๋ชฉํ‘œ๋Š” ์ง์žฅ์—์„œ ํ”„๋กœ์ ํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ์„ ๊ฐ–๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ•˜๋ฃจ๊ฐ€ ๋๋‚˜๋ฉด ์ง‘์œผ๋กœ ๊ฐ€๋Š” ๊ธธ์— ์•„์ดํŒจ๋“œ๋ฅผ ๊บผ๋‚ด๊ณ  git ์ตœ์‹  ์ปค๋ฐ‹์„ ๊ฐ€์ ธ์™€์„œ ์ง‘์œผ๋กœ ๊ฐ€๋Š” ๊ธฐ์ฐจ ์•ˆ์—์„œ ๊ณ„์† ์ž‘์—…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ผ์ด์„ผ์‹ฑ ๋ฐ VS ๋””์ž์ธ ์ธก๋ฉด์—์„œ - ์ด ํŒจํ‚ค์ง€๋Š” MIT์— ์†ํ•˜๋ฉฐ ๋””์ž์ธ ํŒŒ์ผ์„ ํฌํ•จํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์•„์ดํŒจ๋“œ ํ”„๋กœ๋ฅผ ์ฝ”๋”ฉ ๋จธ์‹ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์ด๋™ ์ค‘์— ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์•„์ฃผ ์ข‹์„ ๊ฒƒ ๊ฐ™์•„์š”.

@bkniffler ์ €๋Š” Microsoft๊ฐ€ Office ์•ฑ์˜ ๋ชจ๋ฐ”์ผ ๋ฒ„์ „์„ ๋งŒ๋“ค ๋•Œ์™€ ๋™์ผํ•œ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์ทจํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์Šคํฌํ†ฑ ๋ฒ„์ „์˜ ์ผ๋ถ€ ๊ธฐ๋Šฅ์„ ํฌ์ƒํ•˜์—ฌ "๋ผ์ดํŠธ"๋กœ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํŽธ์ง‘ : ์†”์งํžˆ, ๋‚˜๋Š” ๋‚ด๊ฐ€ ๋งํ•œ ๊ฒƒ์„ ์ฒ ํšŒํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์Šคํฌํ†ฑ์— ์žˆ๋Š” ๊ฒƒ๊ณผ ๊ฐ™์€ VS Code์˜ ์ •์‹ ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๋ฉด ๋” ๋งŽ์€ ์ด์ ์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๋“ค์ด ๊ทธ๋“ค์˜ Office ์•ฑ์˜ iOS ๋ฒ„์ „์„ ๋งŒ๋“ค ๋•Œ ํ–ˆ๋˜ ๊ฒƒ๊ณผ ๊ฐ™์€ ๋ผ์ดํŠธ ๋ฒ„์ „์„ ์ฐธ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์—…๋ฐ์ดํŠธ๋ฅผ ์ œ๊ณตํ•˜์‹ญ์‹œ์˜ค. ์šฐ๋ฆฌ๋Š” ์—ฌ๊ธฐ์—์„œ ์–ด๋–ค ๊ด€๋ฆฌ๋กœ๋ถ€ํ„ฐ๋„ ๋…ผํ‰์„ ๋ฐ›์€ ์ ์ด ์—†์œผ๋ฉฐ 1๋…„์ด ์ง€๋‚ฌ์Šต๋‹ˆ๋‹ค. (@chrisdias)

@chrisdias ๋‹˜ ์•ˆ๋…•ํ•˜์„ธ์š”, ์ด ๋ฌธ์ œ๋Š” 2019๋…„ 3์›”์— ๊ท€ํ•˜์—๊ฒŒ ํ• ๋‹น๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ท€ํ•˜๊ฐ€ ์ด์— ๋Œ€ํ•ด ๋…ผ์˜ํ•  ์ ์ž„์ž๋ผ๊ณ  ์ƒ๊ฐํ•˜์‹ญ๋‹ˆ๊นŒ? ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ ํ•ด๋‹น ๊ธฐ๋Šฅ์„ ์™„๋ฃŒํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€๋Šฅ์„ฑ์— ๋Œ€ํ•ด ๋…ผ์˜ํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค๋ฅธ VSCode ๊ตฌ์„ฑ์›์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ์ด ๋ฌธ์ œ๋Š” ๊ท€ํ•˜์˜ ์˜๊ฒฌ์ด ์—†๋Š”์ง€ 1๋…„์ด ๋„˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๊ฐ€ ์žŠํ˜€์ง€๊ฑฐ๋‚˜ ๋ฌด์‹œ๋˜์—ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. 1๋…„์ด ์ง€๋‚ฌ์ง€๋งŒ ์•„์ง ์ฝ”๋ฉ˜ํŠธ๋‚˜ ์—…๋ฐ์ดํŠธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

@GalacticLion7 ํŒ€์— ์ง์ ‘ ์—ฐ๋ฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๊ทธ ์™ธ์—๋„ ์กฐ๋งŒ๊ฐ„ ๋ชจ๋‚˜์ฝ” ์—๋””ํ„ฐ๋ฅผ React Native์—์„œ ์‹คํ–‰ํ•ด๋ณด๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

VS Code๋ฅผ iPad๋กœ ์ด์‹ํ•˜๋Š” ๊ฒƒ์€ ์šฐ๋ฆฌ ๋กœ๋“œ๋งต์— ์—†์Šต๋‹ˆ๋‹ค. ๊ธฐ์ˆ ์ ์œผ๋กœ ํ•ต์‹ฌ ํŽธ์ง‘๊ธฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์„ ๊ฐ€์ง€๋ ค๋ฉด ํ™•์žฅ์„ ์‹ค์ œ๋กœ ๊ณ ๋ คํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ๊ฒƒ์€ ํฐ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. iOS์— ๊ธฐ๋ณธ ๋ฒ„์ „์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋งŽ์€ ํ™•์žฅ์ด ๋‹จ์ˆœํžˆ iPad์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค(์˜ˆ: Node, C++, Rust ๋“ฑ).

๋Œ€์‹  Visual Studio Online ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ธŒ๋ผ์šฐ์ €์—์„œ VS Code๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๋ชจ๋“  ํ™•์žฅ์„ ์‚ฌ์šฉํ•˜๊ณ  ํ„ฐ๋ฏธ๋„์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์—์„œ ๊ตฌ๋™๋˜๋Š” iPad์—์„œ ์™„์ „ํ•œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

ํ˜ธ์ŠคํŒ…๋œ VSO ํ™˜๊ฒฝ์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ๊ณ ์œ ํ•œ . ๋ณด๋‹ค ๋„ค์ดํ‹ฐ๋ธŒํ•œ ๊ฒฝํ—˜์„ ์œ„ํ•ด PWA ์ง€์›์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์€ VSO ๋กœ๋“œ๋งต์— ์žˆ์Šต๋‹ˆ๋‹ค.

@chrisdias๋‹˜ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ €๋Š” ipad์—์„œ ์ „์ฒด vscode๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•ด ์ƒ๊ฐํ•ด๋ณธ ์ ์ด ์—†์Šต๋‹ˆ๋‹ค. ์›๊ฒฉ ๋ชจ๋“œ์—์„œ๋งŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ์—์„œ๋Š” Mac์ด๋‚˜ ํด๋ผ์šฐ๋“œ ๋˜๋Š” ๋ผ์ฆˆ๋ฒ ๋ฆฌ ํŒŒ์ด์—์„œ ์‹คํ–‰๋˜๋Š” ๊ฐœ๋ฐœ ๋จธ์‹ ์—์„œ ์‰ฝ๊ฒŒ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ํด๋ผ์ด์–ธํŠธ๋Š” ํŽธ์ง‘๊ธฐ๋ฅผ ๋ณด๋‹ค ์œ ์—ฐํ•˜๊ฒŒ ๋งŒ๋“ค๊ณ  ํ‚ค๋ณด๋“œ ๋‹จ์ถ•ํ‚ค ๋“ฑ์„ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค.

์•„๋ฌดํŠผ ๋‹ต๋ณ€ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

@felipefdl์ด ๋งํ•œ ๊ฒƒ๊ณผ

๋˜ํ•œ ipad์— ๋Œ€ํ•œ "์›๊ฒฉ ๋ชจ๋“œ ํด๋ผ์ด์–ธํŠธ"๋งŒ ๋™์ผํ•œ ๊ฒƒ์„ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

@felipefdl @marcusrugger @rcanoff ์ด๊ฒƒ์€ ์ด๋ฏธ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ ์ด๋ฏธ ๋…ผ์˜ํ•œ code-server ๋ฅผ ์‚ฌ์šฉํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฐ์Šคํฌํƒ‘์—์„œ๋Š” ๊ดœ์ฐฎ์€๋ฐ iPadOS์— ์ „ํ˜€ ์ตœ์ ํ™”๋˜์–ด ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ช‡ ๊ฐ€์ง€ ๋ฌธ์ œ๋ฅผ ๋“ค์ž๋ฉด ๋ฐ”๋กœ ๊ฐ€๊ธฐ๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š๊ณ  ํƒ์ƒ‰์ด ๋งค์šฐ ์–ด๋ ต๊ณ  ๋ชจ๋“  ํ™•์žฅ์ด ์ž‘๋™ํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋ฉฐ ์ง€์—ฐ๋ฉ๋‹ˆ๋‹ค. iPadOS์—์„œ ์ต์ˆ™ํ•œ ํ˜„๋Œ€์ ์ธ ๊ฒฝํ—˜์ด ์•„๋‹™๋‹ˆ๋‹ค. ์ฝ”๋“œ ์„œ๋ฒ„์˜ ๋ฌธ์ œ ํŽ˜์ด์ง€์—์„œ ์‚ฌ๋žŒ๋“ค์ด ๋™์ผํ•œ ๋ฌธ์ œ์— ๋Œ€ํ•ด ๊ณ„์† ๋ถˆํ‰ํ•˜๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@chrisdias , VSO๋Š”
https://imgur.com/ggxjN9y

๋ฐฉ๊ธˆ ํ™”์ดํŠธ๋ฆฌ์ŠคํŠธ์— ์ถ”๊ฐ€ ๋˜๋”๋ผ๋„ ์œ„์— ๋‚˜์—ด๋œ ๊ฒƒ๊ณผ ๊ฐ™์€ ์ด์œ ๋กœ ์—ฌ์ „ํžˆ ์ข‹์€ ๊ฒฝํ—˜์ด ์•„๋‹™๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์ €๋Š” ์™„์ „ํžˆ ๋„ค์ดํ‹ฐ๋ธŒ ๊ฒฝํ—˜์ด ์ ํ•ฉํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์ด ์ด์ „์— ์ด๋ฏธ ํ™•์žฅ์„ ์ˆ˜ํ–‰ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ํ™•์žฅ์ด ๋ฌธ์ œ๊ฐ€ ๋˜๋Š” ์ด์œ ๋ฅผ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋…น: https://apps.apple.com/ae/app/rust-programming-compiler/id1486323711
C: https://apps.apple.com/ae/app/c-programming-language/id499545918
ํŒŒ์ด์ฌ: https://apps.apple.com/ae/app/pythonista-3/id1085978097
์ž๋ฐ”: https://apps.apple.com/ae/app/pico-compiler-java-ide-api/id992268206

์—๋ฎฌ๋ ˆ์ด์…˜์€ ๋ฐฉํ•ด๊ฐ€ ๋˜๋Š” ๊ฒฝ์šฐ ํ•ญ์ƒ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋Š” ์˜ต์…˜์ž…๋‹ˆ๋‹ค.

Apple Store์˜ ํŽธ์ง‘๊ธฐ ์•ฑ๊ณผ ํ•ด๋‹น ์•ฑ์€ ๋งค์šฐ ๋‚˜์œ ๊ฒฝํ—˜์ž…๋‹ˆ๋‹ค. ์•„์ง ๊ฐœ๋ฐœ์ž ๋„๊ตฌ์— ๋Œ€ํ•ด ํƒ์ƒ‰๋˜์ง€ ์•Š์€ ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. @microsoft๊ฐ€ ๊ณ„์† ์ง„ํ–‰ํ•˜๋ฉด @TablePlus ์˜ ์‚ฌ๋žŒ๋“ค๊ณผ ์œ ์‚ฌํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ๋†€๋ผ์šด ์•ฑ์ž…๋‹ˆ๋‹ค.

@GalacticLion7 'C' ์•ฑ๋งŒ ๋ด๋„ ์ปดํŒŒ์ผ ๋น„์šฉ์„ ์ง€๋ถˆํ•ด์•ผ ํ•˜๊ณ  ์ธํ„ฐ๋„ท ์—ฐ๊ฒฐ์ด ํ•„์š”ํ•˜๋‹ค๊ณ  ๋‚˜์™€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋‹น์‹ ์ด ๋‹น์‹ ์˜ ์ฝ”๋“œ๋ฅผ ์œ ์„ ์ƒ์œผ๋กœ ๋ณด๋‚ด๊ณ  ๊ทธ๋“ค์ด ๋‹น์‹ ์„ ์œ„ํ•ด ๊ทธ๊ฒƒ์„ ๊ฐ€๊ฒฉ์— ๋งž๊ฒŒ ์ปดํŒŒ์ผํ•œ๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋„ค์ดํ‹ฐ๋ธŒ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋ชจ๋“  vscode๋Š” ์›๊ฒฉ ssh ์—ฐ๊ฒฐ์„ ์‚ฌ์šฉํ•˜๋Š” ํด๋ผ์ด์–ธํŠธ ์•ฑ์„ ์ƒ์„ฑํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

@yanshuf0 ๋‚ด๊ฐ€ ์—ฐ๊ฒฐํ•œ C IDE์— ๋Œ€ํ•ด ํฐ ์˜์‹ฌ์€ ์—†์—ˆ์ง€๋งŒ ์ด๊ฒƒ์€ ์˜คํ”„๋ผ์ธ์—์„œ ์ž‘๋™ํ•˜๊ณ  ๋ณ„ 5๊ฐœ ๋“ฑ๊ธ‰์„ ๊ฐ–๋Š”๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ์š”์ ์€, ์ด๋ ‡๊ฒŒ ํ˜•ํŽธ์—†์ด ์ž‘์„ฑ๋œ ์•ฑ์„ ์ •๊ธฐ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ๊ถŒ์žฅํ•˜์ง€ ์•Š์ง€๋งŒ ๋ชจ๋“  ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๊ฐ€ iPadOS์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์‰ฝ๊ฒŒ ์ปดํŒŒ์ผ๋˜๊ณ  ์‹คํ–‰๋  ์ˆ˜ ์žˆ์Œ์„ ์ฆ๋ช…ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋”๋ผ๋„ ์—๋ฎฌ๋ ˆ์ด์…˜์€ ํ•ญ์ƒ ์„ ํƒ ์‚ฌํ•ญ์ž…๋‹ˆ๋‹ค. ์ด ๊ฐœ๋ฐœ์ž๋“ค์ด ์ œ๋Œ€๋กœ ํ•˜์ง€ ์•Š์•˜๋‹ค๊ณ  ํ•ด์„œ VS Code์˜ ํ™˜์ƒ์ ์ธ ๊ฐœ๋ฐœ์ž๋“ค์ด ํ›จ์”ฌ ๋” ๋‚˜์€ ์ผ์„ ํ•  ์ˆ˜ ์—†๋‹ค๋Š” ์˜๋ฏธ๋Š” ์•„๋‹™๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์— ๋” ๋งŽ์€ ํ™œ๋™์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๋Ÿฌ๋ถ„, ์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ VSCode ํŒ€์˜ ์˜๊ฒฌ์„ ๊ตฌํ–ˆ๋Š”๋ฐ ์ด์ œ ์ดํ•ดํ–ˆ์Šต๋‹ˆ๋‹ค. ๋กœ๋“œ๋งต์—๋Š” ์—†์œผ๋ฉฐ ์•„๋งˆ๋„ ๋งŽ์€ ์ด์œ ๊ฐ€ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ ์ค‘ ํ•˜๋‚˜๋Š” ๋ˆ„๋ฝ๋œ ๋นŒ๋“œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. @GalacticLion7 ์—์„œ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด C++๋ฅผ ์ปดํŒŒ์ผํ•˜๊ฑฐ๋‚˜ ruby/python/js๋ฅผ ํ•ด์„ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์ง€๋งŒ ์ด๋Ÿฌํ•œ ๋ฐฉ๋ฒ•์€ ๊ฐœ๋ณ„์ ์œผ๋กœ ๊ตฌํ˜„ํ•ด์•ผ ํ•˜๋Š” ๋ฐ˜๋ฉด VSCode๋Š” ์‚ฌ์šฉ์ด ์„ค์น˜๋˜๋Š” ํ•œ ๊ฐ ํ”Œ๋žซํผ์—์„œ ์ด๋ฏธ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ธฐ๋ณธ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (cmake, nodejs ๋“ฑ). ๊ทธ๋“ค์€ ์ „์ฒด ๋นŒ๋“œ ๋„๊ตฌ๋ฅผ ๋นŒ๋“œํ•ด์•ผ ํ•˜๊ณ , ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ๋‹ค์‹œ ๊ตฌํ˜„ํ•˜๊ณ , ์ „์ฒด UI๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑํ•ด์•ผ ํ•˜๊ณ (iOS์—์„œ๋Š” ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” CSS๋กœ ์ž‘์„ฑ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์—), ๋งŽ์€ ์ฝ”์–ด๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ƒฅ ์ผ์–ด๋‚˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋” ์ด์ƒ ์˜๋ฏธ ์žˆ๋Š” ๋ง์„ ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์—ฌ๊ธฐ์—์„œ ๋” ๋งŽ์€ ํ™œ๋™์ด ์žˆ์–ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ˜„์žฌ์™€ ๊ฐ™์ด ํ† ๋ก ์ด ๊ณ„์† ์™”๋‹ค๊ฐ”๋‹คํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ์ž ๊ธธ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ƒํ™ฉ์„ ๋ฐ”๊พธ๋ ค๋ฉด ํ–‰๋™๊ณผ ๊ฐœ์ž…์ด ํ•„์š”ํ•œ ๋•Œ์ž…๋‹ˆ๋‹ค. ๋ฐ˜์‘ ๋„ค์ดํ‹ฐ๋ธŒ ํฌํŠธ์—์„œ ์ž‘์—…์„ ์‹œ์ž‘ํ•˜๊ณ , Flutter๋กœ ์ƒˆ๋กœ์šด ์ž‘์—…์„ ์‹œ๋„ํ•˜๊ฑฐ๋‚˜, ์ฝ”๋“œ ์„œ๋ฒ„์— ๋“ค์–ด๊ฐ€ iPad์—์„œ์˜ ๊ฒฝํ—˜์„ ๊ฐœ์„ ํ•˜์‹ญ์‹œ์˜ค. ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์ด ์•Œ ์ˆ˜ ์žˆ๋„๋ก ์ž‘์—… ์ค‘์ธ ์ €์žฅ์†Œ๋ฅผ ์—ฐ๊ฒฐํ•˜๊ฑฐ๋‚˜ ๋„์ค‘์— ์ฐพ์€ ๋Œ€์•ˆ์„ ์—ฐ๊ฒฐํ•˜์„ธ์š”.

๋” ์ด์ƒ ์˜๋ฏธ์žˆ๋Š” ๋ง์„ ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์—ฌ๊ธฐ์— ๋” ๋งŽ์€ ํ™œ๋™์ด ์žˆ์–ด์•ผํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์›๊ฒฉ ๊ธฐ๋Šฅ์ด ์žˆ๋Š” ๊ธฐ๋ณธ ์•ฑ์— ๋Œ€ํ•œ ์šฐ๋ฆฌ์˜ ์—ด๋ง์„ ๊ณ„์†ํ•ด์„œ ์ •์ค‘ํ•˜๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋กœ๋“œ๋งต์ด ๋ณ€๊ฒฝ๋˜๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์€ ๋ช…ํ™•ํ•œ ์‚ฌ์šฉ์ž ์š”๊ตฌ์ž…๋‹ˆ๋‹ค.

๊ธฐ๋Šฅ ์š”์ฒญ์ด ๋ช…ํ™•ํ•˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. Visual Studio Online iPad ์•ฑ์„ ์š”์ฒญํ•ด์•ผ ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋กœ์ปฌ ์žฅ์น˜์—์„œ ์ปดํŒŒ์ผํ•˜๊ณ  ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์€ Apple ์ œํ•œ์œผ๋กœ ์ธํ•ด ์กฐ๋งŒ๊ฐ„ ๋ฐœ์ƒํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฌด์–ธ๊ฐ€๊ฐ€ ์›๊ฒฉ/ํด๋ผ์šฐ๋“œ ๋ชจ๋“œ์—์„œ ์‹คํ–‰๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ด๋Š” ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ๋งŽ์€ ๊ฐ€์น˜๋ฅผ ์ œ๊ณตํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ธฐ๋ณธ ์•ฑ ๊ฒฝํ—˜์€ ์›น ๋ธŒ๋ผ์šฐ์ € ๊ฒฝํ—˜๋ณด๋‹ค ํ›จ์”ฌ ๋‚ซ์Šต๋‹ˆ๋‹ค.

์˜ˆ, ํ•˜์ง€๋งŒ ๊ทธ๊ฒƒ์ด ์š”์ ์ž…๋‹ˆ๋‹ค @forrestthewoods. ์šฐ๋ฆฌ๋Š” ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์š”๊ตฌํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๊ธฐ๋ณธ์ ์œผ๋กœ ์™„์ „ํžˆ ์ƒˆ๋กœ์šด ์ œํ’ˆ์„ ์š”๊ตฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์š•๋ง์„ ํ‘œํ˜„ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์ฒซ ๋ฒˆ์งธ ๊ฒŒ์‹œ๋ฌผ์— ์—„์ง€ ์†๊ฐ€๋ฝ์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์€ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. Visual Studio Online์šฉ iPad ์•ฑ์„ ์ œ์•ˆํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด https://github.com/MicrosoftDocs/vsonline/์— ํ”ผ๋“œ๋ฐฑ ๋ฐ ๊ธฐ๋Šฅ ์š”์ฒญ์„ ์ œ์ถœํ•  ์ˆ˜ ์žˆ๋Š” ์ „์šฉ ๊ณต๊ฐ„์ด ์žˆ์Šต๋‹ˆ๋‹ค. ํŠน์ • ์ œํ’ˆ๊ณผ ์ง์ ‘์ ์ธ ๊ด€๋ จ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ณต์‹ ๋‹ต๋ณ€์„ ๋ฐ›์œผ์‹ญ์‹œ์˜ค.

https://github.com/MicrosoftDocs/vsonline/issues/33 ์—์„œ vsonline์— ๋Œ€ํ•œ Safari ์ง€์›์„ ์ถ”์ ํ•˜๋Š” ๋ฏธํ•ด๊ฒฐ ๋ฌธ์ œ๊ฐ€

https://github.com/MicrosoftDocs/vsonline/repo ์—์„œ "Visual Studio Online์šฉ iPad ์•ฑ"์— ๋Œ€ํ•œ ์ƒˆ๋กœ์šด ๋ฌธ์ œ๋ฅผ ์—ฌ๋Š” ๊ฒƒ์ด ์ตœ์„ ์˜ ์กฐ์น˜๋ผ๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค.

@bkniffler ์ด ์š”์ ์€ ํŒ€์„ ์œ„ํ•ด iPadOS์˜ VS Code์— ๋Œ€ํ•ด ๋ณด๊ณ ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์•„์ง ๊ทธ๋“ค์˜ ๊ณ„ํš์— ์žˆ์ง€ ์•Š์ง€๋งŒ ๊ทธ๊ฒƒ์ด ๊ฒฐ์ฝ” ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.

Microsoft๊ฐ€ ๋ฐ์Šคํฌํ†ฑ ๋ฒ„์ „์—์„œ Office ์•ฑ์˜ iOS(๋ฐ Android, ํ•˜์ง€๋งŒ ๊ด€๋ จ ์—†์Œ) ๋ฒ„์ „์„ ๋งŒ๋“ค ๋•Œ์™€ ๋™์ผํ•œ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์ทจํ•˜๋„๋ก ์ œ์•ˆํ•œ ๊ฒƒ์„ ๊ธฐ์–ตํ•˜์‹ญ์‹œ์˜ค. ์–ด์จŒ๋“  ๊ทธ๋“ค์€ ๋งŽ์€ ์ฝ”๋“œ๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑํ–ˆ์œผ๋ฏ€๋กœ VS Code์™€ ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๋Š”์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ฐ ์–ธ์–ด๋ฅผ ๊ฐœ๋ณ„์ ์œผ๋กœ ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•œ๋‹ค๋Š” ๋ง์”€์ด ๋ฌด์Šจ ๋œป์ธ์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ, ์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์€ ์–ธ์–ด๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ๋…ธ๋ ฅ์€ ๊ทธ๋ฆฌ ๋งŽ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด์ „์— ๋ณด์—ฌ๋“œ๋ฆฐ IDE์™€ ์œ ์‚ฌํ•œ ํผํŒ… ๋ฐ ์—๋ฎฌ๋ ˆ์ด์…˜์ผ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ”Œ๋Ÿฌ๊ทธ์ธ์— ๋Œ€ํ•ด Office ๋ฐ์Šคํฌํ†ฑ ๋ฒ„์ „์˜ ํ”Œ๋Ÿฌ๊ทธ์ธ์€ ๋ชจ๋ฐ”์ผ ๋ฒ„์ „์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ Microsoft๋Š” Java ๋˜๋Š” Python ํ™•์žฅ ํŒฉ๊ณผ ๊ฐ™์€ ๊ฐ€์žฅ ํ•„์ˆ˜์ ์ธ ๋ฒ„์ „์˜ ์ง€์›๋˜๋Š” ๋ฒ„์ „์„ ๋‹ค์‹œ ์ž‘์„ฑํ•˜๊ฑฐ๋‚˜ ๋ชจ๋‘ ์ œ๊ฑฐํ•˜๊ณ  ๊ตฌ๋ฌธ ๊ฐ•์กฐ ํ‘œ์‹œ๋กœ ๋‹จ์ˆœํ•˜๊ฒŒ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก  ๋ฐ์Šคํฌํƒ‘์— ์žˆ๋Š” ๋ชจ๋“  ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์–ป์„ ์ˆ˜๋Š” ์—†์ง€๋งŒ ๋น„์Šทํ•œ API๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์‚ฌ๋žŒ๋“ค์ด ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒŒ๋‹ค๊ฐ€ ๊ทธ๋Ÿฌํ•œ ํ•ญ๊ตฌ์—์„œ ๋ฌด์—‡์„ ๊ธฐ๋Œ€ํ•˜๊ฒ ์Šต๋‹ˆ๊นŒ? Office์˜ ๋ชจ๋ฐ”์ผ ๋ฒ„์ „์ด ์–ผ๋งˆ๋‚˜ ๊ฐ€๋ฒผ์šด์ง€ ์ฒ˜๋Ÿผ.

๋‚˜๋Š” ๋˜ํ•œ ์ด๊ฒƒ์ด ์–ด๋ฆฌ์„์€ ์ƒ๊ฐ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ์—ฌ๊ธฐ ์žˆ๋‹ค๊ณ  ํ™•์‹ ํ•œ๋‹ค๋Š” ์ ์„ ์ง€์ ํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์€ ํ•ญ์ƒ iPad๊ฐ€ ๋„ˆ๋ฌด ๋ฌด๋Šฅํ•ด์„œ ๋‹จ์ˆœํžˆ Netflix๋‚˜ e-book ๋ธŒ๋ฆญ์œผ๋กœ ๋ฌ˜์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ iPad Pro์™€ iPadOS๊ฐ€ ์ถœ์‹œ๋œ ์ดํ›„๋กœ ์™„์ „ํžˆ ๋ฐ”๋€Œ์—ˆ์Šต๋‹ˆ๋‹ค. ๋ช‡ ๊ฐ€์ง€ ์ด๋ฆ„์„, ๋‚ด๊ฐ€ ์‚ฌ์šฉ ์ข…์ด๋ฅผ ๊ฐ”๋‹ค ๋‚ด ์•„์ด ํŒจ๋“œ์™€ ๋…ธํŠธ ๊ธฐ๋ก ์žฅ์น˜๋กœ ํ”„๋กœ GoodNotes 5 ํ”„๋กœ ์ˆ˜์ค€์˜์™€ ๋น„๋””์˜ค ํŽธ์ง‘ LumaFusion (๊ฑฐ์˜ ํŒŒ์ด๋„ ์ปท์ฒ˜๋Ÿผ). ๋˜ํ•œ A12X Bionic์€ ์‹œ์ค‘์— ๋‚˜์™€ ์žˆ๋Š”

๋ชจ๋“  ๊ฒƒ์ด ๋‚ด๋ฆฌ๋ง‰๊ธธ์„ ๊ฑท๊ณ  ๊ฐœ๋ฐœ์ž๊ฐ€ ์ด ๋ฌธ์ œ๋ฅผ ์ข…๋ฃŒํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์œผ๋ฉฐ ์ด๋Ÿฌํ•œ ์š”์ฒญ์ด ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์•Œ๊ธฐ ๋•Œ๋ฌธ์— ๋ถˆํ‰ํ•˜์ง€ ์•Š๊ฒ ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋‹จ์ง€ ๊ฐœ๋ฐœ์ž๋“ค์ด ์œ„์˜ ๋‚ด ์š”์ ์„ ์ดํ•ดํ•˜๊ณ  "iPad๋Š” ๋‹จ์ง€ Netflix์ด๊ณ  ๊ฒŒ์ž„ ๋ธŒ๋ฆญ"์ด๋ผ๋Š” ๋ณ€์ˆ˜๊ฐ€ ๊ฒฐ์ •์„ ๋‚ด๋ฆฌ๋Š” ์›์ธ์ด ๋˜์ง€ ์•Š๋„๋ก ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์—์„œ vsonline์— ๋Œ€ํ•œ Safari ์ง€์›์„ ์ถ”์ ํ•˜๋Š” ๋ฏธํ•ด๊ฒฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. MicrosoftDocs/vsonline#33

https://github.com/MicrosoftDocs/vsonline/repo ์—์„œ "Visual Studio Online์šฉ iPad ์•ฑ"์— ๋Œ€ํ•œ ์ƒˆ๋กœ์šด ๋ฌธ์ œ๋ฅผ ์—ฌ๋Š” ๊ฒƒ์ด ์ตœ์„ ์˜ ์กฐ์น˜๋ผ๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๊ฒƒ๋„ ๊ดœ์ฐฎ์„๊ฑฐ์•ผ.

์–ธ์  ๊ฐ€๋Š” ๋‚ด ์•„์ดํŒจ๋“œ๋ฅผ ์œ ์ผํ•œ ๊ฐœ๋ฐœ์ž ๋จธ์‹ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์‹ฌ๊ฐํ•œ ์ง์Šน์ด๋ฉฐ 1 ๋…„ ์•ˆ์— ๋งŽ์€ ์ƒ์‚ฐ์„ฑ ์•ฑ์„ ๊ฐ–๊ฒŒ ๋  ๊ฒƒ์ด๋ผ๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋‚˜๋Š” ๊ทธ๊ฒƒ์— ๋Œ€ํ•ด ํ˜„์‹ค์ ์ด๊ธฐ๋ฅผ ์›ํ•œ๋‹ค. ๋‹น์‹ ์ด ์š”๊ตฌํ•˜๋Š” ์ œํ’ˆ์„ ๋งŒ๋“œ๋Š” ๋ฐ ๋งŽ์€ ๋…ธ๋ ฅ์ด ํ•„์š”ํ•  ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— "๋งŽ์€ ๋…ธ๋ ฅ์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค"๋ผ๊ณ  ๋งํ•˜๋Š” ๊ฒƒ์€ ์ „ํ˜€ ๋„์›€์ด ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, iPad์—์„œ C++๋ฅผ ์ปดํŒŒ์ผํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ๊ฐ™์€ ๋ฆฌ์†Œ์Šค๋ฅผ ์ฐพ์œผ๋ ค๊ณ  ์‹œ๋„ํ•˜๋ฉด ๋ฆฌ์†Œ์Šค ๋ถ€์กฑ์— ๋Œ€ํ•ด ๋†€๋ž„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. apt-get install cmake ๋งŒ์˜ ๋ฌธ์ œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. https://github.com/mceSystems/node-jsc ์—์„œ iPad์—์„œ nodeJS๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์‚ฌํ•ญ์„ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ์ฝ”๋“œ๋ฅผ ์›๊ฒฉ์œผ๋กœ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์€ ๋‹ค๋ฅธ ๋ฌธ์ œ์ด์ง€๋งŒ ๋‹ค์‹œ ๋ฌป์Šต๋‹ˆ๋‹ค. https://github.com/cdr/code-server์— ์ฐธ์—ฌํ•˜๊ณ  ์ฝ”๋“œ์™€ ํ†ต์‹ ํ•  react-native ํฌํŠธ๋ฅผ ๋งŒ๋“œ์‹ญ์‹œ์˜ค. ์„œ๋ฒ„ ๋ฐฑ์—”๋“œ?

iOS ๋น„์œ ๋ฅผ ์œ„ํ•œ ์‚ฌ๋ฌด์‹ค๋„ ๋„์›€์ด ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Microsoft๊ฐ€ react-native(https://blog.appfigures.com/microsoft-goes-all-in-on-react-native-for-ir-mobile-apps/)๋กœ ์ „ํ™˜ํ•œ ๊ฒฐ๊ณผ ์ „๋žต์  ๊ฒฐ์ •์ด์—ˆ์Šต๋‹ˆ๋‹ค. , ๊ทธ๋ฆฌ๊ณ  ๋งค์ถœ์˜ ํฐ ๋ฉ์–ด๋ฆฌ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ์ œํ’ˆ์˜ ์ผ๋ถ€์ž…๋‹ˆ๋‹ค(์›ํ•˜๋Š” ๊ฒฝ์šฐ ์—ฐ๊ฐ„ ๋ณด๊ณ ์„œ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Œ). vscode๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ Visual Studio๋ฅผ ๋Œ€์ฒดํ•  ์ˆ˜๋„ ์žˆ๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์„ ์ˆ˜๋„ ์žˆ๋Š” ๋ฌด๋ฃŒ ์˜คํ”ˆ ์†Œ์Šค ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ทธ๊ฒƒ์ด ๋ฐ”๋กœ ๋‚ด๊ฐ€ Visual Studio ์˜จ๋ผ์ธ ํ”„๋กœ์ ํŠธ๋ฅผ ์—ฐ๊ฒฐํ•œ ์ด์œ ์ด๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋Š” ์œ ๋ฃŒ ๋„๊ตฌ์ธ ๋ฐ˜๋ฉด ์ „์šฉ iPad ์•ฑ์„ ๊ฐ–๋Š” ๊ฒƒ๊ณผ ๊ฐ™์€ ๊ฑฐ๋Œ€ํ•œ ์ž‘์—…์— ๋” ๊ฐœ๋ฐฉ์ ์ผ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค.

๋„ค.. ์›ํ•˜๋Š” ๋งŒํผ ๋‚ด ๋Œ€๋‹ต์— ๋ฐ˜๋Œ€ ํˆฌํ‘œ๋ฅผ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๋ถ„๋ช…ํžˆ ๋งํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. "Microsoft, ๋‹น์‹ ์€ ๊ฑฐ๋Œ€ํ•œ ํšŒ์‚ฌ์ž…๋‹ˆ๋‹ค. iPad์šฉ vscode๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?" ์—ฌ๊ธฐ์— ์žˆ๋Š” ์†Œ์ˆ˜์˜ ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•œ ๋กœ๋“œ๋งต์€ ๋ณ„๋กœ ๋„์›€์ด ๋˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด์— ์ƒ๋‹นํ•œ ๊ด€์‹ฌ์„ ๋ฐ›๋Š” ์ œํ’ˆ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์€ ํฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ ์„œ๋ฒ„์— ์ฐธ์—ฌํ•˜๋Š” ๊ฒƒ์€ ์˜จ๋ผ์ธ์—์„œ Visual Studio์— ๋Œ€ํ•œ ์˜คํ”ˆ ์†Œ์Šค ๋™์‹œ ์ œํ’ˆ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋งŽ์€ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. iPad ์•ฑ์ด ๋” ํฐ ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ ๋” ๋‚˜์€ ๋„๊ตฌ๋กœ ๋งŒ๋“ค๋ฉด ๋Œ€๋ถ€๋ถ„ ์•Œ๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‹ค์Œ์€ ๋ฐ˜์‘ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ ๋‚ด์—์„œ ์›น๋ทฐ๋กœ ๋ชจ๋‚˜์ฝ” ํŽธ์ง‘๊ธฐ๋ฅผ ๊ฐ„๋‹จํ•˜๊ฒŒ ๊ตฌํ˜„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
https://github.com/bkniffler/vscode-native

ํ˜„์žฌ ๊ฐœ๋ฐœ ๋ชจ๋“œ์—๋งŒ ํ•ด๋‹น๋˜๋ฉฐ ์˜คํ”„๋ผ์ธ ์•ฑ์— ํŽธ์ง‘๊ธฐ๋ฅผ ํฌํ•จํ•˜๋Š” ๊ฒƒ์ด ์–ผ๋งˆ๋‚˜ ์‰ฌ์šด์ง€์— ๋Œ€ํ•œ ์œ ์ผํ•œ POC์ž…๋‹ˆ๋‹ค. ๊ฑฐ๊ธฐ์—์„œ ์›๊ฒฉ ssh๋ฅผ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ https://github.com/JaneaSystems/nodejs-mobile ์„ ์‹œ๋„ํ•˜๊ณ  ๊ตฌํ˜„ํ•  ์ˆ˜

iPad์˜ ์ „์ฒด vscode๋Š” ๊ฑฐ์˜ ๋ถˆ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ํ™•์‹คํ•œ ๋‘ ๋ฒˆ์งธ ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค. ipad์˜ ์›๊ฒฉ vscode๋Š” ์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„์ด๋ฉฐ ํ™•์žฅ, ํ„ฐ๋ฏธ๋„ ๋ฐ ๊ธฐํƒ€ ๋ชจ๋“  ๊ฒƒ์ด ์›๊ฒฉ ์„œ๋ฒ„์—์„œ ์‹คํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์— ํ›จ์”ฌ ์ ์€ ๋…ธ๋ ฅ์ž…๋‹ˆ๋‹ค. (์ฝ”๋“œ ์„œ๋ฒ„์ด์ง€๋งŒ ๊ธฐ๋ณธ ์•ฑ์œผ๋กœ).

iPad์—์„œ VSCode ์›๊ฒฉ ๋ฐ ssh ์ง€์›์„ ์œ„ํ•ด +1. ์ด๋ฏธ ์ž์ฒด ํ˜ธ์ŠคํŒ… ์ปดํ“จํ„ฐ์— ์›๊ฒฉ SSH๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ ๊ฐœ๋ฐœ์ž์šฉ์œผ๋กœ ํ•˜๋‚˜์˜ ์ปดํ“จํ„ฐ๋งŒ ์„ค์ •ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์›๊ฒฉ SSH์— ๋Œ€ํ•œ iPad ์•ฑ์ด ๊ฐœ๋ฐœ ๋จธ์‹ ์— ์žˆ์œผ๋ฉด ํ™˜์ƒ์ ์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค!

@chrisdias

๋Œ€์‹  Visual Studio Online์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ธŒ๋ผ์šฐ์ €์—์„œ VS Code๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๋ชจ๋“  ํ™•์žฅ์„ ์‚ฌ์šฉํ•˜๊ณ  ํ„ฐ๋ฏธ๋„์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์—์„œ ๊ตฌ๋™๋˜๋Š” iPad์—์„œ ์™„์ „ํ•œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด ๋‚ด๊ฐ€ ์›ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ธŒ๋ผ์šฐ์ €์— ์žˆ์ง€๋งŒ ๋ธŒ๋ผ์šฐ์ € ํฌ๋กฌ์ด ์—†๋Š” Visual Studio Online(์˜ˆ: ์›น ๋ณด๊ธฐ). iOS๊ฐ€ PWA๋ฅผ ์ง€์›ํ•œ๋‹ค๋ฉด ์ด๊ฒƒ์€ ์‰ฌ์šธ ๊ฒƒ์ด์ง€๋งŒ ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ณด๋„ˆ์Šค๋Š” ํ™•์žฅ ์—†์ด ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ SSH๋ฅผ ํ†ตํ•ด ์‹œ์Šคํ…œ์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@chrisdias

๋Œ€์‹  Visual Studio Online์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ธŒ๋ผ์šฐ์ €์—์„œ VS Code๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๋ชจ๋“  ํ™•์žฅ์„ ์‚ฌ์šฉํ•˜๊ณ  ํ„ฐ๋ฏธ๋„์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์—์„œ ๊ตฌ๋™๋˜๋Š” iPad์—์„œ ์™„์ „ํ•œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด ๋‚ด๊ฐ€ ์›ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ธŒ๋ผ์šฐ์ €์— ์žˆ์ง€๋งŒ ๋ธŒ๋ผ์šฐ์ € ํฌ๋กฌ์ด ์—†๋Š” Visual Studio Online(์˜ˆ: ์›น ๋ณด๊ธฐ). iOS๊ฐ€ PWA๋ฅผ ์ง€์›ํ•œ๋‹ค๋ฉด ์ด๊ฒƒ์€ ์‰ฌ์šธ ๊ฒƒ์ด์ง€๋งŒ ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ณด๋„ˆ์Šค๋Š” ํ™•์žฅ ์—†์ด ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ SSH๋ฅผ ํ†ตํ•ด ์‹œ์Šคํ…œ์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

IOS๋Š” PWA๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์šด์˜ ์ฒด์ œ๋ณด๋‹ค ์ œํ•œ์ ์ผ ์ˆ˜ ์žˆ์ง€๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด iPad์— PWA๋กœ ํŠธ์œ„ํ„ฐ๊ฐ€ ์„ค์น˜๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋‹ค์ง€ ๋ช…ํ™•ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Safari์—์„œ ์‚ฌ์ดํŠธ๋ฅผ ์—ด๊ณ  ๊ณต์œ ๋ฅผ ํƒญํ•œ ๋‹ค์Œ ํ™ˆ ํ™”๋ฉด์— ์ถ”๊ฐ€๋ฅผ ํƒญํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Android์—์„œ ํ‘œ์‹œ๋˜๋Š” ๋ฉ”์‹œ์ง€๋Š” ์•„์ง IOS์—์„œ ์ง€์›๋˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์–ด์จŒ๋“  ์ด๊ฒƒ์ด ๋„์›€์ด๋˜๋Š”์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์ง€๋งŒ VS ์˜จ๋ผ์ธ์— ๋Œ€ํ•œ PWA ์ง€์›์ด ๊ฐ€๋Šฅํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๊นŒ?

@MaxFletcher , PWA ์ง€์›์€ iPad๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ๋ชจ๋ฐ”์ผ ์žฅ์น˜์— ๋Œ€ํ•œ ์ง€์›๋„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

@bkniffler ๋‹น์‹ ์€ ๋‚ด ์š”์ ์„ ์ง€๋‚˜์น˜๊ฒŒ ๋‹จ์ˆœํ™”ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ์„ , ์ „์ฒด๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด "๋ณ„๋กœ ๋…ธ๋ ฅํ•˜์ง€ ์•Š๋Š”๋‹ค"๊ณ  ๋งํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด๊ฒŒ ๋งŒ๋“ค๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋‹จ์ˆœํžˆ ์™ธ๋ถ€ ์ฝ”๋“œ๋ฅผ ์˜คํ”„๋ผ์ธ์œผ๋กœ ์„ฑ๊ณต์ ์œผ๋กœ ์ปดํŒŒ์ผํ•œ ์œ„์—์„œ ๋งํฌํ•œ IDE๋ฅผ ์–ธ๊ธ‰ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ํ‹€๋ฆด ์ˆ˜๋„ ์žˆ์ง€๋งŒ ์ด ์‚ฌ๋žŒ๋“ค์ด ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค๋ฉด ๋‹ค๋ฅธ ์•ฑ๊ณผ UI๋กœ ํŒ๋‹จํ•  ๋•Œ ์•„์ง ๋Šฅ์ˆ™ํ•˜์ง€ ์•Š์€(Pythonista๋ฅผ ์ œ์™ธํ•˜๊ณ ๋Š” ํ›Œ๋ฅญํ•จ) Microsoft์™€ ๊ฐ™์€ ๋” ํฐ ๊ฐœ๋ฐœ์ž ์—”ํ„ฐํ‹ฐ๊ฐ€ ๋™์ผํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐ ๋” ๋งŽ์€ ๋…ธ๋ ฅ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. Node.js ๋Ÿฐํƒ€์ž„์˜ ๊ฒฝ์šฐ 2018๋…„ 10์›”์— ๋งˆ์ง€๋ง‰์œผ๋กœ ์—…๋ฐ์ดํŠธ๋œ nodejsc๋ณด๋‹ค ํ›จ์”ฌ ๋” ์™„๋ฒฝํ•˜๊ณ  ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฌ์šด nodejs-mobile์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ๋Œ€์‹  ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ์„ ์›ํ•˜๋Š” ์ด์œ ๋Š” ์™„์ „ํžˆ ์˜คํ”„๋ผ์ธ ์ž‘์—…์ž…๋‹ˆ๋‹ค. iPad์—์„œ ์ธํ„ฐ๋„ท ์—ฐ๊ฒฐ์ด ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์Šคํฌํ†ฑ์— ์›๊ฒฉ์œผ๋กœ SSH๋ฅผ ์—ฐ๊ฒฐํ•ด์•ผ ํ•˜๋Š” ์ด์œ ๊ฐ€ ๋ฌด์—‡์ธ์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ํœด๋Œ€์„ฑ์„ ํ™œ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฌผ๋ก  ์…€๋ฃฐ๋Ÿฌ ๋ชจ๋ธ์ด ์žˆ์ง€๋งŒ ์‚ฌ์šฉ๋Ÿ‰์ด ๋งŽ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ตœ์†Œํ•œ iPadOS๊ฐ€ ์ƒˆ๋กœ์šด ์ ์‘ํ˜• ์ปค์„œ, ํ‚ค๋ณด๋“œ ๋‹จ์ถ•ํ‚ค ๋“ฑ์„ ํ™œ์šฉํ•˜๋„๋ก ์ตœ์ ํ™”๋˜์–ด ์žˆ๋‹ค๋ฉด VSO ๋˜๋Š” iPadOS์˜ ์ฝ”๋“œ ์„œ๋ฒ„์— ๋Œ€ํ•œ ํ˜ธํ™˜์„ฑ๋„ ๊ดœ์ฐฎ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋˜ํ•œ VS Code์—๋Š” ์ผ์ข…์˜ ๊ฐ„์ ‘์ ์ธ ์ˆ˜์ต ์ฐฝ์ถœ ๊ธฐ๋Šฅ์ด ์žˆ๋‹ค๋Š” ์ ์— ์œ ์˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ƒ๊ฐํ•ด๋ณด๋ฉด ์–ด๋–ค ๊ฐœ๋ฐœ์ž๋“ค์ด ์‚ฌ์šฉํ•˜๋‚˜์š”? ๋ฐ์Šคํฌํ†ฑ์ด๋‚˜ ๋ชจ๋ฐ”์ผ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์ „์ฒด IDE๋ฅผ ์„ ํ˜ธํ•˜๋ฏ€๋กœ ์›น์ผ ๊ฐ€๋Šฅ์„ฑ์ด ํฝ๋‹ˆ๋‹ค. (์•„๋‹ˆ์š”, ์ €๋Š” Visual Studio๊ฐ€ VS Code๋ฅผ ๋Œ€์ฒดํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. VS๊ฐ€ VS Code๋ณด๋‹ค ํŠน์ • ์›Œํฌ๋กœ๋“œ์— ํ›จ์”ฌ ๋” ์ ํ•ฉํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.) ๊ทธ๋Ÿฌ๋ฉด ์›น ๊ฐœ๋ฐœ์ž๋Š” ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ๊ณณ์ด ํ•„์š”ํ•˜๊ฒ ์ฃ ? ์• ์ €๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. Microsoft๋Š” VS Code์—์„œ Azure์šฉ ํ™•์žฅ์„ ๋งŒ๋“ค์–ด ๊ฑฐ๊ธฐ์— ์‰ฝ๊ฒŒ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒ€์ƒ‰ํ•˜์ง€ ์•Š๊ณ ๋„ ๊ถŒ์žฅ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ํ™•์žฅ๋ช…์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  $200 ํฌ๋ ˆ๋”ง ๋ฌด๋ฃŒ ํ‰๊ฐ€ํŒ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ์ฝ”๋“œ์— ๋Œ€ํ•œ ๋ฒ„์ „ ์ œ์–ด ์‹œ์Šคํ…œ์ด ํ•„์š”ํ• ๊นŒ์š”? ๊ธ€์Ž„, ๊ทธ๋“ค์€ TFS๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Git๋„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” "๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ, ๋‹น์‹ ์€ ๊ฑฐ๋Œ€ํ•œ ํšŒ์‚ฌ์ž…๋‹ˆ๋‹ค. ์•„์ดํŒจ๋“œ์šฉ VS ์ฝ”๋“œ๋ฅผ ํ•˜์ง€ ์•Š๊ฒ ์Šต๋‹ˆ๊นŒ?"๋ผ๊ณ  ๋งํ•œ ์ ์ด ์—†์Šต๋‹ˆ๋‹ค. ๋‚ด ์ฒซ ๋ฒˆ์งธ ๋‹จ๋ฝ์„ ์ฝ์œผ์‹ญ์‹œ์˜ค. ๋‹ค์‹œ ๋งํ•˜์ง€๋งŒ, ์ด ๋ฌธ์ œ๋Š” ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ์ด๋“  VSO ๋“ฑ์ด๋“  ๊ฐ„์— ํŒ€์„ ์œ„ํ•ด iPadOS์˜ ์ผ์ข…์˜ VS Code์— ๋Œ€ํ•ด ๋ณด๊ณ ํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“ค์–ด์กŒ์Šต๋‹ˆ๋‹ค. ๋ถ„๋ช…ํžˆ ๋‹น์‹ ์ด ์„ค๋ช…ํ•œ ๊ฒƒ๊ณผ ๊ฐ™์€ ๊ตฌ๊ฑธ์ด ์•„๋‹™๋‹ˆ๋‹ค. ๋˜ํ•œ ์›น ์•ฑ์ด ๊ธฐ๋ณธ ์•ฑ๋ณด๋‹ค ๋” ๋งŽ์€ ๊ด€์‹ฌ์„ ๋ฐ›์„ ๊ฒƒ์ด๋ผ๊ณ  ๋งํ•˜๋Š”๋ฐ ์ด๋Š” ๋ง์ด ์•ˆ ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์ด๊ฒƒ์ด ์†Œ์ˆ˜์˜ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์–ด๋–ป๊ฒŒ ์ „๋‹ฌ๋  ๊ฒƒ์ธ์ง€์— ๋Œ€ํ•ด ๋ง์”€ํ•˜์‹  ๋ฐ”๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋‚ด ๋‹ค๋ฅธ ์˜๊ฒฌ(์ด ์˜๊ฒฌ์— ๋Œ€ํ•œ ๋งŽ์€ ์š”์ ์— ํ•ด๋‹นํ•จ)์œผ๋กœ ๋Œ์•„๊ฐ€์„œ, iPadOS๋Š” ๋งŽ์€ ๋ชฉ์ ์„ ์œ„ํ•ด ์ง€์†์ ์œผ๋กœ ์„ฑ์žฅํ•˜๊ณ  ์žˆ๋Š” ํ˜„์žฌ ์ฃผ๋ฅ˜ ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ์‹ฌ์ง€์–ด ์ด๊ฒƒ์„ ๋‚ด iPad Pro์— ์“ฐ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ „์šฉ ์•ฑ์ด ํ•„์š”ํ•˜๋‹ค๋Š” ๋ฐ ์šฐ๋ฆฌ ๋ชจ๋‘ ๋™์˜ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์•ฑ์„ ๋งŒ๋“œ๋Š” ์‚ฌ๋žŒ์€ ์š”์  ์™ธ์— ์šฐ๋ฆฌ ๋ชจ๋‘๊ฐ€ ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ํŒŒ์•…ํ•ด์•ผ ํ•  ๊ฒƒ์€ ์–ด๋–ค ๊ธฐ์ˆ (ํ”„๋ ˆ์ž„์›Œํฌ)์ด ํ”„๋กœ์ ํŠธ์— ๊ฐ€์žฅ ์ž˜ ๋งž์„ ๊ฒƒ์ธ์ง€์ž…๋‹ˆ๋‹ค. Git ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ๋งŒ๋“ค๊ณ  ์ฝ”๋”ฉ์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๋„์ „์„ ์‚ฌ๋ž‘ํ•˜๊ณ  ์™„์ œํ’ˆ์„ ์œ„ํ•ด ์‚ด์•„๋ผ. ๊ฐ€๋Šฅํ•˜๋ฉด vue์™€ nativescript๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Javascript๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์•ž์œผ๋กœ ๋ช‡ ์ฃผ ์•ˆ์— ๋” ๋งŽ์€ ์ •๋ณด๋ฅผ ๊ฒŒ์‹œํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ชจ๋‘ ์ฆ๊ฑฐ์šด ์ฝ”๋”ฉ... ์•ˆ์ „์„ ์œ ์ง€ํ•˜์„ธ์š”.

@jarvon ์ฐธ์—ฌํ•  ํŒ€์ด๋‚˜ ๊ทธ๋ฃน์ด ์žˆ์Šต๋‹ˆ๊นŒ? ์šฐ๋ฆฌ๋Š” pwa ๋˜๋Š” ๋‹ค๋ฅธ ๊ฒƒ์„ ์ƒ๊ฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

์ฝ”๋“œ ์„œ๋ฒ„(์ž์ฒด ํ˜ธ์ŠคํŒ…) ๋˜๋Š” stackblitz์™€ ๊ฐ™์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ดœ์ฐฎ์€ PWA๊ฐ€ ์ด๋ฏธ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. https://github.com/bkniffler/vscode-native ์™€ ๊ฐ™์€ webview ๋‚ด๋ถ€์— ํฌํ•จ๋œ Monaco ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ˜์‘ ๋„ค์ดํ‹ฐ๋ธŒ ์ ‘๊ทผ ๋ฐฉ์‹์„ ๋ณด๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„๋Š” monaco ํŽธ์ง‘๊ธฐ์— ๋Œ€ํ•œ ๊ณต์‹ ๋ชจ๋ฐ”์ผ ๋ธŒ๋ผ์šฐ์ € ์ง€์›์„ ๋ฐ›๊ฑฐ๋‚˜ ์ตœ์†Œํ•œ ์ค‘์š”ํ•œ ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ด€๋ จ ๋ฌธ์ œ๋Š” https://github.com/microsoft/monaco-editor/issues/246์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ ์™ธ์—๋Š” ์ž์›์ด ์—†์Šต๋‹ˆ๋‹ค.

๋ฐ˜์‘ ๋„ค์ดํ‹ฐ๋ธŒ์—์„œ ์‹คํ–‰๋˜๋Š” monaco ํŽธ์ง‘๊ธฐ ios ์•ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. @hemantasapkota์—์„œ ๋งŒ๋“  Code Playground๋ผ๋Š” ์•ฑ ์Šคํ† ์–ด์—์„œ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. https://apps.apple.com/us/app/code-playground/id1452106609

์ด ๋ฌธ์ œ์—์„œ https://github.com/microsoft/monaco-editor/issues/1365 @hemantasapkota ๋Š” ๋ชจ๋‚˜์ฝ”์— ๋Œ€ํ•œ ์ผ๋ถ€ ๋ชจ๋ฐ”์ผ ์ง€์› ์ˆ˜์ • ์‚ฌํ•ญ๊ณผ ํ•จ๊ป˜ PR์„ ๋ณด๋‚ด๋Š”

๋˜ํ•œ ์—ฌ๊ธฐ https://github.com/hemantasapkota/goplayground/issues/2#issuecomment -475467975 @hemantasapkota ๊ฐ€ ์ž์‹ ์˜ ์ž‘์—… ์ค‘ ์ผ๋ถ€๋ฅผ ์˜คํ”ˆ ์†Œ์Šค๋กœ ๋งŒ๋“ค ๊ฐ€๋Šฅ์„ฑ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•ฉ๋‹ˆ๋‹ค.

iPadOS์˜ ์ œ๋ชฉ์„ ๋ณ€๊ฒฝํ•˜๊ณ  ์ด ๋ฌธ์ œ์— ๋” ๋งŽ์€ ๋ ˆ์ด๋ธ”์„ ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?

ipads์—์„œ ์ „์šฉ vscode๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค!!! ํŒ€์—์„œ ์–ด๋–ค ์—…๋ฐ์ดํŠธ?

@bkniffler , ๋‚˜๋Š” ๊ทธ ๋ฐ˜์‘ ๋„ค์ดํ‹ฐ๋ธŒ ํ”„๋กœ์ ํŠธ๋ฅผ ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ๊ทธ๋ ‡๋‹ค๋ฉด iPad Pro์—์„œ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ? ๋ฏธ๋ฆฌ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์˜คํ”„๋ผ์ธ ๋ชจ๋‚˜์ฝ” ํŽธ์ง‘์— ๋Œ€ํ•œ ๊ฐœ๋… ์ฆ๋ช…์ผ ๋ฟ์ด์ง€๋งŒ ์ง€๊ธˆ ๋‹น์žฅ์€ ํŒŒ์ผ ๋กœ๋“œ ๋˜๋Š” ์ €์žฅ, ์ฝ”๋“œ ์‹คํ–‰ ์—†์ด ๋‹ค๋ฅธ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ ๋˜๋Š” ๋น„์Šทํ•œ ๊ฒƒ์ด iPadOS Vscode๋กœ ์ด์–ด์งˆ ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

์ „์šฉ ์•ฑ์ด ํ•„์š”ํ•˜๋‹ค๋Š” ๋ฐ ์šฐ๋ฆฌ ๋ชจ๋‘ ๋™์˜ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์•ฑ์„ ๋งŒ๋“œ๋Š” ์‚ฌ๋žŒ์€ ์š”์  ์™ธ์— ์šฐ๋ฆฌ ๋ชจ๋‘๊ฐ€ ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ํŒŒ์•…ํ•ด์•ผ ํ•  ๊ฒƒ์€ ์–ด๋–ค ๊ธฐ์ˆ (ํ”„๋ ˆ์ž„์›Œํฌ)์ด ํ”„๋กœ์ ํŠธ์— ๊ฐ€์žฅ ์ž˜ ๋งž์„ ๊ฒƒ์ธ์ง€์ž…๋‹ˆ๋‹ค. Git ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ๋งŒ๋“ค๊ณ  ์ฝ”๋”ฉ์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๋„์ „์„ ์‚ฌ๋ž‘ํ•˜๊ณ  ์™„์ œํ’ˆ์„ ์œ„ํ•ด ์‚ด์•„๋ผ. ๊ฐ€๋Šฅํ•˜๋ฉด vue์™€ nativescript๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Javascript๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์•ž์œผ๋กœ ๋ช‡ ์ฃผ ์•ˆ์— ๋” ๋งŽ์€ ์ •๋ณด๋ฅผ ๊ฒŒ์‹œํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ชจ๋‘ ์ฆ๊ฑฐ์šด ์ฝ”๋”ฉ... ์•ˆ์ „์„ ์œ ์ง€ํ•˜์„ธ์š”.

์ด๋ด. ๋ชจ๋“  ์—…๋ฐ์ดํŠธ?

์ „์šฉ ์•ฑ์ด ํ•„์š”ํ•˜๋‹ค๋Š” ๋ฐ ์šฐ๋ฆฌ ๋ชจ๋‘ ๋™์˜ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์•ฑ์„ ๋งŒ๋“œ๋Š” ์‚ฌ๋žŒ์€ ์š”์  ์™ธ์— ์šฐ๋ฆฌ ๋ชจ๋‘๊ฐ€ ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ํŒŒ์•…ํ•ด์•ผ ํ•  ๊ฒƒ์€ ์–ด๋–ค ๊ธฐ์ˆ (ํ”„๋ ˆ์ž„์›Œํฌ)์ด ํ”„๋กœ์ ํŠธ์— ๊ฐ€์žฅ ์ž˜ ๋งž์„ ๊ฒƒ์ธ์ง€์ž…๋‹ˆ๋‹ค. Git ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ๋งŒ๋“ค๊ณ  ์ฝ”๋”ฉ์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๋„์ „์„ ์‚ฌ๋ž‘ํ•˜๊ณ  ์™„์ œํ’ˆ์„ ์œ„ํ•ด ์‚ด์•„๋ผ. ๊ฐ€๋Šฅํ•˜๋ฉด vue์™€ nativescript๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Javascript๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์•ž์œผ๋กœ ๋ช‡ ์ฃผ ์•ˆ์— ๋” ๋งŽ์€ ์ •๋ณด๋ฅผ ๊ฒŒ์‹œํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ชจ๋‘ ์ฆ๊ฑฐ์šด ์ฝ”๋”ฉ... ์•ˆ์ „์„ ์œ ์ง€ํ•˜์„ธ์š”.

๊ธฐ๊บผ์ด ๋„์™€๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ์— ์—ฐ๊ฒฐํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

์ €๋„ ๊ธฐ๊บผ์ด ๋„์™€๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.
Electron js ์ฝ”๋“œ๋ฅผ React Native๋กœ ์ด์‹ํ•˜๋Š” ๊ฒƒ์€ ๊ทธ๋ฆฌ ์–ด๋ ต์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์—…๋ฐ์ดํŠธ/์ €์žฅ์†Œ/๋“ฑ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

๊ทธ ๋™์•ˆ iOS ๋ฐ Android์— ๋Œ€ํ•œ ์ „์ž ํฌํŠธ์— ๋Œ€ํ•ด์„œ๋„ ์—ฐ๊ตฌํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ €๋„ ๊ธฐ๊บผ์ด ๋„์™€๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.
Electron js ์ฝ”๋“œ๋ฅผ React Native๋กœ ์ด์‹ํ•˜๋Š” ๊ฒƒ์€ ๊ทธ๋ฆฌ ์–ด๋ ต์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์—…๋ฐ์ดํŠธ/์ €์žฅ์†Œ/๋“ฑ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

๊ทธ ๋™์•ˆ iOS ๋ฐ Android์— ๋Œ€ํ•œ ์ „์ž ํฌํŠธ์— ๋Œ€ํ•ด์„œ๋„ ์—ฐ๊ตฌํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ชจ๋ฐ”์ผ์šฉ Electron๊ณผ ๊ฐ™์€ NativeScript๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ „์šฉ ์•ฑ์ด ํ•„์š”ํ•˜๋‹ค๋Š” ๋ฐ ์šฐ๋ฆฌ ๋ชจ๋‘ ๋™์˜ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์•ฑ์„ ๋งŒ๋“œ๋Š” ์‚ฌ๋žŒ์€ ์š”์  ์™ธ์— ์šฐ๋ฆฌ ๋ชจ๋‘๊ฐ€ ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ํŒŒ์•…ํ•ด์•ผ ํ•  ๊ฒƒ์€ ์–ด๋–ค ๊ธฐ์ˆ (ํ”„๋ ˆ์ž„์›Œํฌ)์ด ํ”„๋กœ์ ํŠธ์— ๊ฐ€์žฅ ์ž˜ ๋งž์„ ๊ฒƒ์ธ์ง€์ž…๋‹ˆ๋‹ค. Git ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ๋งŒ๋“ค๊ณ  ์ฝ”๋”ฉ์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๋„์ „์„ ์‚ฌ๋ž‘ํ•˜๊ณ  ์™„์ œํ’ˆ์„ ์œ„ํ•ด ์‚ด์•„๋ผ. ๊ฐ€๋Šฅํ•˜๋ฉด vue์™€ nativescript๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Javascript๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์•ž์œผ๋กœ ๋ช‡ ์ฃผ ์•ˆ์— ๋” ๋งŽ์€ ์ •๋ณด๋ฅผ ๊ฒŒ์‹œํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ชจ๋‘ ์ฆ๊ฑฐ์šด ์ฝ”๋”ฉ... ์•ˆ์ „์„ ์œ ์ง€ํ•˜์„ธ์š”.

์ง€๊ธˆ์€ ๋„ˆ๋ฌด ๋ฐ”๋น ์„œ ์ฝ”๋”ฉ์„ ๋„์™€๋“œ๋ฆด ์ˆ˜ ์—†์ง€๋งŒ ๋ฒ ํƒ€ ํ…Œ์ŠคํŠธ๋ฅผ ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค! ๋‚˜๋Š” ์ด๊ฒƒ์„ ์˜์›ํžˆ ๊ธฐ๋‹ค๋ ธ๋‹ค!

๋‚˜๋Š” ์†”์งํžˆ ์ด ์‹œ์ ์—์„œ ํฌ๋ง์„ ์žƒ๊ณ  ์žˆ๋‹ค. ๋ชจ๋“  ๊ฒƒ์ด 4๋…„ ๋™์•ˆ ์ง„ํ–‰๋˜์—ˆ์œผ๋ฉฐ(microsoft/monaco-editor#246์—์„œ ๋ชจ๋ฐ”์ผ์— ๋Œ€ํ•œ Monaco ์ง€์›์„ ์ œ์•ˆํ•˜๋Š” ๊ฒƒ์„ ํฌํ•จํ•˜์—ฌ) ์šฐ๋ฆฌ๋Š” ํŒ€์˜ ๊ฐœ์ž…์„ ๊ฑฐ์˜ ๋ฐ›์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

์ข‹์Šต๋‹ˆ๋‹ค. repl.it์˜ ์‚ฌ๋žŒ๋“ค์ด ์ž์ฒด ๋ชจ๋ฐ”์ผ ์•ฑ์„ ๊ฐœ๋ฐœํ•˜๊ณ  ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์••๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๋“ค์ด ๋Š์Šจํ•˜๊ฒŒ vscode๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค. ๋‚˜์—๊ฒŒ ๊ทธ๊ฒƒ์€ ๊ต‰์žฅํ•œ ๋ฏน์Šค์ฒ˜๋Ÿผ ๋“ค๋ฆฐ๋‹ค. ์–ด๋–ป๊ฒŒ ์ƒ๊ฐํ•˜๋‚˜์š”? ๋˜ํ•œ ๋‹น์‹ ์ด ๋งž์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๊ฐ์ž์˜ ์˜์—ญ์—์„œ ์ž˜ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ํ•ต์‹ฌ ํŒ€์˜ ๊ฐœ์ž… ์—†์ด๋Š” ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ์†”์งํžˆ ์ด ์‹œ์ ์—์„œ ํฌ๋ง์„ ์žƒ๊ณ  ์žˆ๋‹ค. ๋ชจ๋“  ๊ฒƒ์ด 4๋…„ ๋™์•ˆ ์ง„ํ–‰๋˜์—ˆ์œผ๋ฉฐ( microsoft/monaco-editor#246 ์—์„œ ๋ชจ๋ฐ”์ผ์— ๋Œ€ํ•œ Monaco ์ง€์›์„ ์ œ์•ˆํ•˜๋Š” ๊ฒƒ์„ ํฌํ•จํ•˜์—ฌ) ์šฐ๋ฆฌ๋Š” ํŒ€์˜ ๊ฐœ์ž…์„ ๊ฑฐ์˜ ๋ฐ›์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

iPadOS๊ฐ€ ๋ฐ์Šคํฌํƒ‘์ฒ˜๋Ÿผ ๋ณ€ํ•ด๊ฐ์— ๋”ฐ๋ผ ์ด๊ฒƒ์ด ๊ด€๋ จ์„ฑ์„ ๊ฐ–๊ฒŒ ๋˜์—ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์ด๋ฏธ ํ”Œ๋Ÿฌ๊ทธ์ธ https://code.visualstudio.com/docs๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ์›๊ฒฉ์—์„œ ์‹คํ–‰ ์ค‘์ธ vscode ์ธ์Šคํ„ด์Šค์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” iPadOS์šฉ ๊ธฐ๋ณธ "vscode ํด๋ผ์ด์–ธํŠธ"๋ฅผ ๊ฐ–๋Š” ๊ฒƒ์ด ์ถฉ๋ถ„ํ•œ ์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„๊ฐ€ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฐ˜๋ฉด MS๋Š” ์ž์ฒด ์ œํ’ˆ์„ ์ž ์‹ํ•˜๊ณ  ์‹ถ์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. https://docs.microsoft.com/visualstudio/online/overview/what-is-vsonline

@benjaminbauer ์ด๊ฒƒ์€ ์˜ค๋Š˜๋‚  ํด๋ผ์šฐ๋“œ ๋˜๋Š” ์ž์ฒด ํ˜ธ์ŠคํŒ… ํ™˜๊ฒฝ์—์„œ VS Online์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ถ€๋ถ„์ ์œผ๋กœ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. VS ์˜จ๋ผ์ธ CLI ์ฐธ์กฐ
๋ฌธ์ œ๋Š” Safari๊ฐ€ ํ˜„์žฌ ์™„์ „ํžˆ ์ง€์›๋˜์ง€ ์•Š์ง€๋งŒ ์ง€์›์ด ์ œ๊ณต๋  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. -> https://github.com/MicrosoftDocs/vsonline/issues/362#issuecomment -609518846

@benjaminbauer ์ด๊ฒƒ์€ ์˜ค๋Š˜๋‚  ํด๋ผ์šฐ๋“œ ๋˜๋Š” ์ž์ฒด ํ˜ธ์ŠคํŒ… ํ™˜๊ฒฝ์—์„œ VS Online์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ถ€๋ถ„์ ์œผ๋กœ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. VS ์˜จ๋ผ์ธ CLI ์ฐธ์กฐ

๋ฌธ์ œ๋Š” Safari๊ฐ€ ํ˜„์žฌ ์™„์ „ํžˆ ์ง€์›๋˜์ง€ ์•Š์ง€๋งŒ ์ง€์›์ด ์ œ๊ณต๋  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. -> https://github.com/MicrosoftDocs/vsonline/issues/362#issuecomment -609518846

๋˜๋Š” Code-Server ์ผ๋ฐ˜ ๋˜๋Š” Docker ํ™˜๊ฒฝ์—์„œ ์ง์ ‘ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋˜๋Š” Code-Server ์ผ๋ฐ˜ ๋˜๋Š” Docker ํ™˜๊ฒฝ์—์„œ ์ง์ ‘ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ, ์‹œ๋„ํ–ˆ์ง€๋งŒ ์ •๋ง ์ข‹์ง€๋งŒ VS Online ์ž์ฒด ํ˜ธ์ŠคํŒ… ํ™˜๊ฒฝ์—๋Š” ๋ช‡ ๊ฐ€์ง€ ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • Azure AD์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ง€์›ํ•˜๋Š” ์ธ์ฆ(MFA, pwdless, ...)
  • ์ธํ„ฐ๋„ท์˜ ์„œ๋ฒ„์—์„œ ํฌํŠธ๋ฅผ ์—ด ํ•„์š”๊ฐ€ ์—†์œผ๋ฉฐ ๊ด€๋ฆฌ ๋ฐ ์„ค์ •์„ ์œ„ํ•œ ssh ๋˜๋Š” vpn ํ„ฐ๋„์ด ์—†์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์œ ์ง€ํ•  ์ธ์ฆ์„œ, DNS ๋ฐ ๊ณต๊ฐœ ๋„๋ฉ”์ธ์ด ์—†์Šต๋‹ˆ๋‹ค.
  • ๋‘˜ ๋‹ค ๋ฌด๋ฃŒ์ด์ง€๋งŒ VS Online์€ MS์—์„œ ๊ณต์‹์ ์œผ๋กœ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋ฏ€๋กœ ๋ชจ๋“  ํ™•์žฅ์€ ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ๋‹ค์šด๋กœ๋“œ๋ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ์†”์งํžˆ ์ด ์‹œ์ ์—์„œ ํฌ๋ง์„ ์žƒ๊ณ  ์žˆ๋‹ค. ๋ชจ๋“  ๊ฒƒ์ด 4๋…„ ๋™์•ˆ ์ง„ํ–‰๋˜์—ˆ์œผ๋ฉฐ( microsoft/monaco-editor#246 ์—์„œ ๋ชจ๋ฐ”์ผ์— ๋Œ€ํ•œ Monaco ์ง€์›์„ ์ œ์•ˆํ•˜๋Š” ๊ฒƒ์„ ํฌํ•จํ•˜์—ฌ) ์šฐ๋ฆฌ๋Š” ํŒ€์˜ ๊ฐœ์ž…์„ ๊ฑฐ์˜ ๋ฐ›์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

iPadOS๊ฐ€ ๋ฐ์Šคํฌํƒ‘์ฒ˜๋Ÿผ ๋ณ€ํ•ด๊ฐ์— ๋”ฐ๋ผ ์ด๊ฒƒ์ด ๊ด€๋ จ์„ฑ์„ ๊ฐ–๊ฒŒ ๋˜์—ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์ด๋ฏธ ํ”Œ๋Ÿฌ๊ทธ์ธ https://code.visualstudio.com/docs๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ์›๊ฒฉ์—์„œ ์‹คํ–‰ ์ค‘์ธ vscode ์ธ์Šคํ„ด์Šค์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” iPadOS์šฉ ๊ธฐ๋ณธ "vscode ํด๋ผ์ด์–ธํŠธ"๋ฅผ ๊ฐ–๋Š” ๊ฒƒ์ด ์ถฉ๋ถ„ํ•œ ์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„๊ฐ€ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฐ˜๋ฉด MS๋Š” ์ž์ฒด ์ œํ’ˆ์„ ์ž ์‹ํ•˜๊ณ  ์‹ถ์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. https://docs.microsoft.com/visualstudio/online/overview/what-is-vsonline

๋‹น์‹ ์€ ๋‚ด ์š”์ ์„ ๋†“์ณค๋‹ค. 1๋…„ ๋™์•ˆ ์ง„ํ–‰๋˜์–ด ์˜จ ์ด ๋ฌธ์ œ์— ๋Œ€ํ•ด ํŒ€์˜ ๊ฐœ์ž…์ด ๊ฑฐ์˜ ์—†๋‹ค๊ณ  ๋ฐฉ๊ธˆ ๋ง์”€๋“œ๋ฆฐ ๊ฒƒ์ž…๋‹ˆ๋‹ค. (๊ทธ๋ฆฌ๊ณ  ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ๋‚˜์œ ์ง•์กฐ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.)

๋˜ํ•œ iPadOS์—์„œ ๊ธฐ๋ณธ VS Code๋ฅผ ์›ํ•˜๋Š” ๋งŒํผ(์ด์ „ ์˜๊ฒฌ ์ฐธ์กฐ). ๋‹น์‹ ์€ ์ด๋ฏธ ์—ฌ๊ธฐ์—์„œ ์ฒ ์ €ํ•˜๊ฒŒ ๋…ผ์˜๋œ ์ด๋Ÿฌํ•œ ์ œ์•ˆ์„ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋‹จ์ง€ ์›์„ ๊ทธ๋ฆฌ๋ฉฐ ๊ฐ€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์šฐ๋ฆฌ์—๊ฒŒ ํ•„์š”ํ•œ ๊ฒƒ์€ ์—…๋ฐ์ดํŠธ๋ฟ์ž…๋‹ˆ๋‹ค.

๋˜๋Š” Code-Server ์ผ๋ฐ˜ ๋˜๋Š” Docker ํ™˜๊ฒฝ์—์„œ ์ง์ ‘ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ, ์‹œ๋„ํ–ˆ์ง€๋งŒ ์ •๋ง ์ข‹์ง€๋งŒ VS Online ์ž์ฒด ํ˜ธ์ŠคํŒ… ํ™˜๊ฒฝ์—๋Š” ๋ช‡ ๊ฐ€์ง€ ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • Azure AD์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ง€์›ํ•˜๋Š” ์ธ์ฆ(MFA, pwdless, ...)
  • ์ธํ„ฐ๋„ท์˜ ์„œ๋ฒ„์—์„œ ํฌํŠธ๋ฅผ ์—ด ํ•„์š”๊ฐ€ ์—†์œผ๋ฉฐ ๊ด€๋ฆฌ ๋ฐ ์„ค์ •์„ ์œ„ํ•œ ssh ๋˜๋Š” vpn ํ„ฐ๋„์ด ์—†์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์œ ์ง€ํ•  ์ธ์ฆ์„œ, DNS ๋ฐ ๊ณต๊ฐœ ๋„๋ฉ”์ธ์ด ์—†์Šต๋‹ˆ๋‹ค.
  • ๋‘˜ ๋‹ค ๋ฌด๋ฃŒ์ด์ง€๋งŒ VS Online์€ MS์—์„œ ๊ณต์‹์ ์œผ๋กœ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋ฏ€๋กœ ๋ชจ๋“  ํ™•์žฅ์€ ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ๋‹ค์šด๋กœ๋“œ๋ฉ๋‹ˆ๋‹ค.

์˜จ๋ผ์ธ ๋Œ€ ์ฝ”๋“œ์— ๋ณ„๋„์˜ ํ”„๋ก ํŠธ์—”๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด ๋ชจ๋‘ ์˜จ๋ผ์ธ์—์„œ ์ž์ฒด ํ˜ธ์ŠคํŒ…๋ฉ๋‹ˆ๊นŒ?

์˜จ๋ผ์ธ ๋Œ€ ์ฝ”๋“œ์— ๋ณ„๋„์˜ ํ”„๋ก ํŠธ์—”๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด ๋ชจ๋‘ ์˜จ๋ผ์ธ์—์„œ ์ž์ฒด ํ˜ธ์ŠคํŒ…๋ฉ๋‹ˆ๊นŒ?

VS Online ํ”„๋ŸฐํŠธ ์—”๋“œ(aka.ms/vso-login)๋ฅผ ์‚ฌ์šฉํ•œ ๋‹ค์Œ ํด๋ผ์šฐ๋“œ Azure ํ™˜๊ฒฝ ๋˜๋Š” ์ž์ฒด ํ˜ธ์ŠคํŒ… ์„œ๋ฒ„๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. (๋ณ„๋„์˜ ํ”„๋ก ํŠธ์—”๋“œ๊ฐ€ ์—†๊ณ  VS Online ์„œ๋น„์Šค์— ์—ฐ๊ฒฐํ•˜๋Š” ์ž์ฒด ์„œ๋ฒ„์˜ ์—์ด์ „ํŠธ๋งŒ ์žˆ์œผ๋ฉฐ ์—ด๋ฆฐ ํฌํŠธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.)

๊ทธ๋Ÿฌ๋‚˜ iPad๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋กœ๊ทธ์ธ ๋Œ€ ์˜จ๋ผ์ธ(aka.ms/vso-online)์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ํŽ˜์ด์ง€ ์ƒ๋‹จ์— "๊ท€ํ•˜์˜ ๋ธŒ๋ผ์šฐ์ €๋Š” ํ˜„์žฌ ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค..."๋ผ๋Š” ์•Œ๋ฆผ์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ iPad๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋กœ๊ทธ์ธ ๋Œ€ ์˜จ๋ผ์ธ(aka.ms/vso-online)์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ํŽ˜์ด์ง€ ์ƒ๋‹จ์— "๊ท€ํ•˜์˜ ๋ธŒ๋ผ์šฐ์ €๋Š” ํ˜„์žฌ ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค..."๋ผ๋Š” ์•Œ๋ฆผ์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

https://github.com/MicrosoftDocs/vsonline/issues/362
https://github.com/MicrosoftDocs/vsonline/issues/33

์ด๊ฒƒ์€ ๊ณต์‹์ ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ์ด๊ฒƒ์€ ๊ฑฐ๋Œ€ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค!!!

๊ฐœ๋ฐœ์ž๋Š” Xcode๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ iPad ๋ฐ iPhone์—์„œ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
https://www.cultofmac.com/703527/xcode-ipad-iphone-ios-ipados-14-rumor/

๋ฐ”๋ผ๊ฑด๋Œ€ VSCODE ๋ฐ ๊ธฐํƒ€ ํŽธ์ง‘์ž๋Š” iPad์— ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ๊ณต์‹์ ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ์ด๊ฒƒ์€ ๊ฑฐ๋Œ€ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค!!!

๊ฐœ๋ฐœ์ž๋Š” Xcode๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ iPad ๋ฐ iPhone์—์„œ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
https://www.cultofmac.com/703527/xcode-ipad-iphone-ios-ipados-14-rumor/

๋ฐ”๋ผ๊ฑด๋Œ€ VSCODE ๋ฐ ๊ธฐํƒ€ ํŽธ์ง‘์ž๋Š” iPad์— ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์™€, ์ด๊ฑฐ ์—„์ฒญ๋‚˜๋‹ค! ๋Œ€์‹  Xcode๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋˜ํ•œ ์ด ๋‹ต๋ณ€์„ ์ง€์ ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

์ˆจ๊ฒจ์ง„ Xcode ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์•ฑ์€ iOS 13์— ์žˆ์œผ๋ฉฐ Mac์—์„œ ์‹คํ–‰๋˜๋Š” ๊ธฐ๋ณธ Xcode ์•ฑ์˜ ๋ ˆ์ด์•„์›ƒ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ์žฅ์น˜์— ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•œ ๋™๋ฐ˜ ์•ฑ์ž…๋‹ˆ๋‹ค. ๋‹น์‹ ์ด ํ‹€๋ ธ๋‹ค๊ณ  ๋งํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•œ ์ฐธ๊ณ ์šฉ์ผ ๋ฟ์ž…๋‹ˆ๋‹ค.

https://twitter.com/SteveMoser/status/1252197252887707650

๋˜ํ•œ Xcode๊ฐ€ iPadOS๋กœ ์ด๋™ํ•˜๋Š” ๊ฒƒ์„ ๋ณด๊ณ  ๊ธฐ๋ปํ•˜๊ณ  iPad์—์„œ ๋ณธ๊ฒฉ์ ์ธ ์ฝ”๋”ฉ์˜ ์‹œ์ž‘์„ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์ง€๋งŒ Xcode์™€ ํ•ด๋‹น ์ฝ”๋“œ๋ฒ ์ด์Šค๋Š” VSCode์™€ ๊ด€๋ จ์ด ์—†์œผ๋ฏ€๋กœ ๋Œ€๋ถ€๋ถ„์˜ ์‚ฌ๋žŒ๋“ค์˜ ์ƒํ™ฉ์„ ์‹ค์ œ๋กœ ๋ฐ”๊พธ์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ.

๋‚˜๋Š” ๋˜ํ•œ ์ด ๋‹ต๋ณ€์„ ์ง€์ ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

์ˆจ๊ฒจ์ง„ Xcode ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์•ฑ์€ iOS 13์— ์žˆ์œผ๋ฉฐ Mac์—์„œ ์‹คํ–‰๋˜๋Š” ๊ธฐ๋ณธ Xcode ์•ฑ์˜ ๋ ˆ์ด์•„์›ƒ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ์žฅ์น˜์— ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•œ ๋™๋ฐ˜ ์•ฑ์ž…๋‹ˆ๋‹ค. ๋‹น์‹ ์ด ํ‹€๋ ธ๋‹ค๊ณ  ๋งํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•œ ์ฐธ๊ณ ์šฉ์ผ ๋ฟ์ž…๋‹ˆ๋‹ค.

https://twitter.com/SteveMoser/status/1252197252887707650

๋˜ํ•œ Xcode๊ฐ€ iPadOS๋กœ ์ด๋™ํ•˜๋Š” ๊ฒƒ์„ ๋ณด๊ณ  ๊ธฐ๋ปํ•˜๊ณ  iPad์—์„œ ๋ณธ๊ฒฉ์ ์ธ ์ฝ”๋”ฉ์˜ ์‹œ์ž‘์„ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์ง€๋งŒ Xcode์™€ ํ•ด๋‹น ์ฝ”๋“œ๋ฒ ์ด์Šค๋Š” VSCode์™€ ๊ด€๋ จ์ด ์—†์œผ๋ฏ€๋กœ ๋Œ€๋ถ€๋ถ„์˜ ์‚ฌ๋žŒ๋“ค์˜ ์ƒํ™ฉ์„ ์‹ค์ œ๋กœ ๋ฐ”๊พธ์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ.

๊ณต์ •ํ•˜๊ฒŒ ๋งํ•˜๋ฉด ๊ฐœ๋ฐœ์ž๋กœ๋ถ€ํ„ฐ ์‘๋‹ต์ด ์—†์œผ๋ฉด ๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์€ ๊ณ„์† ์ง„ํ–‰ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์—ฌ๊ธฐ์„œ ์ถฉ๋ถ„ํžˆ ๊บผ๋ คํ•˜๋Š” ๊ฒƒ์„ ๋ณด์•˜์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์—ฌ์ „ํžˆ VS Code๋ฅผ ์„ ํ˜ธํ•˜์ง€๋งŒ Xcode๊ฐ€ ์™„๋ฒฝํ•˜์ง€๋Š” ์•Š๋”๋ผ๋„ ๋‹ค์–‘ํ•œ ์–ธ์–ด๋ฅผ Xcode์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. iPadOS๋ผ๋Š” ์ ์„ ์—ผ๋‘์— ๋‘์‹ญ์‹œ์˜ค.

@GalacticLion7 ์ข‹์•„ํ•˜๋Š” ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์ด ์ข‹์•„ํ•˜๋Š” ์žฅ์น˜๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ์ด์œ ๋กœ ์‚ฌ๋žŒ๋“ค์ด ์ˆ˜๋…„๊ฐ„ ์—ด์‹ฌํžˆ ๋งˆ์Šคํ„ฐํ•œ ์–ธ์–ด๋ฅผ ๋ณ€๊ฒฝํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์‹ญ๋‹ˆ๊นŒ? ๋‚˜๋Š” ํ™•์‹คํžˆํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด ๋ชจ๋“  ๋…ผ์˜๊ฐ€ ์‚ฌ๋žŒ๋“ค์ด ํ•˜๊ณ  ์‹ถ์–ดํ•œ๋‹ค๊ณ  ์ƒ์ƒํ•˜๋Š” ๊ฒƒ์„ ๋ณด์—ฌ์ฃผ์ง€๋งŒ ๊ฒฝํ—˜์  ์ฆ๊ฑฐ๊ฐ€ ๋ถ€์กฑํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ ๋ง‰ ์‹ค์ œ ๋งˆ์šฐ์Šค ์ง€์›์ด ์ถ”๊ฐ€๋œ iPad๋Š” ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ์ƒ์‚ฐ์ ์ธ ์‹œ์Šคํ…œ์œผ๋กœ ์ž…์ฆ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. TheVerge์˜ Dieter๊ฐ€ ์ƒˆ๋กœ์šด Apple Magic ํ„ฐ์น˜ํŒจ๋“œ ํ‚ค๋ณด๋“œ ์ผ€์ด์Šค ๋ฆฌ๋ทฐ์—์„œ ๋ฐฉ๊ธˆ ๋งํ–ˆ๋“ฏ์ด Office์—์„œ ์ž‘์—…ํ•˜๋Š” ๋™์•ˆ Zoom ํ†ตํ™”๋ฅผ ํ•˜๋Š” ๊ฒƒ์€ ์ •๋ง ๊ณจ์น˜ ์•„ํ”ˆ ์ผ์ž…๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์˜ ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ๋ผ ์žฅ์น˜ ๋ฐ OS ๊ธฐ๋Šฅ์˜ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์ด ์šฐ๋ฆฌ๊ฐ€ (๊ฐ„์‹ ํžˆ) Apple์—์„œ ๋งˆ์Œ์˜ ๋ณ€ํ™”์˜ ์‹œ์ž‘์— ์žˆ๋Š” ๊ณณ์ž…๋‹ˆ๋‹ค.

๋‹น์‹ (๊ทธ๋ฆฌ๊ณ  ๋‚˜), ์šฐ๋ฆฌ๋Š” ์ง€๊ธˆ ์ˆ˜์ •ํ•˜๊ณ  ์ž‘์—…ํ•˜๊ณ  ์‹ถ์ง€๋งŒ, ํ›Œ๋ฅญํ•œ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ(์˜ˆ: Xcode)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹ค์ œ ์ƒํ™œ์—์„œ ์‚ฌ๋žŒ๋“ค์ด ์‹ค์ œ๋กœ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. iPad์—์„œ ๊ธฐ๋ณธ ์žฅ์น˜๋กœ. MS๊ฐ€ ๋Œ€๋Œ€์ ์ธ ์žฌ์ž‘์„ฑ ๋…ธ๋ ฅ์„ ํ•˜๊ธฐ ์ „์— ์•„์ดํŒจ๋“œ๊ฐ€ ๋‹ค๋ฅธ ๋ถ„์•ผ์—์„œ ์–ด๋–ป๊ฒŒ ์ž์‹ ์„ ์ฆ๋ช…ํ•˜๋Š”์ง€ ์ง€์ผœ๋ณด๋Š” ๊ฒƒ์ด ์˜ฌ๋ฐ”๋ฅธ ๊ฒฐ์ •์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. iPad์—์„œ ์ฝ”๋”ฉ์„ ์‹œ์ž‘ํ•˜๋ ค๋ฉด ํ˜„์žฌ ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์€ ์šฐ๋ฆฌ์—๊ฒŒ ๋‹ฌ๋ ค ์žˆ์Šต๋‹ˆ๋‹ค.

@GalacticLion7 ์ข‹์•„ํ•˜๋Š” ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์ด ์ข‹์•„ํ•˜๋Š” ์žฅ์น˜๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ์ด์œ ๋กœ ์‚ฌ๋žŒ๋“ค์ด ์ˆ˜๋…„๊ฐ„ ์—ด์‹ฌํžˆ ๋งˆ์Šคํ„ฐํ•œ ์–ธ์–ด๋ฅผ ๋ณ€๊ฒฝํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์‹ญ๋‹ˆ๊นŒ? ๋‚˜๋Š” ํ™•์‹คํžˆํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด ๋ชจ๋“  ๋…ผ์˜๊ฐ€ ์‚ฌ๋žŒ๋“ค์ด ํ•˜๊ณ  ์‹ถ์–ดํ•œ๋‹ค๊ณ  ์ƒ์ƒํ•˜๋Š” ๊ฒƒ์„ ๋ณด์—ฌ์ฃผ์ง€๋งŒ ๊ฒฝํ—˜์  ์ฆ๊ฑฐ๊ฐ€ ๋ถ€์กฑํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ ๋ง‰ ์‹ค์ œ ๋งˆ์šฐ์Šค ์ง€์›์ด ์ถ”๊ฐ€๋œ iPad๋Š” ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ์ƒ์‚ฐ์ ์ธ ์‹œ์Šคํ…œ์œผ๋กœ ์ž…์ฆ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. TheVerge์˜ Dieter๊ฐ€ ์ƒˆ๋กœ์šด Apple Magic ํ„ฐ์น˜ํŒจ๋“œ ํ‚ค๋ณด๋“œ ์ผ€์ด์Šค ๋ฆฌ๋ทฐ์—์„œ ๋ฐฉ๊ธˆ ๋งํ–ˆ๋“ฏ์ด Office์—์„œ ์ž‘์—…ํ•˜๋Š” ๋™์•ˆ Zoom ํ†ตํ™”๋ฅผ ํ•˜๋Š” ๊ฒƒ์€ ์ •๋ง ๊ณจ์น˜ ์•„ํ”ˆ ์ผ์ž…๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์˜ ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ๋ผ ์žฅ์น˜ ๋ฐ OS ๊ธฐ๋Šฅ์˜ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์ด ์šฐ๋ฆฌ๊ฐ€ (๊ฐ„์‹ ํžˆ) Apple์—์„œ ๋งˆ์Œ์˜ ๋ณ€ํ™”์˜ ์‹œ์ž‘์— ์žˆ๋Š” ๊ณณ์ž…๋‹ˆ๋‹ค.

๋‹น์‹ (๊ทธ๋ฆฌ๊ณ  ๋‚˜), ์šฐ๋ฆฌ๋Š” ์ง€๊ธˆ ์ˆ˜์ •ํ•˜๊ณ  ์ž‘์—…ํ•˜๊ณ  ์‹ถ์ง€๋งŒ, ํ›Œ๋ฅญํ•œ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ(์˜ˆ: Xcode)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹ค์ œ ์ƒํ™œ์—์„œ ์‚ฌ๋žŒ๋“ค์ด ์‹ค์ œ๋กœ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. iPad์—์„œ ๊ธฐ๋ณธ ์žฅ์น˜๋กœ. MS๊ฐ€ ๋Œ€๋Œ€์ ์ธ ์žฌ์ž‘์„ฑ ๋…ธ๋ ฅ์„ ํ•˜๊ธฐ ์ „์— ์•„์ดํŒจ๋“œ๊ฐ€ ๋‹ค๋ฅธ ๋ถ„์•ผ์—์„œ ์–ด๋–ป๊ฒŒ ์ž์‹ ์„ ์ฆ๋ช…ํ•˜๋Š”์ง€ ์ง€์ผœ๋ณด๋Š” ๊ฒƒ์ด ์˜ฌ๋ฐ”๋ฅธ ๊ฒฐ์ •์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. iPad์—์„œ ์ฝ”๋”ฉ์„ ์‹œ์ž‘ํ•˜๋ ค๋ฉด ํ˜„์žฌ ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์€ ์šฐ๋ฆฌ์—๊ฒŒ ๋‹ฌ๋ ค ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” iPadOS๊ฐ€ ์ด๋ฏธ ๊ฐœ๋ฐœ๊ณผ ๊ฐ™์€ ์ผ์„ ์œ„ํ•œ ์ตœ๊ณ ์˜ ์ƒ์‚ฐ์„ฑ ์žฅ์น˜๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉฐ, ์ด๋ฅผ ๋ฐ˜์ฆํ•˜๋Š” ๊ฒƒ์€ ์•ฑ ๊ฐœ๋ฐœ์ž๋“ค๋ฟ์ž…๋‹ˆ๋‹ค.

Zoom ์˜ˆ์ œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ iPadOS์—์„œ Zoom ํ˜ธ์ถœ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ด์œ ๋Š” ์ตœ์†Œํ•œ ์ œ ๊ฐœ์ธ์ ์ธ ๊ฒฝํ—˜์œผ๋กœ๋Š” ์ˆœ์ „ํžˆ UI/UX ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. Zoom ํด๋ผ์ด์–ธํŠธ์˜ Windows/macOS ๋ฒ„์ „์— ๋น„ํ•ด ๋งค์šฐ ์—ด์•…ํ•ฉ๋‹ˆ๋‹ค.

์ด๋Š” Zoom์—๋งŒ ๊ตญํ•œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‹ฌ์ง€์–ด ๊ตฌ๊ธ€๋„ ๊ฐ™์€ ๊ธธ์„ ๊ฐ€๊ณ  ์žˆ๋‹ค. iPadOS์šฉ Google ๋ฌธ์„œ ์•ฑ์€ ์ž˜ ์ž‘๋™ํ•˜์ง€๋งŒ ์ „์ฒด PWA์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€๋ถ€๋ถ„์˜ ๊ธฐ๋Šฅ์„ ์ƒ๋žตํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  Google Slides ์•ฑ์€ ์‹œ๊ฐ„์ด ๋งŽ์ด ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ํŠนํžˆ ํฌ๋กœ์Šค ํ”Œ๋žซํผ ๋ฐ ์›น ์•ฑ์„ iPadOS๋กœ ๊ฐ€์ ธ์˜ค๋ ค๋Š” ๋งŽ์€ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ๊ตฌ๊ธ€๊ณผ ์คŒ๋ฟ๋งŒ์ด ์•„๋‹ˆ๋‹ค.

์•ฑ ๊ฐœ๋ฐœ์ž๊ฐ€ iPadOS(ํŠนํžˆ ๋ชจ๋ฐ”์ผ ์„œ๋น„์Šค)์šฉ ์•ฑ์„ ํ๋ ˆ์ดํŒ…ํ•˜๋Š” ๋ฐ ์กฐ๊ธˆ ๋” ๋งŽ์€ ์‹œ๊ฐ„์„ ํ• ์• ํ•  ๋งŒํผ ์œ ๋Šฅํ•˜๋‹ค๋ฉด ์ด ๋ฌธ์ œ๋Š” ์‰ฝ๊ฒŒ ๊ณ ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๋“ค์€ iPadOS๊ฐ€ ๊ทธ๋“ค์˜ ์ตœ๊ณ ์˜ ๊ด€์‹ฌ์‚ฌ๊ฐ€ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋ ‡๊ฒŒ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ Microsoft๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ IDE๋ฅผ iPadOS๋กœ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•ด ๋‘ ๊ฐ€์ง€ ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ€์ง„ ๋‘ ๊ฐ€์ง€ ๊ฒฝ๋กœ๋ฅผ ๋”ฐ๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๊ต์ฐจ ํ”Œ๋žซํผ ์•ฑ์„ iPadOS๋กœ ๊ฐ€์ ธ์˜ค๋ ค๋Š” ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ฒ˜๋Ÿผ ์•ฑ์˜ ๋ผ์ดํŠธ ๋ฒ„์ „์„ ๋งŒ๋“ค๊ณ  ๊ฐœ๋ฐœ์ž๊ฐ€ ์ผ๋ฐ˜์ ์œผ๋กœ iPadOS์šฉ ์•ฑ์„ ์„ ๋ณ„ํ•˜๊ธฐ ์‹œ์ž‘ํ•  ๋•Œ๊นŒ์ง€ ๊ทธ๋Œ€๋กœ ๋‘์‹ญ์‹œ์˜ค.

๋˜๋Š”

  • ๊ธฐ์กด ๋ฒ„์ „์— ๋ฒ„๊ธˆ๊ฐ€๋Š” ์™„์ „ํ•œ ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ iPadOS์šฉ VS Code๋ฅผ ๋งŒ๋“ค์–ด ๋ณด์„ธ์š”. ์ด๊ฒƒ์€ iPadOS ๊ธฐ๊ธฐ๋ฅผ ์†Œ์œ ํ•œ ๊ฐœ๋ฐœ์ž๋“ค์—๊ฒŒ ์—„์ฒญ๋‚œ ํŽธ์˜์„ฑ์„ ์ œ๊ณตํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž๋“ค์ด ๊ทธ๋“ค์˜ ํฌ๋กœ์Šค ํ”Œ๋žซํผ ๋˜๋Š” ์›น ์•ฑ์„ iPadOS๋กœ ๊ฐœ์„ ํ•˜๊ฑฐ๋‚˜ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ๊ด€์‹ฌ์„ ํฌ๊ฒŒ ๋ถˆ๋Ÿฌ์ผ์œผํ‚ฌ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‹ค์‹œ ๋งํ•˜์ง€๋งŒ, ์ด ๋ชจ๋“  ๋…ผ์˜๋Š” ๊ฐœ๋ฐœ์ž ํŒ€์œผ๋กœ๋ถ€ํ„ฐ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ฐ›์ง€ ๋ชปํ•œ๋‹ค๋ฉด ๋งค์šฐ ๋ฌด์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. @isidorn ์—ฌ๊ธฐ์— ๊ณต์‹์ ์ธ ํ™œ๋™์„ ์ข€ ๋” ๊ฐ€์ ธ์™€ ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

ide๋ฅผ ios๋กœ ์ด์‹ํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์ง€๋งŒ ํ˜„์žฌ ios์— ์žˆ๋Š” ์ œํ•œ ์‚ฌํ•ญ์œผ๋กœ ์ธํ•ด ๋งŽ์€ ์ž‘์—…์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
์ƒ์‚ฐ ์ค€๋น„๊ฐ€ ๋ฉ€์—ˆ์Šต๋‹ˆ๋‹ค. ๊ตฌ๋ฌธ ๊ฐ•์กฐ ํ‘œ์‹œ๊ฐ€ ๊นจ์กŒ๊ณ  ์ผ๋ถ€ ํ„ฐ์น˜ ํ•ญ๋ชฉ์ด ์˜๋„ํ•œ ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š๊ณ  ํŒŒ์ผ ์‹œ์Šคํ…œ ๋ถ€๋ถ„์ด ์ „ํ˜€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ nodejs ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์€ ์•ฑ์— ์ „์ฒด ๋Ÿฐํƒ€์ž„์„ ํฌํ•จํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค(์ €๋Š” ๊ทธ๋ ‡๊ฒŒ ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค).

์—ฌ๊ธฐ์— ๋‚ด๊ฐ€ ๋งŒ๋“  ๊ฒŒ์‹œ๋ฌผ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
https://www.reddit.com/r/webdev/comments/g7rhtw/i_ported_vscode_to_the_ipad/

ํ”„๋กœ์ ํŠธ์— ๊ด€์‹ฌ์ด ์žˆ์œผ์‹œ๋ฉด ๋ ˆ๋”ง์—์„œ ์•Œ๋ ค์ฃผ์‹ญ์‹œ์˜ค.

์ •๋ง ๋ฉ‹์ง„ @locomain์ž…๋‹ˆ๋‹ค. ๋น„๊ณต๊ฐœ ์†Œ์Šค๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด ์œ ๊ฐ์ž…๋‹ˆ๋‹ค. ๋ˆ์„ ์“ฐ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ด ์•„๋‹ˆ๋ผ ๊ฐœ๋ฐœ ์†๋„๊ฐ€ ์ƒ๋‹นํžˆ ๋Š๋ ค์งˆ๊นŒ ๋‘๋ ต๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ ๊ณ„์† ์œ ์ง€ํ•˜์‹ญ์‹œ์˜ค.

๊ด€์‹ฌ ์žˆ๋Š” ์‚ฌ๋žŒ์„ ์œ„ํ•œ ์ธ์šฉ๋ฌธ:

์•„๋‹ˆ์š”, ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์˜คํ”ˆ ์†Œ์Šค๋กœ ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ •๊ทœ์ง์ด ์žˆ๊ณ  ์—ฌ๊ฐ€ ์‹œ๊ฐ„์— ์ด ์ผ์„ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ž‘์—…์„ ์™„๋ฃŒํ•˜๋ ค๋ฉด ๋งŽ์€ ์‹œ๊ฐ„์ด ์†Œ์š”๋  ๊ฒƒ์ด๋ฉฐ ๊ณผ๊ฑฐ์— ๋‚˜์—๊ฒŒ ์ด๋Ÿฐ ์ผ์ด ์ผ์–ด๋‚ฌ๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ๋žŒ๋“ค์ด ๋‚ด ์ผ์—์„œ ๋ˆ์„ ๋ฒ„๋Š” ๊ฒƒ์„ ๋ณด๊ณ  ์‹ถ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ตœ๊ทผ ๋งค์งํ‚ค๋ณด๋“œ๊ฐ€ ๋‚˜์˜ค๋‹ˆ ๊ธฐ๋Œ€๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ๋น„๋ก ์ง€๊ธˆ์€ ์™„๋ฒฝํ•˜์ง€ ์•Š์ง€๋งŒ.

@bkniffler Reddit์˜ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ํ”„๋กœ์ ํŠธ๋ฅผ ์˜คํ”ˆ ์†Œ์Šค๋กœ ๋งŒ๋“ค์–ด์•ผ ํ•˜๋Š” ์ด์œ ์— ๋Œ€ํ•ด ํ›Œ๋ฅญํ•œ ์˜๊ฒฌ์„ ๋‚จ๊ฒผ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์–ด๋Š ์ •๋„ ๋™์˜ํ•˜๋ฏ€๋กœ ์†Œ์Šค๋ฅผ ๊ณต๊ฐœํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ์žฌ๊ณ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ide๋ฅผ ios๋กœ ์ด์‹ํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์ง€๋งŒ ํ˜„์žฌ ios์— ์žˆ๋Š” ์ œํ•œ ์‚ฌํ•ญ์œผ๋กœ ์ธํ•ด ๋งŽ์€ ์ž‘์—…์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
์ƒ์‚ฐ ์ค€๋น„๊ฐ€ ๋ฉ€์—ˆ์Šต๋‹ˆ๋‹ค. ๊ตฌ๋ฌธ ๊ฐ•์กฐ ํ‘œ์‹œ๊ฐ€ ๊นจ์กŒ๊ณ  ์ผ๋ถ€ ํ„ฐ์น˜ ํ•ญ๋ชฉ์ด ์˜๋„ํ•œ ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š๊ณ  ํŒŒ์ผ ์‹œ์Šคํ…œ ๋ถ€๋ถ„์ด ์ „ํ˜€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ nodejs ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์€ ์•ฑ์— ์ „์ฒด ๋Ÿฐํƒ€์ž„์„ ํฌํ•จํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค(์ €๋Š” ๊ทธ๋ ‡๊ฒŒ ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค).

์—ฌ๊ธฐ์— ๋‚ด๊ฐ€ ๋งŒ๋“  ๊ฒŒ์‹œ๋ฌผ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
https://www.reddit.com/r/webdev/comments/g7rhtw/i_ported_vscode_to_the_ipad/

ํ”„๋กœ์ ํŠธ์— ๊ด€์‹ฌ์ด ์žˆ์œผ์‹œ๋ฉด ๋ ˆ๋”ง์—์„œ ์•Œ๋ ค์ฃผ์‹ญ์‹œ์˜ค.

์•„์‹œ๋‹ค์‹œํ”ผ, ์•ฑ ์Šคํ† ์–ด์— ๊ทธ๋ ‡๊ฒŒ ์ถœ์‹œํ•˜๋ฉด ๋ช‡ ๊ฐ€์ง€ ์ง€์นจ์„ ์œ„๋ฐ˜ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์˜คํ›„ 2,99$์— webview์—์„œ ์‹คํ–‰๋˜๋Š” vscode์˜ ํ˜ธ์ŠคํŒ…๋œ ๋ฒ„์ „์ž…๋‹ˆ๊นŒ? ์ฐจ๋ผ๋ฆฌ @locomain ์ด ๋ฌด์—‡์„ ํ•˜๊ณ 

ide๋ฅผ ios๋กœ ์ด์‹ํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์ง€๋งŒ ํ˜„์žฌ ios์— ์žˆ๋Š” ์ œํ•œ ์‚ฌํ•ญ์œผ๋กœ ์ธํ•ด ๋งŽ์€ ์ž‘์—…์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
์ƒ์‚ฐ ์ค€๋น„๊ฐ€ ๋ฉ€์—ˆ์Šต๋‹ˆ๋‹ค. ๊ตฌ๋ฌธ ๊ฐ•์กฐ ํ‘œ์‹œ๊ฐ€ ๊นจ์กŒ๊ณ  ์ผ๋ถ€ ํ„ฐ์น˜ ํ•ญ๋ชฉ์ด ์˜๋„ํ•œ ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š๊ณ  ํŒŒ์ผ ์‹œ์Šคํ…œ ๋ถ€๋ถ„์ด ์ „ํ˜€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ nodejs ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์€ ์•ฑ์— ์ „์ฒด ๋Ÿฐํƒ€์ž„์„ ํฌํ•จํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค(์ €๋Š” ๊ทธ๋ ‡๊ฒŒ ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค).

์—ฌ๊ธฐ์— ๋‚ด๊ฐ€ ๋งŒ๋“  ๊ฒŒ์‹œ๋ฌผ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
https://www.reddit.com/r/webdev/comments/g7rhtw/i_ported_vscode_to_the_ipad/

ํ”„๋กœ์ ํŠธ์— ๊ด€์‹ฌ์ด ์žˆ์œผ์‹œ๋ฉด ๋ ˆ๋”ง์—์„œ ์•Œ๋ ค์ฃผ์‹ญ์‹œ์˜ค.

์œ„ ์‚ฌ๋žŒ๋“ค์ด ๋งํ–ˆ๋“ฏ์ด ์ผ๋ถ€ ์ƒ์  ์ง€์นจ์„ ์œ„๋ฐ˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. altStore๋ฅผ ํ†ตํ•œ ๋ฐฐ์†ก์„ ๊ณ ๋ คํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์–ด์จŒ๋“  ๋„์›€์ด ๋˜์—ˆ์œผ๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค. :D

๊ทธ๋ž˜์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์˜คํ›„ 2,99$์— webview์—์„œ ์‹คํ–‰๋˜๋Š” vscode์˜ ํ˜ธ์ŠคํŒ…๋œ ๋ฒ„์ „์ž…๋‹ˆ๊นŒ? ์ฐจ๋ผ๋ฆฌ @locomain ์ด ๋ฌด์—‡์„ ํ•˜๊ณ 

์˜ˆ, ํ•˜์ง€๋งŒ Safari์—์„œ ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ํ›จ์”ฌ ๋” ๋‚˜์€ ๊ฒฝํ—˜์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์ถ”์ฒœํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์œ ๋ฃŒ์ด๋ฉฐ sudo ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์—†์Šต๋‹ˆ๋‹ค.

GitHub CodeSpaces๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ?
(Microsoft๋Š” ์ด๋ฏธ ์ œ๊ณตํ•˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ!?)

GitHub CodeSpaces๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ?
(Microsoft๋Š” ์ด๋ฏธ ์ œ๊ณตํ•˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ!?)

ํ˜น์‹œ๋ผ๋„ ๊ด€์‹ฌ์ด ์žˆ์œผ์‹  ๋ถ„...

Visual Studio Codespaces ์—์„œ ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•œ ๊ฐ€์ง€ ์ฃผ์˜ํ•  ์ ์€ -- ๋ณต์‚ฌ(cmd-C) ๋ฐ ์‹คํ–‰ ์ทจ์†Œ(cmd-Z)๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๊ณณ์—์„œ ๋ณต์‚ฌํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ™์—ฌ๋„ฃ๋Š” ๊ฒƒ์€ ์ž‘๋™ํ•˜์ง€๋งŒ ํŽธ์ง‘๊ธฐ์—์„œ ์ƒˆ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณต์‚ฌํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค. ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์‹คํ–‰ ์ทจ์†Œ ์‹ ํ˜ธ(cmd-Z)๋„ ์บก์ฒ˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ผ๋ฐ˜์ ์œผ๋กœ Codespaces๋Š” VS App๊ณผ ๋™์ผํ•œ ๋ฐฉ์‹์œผ๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•˜๋Š” ์›๊ฒฉ ์ปจํ…Œ์ด๋„ˆ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‘ ๊ฒฝ์šฐ ๋ชจ๋‘ ์‚ฌ์šฉ๋œ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ๋น„์šฉ์„ ์ง€๋ถˆํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ๋‘ ๊ฒฝ์šฐ ๋ชจ๋‘(Codespaces ๋ฐ VS App) ์ž์ฒด ํ˜ธ์ŠคํŒ… VSO ๋˜๋Š” ์ฝ”๋“œ ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  VSO ์›น์‚ฌ์ดํŠธ ๋˜๋Š” VS App์„ ๋ฌด๋ฃŒ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. VS App์˜ ์ž์ฒด ํ˜ธ์ŠคํŒ… ์˜ต์…˜์€ ๋น„๊ต์  ์ตœ๊ทผ์ž…๋‹ˆ๋‹ค.

VS App์˜ ์ž‘์„ฑ์ž๋Š” https://github.com/cdr/code-server/issues/1015#issuecomment -631473728์—์„œ ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋‚˜์—ดํ–ˆ์Šต๋‹ˆ๋‹ค. ๋น ๋ฅธ ๋ฒ„์ „์€ ์•ฑ ์ˆ˜์ค€์—์„œ ๋ณต์‚ฌ/๋ถ™์—ฌ๋„ฃ๊ธฐ๋ฅผ ๊ฐ€๋กœ์ฑˆ ๋‹ค์Œ ํ˜ธ์ถœ์„ WebView๋กœ ์ „๋‹ฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์•„๋งˆ๋„ userAgent ๋ฌธ์ œ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๊นŒ?

  • PC ํฌ๋กฌ: ์ž‘๋™ ์ค‘
  • PC Chrome iOS ๋ชจ๋ฐ”์ผ ๋ชจ๋“œ: ์ž‘๋™ํ•˜์ง€ ์•Š์Œ
  • ๋งฅ ์‚ฌํŒŒ๋ฆฌ: ์ž‘์—…
  • Mac Safari iPhone ์—์ด์ „ํŠธ: ์ž‘๋™ํ•˜์ง€ ์•Š์Œ
  • iPad ๋ฐ์Šคํฌํƒ‘ ๋ชจ๋“œ: ์ž‘๋™ ์ค‘
  • iPad ๋ชจ๋ฐ”์ผ ๋ชจ๋“œ: ์ž‘๋™ํ•˜์ง€ ์•Š์Œ

UserAgent(ํ…Œ์ŠคํŠธ PC)

ํ…Œ์ŠคํŠธ ์ฝ”๋“œ

<head>
...
<script>
Object.defineProperty(navigator, "userAgent", {
  get: () => "Mozilla/5.0 (Macintosh; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1",
});
// iOS "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"
// Mac Safari "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1 Safari/605.1.15" = $1
</script>
...
</head>
...

์ž‘๋™ ์•ˆํ•จ

  • "Mozilla/5.0(iPhone, Mac OS X๊ณผ ๊ฐ™์€ CPU iPhone OS 13_2_3) AppleWebKit/605.1.15(Gecko์™€ ๊ฐ™์€ KHTML) ๋ฒ„์ „/13.0.3 Mobile/15E148 Safari/604.1"
  • "Mozilla/5.0(๋ฌด์—‡; Mac OS X๊ณผ ๊ฐ™์€ CPU iPhone OS 13_2_3) AppleWebKit/605.1.15(Gecko์™€ ๊ฐ™์€ KHTML) ๋ฒ„์ „/13.0.3 Mobile/15E148 Safari/604.1"

    ์ผํ•˜๊ณ ์žˆ๋Š”

  • "Mozilla/5.0(Macintosh, Intel Mac OS X 10_15_4) AppleWebKit/605.1.15(Gecko์™€ ๊ฐ™์€ KHTML) ๋ฒ„์ „/13.1 Safari/605.1.15"

  • "Mozilla/5.0(Macintosh, Mac OS X๊ณผ ๊ฐ™์€ CPU iPhone OS 13_2_3) AppleWebKit/605.1.15(Gecko์™€ ๊ฐ™์€ KHTML) ๋ฒ„์ „/13.0.3 Mobile/15E148 Safari/604.1"

๊ฒฐ๊ณผ

  • userAgent์— Macintosh๊ฐ€ ์—†์œผ๋ฉด ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ์•„๋งˆ๋„ userAgent๊ฐ€ ํ”Œ๋žซํผ์„ ํ™•์ธํ•˜๊ณ  Macintosh๊ฐ€ ๋ฉ”ํƒ€ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์•„์ดํฐ ํ”Œ๋žซํผ์—์„œ๋Š” ๋ฉ”ํƒ€ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ฐฉ๊ฐ์„ ๋ถˆ๋Ÿฌ์ผ์œผํ‚ค๋Š” ๊ฒƒ ๊ฐ™๋‹ค.
  • ๋ฉ”ํƒ€ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ํ”Œ๋žซํผ์— iphone์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์€ ์–ด๋–ป์Šต๋‹ˆ๊นŒ?

@daybrush ๊ธฐ์—ฌ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด ๋ฌธ์ œ๋Š” Visual Studio Code์šฉ ์ „์šฉ ๋ชจ๋ฐ”์ผ ์•ฑ์„ ๋‹ค๋ฃจ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

@daybrush ๊ธฐ์—ฌ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด ๋ฌธ์ œ๋Š” Visual Studio Code์šฉ ์ „์šฉ ๋ชจ๋ฐ”์ผ ์•ฑ์„ ๋‹ค๋ฃจ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋™์˜ํ•˜๋‹ค. ๋‹ซ์œผ๋ฉด ์•ˆ๋ฉ๋‹ˆ๋‹ค. ์ปดํ“จํ„ฐ(๋˜๋Š” ์œ ๋ฃŒ ๋Œ€ ์ฝ”๋“œ ์ฝ”๋“œ ๊ณต๊ฐ„)๊ฐ€ ํ•„์š”ํ•œ ์›น ์•ฑ์€ ๋ฐ์Šคํฌํ†ฑ์šฉ ์•ฑ๊ณผ ๊ฐ™์€ ์•ฑ์ด ์•„๋‹™๋‹ˆ๋‹ค.

@galacticLion7 @maxiostro

์˜ค ๋‚ด ์‹ค์ˆ˜. ์™ธ๋ถ€ ๋ฌธ์ œ์—์„œ ๋งํฌ๊ฐ€ ๊ด€๋ จ ๋ฌธ์ œ๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

์•„์ดํŒจ๋“œ์˜ ๊ธฐ๋ณธ ์•ฑ์ด ๋‚˜์™”์œผ๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค.

@rebornix ๋‹ค์‹œ ์—ด ์ˆ˜ ์žˆ๋‚˜์š”?

WWDC 2020์„ ์‹œ์ฒญํ•œ ํ›„,
๊ทธ ์‚ฌ๊ณผ๋Š” ๋‹ค์Œ Mac์„ ์œ„ํ•ด ARM ํ”„๋กœ์„ธ์„œ(Apple Silicon)๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.
๋˜ํ•œ ๋ชจ๋“  ์ธ๊ธฐ ์žˆ๋Š” ์•ฑ์€ ARM ํ”„๋กœ์„ธ์„œ์šฉ์œผ๋กœ ๋‹ค์‹œ ์ถœ์‹œ/๊ฐœ๋ฐœ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์•„๋งˆ๋„ ์•„์ดํŒจ๋“œ์—์„œ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ์–ด๋ ค์›€์ด ์—†์„ ๊ฒƒ์ด๋ผ๋Š” ์˜๋ฏธ(?)

V8์ด ์ด๋ฏธ ARM์—์„œ ์‹คํ–‰๋˜๊ณ  ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ NodeJ์— ๋Œ€ํ•ด์„œ๋Š” ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

@Altiano Apple์€ Chromium, Electron, Node, V8 ๋“ฑ์„ ํฌํ•จํ•˜์—ฌ ARM ์ง€์›์„ ์œ„ํ•œ ์—ฌ๋Ÿฌ ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ์— ํŒจ์น˜๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์„ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค : https://twitter.com/MarkVillacampa/status/1275200446764912643?s=20

@Altiano Apple์€ Chromium, Electron, Node, V8 ๋“ฑ์„ ํฌํ•จํ•˜์—ฌ ARM ์ง€์›์„ ์œ„ํ•œ ์—ฌ๋Ÿฌ ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ์— ํŒจ์น˜๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์„ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค : https://twitter.com/MarkVillacampa/status/1275200446764912643?s=20

ARM์˜ iPadOS๊ฐ€ ์•„๋‹ˆ๋ผ ARM์˜ macOS์šฉ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

Apple Silicon์€ iPad์— ์žˆ๋Š” A ์‹œ๋ฆฌ์ฆˆ ์นฉ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

Apple Silicon์€ iPad์— ์žˆ๋Š” A ์‹œ๋ฆฌ์ฆˆ ์นฉ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

์•„ํ†ฐ์ด SwiftUI๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ํ•œ, ๊ฐ™์€ ์นฉ์ด์ง€๋งŒ ๋‹ค๋ฅธ OS๋Š” ์™„์ „ํžˆ ๋‹ค๋ฅธ API๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

๊ฐ€์žฅ ๊ทธ๋Ÿด๋“ฏํ•œ ๋ฐฉ๋ฒ•์€ ์‹ค์ œ๋กœ Apple์ด A12Z iPad Pro์—์„œ macOS๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ARM mac๊ณผ ์•„์ดํŒจ๋“œ ํ”„๋กœ๊ฐ€ ๊ฐ™์€ ์นฉ์„ ์‚ฌ์šฉํ•˜์ง€๋งŒ, ๊ธฐ์ˆ ์  ๋ฌธ์ œ๋ผ๊ธฐ ๋ณด๋‹ค๋Š” ๋Œ€๋ถ€๋ถ„ ์‹œ์žฅ์˜ ๊ฒฐ์ •์ด๋‹ค.

๋‚ด ์ƒ๊ฐ์— iOS ์•ฑ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ MacOS์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ทธ ๋ฐ˜๋Œ€๊ฐ€ ์ •๋ง ๊ฐ€๋Šฅํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‚ด iPad Pro์—์„œ VSC๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก github์˜ ์ฝ”๋“œ ๊ณต๊ฐ„์„ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ์Šค๋ ˆ๋“œ์˜ ์•ž๋ถ€๋ถ„์—์„œ ๋งํ•œ ๊ฒƒ๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ iPad์˜ Safari์—์„œ ์•„๋ฌด๋Ÿฐ ๋ณ€๊ฒฝ ์—†์ด ์—ด ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ์•„๋ƒˆ์Šต๋‹ˆ๋‹ค. iPad์˜ Chrome์€ ๋ฐ์Šคํฌํ†ฑ ๋ชจ๋“œ์—์„œ๋งŒ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์ œ๋Š” ์‹ค์ œ๋กœ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์ปจํ…Œ์ด๋„ˆ์˜ ๋‹ค๋ฅธ URL๋กœ ์ž๋™ ์ „๋‹ฌํ•˜์ง€๋งŒ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๋‚ด ๋…ธ๋“œ ์•ฑ๊ณผ ํ•จ๊ป˜ localhost ๋งํฌ๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. Safari๋‚˜ Chrome์—์„œ ์—ด๋ฆฌ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. Chrome์—์„œ๋Š” URL๋กœ ์ด๋™ํ•˜๊ธฐ ์œ„ํ•ด ํŒ์—…์„ ๊บผ์•ผ ํ–ˆ์ง€๋งŒ ์‹ค์ œ ์ฝ˜ํ…์ธ ๋Š” ๋กœ๋“œ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๊ฑฐ๊ธฐ์— ์•‰์•„์„œ ์ž ์‹œ ๋™์•ˆ ํšŒ์ „ํ–ˆ์Šต๋‹ˆ๋‹ค.

์‚ฌํŒŒ๋ฆฌ์—์„œ CMD+ํด๋ฆญ์œผ๋กœ ํŒ์—…์ด ์—ด๋ฆฌ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๊ดœ์ฐฎ์€ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ iPad์—์„œ ์ฝ”๋”ฉํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ์ •๋ง๋กœ ์›ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ณ„์† ์‹œ๋„ํ•ด ๋ณด๊ณ  ์ œ๋Œ€๋กœ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

@austinstudio iPad ์‚ฌํŒŒ๋ฆฌ ์„ค์ •์œผ๋กœ ์ด๋™ํ•˜์—ฌ "ํŒ์—… ์ฐฝ ๋น„ํ™œ์„ฑํ™”" ๋˜๋Š” ํด๋ฆญ์„ ๋ช…๋ นํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์‚ฌํ•œ ๊ฒƒ์„ ๋„๋ฉด.

ํ•˜์ง€๋งŒ ๋ณต์‚ฌ ๋ฐ ๋ถ™์—ฌ๋„ฃ๊ธฐ๊ฐ€ ์ฝ”๋“œ ๊ณต๊ฐ„์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ์ ์€ ์œ ๊ฐ์ž…๋‹ˆ๋‹ค!

Codespaces๊ฐ€ ๋‚˜์˜จ ์งํ›„์— ๋“ฑ๋กํ–ˆ๋Š”๋ฐ "์กฐ๊ธฐ ์•ก์„ธ์Šค์— ์ฐธ์—ฌํ•˜๊ธฐ ์œ„ํ•ด" "๊ณง ์ €์—๊ฒŒ ์ด๋ฉ”์ผ์„ ๋ณด๋‚ผ ๊ฒƒ"์ด๋ผ๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ช‡ ๋‹ฌ์ด ์ง€๋‚ฌ์ง€๋งŒ ์ด๋ฉ”์ผ์„ ๋ฐ›์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๊ทธ๋“ค์ด ๊ณง ๋‚˜์—๊ฒŒ ์ด๋ฉ”์ผ์„ ๋ณด๋‚ผ ๊ฒƒ์ด๋ผ๊ณ  ์—ฌ์ „ํžˆ ๋งํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

Codespaces๊ฐ€ ๋‚˜์˜จ ์งํ›„์— ๋“ฑ๋กํ–ˆ๋Š”๋ฐ "์กฐ๊ธฐ ์•ก์„ธ์Šค์— ์ฐธ์—ฌํ•˜๊ธฐ ์œ„ํ•ด" "๊ณง ์ €์—๊ฒŒ ์ด๋ฉ”์ผ์„ ๋ณด๋‚ผ ๊ฒƒ"์ด๋ผ๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ช‡ ๋‹ฌ์ด ์ง€๋‚ฌ์ง€๋งŒ ์ด๋ฉ”์ผ์„ ๋ฐ›์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๊ทธ๋“ค์ด ๊ณง ๋‚˜์—๊ฒŒ ์ด๋ฉ”์ผ์„ ๋ณด๋‚ผ ๊ฒƒ์ด๋ผ๊ณ  ์—ฌ์ „ํžˆ ๋งํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋„ ๐Ÿ˜ข

์•„๋‹ˆ์š”, ipad์—์„œ๋Š” Visual Studio ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

GitHub๋Š” ์ตœ๊ทผ์— iPad์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ข‹์€ ๋ฐฉ๋ฒ•์ด ๋  ์ˆ˜ ์žˆ๋Š” ๋น„๊ณต๊ฐœ ๋ฒ ํƒ€๋กœ Codespaces๋ฅผ ์ถœ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. ์ €๋Š” ๋ฒ ํƒ€ ๋ฒ„์ „์ด๋ฉฐ ํ–ฅํ›„ ๋ช‡ ์ฃผ ๋™์•ˆ ์ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ตœ์ข… ๋ฒ„์ „์— ๋Œ€ํ•œ ํ†ต์ฐฐ๋ ฅ์„ ์–ป์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ipad ์ข…๋ฃŒ๋ฅผ ์œ„ํ•œ ๋นŒ์–ด๋จน์„ vscode๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

2020๋…„ 8์›” 27์ผ ๋ชฉ์š”์ผ ์˜ค์ „ 5:07 Marco [email protected]์ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ผ์Šต๋‹ˆ๋‹ค.

GitHub๋Š” ์ตœ๊ทผ ํด๋กœ์ฆˆ๋“œ ๋ฒ ํƒ€๋กœ Codespaces๋ฅผ ์ถœ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค.
์•„์ดํŒจ๋“œ๋กœ ๊ฐ€๋Š” ๊ธธ

โ€”
๋‹น์‹ ์ด ๋Œ“๊ธ€์„ ๋‹ฌ์•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/microsoft/vscode/issues/70764#issuecomment-681880992 ,
๋˜๋Š” ๊ตฌ๋… ์ทจ์†Œ
https://github.com/notifications/unsubscribe-auth/AAND323W2VT6W3TMXFJQWCLSCY475ANCNFSM4G7RRXKQ
.

--
์กฐ๋‚˜๋‹จ ์‹ค๋ฒ„๋งจ
์ „ํ™”: (720) 757 7054

@mixflame ๋ฌด์Šจ ์ผ ์žˆ์–ด?

๋‚˜๋Š” ๊ดœ์ฐฎ์•„ ์นœ๊ตฌ. ์œ„ํ˜‘ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๋œป

2020๋…„ 8์›” 31์ผ ์›”์š”์ผ ์˜ค์ „ 3:08 GalacticLion7 [email protected]
์ผ๋‹ค:

>
>

@mixflame https://github.com/mixflame ๋ฌด์Šจ ์ผ ์žˆ์–ด?

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/microsoft/vscode/issues/70764#issuecomment-683661509 ,
๋˜๋Š” ๊ตฌ๋… ์ทจ์†Œ
https://github.com/notifications/unsubscribe-auth/AAND326AQD46AGOY3SHOGZ3SDNSAVANCNFSM4G7RRXKQ
.

--
์กฐ๋‚˜๋‹จ ์‹ค๋ฒ„๋งจ
์ „ํ™”: (720) 757 7054

์–ธ์–ด(Python, JS ๋“ฑ)์šฉ ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ์„ค์ •ํ•˜๋Š” ๋ฐ ๋„ˆ๋ฌด ๋งŽ์€ ๋…ธ๋ ฅ์ด ํ•„์š”ํ•˜์ง€๋งŒ IDE๋Š” ๋งค์šฐ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. Codespaces, Repl.it, Glitch ๋“ฑ๊ณผ ๊ฐ™์€ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค์™€ ํŒŒํŠธ๋„ˆ ๊ด€๊ณ„๋ฅผ ๋งบ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. vsc ๊ฒฝํ—˜์„ ์œ„ํ•ด ์‚ฌํŒŒ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ˆœ์กฐ๋กญ๊ฒŒ ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•  ์ˆ˜ ์žˆ๋Š” ํ•œ VSC์˜ ์ •๋ง ์›์‹œ์ ์ธ ๋ฒ„์ „์œผ๋กœ ์‚ด ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Apple Silicon์€ iPad์— ์žˆ๋Š” A ์‹œ๋ฆฌ์ฆˆ ์นฉ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

์•„ํ†ฐ์ด SwiftUI๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ํ•œ, ๊ฐ™์€ ์นฉ์ด์ง€๋งŒ ๋‹ค๋ฅธ OS๋Š” ์™„์ „ํžˆ ๋‹ค๋ฅธ API๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

๊ฐ€์žฅ ๊ทธ๋Ÿด๋“ฏํ•œ ๋ฐฉ๋ฒ•์€ ์‹ค์ œ๋กœ Apple์ด A12Z iPad Pro์—์„œ macOS๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ARM mac๊ณผ ์•„์ดํŒจ๋“œ ํ”„๋กœ๊ฐ€ ๊ฐ™์€ ์นฉ์„ ์‚ฌ์šฉํ•˜์ง€๋งŒ, ๊ธฐ์ˆ ์  ๋ฌธ์ œ๋ผ๊ธฐ ๋ณด๋‹ค๋Š” ๋Œ€๋ถ€๋ถ„ ์‹œ์žฅ์˜ ๊ฒฐ์ •์ด๋‹ค.

์„ค๋งˆ. iOS/iPadOS์™€ macOS๋Š” ๋ชจ๋‘ BSD์—์„œ ๋ถ„๊ธฐ๋œ Apple์ด ๊ฐœ๋ฐœํ•œ ์ปค๋„์ธ Darwin ๋ฐฐํฌํŒ์ž…๋‹ˆ๋‹ค. ํฌํŒ…์ด ๊ฐ„๋‹จํ•˜๋‹ค๋Š” ๋ง์€ ์•„๋‹ˆ์ง€๋งŒ ์•„ํ‚คํ…์ฒ˜์™€ ์ปค๋„์ด ๋™์ผํ•˜๋‹ค๋Š” ์‚ฌ์‹ค์ด ์–ด๋–ค ์‹์œผ๋กœ๋“  ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

iPad ๊ธฐ๋ณธ ๊ฒฝํ—˜:

  1. ์—ฌ๊ธฐ์—์„œ ์ฝ”๋“œ ์„œ๋ฒ„ ์‹คํ–‰(๋กœ์ปฌ ์ปดํ“จํ„ฐ/๋ผ์ฆˆ๋ฒ ๋ฆฌ ํŒŒ์ด ๋˜๋Š” IP๋งŒ ์žˆ๋Š” ๊ณต๊ฐœ ํ˜ธ์ŠคํŒ…) ๊ฐ€์ด๋“œ๋ฅผ ๋ฐ›์œผ์‹ญ์‹œ์˜ค.
  2. ์•ฑ ์Šคํ† ์–ด ์„œ๋ฒ„ ์—์„œ ๋‹ค์šด๋กœ๋“œ
  3. ์ฝ”๋“œ ์„œ๋ฒ„ ์„ค์ •์„ Serveeditor ์•ฑ์— ์ž…๋ ฅํ•˜๋ฉด ํ™ฉ๊ธˆ์ƒ‰(์ž์ฒด ํ˜ธ์ŠคํŒ… ์„œ๋ฒ„)์ด ๋ฉ๋‹ˆ๋‹ค.

์ž˜ํ–ˆ์–ด @Acker Dawn Apple

2020๋…„ 9์›” 22์ผ ํ™”์š”์ผ ์˜ค์ „ 7:45 Acker Dawn Apple ์•Œ๋ฆผ @github.com
์ผ๋‹ค:

iPad ๊ธฐ๋ณธ ๊ฒฝํ—˜:

  1. ์ฝ”๋“œ ์„œ๋ฒ„ ์‹คํ–‰(๋กœ์ปฌ ๋˜๋Š” ๊ณต๊ฐœ ํ˜ธ์ŠคํŒ…์€ IP๋งŒ ์žˆ์œผ๋ฉด ๋จ) ๊ฐ€์ด๋“œ
    ์—ฌ๊ธฐ
    https://github.com/cdr/code-server/blob/b509063e143bbf74b74ec295260c4fd5f6332f71/doc/guide.md
  2. ์•ฑ ์Šคํ† ์–ด ์„œ๋ฒ„์—์„œ ๋‹ค์šด๋กœ๋“œ
    https://apps.apple.com/us/app/servediter-for-code-server/id1504491325
  3. ์ฝ”๋“œ ์„œ๋ฒ„ ์„ค์ •์„ Serveeditor ์•ฑ์— ์ž…๋ ฅํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.
    ํ™ฉ๊ธˆ

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธ
https://github.com/microsoft/vscode/issues/70764#issuecomment-696731982 ,
๋˜๋Š” ๊ตฌ๋… ์ทจ์†Œ
https://github.com/notifications/unsubscribe-auth/AAND326XPZGTXW6GNDOQ5SLSHCTA5ANCNFSM4G7RRXKQ
.

--
์กฐ๋‚˜๋‹จ ์‹ค๋ฒ„๋งจ
์ „ํ™”: (720) 757 7054

๊ทธ๊ฒƒ์„ ์ฐพ๊ณ 

๊ณต์‹์ ์œผ๋กœ ์ง€์›๋˜๋Š” ARM ๋นŒ๋“œ(https://code.visualstudio.com/#alt-downloads)์—์„œ (๊ธฐ๋ณธ ์‹คํ–‰) iPad OS ์•ฑ์„ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?

๋‚˜๋Š” ipad ver๊ฐ€ mac on ARM๊ณผ ํ•จ๊ป˜ ์˜ฌ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

iSH Shell( http://github.com/ish-app/ish )์€ ์ด๋ฏธ vi, make, gcc, gdb, ..๋ฅผ iPad ๋ฐ iPhone์— ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์•„์ดํŒจ๋“œ์™€ ์•„์ดํฐ์— vi๋ณด๋‹ค ๋” ํŽธ๋ฆฌํ•œ ์™ธ๊ณฝ์„ /๊ธฐํ˜ธ ๊ธฐ๋Šฅ์ด ์žˆ๋Š” ํŽธ์ง‘๊ธฐ๊ฐ€ ์žˆ์œผ๋ฉด ๋” ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์–ธ์  ๊ฐ€ ๊ฐœ๋ฐœ์ž๊ฐ€ iPadOS์šฉ ๋ฒ„์ „์„ ๋งŒ๋“ค๊ณ  ์ด ํ‹ฐ์ผ“์„ ์™„๋ฃŒ๋กœ ์ด์ „ํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

Safari ๋ฐ ๊ธฐํƒ€ iPad ๋ธŒ๋ผ์šฐ์ €๋Š” ์˜จ๋ผ์ธ IDE(Visual Studio Online) ์‚ฌ์šฉ๊ณผ ๊ด€๋ จํ•˜์—ฌ ๋งค์šฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์†”์งํžˆ ๊ทธ ํŒฌ์ด ์•„๋‹™๋‹ˆ๋‹ค. ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ํ˜•ํƒœ๋ฅผ ์ œ์™ธํ•˜๊ณ  Codespaces์— ๋Œ€ํ•œ ๋ž˜ํผ/์ธํ„ฐํŽ˜์ด์Šค์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ๋กœ์ปฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ™˜๊ฒฝ์ด ํ•„์š”ํ•˜์ง€๋„ ์•Š๊ณ  ์š”๊ตฌํ•˜์ง€๋„ ์•Š์Šต๋‹ˆ๋‹ค. ๋‚ด iPad์— python3์„ ์„ค์น˜ํ•  ํ•„์š”๊ฐ€ ์—†๊ณ  ์˜์ง€๋„ ์—†์œผ๋ฉฐ ์ œํ•œ ์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์— ์ถ”๊ฐ€: Microsoft๋Š” Electron์„ ๊ฐ•์ œ๋กœ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ iPad ๋ฒ„์ „์€ Electron์„ ์‚ฌ์šฉํ•˜์—ฌ ๋งŒ๋“ค ํ•„์š”๊ฐ€ ์—†์œผ๋ฉฐ iPadOS/iOS์šฉ Electron ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ์—†๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค. UI๋Š” Swift์—์„œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌด์Šจ ๋ง์ธ์ง€ ์•„์„ธ์š”?

VSCode ์ธ App Store ์•ฑ

๊ฒฝํ—˜์€ ๊ฑฐ์˜ ์™„๋ฒฝํ–ˆ๊ณ  ๋‚˜๋Š” ์—ฌ์ „ํžˆ ๋งค์ผ/๋งค์ผ iPad์—์„œ ์ฝ”๋”ฉํ•˜๋Š” ๊ฒƒ์— ๋งค์šฐ ๋งŒ์กฑํ•ฉ๋‹ˆ๋‹ค. ์—ฌํ–‰ํ•  ๋•Œ Raspberry Pi 4๋ฅผ ๊ฐ€์ง€๊ณ  USB C๋ฅผ ํ†ตํ•ด iPad์— ์ง์ ‘ ์—ฐ๊ฒฐํ•˜๋ฉด ์ „์ฒด ๊ฒฝํ—˜์ด ํ•˜๋‚˜์˜ ์ผ€์ด๋ธ”๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ „์ฒด ๊ฒฝํ—˜์„ ๋งค์šฐ ์ฆ๊ธฐ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋งค์ง ํ‚ค๋ณด๋“œ๋„ ๊ฑฐ์ง“๋ง์ด ์•„๋‹™๋‹ˆ๋‹ค. ์œ„๋Œ€ํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋งค์ผ ์•„์ดํŒจ๋“œ ํ”„๋กœ๋กœ ์ฝ”๋”ฉ์„ ํ•œ๋‹ค.

๋ฐฐํ„ฐ๋ฆฌ๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ? @์• ์ปค์• ํ”Œ

๋ฐฐํ„ฐ๋ฆฌ๊ฐ€ ๊ธฐ๋Œ€ ์ด์ƒ์ž…๋‹ˆ๋‹ค. ๋‚ด Raspberry์˜ 4์ธ์น˜ ํ„ฐ์น˜ ์Šคํฌ๋ฆฐ์€ ๋Œ ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ผ๋ฐ˜์ ์œผ๋กœ ๊บผ๋‘ก๋‹ˆ๋‹ค. 4์ธ์น˜ ํ„ฐ์น˜์Šคํฌ๋ฆฐ์ด ์ผœ์ ธ ์žˆ๊ณ  ๋ฐ์„ ๋•Œ ์ €์ „๋ ฅ ํ‘œ์‹œ๋“ฑ์ด ๊ฐ„ํ—์ ์œผ๋กœ ์ผœ์ง‘๋‹ˆ๋‹ค. ๋‚ด Raspberry์—๋„ 100% ํ•ญ์ƒ ์ผœ์ ธ ์žˆ๋Š” ํŒฌ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” Mac mini๋ณด๋‹ค ๋Š๋ฆฌ์ง€๋งŒ ์—ฐ๊ฒฐ ํ•ด์ œ ์žฌ์—ฐ๊ฒฐ ๋ฌธ์ œ ์—†์ด ์ž‘๋™ํ•˜๋Š” Raspberry to iPad ์ ‘๊ทผ ๋ฐฉ์‹์„ ์ ˆ๋Œ€์ ์œผ๋กœ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ตœ๊ณ ์˜ ํŠธ๋žœ์ง€์…˜๋ฆฌ์Šค ์„ฑ๊ณต์€ ๋„คํŠธ์›Œํ‚น์—์„œ Pi๋ฅผ ๋ช…๋ช…ํ•˜์—ฌ IP๋ฅผ ์‚ฌ์šฉํ•  ํ•„์š”๊ฐ€ ์—†์—ˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ๋ž‘์€ iPad Pro ํ„ฐ์น˜์™€ iOS UI์— ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ์ „ํžˆ ๋ชจ๋“  ๊ฒƒ์„ ํ•  ์ˆ˜๋Š” ์—†์ง€๋งŒ ๋งค์ง ํ‚ค๋ณด๋“œ๋กœ iPad์—์„œ Vs Code๋ฅผ ์ฝ”๋”ฉํ•˜๋Š” ๊ฒƒ์€ ๊ทธ๋งŒํ•œ ๊ฐ€์น˜๊ฐ€ ์žˆ์œผ๋ฉฐ ๋•Œ๋กœ๋Š” ํ„ฐ์น˜ ์Šคํฌ๋ฆฐ๊ณผ ๋•Œ๋กœ๋Š” ํŠธ๋ž™ ํŒจ๋“œ๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด ๋งˆ์Œ์— ๋“ญ๋‹ˆ๋‹ค. ๋†€๋ž๊ณ  ์‹ค์šฉ์ ์ธ ๊ฒฝํ—˜.

VSCode ์ธ App Store ์•ฑ

๊ฒฝํ—˜์€ ๊ฑฐ์˜ ์™„๋ฒฝํ–ˆ๊ณ  ๋‚˜๋Š” ์—ฌ์ „ํžˆ ๋งค์ผ/๋งค์ผ iPad์—์„œ ์ฝ”๋”ฉํ•˜๋Š” ๊ฒƒ์— ๋งค์šฐ ๋งŒ์กฑํ•ฉ๋‹ˆ๋‹ค. ์—ฌํ–‰ํ•  ๋•Œ Raspberry Pi 4๋ฅผ ๊ฐ€์ง€๊ณ  USB C๋ฅผ ํ†ตํ•ด iPad์— ์ง์ ‘ ์—ฐ๊ฒฐํ•˜๋ฉด ์ „์ฒด ๊ฒฝํ—˜์ด ํ•˜๋‚˜์˜ ์ผ€์ด๋ธ”๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ „์ฒด ๊ฒฝํ—˜์„ ๋งค์šฐ ์ฆ๊ธฐ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋งค์ง ํ‚ค๋ณด๋“œ๋„ ๊ฑฐ์ง“๋ง์ด ์•„๋‹™๋‹ˆ๋‹ค. ์œ„๋Œ€ํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋งค์ผ ์•„์ดํŒจ๋“œ ํ”„๋กœ๋กœ ์ฝ”๋”ฉ์„ ํ•œ๋‹ค.

์˜ค๋Š˜๋‚  ๋‚ด๊ฐ€ ์—ฌ์ „ํžˆ ๊ฒช๊ณ  ์žˆ๋Š” ๊ฐ€์žฅ ํฐ ๋ฌธ์ œ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋ฐฑ๊ทธ๋ผ์šด๋“œ ๋ชจ๋“œ๋กœ ์ „ํ™˜๋˜์–ด ์ƒˆ๋กœ ๊ณ ์นจ์„ ์œ ๋ฐœํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ช‡ ๊ฐ€์ง€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ๊ฐ„์— ์ „ํ™˜ํ•˜๊ณ  ๋ชจ๋“  ํƒญ, ์ฐฝ, ์…ธ ์—ฐ๊ฒฐ์„ ์žƒ๋Š” ๋‹ค์‹œ ๋กœ๋“œ๋ฅผ ๋ณด๊ธฐ ์œ„ํ•ด ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ๋กœ ๋Œ์•„๊ฐ€๋ฉด ๋‹ต๋‹ตํ•ฉ๋‹ˆ๋‹ค. ์‚ฌํŒŒ๋ฆฌ ํŽธ์ง‘๊ธฐ์—์„œ PlayJS , ์ฝ”๋“œ ์„œ๋ฒ„, ia์™€ ๊ฐ™์€ ์•ฑ์„ ์‹คํ–‰ํ•˜๋ฉด ์ „๋ฐ˜์ ์œผ๋กœ ๊ฑฐ์˜ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ๊ฐ€์ง„ ์œ ์ผํ•œ ํ™•๊ณ ํ•œ ๊ฒฝํ—˜(์—ฐ๊ฒฐ ์„ค์ • ๋ฐ ์œ ์ง€ ์ธก๋ฉด์—์„œ)์€ Blink Shell ์„ ์‚ฌ์šฉํ•˜์—ฌ ์›๊ฒฉ ์„œ๋ฒ„์— mosh ์‰˜์„ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ด์ง€๋งŒ ์ด๋Š” GUI ํŽธ์ง‘๊ธฐ ๊ฒฝํ—˜์„ ์žƒ๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

@tiivik m ๊ทธ๋Ÿฌ๋ฉด Serveditor๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค. ์ „์ฒด ์•ฑ ์ƒํƒœ๋Š” ์„œ๋ฒ„ ์ž์ฒด์— ์ €์žฅ๋˜๋ฏ€๋กœ ๋‚ด iPad๊ฐ€ ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์‹คํ–‰์„ ์ค‘์ง€ํ•˜๋”๋ผ๋„ ๋ชจ๋“  ๊ฒƒ์„ ์ƒˆ๋กœ ๊ณ ์น˜๋Š” ์ˆœ๊ฐ„ ๋‚ด๊ฐ€ ๋‚จ๊ฒจ๋‘” ์œ„์น˜์— ์žˆ์Šต๋‹ˆ๋‹ค(์—ด๋ฆฐ ๋ฉ”๋‰ด ์ œ์™ธ).

@tiivik m ๊ทธ๋Ÿฌ๋ฉด Serveditor๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค. ์ „์ฒด ์•ฑ ์ƒํƒœ๋Š” ์„œ๋ฒ„ ์ž์ฒด์— ์ €์žฅ๋˜๋ฏ€๋กœ ๋‚ด iPad๊ฐ€ ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์‹คํ–‰์„ ์ค‘์ง€ํ•˜๋”๋ผ๋„ ๋ชจ๋“  ๊ฒƒ์„ ์ƒˆ๋กœ ๊ณ ์น˜๋Š” ์ˆœ๊ฐ„ ๋‚ด๊ฐ€ ๋‚จ๊ฒจ๋‘” ์œ„์น˜์— ์žˆ์Šต๋‹ˆ๋‹ค(์—ด๋ฆฐ ๋ฉ”๋‰ด ์ œ์™ธ).

๋ฌธ์ œ๋Š” ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ž‘์—…์ด ๋ถ„๋‹น ๋ช‡ ๋ฒˆ ์ œ๊ฑฐ๋˜๋ฉด ๋น„์ƒ์‚ฐ์ ์ด๋ผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ฐ€๋Šฅํ•œ ํ•œ ๋นจ๋ฆฌ ๊ทธ๋“ค์„ ์ฃฝ์ด๊ธฐ ์œ„ํ•ด ์–ด๋–ค ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ๋ณด๋‹ค iPadOS์˜ ๋””์ž์ธ ์„ ํƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ ์ถ”์ฒœ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค ํ•œ๋ฒˆ ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ฐ€๋Šฅํ•œ ํ•œ ๋นจ๋ฆฌ ๊ทธ๋“ค์„ ์ฃฝ์ด๊ธฐ ์œ„ํ•ด ์–ด๋–ค ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ๋ณด๋‹ค iPadOS์˜ ๋””์ž์ธ ์„ ํƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋™์˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ(์˜ˆ: ๋ธŒ๋ผ์šฐ์ €)์—์„œ๋Š” ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ธŒ๋ผ์šฐ์ €์™€ ๋‹ค๋ฅธ ๋ธŒ๋ผ์šฐ์ € ๊ฐ„์— ์ „ํ™˜ํ•  ๋•Œ๋งˆ๋‹ค ์›น ํŽ˜์ด์ง€๊ฐ€ ๋‹ค์‹œ ๋กœ๋“œ๋˜๊ธฐ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š์Šต๋‹ˆ๊นŒ? ๊ทธ๋ž˜์„œ ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ํŽธ์ง‘์ž๋“ค์˜ ์—ด์•…ํ•œ ์•„ํ‚คํ…์ฒ˜๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ƒํƒœ๋ฅผ ์‰ฝ๊ฒŒ ๋Š์Šจํ•˜๊ฒŒ ํ•˜์ง€ ์•Š๋„๋ก ์บ์‹œ๋ฅผ ๋” ์ž˜ ์บ์‹œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ์•„์ง ์ด Servediter๋ฅผ ์‹œ๋„ํ•˜์ง€ ์•Š์•˜๊ณ , ๋‚˜๋Š” ๊ทธ๊ฒƒ์— ๋Œ€ํ•ด ๊ฝค ์˜์‹ฌ์Šค๋Ÿฝ์Šต๋‹ˆ๋‹ค. ๋‚ด MacBook์—์„œ ์‹คํ–‰๋˜๋Š” VSCode์™€ ํ•จ๊ป˜ ๋‹น๋ถ„๊ฐ„์€ ์ „ํ†ต์ ์œผ๋กœ ์œ ์ง€๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํ”„๋กœ์ ํŠธ์—์„œ ์‹œ๋„ํ•œ๋‹ค๋ฉด ์—ฌ๊ธฐ์—์„œ ํ”ผ๋“œ๋ฐฑ์„ ๊ณต์œ ํ•˜์„ธ์š” ;)

์ฝ”๋”ฉ ๋ฐ ๋ธŒ๋ผ์šฐ์ง•์— ๋ฉ”๋ชจ๋ฆฌ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๊ถŒ์žฅ ์‚ฌํ•ญ์„ ์ฒจ๋ถ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

A5CFAA92-B8AF-44AA-9133-3CA9F1B66B11

@AckerApple ๋กœ์ปฌ mac-mini๋ฅผ ์„œ๋ฒ„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๊นŒ? ํฅ๋ฏธ๋กœ์šด ์˜ต์…˜ ๐Ÿค”

์—ฌ๊ธฐ์„œ ๋ชฉํ‘œ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ VSCode๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์ž์ฒด ์žฅ์น˜๋ฅผ ํ†ตํ•ด ์ง€์›๋˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๋“ฑ์„ ํ†ตํ•ด ์ง€์›ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ปดํŒŒ์ผ๋Ÿฌ ๋“ฑ์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ์ง€์›์„ ์ฐพ๊ณ  ์žˆ์ง€๋„ ์•Š์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์š”๊ตฌํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๋” ์ž˜ ์••๋‹ˆ๋‹ค. ia ๋“ฑ์€ ๋‹ค์‹œ ๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ฐ˜ ํด๋ผ์ด์–ธํŠธ์ด๋ฉฐ ์„ ํƒ ๋ฌธ์ œ ๋“ฑ์„ ํฌํ•จํ•˜์—ฌ ๊ณ ์œ ํ•œ ๋ฌธ์ œ ์„ธํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์›ํ•˜๋Š” ๊ฒƒ์€ VSC์™€ ๊ฐ™์€ ๊ฒฝํ—˜์„ ๊ฐ€์ง„ iPad์—์„œ ์ง‘์ฒ˜๋Ÿผ ๋Š๋ผ๋Š” ๊ฒƒ์ด๋ฉฐ Codespaces, Repl.it, Glitch์™€ ํ†ตํ•ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. , ์ž์‹ ์˜ ์„œ๋ฒ„ ๋“ฑ (์ด๊ฒƒ์€ ๋‹ค์‹œ ์„ ํƒ ์‚ฌํ•ญ์ด์ง€๋งŒ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค)

๋‚˜ ์ž์‹ ๋„ Raspberry Pi 4๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์ง€๋งŒ ์ฝ”๋”ฉ์„ ์›ํ•  ๋•Œ๋งˆ๋‹ค ์ „์›์„ ์ผœ๊ฑฐ๋‚˜ ๊ณ„์† ์‹คํ–‰ํ•˜๊ณ  ์‹ถ์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. ๋ƒ‰๊ฐ์€ ๋ฐฉ์—ดํŒ์„ ์‚ฌ์šฉํ•˜๋”๋ผ๋„ ์ด๋ฏธ ํฐ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ํŒฌ ์ผ€์ด์Šค๋ฅผ ๋‚ด์žฅํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ ๊ทธ๊ฑด ๋ฏธ๋ž˜์˜ ํˆฌ์ž์ž…๋‹ˆ๋‹ค.

๊ธฐ๋ณธ Python ๋˜๋Š” Node JS ์ง€์›์„ ์ฐพ๋Š” ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ ๊ถŒ์žฅ ์‚ฌํ•ญ, Pythonista 3 ๋˜๋Š” PlayJS๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ ์žŠ์–ด๋ฒ„๋ฆฐ ๋˜ ๋‹ค๋ฅธ Python ์ธํ„ฐํ”„๋ฆฌํ„ฐ ์•ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋น ๋ฅธ Google ๊ฒ€์ƒ‰์„ ํ†ตํ•ด ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์•ฑ์€ ์™„๋ฒฝํ•˜์ง€ ์•Š์ง€๋งŒ ์ง€๊ธˆ๊นŒ์ง€ ๊ฝค ๋ถ€๋“œ๋Ÿฌ์šด ๊ฒฝํ—˜์„ ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ชฉ์ ์„ ๋‹ฌ์„ฑํ•˜๋Š” ์•ฑ์ด ์ด๋ฏธ ์กด์žฌํ•œ๋‹ค๊ณ  ๋งํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์„ ์ฐธ๊ณ ํ•˜์‹ญ์‹œ์˜ค. ์ €๋Š” ๊ณต์‹ ์•ฑ๊ณผ ์ œ3์ž๊ฐ€ ์•„๋‹Œ Microsoft์˜ ์ง€์›์„ ์›ํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ์•„์ง ์ด Servediter๋ฅผ ์‹œ๋„ํ•˜์ง€ ์•Š์•˜๊ณ , ๋‚˜๋Š” ๊ทธ๊ฒƒ์— ๋Œ€ํ•ด ๊ฝค ์˜์‹ฌ์Šค๋Ÿฝ์Šต๋‹ˆ๋‹ค. ๋‚ด MacBook์—์„œ ์‹คํ–‰๋˜๋Š” VSCode์™€ ํ•จ๊ป˜ ๋‹น๋ถ„๊ฐ„์€ ์ „ํ†ต์ ์œผ๋กœ ์œ ์ง€๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํ”„๋กœ์ ํŠธ์—์„œ ์‹œ๋„ํ•œ๋‹ค๋ฉด ์—ฌ๊ธฐ์—์„œ ํ”ผ๋“œ๋ฐฑ์„ ๊ณต์œ ํ•˜์„ธ์š” ;)

ํ™•์‹คํ•œ ๊ฒƒ! ๋‚˜๋Š” ๋‘์–ด ๋‹ฌ์— ํ•œ ๋ฒˆ์”ฉ ์ฃผ์ œ๋ฅผ ๋‹ค๋ฃจ๋ฉฐ ์—ฌ์ „ํžˆ MacBook์œผ๋กœ ๋˜๋Œ์•„๊ฐ€๋Š” ๋™์•ˆ ํฅ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.

์ฝ”๋”ฉ ๋ฐ ๋ธŒ๋ผ์šฐ์ง•์— ๋ฉ”๋ชจ๋ฆฌ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๊ถŒ์žฅ ์‚ฌํ•ญ์„ ์ฒจ๋ถ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋„ค ํ™•์‹คํžˆ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ƒํƒœ๋ฅผ ์žƒ์ง€ ์•Š๊ณ  ์ „์ฒด ํ™”๋ฉด ์•ฑ ๊ฐ„์— ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ๋Š” ๋‚ ์ด ์˜ค๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰