1. ์ฌ์ฉ์์๊ฒ ๋ธ๋๋ฉ ๋์์ธ(UI)์ ์ดํํ๊ธฐ ๋ณด๋ค๋ ๋ณด๋ค๋ ์ข์ UX๋ฅผ ์ ๊ณตํ๊ณ ๊ทธ๊ฒ ๊ณง ๋ธ๋๋ฉ์ด ๋จ (#7) 2. ํฐํธ๋ 2๊ฐ์ง๋ง ์ฌ์ฉ (ํ์ดํ์ฉ, ๋ณธ๋ฌธ์ฉ) 3. ๊ธ์ ํฌ๊ธฐ์ ๊ตต๊ธฐ๋ก ์ ๋ณด ์ฒด๊ณ ํํ (ํ์ง๋ง ํฌ๊ธฐ ์ข ๋ฅ๊ฐ 2~3๊ฐ์ง ๋์ง์๋๋ก) 4. ํด๋ฆฌ์คํฑ(์ผ์ ์ํ์ ๊ฒฝํ)์ด ์ ์ฉ๋ UI UX๋ฅผ ์ ๊ณต 5. ๊ฒ์ ์ ๋ ฅ ์ฐฝ์ ๋๋ณด๊ธฐ ๋ฒํผ๊ณผ ๊ฐ์ด ์จ์ผํจ(+ ํฐ์น ์ ํค๋ณด๋๊ฐ ์ฌ๋ผ์์ผํจ) 6. ์ฌ๋ผ์ด๋ UI๋ ์๋ํ ํ ์ ์๋ ๊ฐ์๋ง(e.g. ๋ณผ๋ฅจ, ๋ฐ๊ธฐ, ์ปฌ๋ฌ๋ฏน์ค) 7. ์ ํ ์ฌํญ์ด 2๊ฐ์ง๋ผ๋ฉด ๋ผ๋์ค ๋ฒํผ, ์ฌ๋ฌ ๊ฐ์ง์ผ ๊ฒฝ์ฐ ๋ฐ์ดํฐ ํผ์ปค UI (์ฌ๋ฌ๊ฐ์ง ์ผ ๊ฒฝ์ฐ Filter ์ ๋ ฅ์ฐฝ์ ์ถ๊ฐํ๋ฉด ์ข์) 8. ๊ฐ๋ก ์คํฌ๋กค ์ง์, ์ธ๋ก ์คํฌ๋กค ์งํฅ 9. ์ธํผ๋ํฐ ์คํฌ๋กค์ ํผ๋์์๋ง (+ํ์ด์ง๋๋ฒ๋งํ๋ฉด์ข์)..
๊ณต๊ฐํค ์ํธํ์์๋ณด๊ธฐ์ ์์ ์๊ฒจ๋๊ฒ๋ ๋ฐ๋จ์ ์์๋ณด๊ฒ ์ต๋๋ค. ๋ฐ๋จ- ๋น๋ฐ ์ฝ์๋ฅผ ์ฐ๊ณ ์ถ์ ๋น๋ฐ ์ฝ์๋ฅผ ์ฐ๋ ๋ฐฉ๋ฒ 2๊ฐ์ง 1. ๋น๋ฐ ๋ด์ฉ์ ์ฝ์์ ์ ์ด์ ๋ณด๋ -> ๋ด์ฉ์ด ์ ์ถ๋ ์ ์์ 2. ๋น๋ฐ ์ฝ๋๋ฅผ ์ฝ์์ ์ ์ด์ ๋ณด๋ (์ํธํ) -> ์์ ์๋ง ํด๋ ๊ฐ๋ฅ (๋ณตํธํ) - ์กฐ๊ฑด: ๊ณต์ ๋ ๋น๋ฐ์ฝ๋๊ฐ ์์ ๊ฒฝ์ฐ(๊ณต๊ฐ ํค) - ํค(key)๋: ๋ณตํธํ ํ ๋ ์ฌ์ฉ๋๋ ์ซ์ (์ด์ ๋ก ๋ฌธ์ ๋ฐ๋ ๊ฒ๊ณผ ๊ฐ์) ์ํธํ ๋ฐฉ์ 1. 128 ๋นํธ ์ํธํ -> 38์๋ฆฌ ์ซ์ํค๋ฅผ ์ด์ฉํจ 2. ๋ธ๋ก ์ํธ -> ๋ฉ์ธ์ง๋ฅผ 10~15์ ๋จ์ ๋ธ๋ก์ผ๋ก ํค๋ ์์ด ์ํธํ -> ๊ฐ์ฅ ๋ง์ด ์ฐ์ด๋ ๋ธ๋ก ์ํธ๋ AES -> 16์ ๋ธ๋ก์ 128๋นํธ ํค์ ํจ๊ป 10์ฐจ๋ก ํผํฉํ์ฌ ์ํธํ ..
์ดํ์ ์คํํ ๋ ํน์ ๋ฒ์ ๋ณด๋ค ๋ฎ์ ๊ฒฝ์ฐ์ ๋ฐ์ดํธ๋ฅผ ๊ฐ์ ๋ก ์๊ตฌํ๋ฉฐ ์ฑ์คํ ์ด๋ก ํ์ด์ง๋ฅผ ๋์ฐ๋๋ก ํ๋ ์์ ๊ตฌํ์ค ์๊ธด ๋ฌธ์ ์ ๋๋ค. ์ฒ์์ ๋ฒ์ ์ String ๋ฌธ์์ด์ ๋น๊ต ์ฐ์ฐ์๋ฅผ ํตํด ์์ ์ ํตํด ์ดํ ์ต์ ๋ฒ์ ๋ณด๋ค ๋์์ง ํ๋จํ์์ต๋๋ค. ๋ง์ฝ ํ์ฌ ์ดํ ๋ฒ์ ์ด 1.0.9์ดํ ์ต์ ๋ฒ์ 1.0.6 ์ผ ๊ฒฝ์ฐ "1.0.9" > "1.0.6" // true์ด๋ฌ๋ฉด ํ์ฌ ๋ฒ์ ์ด ์ดํ ์ต์๋ฒ์ ๋ณด๋ค ๋๋ค๊ณ ํ๋จ๋์ด ์ ๋ฐ์ดํธ ํ์ง ์์๋ ๋ฉ๋๋ค. ํ์ง๋ง ๋ง์ฝ ํ์ฌ ์ดํ ๋ฒ์ ์ด "1.0.10" ์ผ ๊ฒฝ์ฐ"1.0.10" > "1.0.6" // false ์ด๋ฐ์์ผ๋ก false ๊ฐ ๋๋ฏ๋ก ์ฑ์คํ ์ด๋ก ์ฐ๊ฒฐํ๊ฒ ๋ฉ๋๋ค. ์ด๋ฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ฃผ๊ธฐ ์ํด์'Compare' ๋ผ๋ String ๋ด๋ถ์ method๋ฅผ ์ฌ์ฉํ ์ ..
๋ณตํฉํจํด - ์ฌ๋ฌ ํจํด์ ํจ๊ป ์ฌ์ฉํ๋ ๊ฒ ๋ณตํฉ ํจํด ์์ - ์ค๋ฆฌ ์๋ฎฌ๋ ์ด์ ๊ฒ์ public interface Quackable { public void quack(); } public class MallardDuck implements Quackable { public void quack() { System.out.println("๊ฝฅ๊ฝฅ"); } } public class DuckCall implements Quackable { public void quack() { System.out.println("๊ฝ๊ฝ"); } } public class DuckSimulator { public static void main(String[] args) { DuckSimulator simulator = new Du..
ํ ํ๋ฆฟ ๋ฉ์๋ ํจํด - ์๊ฐ ์์ ์์ค์์ ์๊ณ ๋ฆฌ์ฆ ๊ตฌ์กฐ๋ฅผ ์ ์ํ๊ณ ํ์ ํด๋์ค์์ ๊ตฌ์ฒด์ ์ธ ๋จ๊ณ๋ฅผ ๊ตฌํํ๋ ํจํด์ ๋๋ค. - ์ฅ์ ์ฝ๋ ์ค๋ณต์ ์ค์ด๊ณ ์ ์ฐ์ฑ์ ๋์ผ ์ ์๋ค. - ์์ class Coffee { func boilWater() { print("๋ฌผ ๋์ด๋ ์ค") } // ๊ณตํต func brew() { print("ํํฐ๋ฅผ ํตํด ์ปคํผ๋ฅผ ์ฐ๋ ค๋ด๋ ์ค") } func pourInCup() { print("์ปต์ ๋ฐ๋ฅด๋ ์ค") } // ๊ณตํต func addCondiments() { print("์คํ๊ณผ ์ฐ์ ๋ฅผ ์ถ๊ฐํ๋ ์ค") } } class Tea { func boilWater() { print("๋ฌผ ๋์ด๋ ์ค") } // ๊ณตํต func brew() { print("์ฐจ๋ฅผ ์ฐ๋ ค๋ด๋ ์ค") } func p..
ํผ์ ๊ฐ๊ฒ๋ฅผ ์ด์ํ๋ฉฐ ํฉํ ๋ฆฌ ํจํด์ ๋ํด ์์๊ฐ๋ณด๊ฒ ์ต๋๋ค. ๋จผ์ ํผ์๋ฅผ ์ฃผ๋ฌธ๋ฐ์ต๋๋ค. ์ฃผ๋ฌธ์ ๋ฐ์ผ๋ฉด ํผ์ ํ์ ์ ๊ฒฐ์ ํ๊ณ , ์ค๋นํ๊ณ ํฌ์ฅํ๊ณ ํผ์๋ฅผ ๋ฐํํ๋ ๊ณผ์ ์ ๋๋ค. protocol Pizza { var name: String { get } func prepare() func bake() func cut() func box() } class CheesePizza: Pizza { var name: String { return "Cheese Pizza" } func prepare() { print("Preparing \(name)") } func bake() { print("Baking \(name)") } func cut() { print("Cutting \(name)") } func box() { p..
- Total
- Today
- Yesterday
- swift ์ฑ ์ ๋ฐ์ดํธ
- swift uilabel ์๊ฐ
- swift ๊ฐ์ ์ ๋ฐ์ดํธ
- swift code snippet
- swift textview ์๊ฐ
- swift ์๊ฐ Extension
- fast build xcode
- reduce xcode build time
- swift ๋ถ๋ชจ๋ทฐ ์ธ๋ถ์์ญ ํฐ์น
- swift textview ํ๊ฐ
- xcode ์ฌ๋ฌ์ค ํธ์ง
- xcode ํจ์ ํ๋ฒ์ ์ ๊ธฐ
- xcode code snippet
- swift touch outside parentView
- swift ํ๊ฐ
- ios ๊ฐ์ update
- xcode code ๋จ์ถ
- xcode mark ํ
- swift line spacing extension
- xcode ๋จ์ถํค ๊ฟํ
- ios ์ฑ ์ ๋ฐ์ดํธ
- swift line spacing
- swift ์๊ฐ
- xcode ํจ์ ์ ๊ธฐ
- xcode ui code ์ง์ ๋ถ
- swift uilabel ํ๊ฐ
- swift ํ๊ฐ extension
- xcode ํ๋ฒ์ ์ฌ๋ฌ์ค ํธ์ง
- xcode ui code dirty
- swift fast build
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |