gost v0.4.0
โhttps://github.com/myyrakle/gost

Gost๋ Go์์ Rust์ ์ฐธ๋ง์ ๋๋ ์ ์๊ฒ ํด์ฃผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ค.
์ด๋ฒ์๋ HashMap๊ณผ Vec์ ๋ํ ๊ธฐ๋ฅ ๋ณด์, ์ถ๋ ฅํจ์, fs/io ๋ชจ๋ ๋ฑ์ด ์ถ๊ฐ๋๋ค.
๊ทธ๋ฆฌ๊ณ pkg ๋ถ๋ ๊ฒ๋ ๊ฑฐ์ฌ๋ ค์ ๋ค ๋ ๋ฆฌ๊ณ ์ฝ๋๋ฅผ ๋ฃจํธ ๊ฒฝ๋ก์ ๋ค ๋๋ ค๋ฐ์๋ค.
์ค์น
์ค์น๋ ๊ฐ๋จํ๊ณ , ๋น ๋ฅด๋ค. ๋ํ๋์์ ๋ญ๊ฐ ์์ง๋ ์๊ธฐ ๋๋ฌธ์ด๋ค.
go get github.com/myyrakle/gost@v0.4.0

๊ทธ๋ฆฌ๊ณ importํด์ ์ฐ๋ฉด ๋๋ค.

ํ๋ฆฌ๋ฏธํฐ๋ธ ๋ํผ
ํธ๋ ์๋ค์ ๊ตฌํํ ์ ์๊ฒ ํ๊ธฐ ์ํด ๊ธฐ๋ณธํ์
๋ค์ ์ฃ๋ค ๋ํํด๋จ๋ค.
๊ณ ์คํธ์ ํํ์ ๋๋ฆฌ๋ ค๋ฉด ๋์ ์ด๊ฒ๋ค์ ์จ์ผ ํ๋ค.

ํธ๋ ์
Rust์ ํธ๋ ์๋ค์ ์ต๋ํ ์ด์ํ๋ค.
์ฌ์น์ฐ์ฐ๋ค๋ ์๊ณ (์์ง ๊ธฐ๋ณธํ์
๋ค์ ๋ํด ๊ตฌํ์ด ๋์ง ์์)
๊น์ ๋ณต์ฌ๋ฅผ ์ ์ํ๋ clone๋ ์๋ค.
์ค๋๋ง๋ ์๋ค. ์ด๊ฑธ๋ก ์ ๋ ฌ์ ๊ตฌํํ ์์ ์ด๋ค. (์์ง ์๋ฏธ์๊ฒ ์ฐ๊ณ ์์ง ์๋ค.)
์ถ๋ ฅํ ๋ ์ธ Display๋ Debug ํธ๋ ์๋ ์๋ค.
์ด๊ฑด ์ง๊ธ ๊ธฐ๋ฐ์ฉ์ผ ์ ์ฐ๊ณ ์๋ค.
Option๊ณผ Result
Go์ ๊ฑฐ์ง๊ฐ์ ์๋ฌ์ฒ๋ฆฌ๋ฅผ ๋ณด์ํด์ค ์ ์๋ ๋ชจ๋๋ ํ์
์ด๋ค.
์ด๋ฐ์์ผ๋ก ๊ฐ์ธ์ ์ฒ๋ฆฌํ๋ฉด
ํ์
์ ํตํด ์ด๋์ ๋ ์ฒ๋ฆฌ๋ฅผ ๊ฐ์ ํ๊ณ ๊ฐ์ํํ ์ ์๋ ๋ถ๋ถ์ด ์๊ธด๋ค.
๊ทธ๋ฆฌ๊ณ ์์ฒด์ ์ธ ์ถ๋ ฅ ํจ์๋ฅผ ํตํด rust ์คํ์ผ์ ์ถ๋ ฅ ํฌ๋งท์ ์ง์ ํ ์ ์๋ค.
์์ง ๊ธฐ๋ฅ์ด ์์ ํ์ง๋ ์๋ค.
์๋ฃ๊ตฌ์กฐ: Vec
๋ฒกํฐ ํ์
์ ์ ๊ณตํ๋ค. ์ฌ์ค์ ๋ด๋ถ ๊ตฌํ์ ์ฌ๋ผ์ด์ค์ด๊ธด ํ๋ค.
๋์ ๋ฉ์๋์ ์ ๊ณต์ ํตํด ์ข๋ ํ์กฑํ ์ฌ์ฉ์ฑ์ ์ ๊ณตํ๋ค.

Iterator: Vec
iterator๋ ์๋ค. ์์ง ๊ทธ๋ฆฌ ์์ ํ์ง ์์ง๋ง, ๋์ถฉ ์ธ ์๋ ์๊ฒ ํด๋จ๋ค.

HashMap
๋ด๋ถ์ ์ผ๋ก๋ map์ ๋ํ ๋จ์ ๋ํผ๋ค.
์ด๋ฐ์์ผ๋ก ํ๋ฒํ๊ฒ ์ธ ์ ์๋ค.
fs ๋ชจ๋
ํ์ผ ์
์ถ๋ ฅ์ ๋ํ ๋ชจ๋๋ ์ถ๊ฐํ๋ค.
ํ์ผ์ ์ ๋นํ ์ธ ์๋ ์๊ณ

ํ์ผ ๋ชฉ๋ก์ ๊ฐ์ ธ์ฌ ์๋ ์๋ค.

์ด์ธ์๋ CreateDir, Remove, Copy ๋ฑ๋ฑ ๋ค์ํ ํจ์๋ค์ด ์ถ๊ฐ๋์๋ค.
์์ธํ ๊ฒ์ ๋ฌธ์๋ฅผ ์ฐธ์กฐํ๊ธธ ๋ฐ๋๋ค.
https://pkg.go.dev/github.com/myyrakle/gost
์์ง ๋ง๋ค๊ฒ ๋ง๋ค.