๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก์ „์ฒด ๊ธ€ (14)

๋š๋”ฑ๊ฐœ๋ฐœ ๐Ÿ”จ

[์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ] ํ”Œ๋Ÿฌํ„ฐ(Flutter)๋กœ ์‹œ์ž‘ํ•˜๋Š” ์•ฑ๊ฐœ๋ฐœ ์ข…ํ•ฉ๋ฐ˜ - 4์ฃผ์ฐจ ๊ฐœ๋ฐœ์ผ์ง€

๋น„๋™๊ธฐ ๋™๊ธฐ & ๋น„๋™๊ธฐ ๋™๊ธฐ : ํ•˜๋‚˜์˜ ์ผ์ด ๋๋‚œ ๋’ค ๋‹ค์Œ ์ผ์„ ํ•˜๋Š” ๋ฐฉ์‹ ๋น„๋™๊ธฐ : ํ•˜๋‚˜์˜ ์ผ์ด ๋๋‚˜๊ธฐ ์ „์— ๋™์‹œ์— ๋‹ค๋ฅธ ์ผ์„ ํ•˜๋Š” ๋ฐฉ์‹ ๋™๊ธฐ : ์š”์ฒญ์— ๋Œ€ํ•œ ์‘๋‹ต์„ ๋ฐ›์•„์„œ ๋ณด์—ฌ์ค˜์•ผ ํ•˜๋Š” ์ฝ”๋“œ ex) ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž… ๋น„๋™๊ธฐ : ์š”์ฒญ์„ ๋ณด๋‚ด๊ธฐ๋งŒ ํ•˜๋ฉด ๋˜๋Š” ์ฝ”๋“œ ex) ๋„คํŠธ์›Œํฌ ์š”์ฒญํ•˜์—ฌ ๋ฐ์ดํ„ฐ ๋ฐ›์•„์˜ค๊ธฐ, ํŒŒ์ผ ์ฝ๊ธฐ/์“ฐ๊ธฐ async & await (๋น„๋™๊ธฐ -> ๋™๊ธฐ ๋ฐฉ์‹์œผ๋กœ ์‹คํ–‰ ๋น„๋™๊ธฐ ์ฝ”๋“œ ์•ž์— await์„ ๋ถ™์ด๊ณ  ํ•ด๋‹น ์ฝ”๋“œ๊ฐ€ ์†ํ•œ ํ•จ์ˆ˜์— async๋ฅผ ๋„ฃ์–ด์ฃผ๋ฉด ๋น„๋™๊ธฐ ๋ฐฉ์‹์˜ ์ฝ”๋“œ๋ฅผ ๋™๊ธฐ ๋ฐฉ์‹์œผ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค. Webview ์•ฑ ๋‚ด์—์„œ ์›น๋ธŒ๋ผ์šฐ์ € ์ปดํฌ๋„ŒํŠธ๋ฅผ ์‚ฌ์šฉํ•ด ์›นํŽ˜์ด์ง€๋ฅผ ๋„์šฐ๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. ์žฅ์  ๋‚ฎ์€ ๋น„์šฉ์œผ๋กœ ๋น ๋ฅด๊ฒŒ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋‹ค. (์›น ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ฐœ๋ฐœ ๊ฐ€๋Šฅ) ์•ฑ ์—…๋ฐ์ดํŠธ์™€ ์ƒ๊ด€์—†์ด ์ฆ‰์‹œ ๋ณ€๊ฒฝ์‚ฌํ•ญ..

[์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ] ํ”Œ๋Ÿฌํ„ฐ(Flutter)๋กœ ์‹œ์ž‘ํ•˜๋Š” ์•ฑ๊ฐœ๋ฐœ ์ข…ํ•ฉ๋ฐ˜ - 3์ฃผ์ฐจ ๊ฐœ๋ฐœ์ผ์ง€

์ƒํƒœ๊ด€๋ฆฌ์˜ ํ•„์š”์„ฑ ์ตœ์‹  ์ƒํƒœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด์—ฌ์ฃผ๋„๋ก ํŽ˜์ด์ง€ ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ํ–‰์œ„๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ์ƒํƒœ๊ด€๋ฆฌ ํŒจํ‚ค์ง€ 1) GetX 2) Provider 3) BloC 4) Riverpod shared_preferences shared_preferences ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์•ฑ์„ ์žฌ์‹œ์ž‘ํ•ด๋„ ๋ฐ์ดํ„ฐ๋ฅผ ์œ ์ง€ํ•œ๋‹ค. * ์•ฑ์„ ์žฌ์‹œ์ž‘ํ•˜๊ฑฐ๋‚˜ ์ข…๋ฃŒํ•  ๋•Œ ๋ฐ์ดํ„ฐ๊ฐ€ ๋‚ ์•„๊ฐ„๋‹ค -> RAM์ด๋ผ๋Š” ํœ˜๋ฐœ์„ฑ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ * ์•ฑ์„ ์žฌ์‹œ์ž‘ํ•˜๊ฑฐ๋‚˜ ์ข…๋ฃŒํ•ด๋„ ๋ฐ์ดํ„ฐ๋ฅผ ์œ ์ง€ํ•˜๋Š” ๋ฐฉ๋ฒ• 1) ๊ธฐ๊ธฐ์— ํŒŒ์ผ๋กœ ์ €์žฅ ๋‚ด์šฉ์„ ํŒŒ์ผ๋กœ ์ €์žฅํ•˜๊ณ  ์•ฑ์„ ์‹œ์ž‘ํ•  ๋•Œ ํŒŒ์ผ์„ ์ฝ์–ด์˜ค๋Š” ๋ฐฉ์‹ (shared_preferences) 2) ๊ธฐ๊ธฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ SQLite ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค (๋ชจ๋“  ํ•ธ๋“œํฐ์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ ์ €์žฅ ์ „๋ฌธ ํ”„๋กœ๊ทธ๋žจ) 3) ๋‹ค๋ฅธ ์ปดํ“จํ„ฐ(์„œ๋ฒ„)์—..

[MySQL] SELECT WHERE์ ˆ ์กฐ๊ฑด์˜ ๊ฒฐ๊ณผ๊ฐ€ ์—†์œผ๋ฉด INSERT ํ•˜๊ธฐ

stu_class : ํ•™์ƒ๊ณผ ํ•™๊ธ‰์— ๋Œ€ํ•œ ์ •๋ณด ํ…Œ์ด๋ธ” (ํ•™์ƒ์€ ์—ฌ๋Ÿฌ๊ฐœ์˜ ํ•™๊ธ‰์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค) stu_code : ํ•™์ƒ ์ฝ”๋“œ class_code : ํ•™๊ธ‰ ์ฝ”๋“œ ํ•™๊ธ‰์— ํ•™์ƒ์„ ๋ฐฐ์ •ํ•˜๊ธฐ ์ „, ํ•ด๋‹น ํ•™๊ธ‰์— ํ•™์ƒ์ด ์ด๋ฏธ ์†Œ์†๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ์ค‘๋ณต ์‚ฝ์ž…์„ ๋ง‰์œผ๋ ค๊ณ  ์•„๋ž˜์ฒ˜๋Ÿผ ์†Œ์Šค๋ฅผ ์งฐ๋‹ค. 1. ํ•™๊ธ‰, ํ•™์ƒ ๊ฐ๊ฐ ์ฝ”๋“œ ๊ฐ’์œผ๋กœ stu_class ํ…Œ์ด๋ธ” ์กฐํšŒ 2. ๊ฒฐ๊ณผ๊ฐ’์ด ์žˆ์œผ๋ฉด ์ค‘๋ณต ๋ฐฐ์ • ๋ง‰๊ธฐ, ์—†์œผ๋ฉด ํ•™๊ธ‰ ๋ฐฐ์ • ์‹ค์ œ ์†Œ์Šค๋Š” select ์ฟผ๋ฆฌ ์กฐํšŒ ์‹คํŒจํ–ˆ์„ ๋•Œ.. ์กฐํšŒ ๊ฒฐ๊ณผ ์žˆ์œผ๋ฉด?..์—†์œผ๋ฉด?..insertํ•ด.. if๋ฌธ์˜ ์—ฐ์†๐Ÿ˜” if๋ฌธ ๋ฒ„๋ฆฌ๊ณ  ์ฟผ๋ฆฌ๋กœ ํ•œ๋ฐฉ์— ํ•ด๊ฒฐํ•ด๋ณด๊ธฐ๋กœ ํ•จ๐Ÿ‘INSERT INTO stu_class (stu_code, class_code) SELECT 2, 3 FROM DUAL WHERE NOT EXI..

DB/๐Ÿฌ MySQL 2023. 11. 22. 23:29
[์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ] ํ”Œ๋Ÿฌํ„ฐ(Flutter)๋กœ ์‹œ์ž‘ํ•˜๋Š” ์•ฑ๊ฐœ๋ฐœ ์ข…ํ•ฉ๋ฐ˜ - 2์ฃผ์ฐจ ๊ฐœ๋ฐœ์ผ์ง€ โ‘ก

4. ํŒŒ์ผ ๋ถ„๋ฆฌ ์ฝ”๋“œ๊ฐ€ ๊ธธ์–ด์งˆ์ˆ˜๋ก ์ฝ”๋“œ๋ฅผ ์ฐพ๋Š” ์‹œ๊ฐ„์ด ๊ธธ์–ด์ง€๊ธฐ ๋•Œ๋ฌธ์— ํŒŒ์ผ์„ ๋ถ„๋ฆฌ(์œ„์ ฏ๋“ค์„ ๊ฐ๊ฐ ๋‹ค๋ฅธ ํŒŒ์ผ์— ๋ถ„๋ฆฌ) ๋ฆฌํŒฉํ† ๋ง(refectoring) ๊ธฐ๋Šฅ์„ ๋ณ€๊ฒฝํ•˜๊ฑฐ๋‚˜ ์ถ”๊ฐ€ํ•˜์ง€ ์•Š๊ณ , ์ฝ”๋“œ๋งŒ ๊ด€๋ฆฌํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๋ณ€๊ฒฝํ•˜๋Š” ๊ณผ์ • * ๋ณต์žก๋„๊ฐ€ ์˜ฌ๋ผ๊ฐˆ์ˆ˜๋ก ์ฃผ๊ธฐ์ ์ธ ๋ฆฌํŒฉํ† ๋ง์„ ํ†ตํ•ด ๋ณต์žก๋„๋ฅผ ๋‚ฎ์ถฐ์ค˜์•ผ ํ•œ๋‹ค.(ํ˜‘์—…์—์„œ ์ค‘์š”) 5. ์ข‹์•„์š” ๊ตฌํ˜„ํ•˜๊ธฐ & ํ”ผ๋“œ ๋ฆฌ์ŠคํŠธ ๋งŒ๋“ค๊ธฐ ์‚ผํ•ญ์—ฐ์‚ฐ์ž ์กฐ๊ฑด์ด true์ธ ๊ฒฝ์šฐ ๋ฐ˜ํ™˜๊ฐ’1์ด ํ• ๋‹น๋˜๊ณ , false์ธ ๊ฒฝ์šฐ ๋ฐ˜ํ™˜๊ฐ’2๊ฐ€ ํ• ๋‹น ์กฐ๊ฑด ? ๋ฐ˜ํ™˜๊ฐ’ 1 : ๋ฐ˜ํ™˜๊ฐ’2 ListView ์œ„์ ฏ ๋™์ผํ•œ ๋ ˆ์ด์•„์›ƒ์— ๋‹ค๋ฅธ ์ •๋ณด๋ฅผ ๋ณด์—ฌ์ค„ ๋•Œ ์‚ฌ์šฉํ•˜๋ฉด ์œ ์šฉ ListView.builder( itemCount: 100, // ์ „์ฒด ์•„์ดํ…œ ๊ฐœ์ˆ˜ itemBuilder: (context, index) { // index๋Š” 0..

[์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ] ํ”Œ๋Ÿฌํ„ฐ(Flutter)๋กœ ์‹œ์ž‘ํ•˜๋Š” ์•ฑ๊ฐœ๋ฐœ ์ข…ํ•ฉ๋ฐ˜ - 1์ฃผ์ฐจ ๊ฐœ๋ฐœ์ผ์ง€ โ‘ข

7. Dart ๋ฌธ๋ฒ• Dart ์‹คํ–‰์ˆœ์„œ void main() {} // return ๊ฐ’ ์—†์Œ main2 () {} // void ์ƒ๋žต ๊ฐ€๋Šฅ String main3 () { // string ๊ฐ’ return return "Hello"; } main์€ Dart์—์„œ ์ฒ˜์Œ ์‹œ์ž‘ ์‹œ ํ˜ธ์ถœํ•˜๋Š” ํ•จ์ˆ˜ ๋ณ€์ˆ˜ 1) ์ž๋ฃŒํ˜• var : ์ฒ˜์Œ ๋‹ด๊ธด ๊ฐ’์œผ๋กœ ํƒ€์ž…์ด ์ง€์ • String : ๋ฌธ์ž๋งŒ ๋‹ด์„ ์ˆ˜ ์žˆ๋‹ค. String? : ๋ฌธ์ž ๋˜๋Š” ๋น„์–ด์žˆ๋Š”(null) ์ƒํƒœ const: ์ฒ˜์Œ์— ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋ฉฐ ๋‹ด์€ ๊ฐ’์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋‹ค. final : ์„ ์–ธํ•˜๊ณ  ๋‚˜์ค‘์— ๊ฐ’์„ ๋‹ด์„ ์ˆ˜ ์žˆ์œผ๋‚˜, ํ•œ ๋ฒˆ ๋‹ด์œผ๋ฉด ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋‹ค. 2) ๋ณ€์ˆ˜๋ช… - ์˜๋ฌธ _ $ ์ˆซ์ž ๋งŒ ์‚ฌ์šฉ - ์ˆซ์ž๋กœ ์‹œ์ž‘ํ•  ์ˆ˜ ์—†๋‹ค. - ์นด๋ฉœ์ผ€์ด์Šค ์‚ฌ์šฉ ํด๋ž˜์Šค ํด๋ž˜์Šค์˜ ๊ตฌ์„ฑ ์š”์†Œ ์†์„ฑ..