본문 바로가기

개발자 강화

(128)
[매일메일] 웹 접근성과 개선 방법 (FE.250114) (개발자 강화/프론트엔드) 2025. 1. 14. 20:13 웹 접근성이란?- 모든 사용자가 제약없이 웹 페이지에 동등하게 이용할 수 있도록 보장한다- 장애인, 고령자, 네트워크 환경이 약한 지역의 거주자 등에 무관하게 동등한 접근 보장 웹 접근성 개선 방법?1. 시맨틱 태그: HTML에서 콘텐츠의 의미와 구조를 명확히 나타내기 위해 사용   - 웹 페이지 구조와 의미를 명확하게 전달해 스크린 리더가 콘텐츠를 쉽게 이해시맨틱 태그설명시맨틱 태그 설명header문서나 섹션의 머리글nav네비게이션 링크 모음main문서 주요 콘텐츠 영역article독립적이고 완전한 콘텐츠section주제 기반으로 문서 구분asdie별도로 부가적인 정보 제공footer문서나 섹션의 바닥글figcaption이미지, 차트 등에 대한 설명(+ 비시맨틱 태그: 콘텐츠의 의미보다는 스타일링이나 ..
React 알잘딱깔쎈 (개발자 강화/CS 개념) 2025. 1. 13. 20:46 면접 공부용이라서줄글 줄줄줄입니다.... 뭐부터 봐야 할까  리액트란 무엇인가요?"React is the best"https://www.youtube.com/watch?v=pVQPfTleC_4 농담입니다React란 무엇인가개요Facebook에서 개발한 JavaScript 라이브러리로 사용자 인터페이스를 효율적으로 구축하기 위해 사용React의 핵심은 컴포넌트 기반 아키텍처를 사용해 UI를 재사용 가능한 작은 컴포넌트 단위로 나누는 것컴포넌트화로 코드의 유지보수성과 재사용성을 높일 수 있다가상DOM실제 DOM을 조작하기 전 변경 사항을 메모리 내에서 계산하고 필요한 부분만 실제 DOM에 업데이트한다브라우저 렌더링 비용을 줄일 수 있다단방향 데이터 바인딩상태관리와 데이터 흐름을 단순화 하기 위해 단방향 데이..
[매일메일] HTTP 메서드의 멱등성(BE.250113) (개발자 강화/백엔드) 2025. 1. 13. 20:08 멱등성?- 연산을 여러 번 적용해도 결과가 달라지지 않는 성질- 첫 번째 수행을 한 뒤 여러 차례 적용해도 결과를 변경시키지 않는 작업 또는 기능의 속성 멱등 함수?- 절대값 함수: 숫자의 절대값을 계산- 같은 값에 대해 여러 번 수행해도 처음과 같은 숫자로 돌아옴 HTTP 메서드의 멱등성?- 동일한 요청을 한 번 보내는 것과 여러번 보내는 것이 서로 동일한 효과를 지님- 돌아오는 값이 같을 뿐 아니라, 서버 상태(DB)에도 영향을 미치지 않음 HTTP 메서드 별 멱등성- GET: 여러 번 호출해도 같은 결과 반환, 리소스에 변화 일으키지 않음- PUT: 여러 번 호출해도 매번 같은 리소스로 업데이트 되기 때문에 결과가 달라지지 않음- DELETE: 여러 번 호출해도 삭제된 리소스에 대한 결과는 달라지지..
[백준] 1543 문자 검사 / 구현 / Python (개발자 강화/코딩 테스트) 2025. 1. 3. 23:53 https://www.acmicpc.net/problem/1543 string.find로 key(찾는 문자열)의 index를 구한 후, index 지점부터 key 길이만큼 1로 치환하고, 단어 count을 1 증가시킨다string.find로 key가 검색되지 않을 때까지 while문으로 반복한다 count를 반환한다 n = str(input())key = str(input())count=0while True: if n.find(key)==-1: break else: count+=1 idx = n.find(key) s = list(n) for i in range(idx,idx+len(key)): s[i]="1" ..
[백준] 20044 Project Teams / 구현 / 실4 (개발자 강화/코딩 테스트) 2025. 1. 3. 23:38 오랜만에 다시 푸려니 어색어색실4는 금방 풀린다 https://www.acmicpc.net/problem/20044 팀당 2명 배정이고, 각 팀의 능력 합들 중 최소값이 가능한 최대가 되도록 구하는 것! 입력받은 s를 sort한 후, 0부터 n까지 반복하면서 i번째 원소와 2*n-1번째 요소의 값을 더해준다이렇게 하면 둘씩 짝지었을 때 값이 최대한 비슷하면서도 min값을 최대화할 수 있음 각 반복마다 min 함수로 result 값을 업데이트한다 n = int(input())s = list(map(int,input().split()))s.sort()result=float('inf')for i in range(n): temp = s[i]+s[2*n-i-1] result = min(result,te..
디자인패턴 MVC MVP MVVM FLUX (개발자 강화/CS 개념) 2024. 12. 12. 15:58 면접 준비용이라서 그냥 줄줄줄 자료 보고 쓰는... 디자인 패턴이란SW 설계에서 자주 발생하는 문제를 해결하기 위해 검증된 재사용 가능한 설계 템플릿문제를 효율적으로 해결할 수 있도록 설계 원칙과 구체적인 구현 방법을 제시코드의 재사용성과 유지보수성을 높이는 데 도움을 줌싱글톤 패턴하나의 클래스에 오직 하나의 인스턴스만 생성하도록 보장MVC모델 뷰 컨트롤러모델 - 데이터 관리 - 옵저버블뷰 - 화면 그려주기 - 옵저버컨트롤러 - 뷰와 모델의 중개자 - 이벤트 리스너모델에서 변경사항이 생기면 뷰에 알려주고, 이를 기반으로 컨트롤러 작동장단점장점동시 다발적 개발 가능높은 응집도개발 용이성단점컨트롤러가 다수의 뷰를 선택할 수 있음. 하는 일 너무 많아짐.코드 일관성 유지에 노력 필요뷰와 모델 사이 의존성 높음..
프로세스, 스레드 / 동시성 제어 그리고 운영체제 레츠고 (개발자 강화/CS 개념) 2024. 12. 12. 13:06 저번학기에 배운 건데도 기억이 안나다니공부는 진짜 유산소와 같다계속 해야함면접용 CS 정리라서 운영체제 시험 준비를 하시는 분들은 안맞을 수도 있어용 프로세스와 스레드간단히 생각하면 프로세스>스레드. 프로세스 안에 스레드 있음프로세스실행 중인 프로그램의 인스턴스독립적인 메모리 공간을 가짐운영체제가 자원을 할당하는 기본 단위스레드프로세스 내에서 실행되는 작은 실행 단위같은 프로세스 내에서 다른 스레드들과 메모리 공유(코드, 데이터, 힙)공유 메모리 때문에 데이터 접근 시 동기화가 필요함스레드마다 독립적인 스택과 레지스터 가짐통신프로세스 간 통신 - IPC inter process communicaiton독립적인 메모리 공간을 사용하므로 통신 이 복잡함파일, 소켓, 파이프, 메시지 큐, 공유 메모리 등을 사..
HTTP (개발자 강화/CS 개념) 2024. 12. 12. 00:01 HTTP는 어플리케이션 계층의 대표 스택, 웹서비스 통신에 사용 됨TCP/IP 4계층 구조: 어플리케이션 - 전송 - 인터넷 - 링크 HTTP/1.0한 연결당 하나의 요청을 처리하도록 설계 됨RTT(패킷이 목적지에 도달하고 다시 출발지로 돌아오는 데 걸리는 시간)가 증가함왜? 서버에서 파일 가져올 때마다 TCP 3 way handshake 해야 됨매번 연결할 때마다 RTT가 증가하니까 서버에 부담이 가서, 이를 해결하기 위한 방법이 제시 됨이미지 스플리팅많은 이미지가 합쳐 있는 하나의 이미지를 다운받고, 이를 기반으로 background-image의 position을 이용해 이미지를 표기코드 압축: 개행 문자, 빈칸 없애서 코드 크기 최소화이미지 Base 64 인코딩: 이미지 파일을 64진법 문자열로 인..
TCP와 UDP부터 출발하는 컴퓨터 네트워크의 생활 (개발자 강화/CS 개념) 2024. 12. 11. 22:24 근본 문제다컴퓨터 네트워크를 배운지는 1년이 훌쩍 넘었지만 기억해내야 한다 TCP연결지향적: 데이터 전송 전 송신자와 수신자 간의 연결 설정신뢰성 보장: 데이터가 손실되거나 순서가 어긋나면 재전송패킷의 순서를 보장하며, 모든 데이터가 정확히 도착하도록 확인네트워크 상태를 고려해 데이터 전송 속도 조정데이터 신뢰성 보장 때문에 헤더가 크고, 추가적인 처리 과정이 있음예시: 웹 브라우징(HTTP, HTTPS), 이메일(SMTP), 파일전송(FTP)UDP연결 없이 데이터 전송데이터가 손실되거나 순서가 바뀌어도 이를 감지하거나 수정하지 않음헤더 크기가 작고, 추가적인 확인 과정 없이 전송 속도가 빠름예시: 실시간 스트리밍, 온라인 게임 TCP는 데이터를 순서대로 보장할 수 있는 이유가 뭘까?시퀀스 번호TCP는 ..
[백준] 22233 가희와 키워드 / 구현 / Python 실3 (개발자 강화/코딩 테스트) 2024. 12. 11. 21:06 "시간초과의 늪"https://www.acmicpc.net/problem/22233예전 포스팅에서도 쓴 적이 있는데파이썬에서 시간초과가 뜨면 input 대신 sys.stdin.readline을 쓰라는 교훈을 얻었던 적이 있다. 문제는 정말 간단하다 메모장에 적은 키워드를 set으로 입력받고,블로그에 글을 m개 적을 때마다콤마를 구분으로 입력을 분리해서 임시 set을 만든 후메모장 set에서 현재 글에 입력한 단어 임시 set을 빼준다그리고 현재 메모장의 길이를 출력한다 python의 set을 잘 쓰면 된다그런데 입력 받는 부분이 잘 구현되어야 하는 것 같다그것 때문에 시간초과가 너무 많이 발생해서, 결국 다른 블로그를 봤는데코드 구조는 똑같은데 입력 부분만 달랐다 import sysinput = sys...