LIKELION๐Ÿฆ TIL(2022-06-21)

Ryuยท2022๋…„ 6์›” 21์ผ
0

๋ฉ‹์Ÿ์ด ์‚ฌ์ž์ฒ˜๋Ÿผ

๋ชฉ๋ก ๋ณด๊ธฐ
4/12
post-thumbnail

ํ˜„๋Œ€์  ์ปดํ“จํ„ฐ์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ

CPU์™€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋ถ„๋ฆฌ.
ํฐ ๋…ธ์ด๋งŒ : ํ†ตํ•ฉ๋˜์–ด ์žˆ๋˜ ์ž…๋ ฅ์žฅ์น˜์™€ ์ถœ๋ ฅ์žฅ์น˜๋ฅผ ๋‚˜๋ˆ„์—ˆ๋‹ค.

์ปดํ“จํ„ฐ ๋ฉ”๋ชจ๋ฆฌ์˜ ๊ธฐ๋ณธ๊ตฌ์กฐ

๊ธฐ๋ณธ๊ตฌ์กฐ

  • ๋ณด์กฐ๊ธฐ์–ต์žฅ์น˜ (HDD, SSD)
  • ์ฃผ๊ธฐ์–ต์žฅ์น˜ (RAM)
  • CPU (L3, L2, L1, ๋ ˆ์ง€์Šคํ„ฐ)

๋ณด์กฐ๊ธฐ์–ต์žฅ์น˜

  • HDD์™€ SSD ๊ฐ€ ์žˆ๋‹ค.
  1. HDD : sequential access. ์ˆœ์ฐจ์  ์ ‘๊ทผ
  • ๋‹จ์  : ๋Š๋ฆฐ ์†๋„, ๋ฐœ์—ด, ์†Œ์Œ
  • ์žฅ์  : ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ๊ฐ€ ์•ˆ์ •์ 
  1. SSD : random access. ์ž„์˜ ์ ‘๊ทผ
  • ๋‹จ์  : ๋ฐ์ดํ„ฐ ์œ ์‹ค ๊ฐ€๋Šฅ์„ฑ(๋ถˆ์•ˆ์ •), ๋ฐ์ดํ„ฐ ์—ฐ์†์ ์œผ๋กœ ๋ฐ›์•„์˜ฌ ๋•Œ, HDD ๋ณด๋‹ค ํšจ์œจ์ด ๋–จ์–ด์ง„๋‹ค. โ†’ SSD๋Š” ์—ฐ์†์  ๋ฐ์ดํ„ฐ์ž„์—๋„ ์ฃผ์†Œ๋กœ ์ ‘๊ทผํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ์ ‘๊ทผ ํšŸ์ˆ˜์— ๋”ฐ๋ผ ๊ณ„์‚ฐ๋œ๋‹คโ€ฆ

  • ์žฅ์  : ๊ธฐ๋ณธ์ ์œผ๋กœ ๋น ๋ฅธ ๋ฐ์ดํ„ฐ ์ ‘๊ทผ ์†๋„
    (RAM๊ณผ ๋น„์Šทํ•จ, ๋ฐ์ดํ„ฐ์˜ ์ฃผ์†Œ๊ฐ’(๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ)์œผ๋กœ ์ ‘๊ทผ.)

  • ์šด์˜์ฒด์ œ์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„ :
    ํ”„๋กœ์„ธ์Šค(ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰)๊ฐ€ ์ด ๊ณต๊ฐ„์„ ์‚ฌ์šฉํ•œ๋‹ค.

C ์–ธ์–ด

  • C์–ธ์–ด๋ฅผ ๋ฐฐ์šฐ๋Š” ์ด์œ 
  • ์ž๋ฐ” ์ˆ™๋ จ๋„ ์ฆ๊ฐ€, ํ•จ์ˆ˜ ํ˜ธ์ถœ ์Šคํƒ ์Œ“์ด๋Š” ๋“ฑโ€ฆ ์ง์ ‘ ํ™•์ธ ๊ฐ€๋Šฅ.
  • C11(modern C) ์‚ฌ์šฉํ•ด์„œ ๋ฐฑ์ค€. C๋Š” ๊ทผ๋ณธ์˜ ์–ธ์–ด๋‹ค.
    โ†’ ํ™•์‹คํžˆ ์–ดํ•„ ์š”์†Œ๊ฐ€ ์žˆ๋‹คโ€ฆ
  • NGINX ์˜ ํŠน์ • ๋ชจ๋“ˆ, ์šด์˜์ฒด์ œ ๋งŒ๋“ค๊ธฐ, ํฌํ† ์ƒต ๋งŒ๋“ค๊ธฐ
    (ํ•„ํ„ฐ์™€ ๊ฐ™์€ ์—ฐ์‚ฐ ์ž‘์—…๋“ค)

Chapter 3. ๋ฐ˜๋ณต๋ฌธ

#include <stdio.h>

int main() {
  int dan = 1;
  int j = 1;
  printf("%d * %d = %d\n", dan, j, dan*j);   
  j++;        // j+=1 ๊ณผ j j+1; ๋„ ๊ฐ€๋Šฅ.
  printf("%d * %d = %d\n", dan, j, dan*j);
  j++;
	//...
}

Chapter 4. ๋ฐ˜๋ณต๋ฌธ

  • C์–ธ์–ด ๊ธฐ๋ณธ ๋ฌธ๋ฒ•
    • ์ œ์–ด๋ฌธ
      • ์กฐ๊ฑด๋ฌธ , ๋ฐ˜๋ณต๋ฌธ
    • ์ผ๋ฐ˜๊ตฌ์„ฑ์š”์†Œ
      • ๋ณ€์ˆ˜, ํ•จ์ˆ˜

while ๋ฌธ์œผ๋กœ 8๋‹จ ์ถœ๋ ฅํ•˜๊ธฐ. 8*100 ๊นŒ์ง€.

#include <stdio.h>

int main(void) {
  int dan = 8;
  int j = 1;
  
  while(j <= 100) {
    printf("%d * %d = %d\n", dan, j, dan*j);
    j++;
  }

  return 0;
}

for ๋ฌธ ๊ณผ while ๋ฌธ

  • for๋ฌธ
    โ†’ ์‹œ์ž‘์  ๋์ , ์ฆ๊ฐ๊นŒ์ง€ ํ•œ ๋ฒˆ์— ํŒŒ์•…. ์ข€ ๋” ์ž˜ ๋ณด์ž„. ์‰ฝ๊ฒŒ ํŒŒ์•… ๊ฐ€๋Šฅ.
  • while ๋ฌธ
    โ†’ ์‹œ์ž‘์ , ๋์ , ์ฆ๊ฐ ๋‹ค ๋”ฐ๋กœ ์žˆ๋‹ค.

Chapter 4. ๋ฐ˜๋ณต๋ฌธ2

  • 1000์˜ ๋ชจ๋“  ์•ฝ์ˆ˜ ์ถœ๋ ฅ โ†’ ๋” ํšจ์œจ์ ์ธ ์ฝ”๋“œ, root ์‚ฌ์šฉํ•ด์„œ ํ’€์–ด๋ณด๊ธฐ.

Chapter 6. ๋‹ค์ค‘ ๋ฐ˜๋ณต๋ฌธ

  • ์ด์ค‘ ๋ฐ˜๋ณต๋ฌธ

HTML, CSS ์‹ค์Šตํ•˜๊ธฐ

82๊ฐ•. ์ตœ์ข…๋‹จ๊ณ„๋ฅผ codepen.io/pen ๋นˆํŽ˜์ด์ง€์—์„œ 10๋ถ„ ์•ˆ์— ์™„์„ฑ.

  • emmet
    • nav.menu-box-1>ul>li*3>a[href=โ€#โ€]{1์ฐจ ๋ฉ”๋‰ด ์•„์ดํ…œ $}
  • normalize
    • body, ul, li { margin : 0; padding : 0; list-style : none; }
    • a { color : inherit; text-decoration : none; }
  • nav[class=โ€menu-box-1]
    • ๋งŒ์•ฝ css selector์—์„œ ์—ฌ๋Ÿฌ ๊ฐœ class ๊ฐ’์ด ๋“ค์–ด๊ฐ„ ๊ฒƒ์„ ์„ ํƒํ•ด์•ผ ํ•  ๋•Œ, ์ด๋Š” ์—ฌ๋Ÿฌ ๊ฐœ๋ฅผ ํฌํ•จํ•˜์ง€ ๋ชปํ•œ๋‹ค.
      ๊ทธ๋ž˜์„œ, nav.menu-box-1 ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ!
  • ๋„ˆ๋น„ ์ฃผ๊ธฐ ๋ฐฉ๋ฒ• 1 : a ํƒœ๊ทธ(inline-block)์— ํŒจ๋”ฉ ๊ฐ€๋กœ๋กœ ๊ธธ๊ฒŒ ์ค˜์„œ width๋ฅผ ๋งž์ถ”๋Š” ๋ฐฉ๋ฒ•
    โ†’ ์ „์ฒด ๋ฉ”๋‰ด์˜ ๋„ˆ๋น„๊ฐ€ ๋ฏธ์ • ๋ฐฉ๋ฒ• 2 : li ํƒœ๊ทธ(inline-block)์— width ์ง€์ •ํ•˜๊ณ  aํƒœ๊ทธ block์œผ๋กœ width๋ฅผ ์ฑ„์šฐ๋Š” ๋ฐฉ๋ฒ•โ†’ ์ „์ฒด ๋ฉ”๋‰ด์˜ ๋„ˆ๋น„๊ฐ€ ์ •ํ•ด์ ธ ์žˆ์„ ๋•Œ

์Œ์ˆ˜ ๋งˆ์ง„์ด๋ž€

  • margin-top : -20px; // ๋งˆ์น˜ ์œ ๋ น์ฒ˜๋Ÿผ ๋ฐ•์Šค ์•ˆ ๋ฒ”์œ„๋ฅผ ๋„˜์–ด๊ฐ€๋Š” ํ˜„์ƒ.

102๊ฐ•

  1. position : static;
    1. default ์†์„ฑ.
  2. position : absolute;
    1. ์ขŒํ‘œ๊ฐ’์— ์˜ํ•ด์„œ ๋‹ฌ๋ผ์ง„๋‹ค. (top, bottom, left, right)
      โ†’ left : 0; ์ด๋ฉด ์ขŒ์ธก์— ๋ถ™๋Š”๋‹ค.

104๊ฐ•

  • ์ƒ‰ 4๊ฐœ ๊ตฌํš์œผ๋กœ ๋งŒ๋“ค์–ด๋ณด๊ธฐ.
    โ†’ ๋นจ๋ฆฌ ์™„์„ฑํ•˜๋ฉด, codepen.io/pen ์—์„œ ๋งŒ๋“ค์–ด๋ณด๊ธฐ.

105๊ฐ•

  • ์ƒ‰ 3๊ฐœ ๊ตฌํš์œผ๋กœ ๋งŒ๋“ค๊ธฐ.
    ํžŒํŠธ : 33.3333% โ†’ left : 33.3333%; ํ•˜๋ฉด, ์™ผ์ชฝ์—์„œ ๊ทธ๋งŒํผ ๋–จ์–ด์ง.
    ์ฐธ๊ณ ๋กœ, calc(100% / 3); ์ด๋Ÿฐ ์‹์œผ๋กœ ์ž‘์„ฑ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค.

109๊ฐ•

  • width, height ์‚ฌ์šฉ์•ˆํ•˜๊ณ  4๊ฐœ ๊ตฌํš ๋งŒ๋“ค๊ธฐ.
    ํžŒํŠธ : top, bottom, left, right ๋‹ค ์จ์•ผ ํ•จ.
  • ๋” ๋ฐ€๋ฉด, ๋” ๋งŽ์ด ์ค„์–ด๋“ ๋‹ค. left : 70%; โ†’ ์™ผ์ชฝ์—์„œ ๋ฉ€์–ด์ง.

102๊ฐ•

  1. position : absoulute; โ†’ ์œ ๋ น
    1. ์ขŒํ‘œ ๊ฐ’์œผ๋กœ ์œ„์น˜ ์กฐ์ •. ์ฃผ๋ณ€ ์‹ ๊ฒฝ ์•ˆ์”€! ํ•˜๋‚˜์˜ ๋…๋ฆฝ์  ์„ธ๊ณ„์ž„.
    2. top, left, right, bottom ์†์„ฑ์„ ๊ฐ€์ง„๋‹ค.
  2. position : static; โ†’ ์‚ฌ๋žŒ.
  3. position : relative; โ†’ ์‚ฌ๋žŒ. ์œ ๋ น์˜ ์ง‘ ๊ธฐ๋Šฅ.
    1. ๋ณธ์ธ์—๊ฒŒ๋Š” ์•„๋ฌด๋Ÿฐ ์˜ํ–ฅ X.
    2. ์œ ๋ น์„ ๊ฐ€๋‘˜ ์ˆ˜ ์žˆ์Œ.
      ์ฆ‰, ์ž์‹์œผ๋กœ ์žˆ๋Š” absolute; ์†์„ฑ elements ๋“ค์„ ๊ฐ€๋‘”๋‹ค.
    3. margin-left : auto; margin-right : auto; ๋กœ ๊ฐ€์šด๋ฐ ์ •๋ ฌ ๊ฐ€๋Šฅ.

์ •๊ฐ€์šด๋ฐ ๋ฐฐ์น˜ํ•ด๋ณด๊ธฐ

  • top : calc(50% - 110px);
    left : calc(50% - 110px);
    โ†’ box-sizing์ด ์—†์œผ๋ฉด, ๋‚ด๊ฐ€ ์ด๋ ‡๊ฒŒ ๊ณ„์‚ฐํ•ด์ค˜์•ผ ํ•œ๋‹คโ€ฆ.
  • box-sizing : border-box; โ†’ ๋„ˆ๋น„๊ฐ€ ๊ณ ์ •!!! border ๊ฐ€ ์•ˆ์ชฝ์œผ๋กœ ๋“ค์–ด๊ฐ„๋‹ค.
    ์ฆ‰, ๊ธฐ์กด์— width, height ๊ฐ€ 200px ์ด๋ผ๋ฉด,
    width,height ๋Š” 190px์— border 10px.
    โ†’ ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด, top : calc(50% - 100px); ํ•ด์ฃผ๋ฉด ๋จ.
  • transform : translateX(-50%) translateY(-50%); โ†’ ์ด๊ฒƒ๋„ ์ •์ค‘์•™์œผ๋กœ ๊ฐ„๋‹ค.
    ๋„ˆ๋น„์˜ 50% ๋งŒํผ x์ถ•, y์ถ•์œผ๋กœ ์ด๋™ํ•œ๋‹ค๋Š” ๋œป์ด๋‹ค.

  • img โ†’ diplay : block;
    ์•„๋‹ˆ๋ฉด, line-height ์™€ vertical-align ์‚ฌ์šฉโ€ฆ
  • https://via.placeholder.com/500x200?text=Hello
    โ†’ ํŽธํ•˜๊ฒŒ ์ด๋ฏธ์ง€ ์ž„๋ฒ ๋”ฉํ•˜๊ธฐ ์ข‹์€ ์‚ฌ์ดํŠธ.

๋ฉ”๋‰ด ๊ตฌ์„ฑ ํŒจํ„ด์ด ์ค‘์š”ํ•œ ์ด์œ 

  • ๋ชจ๋ฐ”์ผ๋กœ ์ธํ„ฐ๋„ท์ด๋‚˜ ์•ฑ์„ ์ด์šฉํ•˜๋Š” ์‚ฌ๋žŒ์ด pc๋กœ ์ด์šฉํ•˜๋Š” ์‚ฌ๋žŒ๋ณด๋‹ค 5~10๋ฐฐ ๋งŽ๋‹ค.
    ์ฆ‰, ๋ชจ๋ฐ”์ผ ๊ฒจ๋ƒฅํ•ด์„œ ํ•˜๋Š”๊ฒŒ ๋งž๋‹ค. ๋ฐ˜์‘ํ˜•์œผ๋กœ. (๊ตฟ์›น๋””์ž์ธ ์ฐธ๊ณ )
  • ์ฐฝ ํฌ๊ธฐ ์ค„์ด๋ฉด, ํ–„๋ฒ„๊ฑฐ(์‚ผ๋‹จ) ๋ฉ”๋‰ด๋กœ ๋ฐ”๋€œ.
    โ†’ ๋ˆ„๋ฅด๋ฉด, ๋ฉ”๋‰ด ๊ฐ€ ์—ด๋ฆฐ๋‹ค. (์ง„์งœ 100์ด๋ฉด 100 ๊ฑฐ์˜ ๋‹ค ์ด ํŒจํ„ด)
    ๋˜ํ•œ, ์ปค์„œ ๊ฐ€์ ธ๋‹ค ๋Œ€๋ฉด ํ•˜์œ„๋กœ ํŠ€์–ด๋‚˜์˜ค๋Š”. โ†’ 95%๊ฐ€ ์ด pattern.
  • ์ด ๋ชจ๋“  ๊ฒƒ์„ 117๊ฐ•์—์„œ ์‹ค์Šต.

111๊ฐ•. ํŠœํ† ๋ฆฌ์–ผ 1~10

  • ํŠœํ† ๋ฆฌ์–ผ 10 ๋งŒ ๋‹ค์‹œ ํ’€์–ด๋ณด๊ธฐ.

1์ฐจ ๋ฉ”๋‰ด(ulํƒœ๊ทธ) - 1์ฐจ ๋ฉ”๋‰ด ์•„์ดํ…œ(3๊ฐœ)
2์ฐจ ๋ฉ”๋‰ด(ulํƒœ๊ทธ) - 2์ฐจ ๋ฉ”๋‰ด ์•„์ดํ…œ(2๊ฐœ, li ํƒœ๊ทธ) - 2์ฐจ ๋ฉ”๋‰ด ์•„์ดํ…œ ํ…์ŠคํŠธ(aํƒœ๊ทธ)
3์ฐจ ๋ฉ”๋‰ด

  • .menu-1 > ul > li > ul > li { display : none; } โ†’ ์•„์˜ˆ ์ˆจ๊ธด๋‹ค.
  • .menu-1 > ul ์€ 1์ฐจ ๋ฉ”๋‰ด๋ฅผ ์˜๋ฏธํ•œ๋‹ค.
    .menu-1 > ul ul ์€ โ€˜์„œ๋ธŒ ๋ฉ”๋‰ดโ€™๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

113๊ฐ•.

https://codepen.io/yoodongan/pen/WNMBMbp
โ†’ ๋ฉ”๋‰ด ๊ตฌ๋ถ„ ์ž˜ํ•˜๋Š”์ง€ ํ…Œ์ŠคํŠธ

profile
Strengthen the core.

0๊ฐœ์˜ ๋Œ“๊ธ€