[240613] ์†Œํ”„ํŠธ์›จ์–ด ์ƒ๋ช… ์ฃผ๊ธฐ(Software Life Cycle)๋ž€? ํญํฌ์ˆ˜, ํ”„๋กœํ† ํƒ€์ž…, ๋‚˜์„ ํ˜•, ์• ์ž์ผ ๋ชจํ˜•
ยท
๊ณต๋ถ€/์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ ๊ณต๋ถ€๊ธฐ๋ก
1๊ณผ๋ชฉ ไธญ1. ์š”๊ตฌ์‚ฌํ•ญ ํ™•์ธ (1) ์†Œํ”„ํŠธ์›จ์–ด ์ƒ๋ช…์ฃผ๊ธฐ ์ผ๋ฐ˜์ ์œผ๋กœ ์†Œํ”„ํŠธ์›จ์–ด๋Š” ํด๋ผ์ด์–ธํŠธ์˜ ์š”๊ตฌ์‚ฌํ•ญ์„ ๋ถ„์„ํ•ด์„œ ์„ค๊ณ„ํ•˜๊ณ , ๊ทธ์— ๋งž๊ฒŒ ๊ฐœ๋ฐœํ•œ ํ›„ ์ตœ์ƒ์˜ ํ’ˆ์งˆ ์ƒํƒœ๋ฅผ ์œ„ํ•ด ์œ ์ง€๋ณด์ˆ˜๋ฅผ ์ด์–ด๊ฐ„๋‹ค. ์ด๋Ÿฌํ•œ ๊ณผ์ •์„ ๋‹จ๊ณ„๋กœ ๋‚˜๋ˆˆ ๊ฒƒ์„ '์†Œํ”„ํŠธ์›จ์–ด ์ƒ๋ช…์ฃผ๊ธฐ' ๋ผ๊ณ  ํ•จ ์ด๋Š” ๊ฐœ๋ฐœ ๋ฐฉ๋ฒ•๋ก ์˜ ๋ฐ”ํƒ•์ด ๋œ๋‹ค. ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ๋‹จ๊ณ„, ๊ฐ ๋‹จ๊ณ„๋ณ„ ์ฃผ์š” ํ™œ๋™, ํ™œ๋™ ๊ฒฐ๊ณผ์— ๋Œ€ํ•œ ์‚ฐ์ถœ๋ฌผ๋กœ ํ‘œํ˜„ํ•œ๋‹ค. ์ด๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ํ˜•ํƒœ๋ฅผ ์†Œํ”„ํŠธ์›จ์–ด ์ƒ๋ช…์ฃผ๊ธฐ ๋ชจํ˜•์ด๋ผ๊ณ  ํ•œ๋‹ค.aka. ์†Œํ”„ํŠธ์›จ์–ด ํ”„๋กœ์„ธ์Šค ๋ชจํ˜• ๋˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™ ํŒจ๋Ÿฌ๋‹ค์ž„์ด๋ผ๊ณ  ํ•จ. ๋Œ€ํ‘œ์ ์œผ๋กœ 4๊ฐ€์ง€์˜ ๋ชจํ˜•์ด ์žˆ๋‹ค.  ํญํฌ์ˆ˜ ๋ชจํ˜•  (Waterfall Model)  "ํญํฌ์—์„œ ํ•œ๋ฒˆ ๋–จ์–ด์ง„ ๋ฌผ์€ ๋‹ค์‹œ ๊ฑฐ์Šฌ๋Ÿฌ ์˜ฌ๋ผ๊ฐˆ ์ˆ˜ ์—†๋‹ค"์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ๋˜ํ•œ ์ด์ „ ๋‹จ๊ณ„๋กœ ๋Œ์•„๊ฐˆ ์ˆ˜ ์—†๋‹ค๋Š” ์ „์ œํ•˜์— ๊ฐ ..
[PHP] mysql์—์„œ ๋ฐฉ๊ธˆ insert ํ•œ row์˜ AUTO_INCREMENT ๊ฐ’ ๊ฐ€์ ธ์˜ค๊ธฐ
ยท
ํ”„๋กœ๊ทธ๋ž˜๋ฐ/PHP
์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ์„ ๋งŒ๋“œ๋Š” ์ค‘์ด๋‹ค. ๊ฒŒ์‹œ๊ธ€ ๋‚ด์šฉ(์ œ๋ชฉ, ๋‚ด์šฉ, ์นดํ…Œ๊ณ ๋ฆฌ)์„ DB์— ๋„ฃ์€ ๋‹ค์Œ ๊ฐ™์€ ๊ฒŒ์‹œ๊ธ€์— ์ถ”๊ฐ€๋œ ์ด๋ฏธ์ง€๋ฅผ ์ด๋ฏธ์ง€ ํ…Œ์ด๋ธ”์— ๋”ฐ๋กœ ๋„ฃ์–ด์ค˜์•ผ ํ•˜๋Š”๋ฐ ์ด๋•Œ ๊ฒŒ์‹œ๊ธ€ ๋ฒˆํ˜ธ๋ฅผ ์™ธ๋ž˜ํ‚ค๋กœ ์‚ฌ์šฉํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฒŒ์‹œ๊ธ€ ๋‚ด์šฉ์„ insert ํ•˜์ž๋งˆ์ž ๊ฒŒ์‹œ๊ธ€ ๋ฒˆํ˜ธ๋ฅผ ์•Œ์•„๋‚ด์•ผ ํ•œ๋‹ค.  // my sql connection $conn = new mysqli($servername, $username, $password, $dbname);$๋ณ€์ˆ˜์ด๋ฆ„ = $conn->insert_id; insert ์ฟผ๋ฆฌ๋ฌธ์„ ์‹คํ–‰ ์‹œํ‚จ ๋’ค insert_id ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.
[Android/JAVA] "์˜์‹ฌ์Šค๋Ÿฌ์šด ๋“ค์—ฌ์“ฐ๊ธฐ" ์ด์Šˆ . . . Suspicious indentation ์˜ค๋ฅ˜. ์ž‘๋™์—๋Š” ๋ฌธ์ œ ์—†์Œ
ยท
ํ”„๋กœ๊ทธ๋ž˜๋ฐ/Android
๋ฉฐ์น  ๊ฑฐ์Šฌ๋ฆฌ๋˜ ์ด ๋นจ๊ฐ„ ์ค„ ์ปดํŒŒ์ผํ• ๋•Œ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธฐ๊ฑฐ๋‚˜, ์ž‘๋™์ด ์•ˆ๋˜๋Š” ๊ฑด ์•„๋‹ˆ์–ด์„œ ๊ฑ ๋ƒ…๋’€๋‹ค. ๋ฌธ์ œ๊ฐ€ ์•ˆ์ƒ๊ธด๋‹ค๊ณ  ๋นจ๊ฐ„ ์ค„์„ ๊ทธ๋ƒฅ ๋ฌด์‹œํ•˜๋Š” ๊ฒƒ๋„ ์ƒ๊ฐํ•ด๋ณด๋‹ˆ ์•ˆ์ข‹์€ ์Šต๊ด€์ด๋„ค  Suspicious indentation: This is indented but is not continuing the previous expression (`get_lon = Double.par`...) (Previous statement here)Suspicious indentation: This is indented but is not continuing the previous expression (`get_lon = Double.par`...)์ฝ์–ด๋ณด๋‹ˆ ๋ณ„๊ฒŒ ์•„๋‹ˆ์—ˆ๋‹ค. ์ฝ”๋“œ์˜ ๋“ค์—ฌ์“ฐ๊ธฐ(indentation)์— ๊ด€๋ จ๋œ ๋ฌธ์ œ๋ผ๊ณ  ํ•˜๋„ค..
[Android/JAVA] ์œ„๋„, ๊ฒฝ๋„ ๊ฐ’์œผ๋กœ ๊ฑฐ๋ฆฌ ๊ตฌํ•˜๊ธฐ (Km, M, S)
ยท
ํ”„๋กœ๊ทธ๋ž˜๋ฐ/Android
์•ˆ๋“œ๋กœ์ด๋“œ๋กœ ๋ฉ”๋ชจ์žฅ์„ ๊ตฌํ˜„ ์ค‘์ด๋‹ค. ์ œ๋ชฉ, ๋‚ด์šฉ๊ณผ ํ•จ๊ป˜ ์žฅ์†Œ๋„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค. (์›ํ•˜๋Š” ์žฅ์†Œ) ๊ตฌ๊ธ€ ์žฅ์†Œ ๊ฒ€์ƒ‰ api๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ, ๋‚ด๊ฐ€ ๊ฒ€์ƒ‰ํ•œ ์žฅ์†Œ์˜ ํ‚ค์›Œ๋“œ์™€ ์ฃผ์†Œ๋ฅผ ๊ฐ™์ด ์ €์žฅํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“ค์—ˆ๋‹ค. ๋˜ํ•œ ์•ˆ๋“œ๋กœ์ด๋“œ notification ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•ด ๋‚ด๊ฐ€ ์ €์žฅํ•œ ์žฅ์†Œ๋“ค๋กœ๋ถ€ํ„ฐ์‚ฌ์šฉ์ž๊ฐ€ ์ผ์ • ๋ฒ”์œ„ ์ด๋‚ด๋กœ ๋“ค์–ด์˜ค๋ฉด, ์•Œ๋žŒ์ด ์šธ๋ฆฌ๋Š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ๋จผ์ € ๋‚ด ์œ„์น˜์™€ ์ €์žฅ๋œ ์žฅ์†Œ๋“ค์˜ ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•ด๋ณด๋„๋ก ํ•œ๋‹ค. GPS์™€ ๊ตฌ๊ธ€ API๋กœ๋ถ€ํ„ฐ ์œ„๋„, ๊ฒฝ๋„ ๊ฐ’์„ ๋ฐ›์„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฅผ ์ด์šฉํ•ด ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•˜๋„๋ก ํ•œ๋‹ค. ์—๋ฎฌ๋ ˆ์ดํ„ฐ์˜ ์œ„์น˜, ์ฆ‰ ์‚ฌ์šฉ์ž์˜ ํ˜„์žฌ ์œ„์น˜๋Š” GPS ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•˜์—ฌ ๋ฐ›์•„์™”๋‹ค. ๋ฉ”๋ชจ์žฅ์„ ์ž‘์„ฑํ•˜๋ฉฐ ์žฅ์†Œ๋ฅผ ์ถ”๊ฐ€ํ•  ๋•Œ, ํ•ด๋‹น ์žฅ์†Œ์˜ ์œ„๋„, ๊ฒฝ๋„๊ฐ’๋„ ํ•จ๊ป˜ ๋ฐ›์•„์„œ ์‰์–ด๋“œ ํ”„๋ฆฌํผ๋Ÿฐ์Šค์— ๋”ฐ๋กœ ์ €์žฅ์„ ์‹œ์ผฐ๋‹ค. ..