๐Ÿš€
Growth log
  • About me
  • I LEARNED
    • General
      • ๊ฐœ๋ฐœ์ž ๊ฟ€ํŒ
      • ๊ทธ๋กœ์Šคํ•ดํ‚น ๊ธฐ์ดˆ
      • ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๋„๋ฉ”์ธ ์ง€์‹์€ ์–ผ๋งˆ๋‚˜ ์ค‘์š”ํ• ๊นŒ?
      • DTO ๋…ผ์Ÿ์— ๋Œ€ํ•˜์—ฌ
      • MSA๋ž€?
    • Seminar
      • ํ…Œ์ŠคํŠธ ์ปค๋ฒ„๋ฆฌ์ง€ 100% - SLASH 21
      • TDD๊ฐ€ ์‹คํŒจํ•˜๋Š” ์ด์œ  - by ์ด๊ทœ์›๋‹˜
      • ๋Œ€๊ทœ๋ชจ ํŠธ๋ž˜ํ”ฝ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ฑ๋Šฅ ํŠœ๋‹ ๋…ธํ•˜์šฐ ๋‹ค ์•Œ๋ ค ๋“œ๋ฆผ|๋ผ์ธ๊ฐœ๋ฐœ์‹ค๋ก
      • ๊ฒฐ์ œ ์‹œ์Šคํ…œ์˜ SDK์™€ API ๋””์ž์ธ - SLASH 21
    • Web
      • SOP์™€ CORS
    • Spring & OOP
      • DTO vs VO
    • Ruby On Rails
      • Rails lib ๋””๋ ‰ํ† ๋ฆฌ์— ๋Œ€ํ•˜์—ฌ
      • Rails์˜ concerns๋ž€?
      • Rails์—์„œ์˜ GC ์ž‘๋™์›๋ฆฌ
      • Eager loading vs Lazy loading
      • Rails ํ™˜๊ฒฝ ๊ตฌ์„ฑ
      • ActionCable
      • ๐Ÿ“”Perfect ruby on rails
        • MVC ํŒจํ„ด์ธ Rails
        • Ruby on Rails ๊ธฐ๋ณธ - ์ปจํŠธ๋กค๋Ÿฌ
        • Ruby on Rails ๊ธฐ๋ณธ - ๋ทฐ
        • Ruby on Rails ๊ธฐ๋ณธ - ๋ชจ๋ธ
        • ์Šค์บํด๋”ฉ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•œ Rails ๊ฐœ๋ฐœ ๊ธฐ์ดˆ
        • ๋ทฐ ๊ฐœ๋ฐœ
        • ๋ชจ๋ธ ๊ฐœ๋ฐœ
        • ๋ชจ๋ธ ๊ฐœ๋ฐœ - ๋‚™๊ด€์  ๋™์‹œ ์‹คํ–‰ ์ œ์–ด
        • ๋ชจ๋ธ ๊ฐœ๋ฐœ - ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๊ตฌํ˜„
        • ๋ชจ๋ธ ๊ฐœ๋ฐœ - Association
        • ๋ชจ๋ธ ๊ฐœ๋ฐœ - ์ฝœ๋ฐฑ
        • ๋ชจ๋ธ ๊ฐœ๋ฐœ - ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜
        • ๋ชจ๋ธ ๊ฐœ๋ฐœ - ๋ฐ์ดํ„ฐ ์ดˆ๊ธฐํ™”
        • ์ปจํŠธ๋กค๋Ÿฌ ๊ฐœ๋ฐœ - ์š”์ฒญ ์ •๋ณด ์ถ”์ถœ
        • ์ปจํŠธ๋กค๋Ÿฌ ๊ฐœ๋ฐœ - ์‘๋‹ต
        • ์ปจํŠธ๋กค๋Ÿฌ ๊ฐœ๋ฐœ - ์ƒํƒœ ๊ด€๋ฆฌ
        • ๋ผ์šฐํŒ… - RESTful
        • ๋ผ์šฐํŒ… - RESTful ์ธํ„ฐํŽ˜์ด์Šค์˜ ์‚ฌ์šฉ์ž ์ •์˜ํ™”
        • ๋ผ์šฐํŒ… - RESTful ํ•˜์ง€ ์•Š์€ ๋ผ์šฐํŠธ ์ •์˜
        • ํ…Œ์ŠคํŠธ
        • ํ…Œ์ŠคํŠธ - ์ค€๋น„
        • ํ…Œ์ŠคํŠธ - Unit ํ…Œ์ŠคํŠธ
        • ํ…Œ์ŠคํŠธ - Functional ํ…Œ์ŠคํŠธ
        • ํ…Œ์ŠคํŠธ - Integration ํ…Œ์ŠคํŠธ
        • ํด๋ผ์ด์–ธํŠธ ๊ฐœ๋ฐœ - Sprockets vs Webpacker
        • ํด๋ผ์ด์–ธํŠธ ๊ฐœ๋ฐœ - Sprockets
    • Node.js & Express
      • ๊ธฐ๋ณธ ๊ฐœ๋…
      • npx
    • Programing Language
      • Java
        • JavaDoc์— ๋Œ€ํ•ด
        • invocation์— ๋Œ€ํ•ด์„œ
        • ์–ด๋…ธํ…Œ์ด์…˜
        • ์ถ”์ƒํด๋ž˜์Šค & ์ธํ„ฐํŽ˜์ด์Šค
        • Package
        • ์˜ค๋ฒ„๋กœ๋”ฉ vs ์˜ค๋ฒ„๋ผ์ด๋”ฉ
      • Javascript
        • TCP School ํ›‘์–ด๋ณด๊ธฐ
          • ํƒ€์ž…
          • ํ˜• ๋ณ€ํ™˜
          • ๋ณ€์ˆ˜
          • ์—ฐ์‚ฐ์ž
          • ๋ฐ˜๋ณต๋ฌธ
          • ๋ฐฐ์—ด(array)
          • ํ•จ์ˆ˜
          • ํ•จ์ˆ˜ - ์Šค์ฝ”ํ”„์™€ ํ˜ธ์ด์ŠคํŒ…
          • ํ•จ์ˆ˜ - ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ์ธ์ˆ˜
          • ํ•จ์ˆ˜ - ๋ฏธ๋ฆฌ ์ •์˜๋œ ์ „์—ญ ํ•จ์ˆ˜
          • ๊ฐ์ฒด
          • ํ”„๋กœํ† ํƒ€์ž…
          • DOM
          • BOM - Window ๊ฐ์ฒด
          • ์ด๋ฒคํŠธ(event)
      • Ruby
        • ๐Ÿ“”ํผํŽ™ํŠธ ๋ฃจ๋น„
    • DB
      • Redis
        • Redis ๊ฐœ์š”
      • Index(์ธ๋ฑ์Šค)?
      • DB Transaction & Lock
      • ๋™์‹œ์„ฑ ์ œ์–ด์— ๊ด€ํ•˜์—ฌ
      • Lock(์ž ๊ธˆ)์ด๋ž€?
      • ActiveRecord lock vs with_lock
      • Table lock vs Row lock
      • WHERE 1=1 ๊ตฌ๋ฌธ์— ๋Œ€ํ•˜์—ฌ
      • COUNT(*) vs COUNT(indexed column)
      • ๐Ÿ“•๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹ค์ „์ž…๋ฌธ
      • ๐Ÿ“”SQL ์ฒซ๊ฑธ์Œ
      • ๐Ÿ“”๋ชจ๋‘์˜ SQL
    • Design Patterns
      • Observer pattern
      • Flyweight pattern
      • Singleton pattern
    • OOP
      • ๐Ÿ“”์˜ค๋ธŒ์ ํŠธ
        • 6์žฅ ๋ฉ”์‹œ์ง€์™€ ์ธํ„ฐํŽ˜์ด์Šค
      • ํด๋ž˜์Šค๊ฐ„ ๊ด€๊ณ„ ๊ฐ„๋‹จ ์ •๋ฆฌ
    • Regex
    • Collaboration
      • Git
      • Sourcetree
  • DAILY REVIEW
    • 2021
      • August
        • 2021-08-25(Wed)
        • 2021-08-23(Mon)
        • 2021-08-11(Wed)
        • 2021-08-04(Wed)
        • 2021-08-03(Tue)
        • 2021-08-02(Mon)
      • July
        • 2021-07-29(Thu)
        • 2021-07-26(Mon)
        • 2021-07-23(Fri)
        • 2021-07-22(Thu)
        • 2021-07-21(Wed)
        • 2021-07-20(Tue)
        • 2021-07-19(Mon)
        • 2021-07-15(Thu)
        • 2021-07-14(Wed)
        • 2021-07-13(Tue)
        • 2021-07-12(Mon)
      • June
        • 2021-06-05(Sat)
        • 2021-06-04(Fri)
        • 2021-06-03(Thu)
        • 2021-06-02(Wed)
        • 2021-06-01(Tue)
      • May
        • 2021-05-31(Mon)
        • 2021-05-29(Sat)
        • 2021-05-28(Fri)
        • 2021-05-27(Thu)
        • 2021-05-26(Wed)
        • 2021-05-25(Tue)
        • 2021-05-24(Mon)
        • 2021-05-22(Sat)
        • 2021-05-21(Fri)
        • 2021-05-20(Thu)
        • 2021-05-19(Wed)
        • 2021-05-18(Tue)
        • 2021-05-17(Mon)
        • 2021-05-15(Sat)
        • 2021-05-13(Thu)
        • 2021-05-12(Wed)
        • 2021-05-11(Tue)
        • 2021-05-10(Mon)
        • 2021-05-03(Mon)
      • April
        • 2021-04-30(Fri)
        • 2021-04-29(Thu)
        • 2021-04-28(Wed)
        • 2021-04-27(Tue)
        • 2021-04-26(Mon)
        • 2021-04-24(Sat)
        • 2021-04-23(Fri)
        • 2021-04-21(Wed)
        • 2021-04-20(Tue)
        • 2021-04-19(Mon)
        • 2021-04-18(Sun)
        • 2021-04-16(Fri)
        • 2021-04-15(Thu)
        • 2021-04-14(Wed)
        • 2021-04-12(Mon)
        • 2021-04-11(Sun)
        • 2021-04-09(Fri)
        • 2021-04-08(Thu)
        • 2021-04-06(Tue)
        • 2021-04-05(Mon)
        • 2021-04-04(Sun)
        • 2021-04-03(Sat)
        • 2021-04-02(Fri)
        • 2021-04-01(Thu)
      • March
        • 2021-03-29(Mon)
        • 2021-03-28(Sun)
        • 2021-03-26(Fri)
        • 2021-03-25(Thu)
        • 2021-03-24(Wed)
        • 2021-03-23(Tue)
        • 2021-03-22(Mon)
        • 2021-03-21(Sun)
        • 2021-03-20(Sat)
        • 2021-03-17(Wed)
        • 2021-03-16(Tue)
        • 2021-03-15(Mon)
        • 2021-03-12(Fri)
        • 2021-03-11(Thu)
        • 2021-03-10(Wed)
        • 2021-03-09(Tue)
        • 2021-03-08(Mon)
        • 2021-03-07(Sun)
        • 2021-03-05(Fri)
        • 2021-03-03(Wed)
        • 2021-03-02(Tue)
        • 2021-03-01(Mon)
      • Feb
        • 2021-02-26(Fri)
        • 2021-02-25(Thu)
        • 2021-02-24(Wed)
        • 2021-02-23(Tue)
        • 2021-02-22(Mon)
        • 2021-02-19(Fri)
        • 2021-02-18(Thu)
        • 2021-02-17(Wed)
        • 2021-02-16(Tue)
        • 2021-02-15(Mon)
        • 2021-02-14(Sun)
        • 2021-02-13(Sat)
        • 2021-02-12(Fri)
        • 2021-02-10(Wed)
        • 2021-02-09(Tue)
        • 2021-02-08(Mon)
        • 2021-02-07(Sun)
        • 2021-02-05(Fri)
        • 2021-02-03(Wed)
        • 2021-02-02(Tue)
        • 2021-02-01(Mon)
      • Jan
        • 2021-01-29(Fri)
        • 2021-01-28(Thu)
        • 2021-01-27(Wed)
        • 2021-01-26(Tue)
        • 2021-01-25(Mon)
        • 2021-01-23(Sat)
        • 2021-01-22(Fri)
        • 2021-01-20(Wed)
        • 2021-01-19(Tue)
        • 2021-01-18(Mon)
        • 2021-01-12(Tue)
        • 2020-01-11(Mon)
        • 2021-01-08(Fri)
        • 2021-01-07(Thu)
        • 2021-01-06(Wed)
        • 2021-01-05(Tue)
        • 2021-01-04(Mon)
        • 2021-01-01(Fri)
    • 2020
      • Dec
        • 2020-12-30(Thu)
        • 2020-12-25(Fri)
        • 2020-12-24(Thu)
        • 2020-12-23(Wed)
        • 2020-12-22(Tue)
        • 2020-12-21(Mon)
        • 2020-12-18 (Fri)
      • Nov
        • 2020-11-30(Mon)
        • 2020-11-28(Sat)
        • 2020-11-26(Thu)
        • 2020-11-25(Wed)
        • 2020-11-24(Tue)
        • 2020-11-23(Mon)
        • 2020-11-22(Sun)
        • 2020-11-20(Fri)
        • 2020-11-19(Thu)
        • 2020-11-18(Wed)
        • 2020-11-17(Tue)
        • 2020-11-14(Sat)
        • 2020-11-13(Fri)
        • 2020-11-12(Thu)
        • 2020-11-11(Wed)
        • 2020-11-09(Mon)
        • 2020-11-07(Sat)
        • 2020-11-05(Thu)
        • 2020-11-04(Wed)
        • 2020-11-03(Tue)
        • 2020-11-02(Mon)
    • Good article ์•„์นด์ด๋น™
Powered by GitBook
On this page
  • Facts (์‚ฌ์‹ค, ๊ฐ๊ด€)
  • Feelings (๋А๋‚Œ, ์ฃผ๊ด€)
  • Findings (๋ฐฐ์šด ์ )
  • invocation์— ๋Œ€ํ•ด์„œ
  • ๊ทธ๋กœ์Šคํ•ดํ‚น ๋ถ„์„
  • Affimation (์ž๊ธฐ ์„ ์–ธ)

Was this helpful?

  1. DAILY REVIEW
  2. 2021
  3. May

2021-05-27(Thu)

Facts (์‚ฌ์‹ค, ๊ฐ๊ด€)

  • ๊ณผ๊ธฐ๋ถ€ ์žฅ๊ด€๋‹˜ ๋ฐฉ๋ฌธ์‹œ๊ฐ„์— ๋งž์ถฐ์„œ ์ŠคํŒŒ๋ฅดํƒ€42 ํšŒ์˜์— ์ฐธ์—ฌํ–ˆ๋‹ค.

  • ์‚ฌ์ด๋“œํ”„๋กœ์ ํŠธ ํŽ˜๋ธ” ํšŒ์˜๋ฅผ ์ง„ํ–‰ํ–ˆ๋‹ค.

  • ์ฝ”๋“œ์ˆจ 4์ฃผ์ฐจ ๊ณผ์ œ๋ฅผ ์ง„ํ–‰ํ–ˆ๋‹ค.

  • ์ผ์ „์— ๋ฐ˜๋‚ฉํ–ˆ๋˜ ์ฑ…๋“ค์„ ๋‹ค์‹œ ๋นŒ๋ ค์™”๋‹ค.

  • ์ปจ๋””์…˜์ด ์ข‹์ง€ ์•Š์•„์„œ ์ €๋… ์‹œ๊ฐ„์€ ํœด์‹์„ ์ทจํ–ˆ๋‹ค.

Feelings (๋А๋‚Œ, ์ฃผ๊ด€)

์žฅ๊ด€๋‹˜ ๋ฐฉ๋ฌธ ์ผ์ •์ด ๊ฐ‘์ž๊ธฐ ์˜ค์ „์œผ๋กœ ๋ฐ”๋€Œ๋Š” ๋ฐ”๋žŒ์— 4์‹œ๊ฐ„ ๋ฐ–์— ๋ชป ์ž์„œ ์•„์นจ์— ํ”ผ๊ณคํ–ˆ๋‹ค.

ํŽ˜๋ธ” ํšŒ์˜๋ฅผ ์ง„ํ–‰ํ–ˆ๋‹ค. ๊ธฐํš์ž๋‹˜์ด ๋„˜๊ฒจ์ค€ ํ”Œ๋กœ์šฐ๋ฅผ ๋ณด๊ณ  ์‹œํ€€์Šค ๋‹ค์ด์–ด๊ทธ๋žจ์„ ๊ทธ๋ฆฐ ๋‹ค์Œ, API์™€ DB๋ฅผ ์„ค๊ณ„ํ•  ์˜ˆ์ •์ด๋‹ค. ์ปจ๋ฒค์…˜ ๊ด€๋ จํ•ด์„œ ํ‚ค์›Œ๋“œ๋ฅผ ๋˜์กŒ์—ˆ๋Š”๋ฐ, ๋‹ค๋ฅธ ํŒ€์›๋“ค์ด ์ƒ๊ฐ๋ณด๋‹ค ๋„ˆ๋ฌด ์ž˜ ์กฐ์‚ฌํ•ด์˜ค์…”์„œ ๋†€๋ž๋‹ค. ์šฐ๋ฆฐ commit์€ type์„ ๋ช…์‹œํ•˜์ง€ ์•Š๋Š”๋Œ€์‹  branch์— ์ž‘์—…์˜ ์„ฑ๊ฒฉ์ด ๋‚˜ํƒ€๋‚˜๋„๋ก ์‹ ๊ฒฝ์“ฐ๊ธฐ๋กœ ํ–ˆ๊ณ , git-flow ๋Œ€์‹  github-flow๋ฅผ ์šฐ์„  ์‹œ๋„ํ•ด๋ณผ ์˜ˆ์ •์ด๋‹ค. java๋Š” ๊ตฌ๊ธ€ ์ปจ๋ฒค์…˜์œผ๋กœ, API ๋ฌธ์„œ๋Š” swagger๋กœ ์ž‘์„ฑํ•ด๋ณด๊ธฐ๋กœ ํ–ˆ๋‹ค. ์ƒˆ๋กญ๊ฒŒ ํ•ด๋ณด๋Š” ์‹œ๋„๊ฐ€ ๋งŽ์•„์„œ ์ฆ๊ฒ๋‹ค.

์˜ค๋ธŒ์ ํŠธ, ์ดํŽ™ํ‹ฐ๋ธŒ ์ž๋ฐ” ์ฑ…์„ ๋‹ค ์ฝ์ง€ ๋ชปํ•˜๊ณ  ๋ฐ˜๋‚ฉํ–ˆ์—ˆ๋Š”๋ฐ, ๋ฏธ๋ จ์ด ๋‚จ์•„์„œ ๋‹ค์‹œ ๋นŒ๋ ค์™”๋‹ค. ์–ด์„œ ๋…ํŒŒํ•ด๋ด์•ผ์ง€!

์ปจ๋””์…˜ ๋ฌธ์ œ๋กœ ์ฝ”๋“œ์ˆจ 4์ฃผ์ฐจ ๊ณผ์ œ์— ๋ชฐ์ž…ํ•˜์ง€ ๋ชปํ•œ ๋А๋‚Œ์ด๋‹ค. ์•„์‰ฝ๋‹ค. ๋‚ด์ผ์€ ๊ผญ ๋ชฐ์ž…ํ•ด๋ณด์ž.

Findings (๋ฐฐ์šด ์ )

invocation์— ๋Œ€ํ•ด์„œ

์ฝ”๋“œ์ˆจ 4์ฃผ์ฐจ ๊ฐ•์˜๋ฅผ ๋ณต์Šตํ•˜๋Š”๋ฐ, ์•„๋ž˜ ์˜ˆ์ œ์—์„œ ๋‚˜์˜จ invocation ๋‹จ์–ด๊ฐ€ ๋‚ฏ์„ค๊ฒŒ ๋А๊ปด์กŒ๋‹ค.

given(taskRepository.save(only(Task.class)).will(invocation -> {
  return invocation.getArgument(0);
}))
given(phoneBookRepository.contains(momContactName))
  .willReturn(true);
given(phoneBookRepository.getPhoneNumberByContactName(momContactName))
  .will((InvocationOnMock invocation) ->
    invocation.getArgument(0).equals(momContactName) 
      ? momPhoneNumber 
      : null);
phoneBookService.search(momContactName);
then(phoneBookRepository)
  .should()
  .getPhoneNumberByContactName(momContactName);

์ผ๋‹จ ๋„ค์ด๋ฒ„ ์‚ฌ์ „์—์„œ๋Š” ์˜ ์•Œ ์ˆ˜ ์—†๋Š” ๋œป์ด ๋‚˜์˜จ๋‹ค.

invocation

  • 1.(์‹ ์„ ํ–ฅํ•œ) ๊ธฐ๋„[๊ธฐ์›], (๊ถŒํ•œ์„ ์ง€๋‹Œ ์ด๋ฅผ ํ–ฅํ•œ) ํƒ„์›[ํ˜ธ์†Œ], (ํ˜ผยท์˜๊ฐ ๋“ฑ์„ ๋น„๋Š”) ์ฃผ๋ฌธ(ๅ‘ชๆ–‡)[๊ธฐ๋„]

  • 2.(๋ฒ•์  ๊ถŒํ•œ ๋“ฑ์˜) ๋ฐœ๋™[์‹ค์‹œ]

public interface Invocation

A client request invocation. An invocation is a request that has been prepared and is ready for execution. Invocations provide a generic (command) interface that enables a separation of concerns between the creator and the submitter. In particular, the submitter does not need to know how the invocation was prepared, but only how it should be executed (synchronously or asynchronously) and when.

  • invocation is the event of issuing the call to the method; technically - placing the method onto the stack

  • execution is the whole process of running the method - from invocation till completion. And execution time is period during which the method body runs.

์ •๋ฆฌํ•˜๋ฉด

  • invocation์€ execution์˜ ์ „๋‹จ๊ณ„๋กœ์จ ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๊ฐœ๋…์ด๋‹ค.

  • ์ œ๋„ค๋ฆญ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

  • creator์™€ submitter์˜ ๊ด€์‹ฌ์„ ๋ถ„๋ฆฌ์‹œํ‚ฌ ๋•Œ ์š”๊ธดํ•˜๊ฒŒ ์“ฐ์ธ๋‹ค. submitter๋Š” invocation์ด ์–ด๋–ป๊ฒŒ ์ค€๋น„๋˜๋Š”์ง€ ์•Œ ํ•„์š”๊ฐ€ ์—†๋‹ค. ๊ทธ๋ƒฅ invocation์„ ์‹คํ–‰์‹œํ‚ฌ ๋•Œ ํ•„์š”ํ•œ ์ •๋ณด๋งŒ ์•Œ๊ณ  ์žˆ์œผ๋ฉด ๋˜๋Š” ๊ฒƒ!

๊ทธ๋กœ์Šคํ•ดํ‚น ๋ถ„์„

๊ทธ๋กœ์Šค ํ•ดํ‚น์€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์„ฑ์žฅ์„ ์ง‘์š”ํ•˜๊ฒŒ ํŒŒ๊ณ ๋“œ๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค.

๊ทธ๋กœ์Šค ํ•ดํ‚น์„ ์ฒ˜์Œ ์‹œ์ž‘ํ•œ๋‹ค๋ฉด ํผ๋„(Funnel) ๊ตฌ์ถ•๋ถ€ํ„ฐ ํ•˜์ž.

ํผ๋„ ๊ตฌ์ถ•์€ ์•„๋ž˜์™€ ๊ฐ™์ด ํ•˜๋ฉด ๋œ๋‹ค.

  • ๋น„์ฆˆ๋‹ˆ์Šค ํ๋ฆ„ ๊ทธ๋ฆฌ๊ธฐ

  • ์ฒ˜์Œ์—๋Š” ๊ฐ€๋Šฅํ•œ ์ƒ์„ธํ•˜๊ฒŒ

  • ์‹œ์ž‘์€ ํฐ ์ˆซ์ž๋ถ€ํ„ฐ

  • ๋์€ Goal์„ ๊ธฐ๋ฐ˜์œผ๋กœ

ํผ๋„ ๋ถ„์„์€ AARRR์„ ๊ธฐ๋ณธ์œผ๋กœ ์ ์šฉํ•ด๋ณด์ž. Cycle์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์–ด์„œ ์ข‹๋‹ค.

  • Acquisition(์ธ์ž…/ํš๋“): ์‹œ์ž‘์€ ๊ด‘๊ณ ๋ถ€ํ„ฐ, ์ตœ๋Œ€ํ•œ ๋งŽ์€ ์‚ฌ๋žŒ์—๊ฒŒ ์„œ๋น„์Šค ๋…ธ์ถœ์‹œํ‚ค๊ธฐ

    • KPI: ๋…ธ์ถœ๋Ÿ‰, ํด๋ฆญ๋Ÿ‰, CTR, CVR, Conversion ๋“ฑ

  • Activation(ํ™œ์„ฑํ™”): ๋ณธ๊ฒฉ์ ์œผ๋กœ ์„œ๋น„์Šค๋ฅผ ์ด์šฉ

    • KPI: DAU, WAU, MAU

  • Retention(์œ ์ง€, ์žฌ๋ฐฉ๋ฌธ): ์ง€์†์ ์œผ๋กœ ์„œ๋น„์Šค๋ฅผ ์ด์šฉ

    • KPI: Retention Ratio, Life Time, ์žฌ๋ฐฉ๋ฌธ์œจ

  • Revenue(๋งค์ถœ,์ˆ˜์ต): ์œ ์ €๊ฐ€ ์ˆ˜์ต/๋งค์ถœ์„ ๊ฐ€์ ธ์˜ด

    • KPI: ๋งค์ถœ์•ก, eCPM, ์ด ๊ด‘๊ณ  ๋…ธ์ถœ๋Ÿ‰

  • Referrer(์ถ”์ฒœ): ์œ ์ €๊ฐ€ ๋‹ค๋ฅธ ์œ ์ €๋“ค์„ ๋ฐ๋ ค์˜ด

    • KPI: ์‹ ๊ทœ์ธ์ž…์ค‘ ์ถ”์ฒœ์„ ํ†ตํ•œ ์ธ์ž… ๋น„์œจ, ๊ฐ€์ž…์ž๋‹น ์ถ”์ฒœ ๋น„์œจ

์ฐธ๊ณ 

Affimation (์ž๊ธฐ ์„ ์–ธ)

  • ๋‚˜๋Š” ํ•™์— ๋ชฐ์ž…ํ•˜๋Š” ๊ฐœ๋ฐœ์ž๋‹ค.

Previous2021-05-28(Fri)Next2021-05-26(Wed)

Last updated 3 years ago

Was this helpful?

์ด ๋‹จ์–ด๋Š” ๋‹ค๋ฅธ ์—์„œ๋„ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋‚˜์˜จ๋‹ค.

์กฐ๊ธˆ ๋” ์ฐพ์•„๋ณด๋‹ˆ ์— ์ธํ„ฐํŽ˜์ด์Šค๋กœ ๋ช…์‹œ๋˜์–ด ์žˆ์—ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์—๋„ ์•„๋ž˜ ๋‚ด์šฉ์ด ๋“ค์–ด์žˆ๋Š” ๊ธ€์„ ์ฐพ์„ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

BDDMockito ์˜ˆ์ œ
Java API ๋ฌธ์„œ
์Šคํƒ์˜ค๋ฒ„ํ”Œ๋กœ์šฐ
๊ทธ๋กœ์Šคํ•ดํ‚น ๊ธฐ์ดˆ