JSX(JavaScript XML)[ JSX(JavaScript XML) 란 ]JSX(Java Script XML) 은 React 에서 사용하는 문법으로, HTML 과 유사한 구조를 JavaScript 코드 안에서 작성할 수 있도록 해준다. JSX 는 React.createElement()를 보다 직관적으로 작성할 수 있도록 변환되는 JavaScript 문법이다. [ React 컴포넌트와 JSX의 차이 ]▪️ React 컴포넌트는 JSX를 반환하는 함수이다. JSX(JavaScript XML) 은 JavaScript 코드 안에서 HTML과 유사한 문법을 사용하게 해주며 React 컴포넌트는 이러한 JSX를 반환하여 UI를 구성한다. ▪️ JSX 는 단순히 Element 를 표현하는 문법일 뿐 실제로..

TypeScript [ 타입스크립트(TypeScript)란 ] TypScript 는 정적 타입 검사자 (TypeScript: A Static Type Checker) 이다. 프로그램을 실행시키지 않으면서 코드의 오류를 검출하는 것을 정적검사 라고 한다. 자바스크립트 코드가 실행(런타임) 중 오류를 발견하는 것과 달리 타입스크립트는 코드 작성(컴파일) 중 오류를 발견해 준다. 아래 예시를 참고하자 ‼️// 자바스크립트 // : 오류안남let age = 25; // 숫자age = "스물다섯"; // 문자 // 타입스크립트// : 컴파일 오류발생 let age : number = 25; // 숫자age = "스물다섯"; // 컴파일 오류 발생(문자열 할당 불가능) [ 타입스크립트(TypeScript)는 어..

TDD(Test Driven Development) TDD(Test Driven Development) 란 테스트 주도 개발(TDD, Test Driven Development)은 소프트웨어를 개발하는 여러 방법론 중 하나이다. 제품이 오류 없이 정상 작동하는지 확인하기 위해 모든 코드는 프로그래머가 작성 하고 난 후 테스트를 거치게 된다. TDD 방법론에서는 제품의 기능 구현을 위한 코드와 별개로, 해당 기능이 정상적으로 작동하는지 검증하기 위한 테스트 코드를 우선 작성한다. 이를 통하여 테스트가 실패할 경우 테스트를 통과하기 위한 최소한의 코드로 개선한다. 최종적으로 테스트에 성공한 코드를 리팩토링하는 과정을 거치게 된다. * 정리 TDD 란 Test-Driven Development 로 개발(코드 ..

데브옵스(DevOps) 데브옵스(DevOps) 는 방법론이다. 즉 개발 조직에 따라서 다르게 적용될 수 있다. 데브옵스(DevOps) 란 데브옵스(DevOps)란 소프트웨어의 개발(Development)와 운영(Operations)의 합성어로 개발 담당자와 운영 담당자가 연계하여 협력하는 개발 방법론이다. 데브옵스는 정확한 정의가 존재하지 않는 추상적 개념에 해당하지만 소프트웨어 개발 조직과 운영조직 간의 상호 의존적 대응이며 조직이 소프트웨어 제품과 서비스를 빠른 시간에 개발 및 배포하는 것을 목적으로 한다. 데브옵스(DevOps) 수명 주기 DevOps 수명 주기는 개발(루프의 왼쪽) 및 운영(루프의 오른쪽)에 필요한 프로세스, 기능 및 도구를 나타내는 6단계로 구성 된다. 각 단계에서 팀은 공동작업..

힙(Heap) 힙(Heap) 완전 이진 트리의 일종이며 여러 값 중 최대 값과 최소 값을 빠르게 찾아내도록 만들어진 자료구조이다. 이진 탐색 트리가 중복 값을 허용하지 않는 것과 달리 힙 트리는 중복된 값을 허용한다. 힙(Heap) 종류 [최대 힙(Max heap)] 부모 노드이 키 값이 자식 노드의 키 값보다 크거나 같은 완전 이진 트리이다. [최소 힙(min heap)] 부모 노드의 키 값이 자식 노드의 키 값보다 작거나 같은 완전 이진 트리이다. 구현 힙은 배열을 사용하여 구현하게 된다. 구현을 쉽게 하기 위하여 배열의 첫 번째 인덱스인 0은 사용하지 않는다. 특정 위치의 노드 번호는 새로운 노드가 추가되어도 변하지 않는다. 부모 노드와 자식 노드의 관계 왼쪽 자식 index = (부모 index)..

리팩토링(Refactoring) 과 시큐어 코딩(Secure Coding) 리팩토링(Refactoring) 이란 외부 동작을 바꾸지 않으면서 내부 구조를 개선하는 방법이다. 이 과정은 코드를 쉽게 이해하고 유지보수를 좋게 하는 것에 초점이 맞춰져야 한다. 가깝게 볼 때 클린 코드와 리팩토링의 차이가 별로 없어 보이지만 클린코드는 단순하게 가독성을 높이기 위한 작업인 반면 리팩토링은 클린 코드를 포함하여 유지보수를 위한 코드의 개선이라고 볼 수 있다. 클린 코드와 같은 부분은 설계단계에서 잘 이루어져 있는 것이 중요하고, 리팩토링은 결과물이 나온 이후 수정이나 추가 작업이 진행될 때 개선해 나가는 단계이다. 리팩토링(Refactoring) 목적 리팩토링의 목적은 소프트웨어를 더 이해하기 쉽고 수정하기 쉽게..

클린 코드(Clean Code) 클린 코드(Clean Code) 란 읽기 쉬운 코드가 "클린 코드(Clean Code)" 이다. 클린 코드의 가장 중요한 요소는 가독성이다. 즉, 모든 팀원이 이해하기 쉽도록 작성된 코드를 의미한다. 일반적으로 기존 코드를 변경하고자 할 때, 해석하는 시간과 수정하는 비율이 10:1 이라고 한다. 예를 들면, 코드를 변경하기 위해서 걸리는 전체 시간이 10시간이라고 하면, 사전에 코드를 분석하는 시간이 9시간 이상 걸린다는 것을 의미한다. 위의 그래프처럼 변경 비용과 대응 속도에 대한 이상치와 실제 프로젝트에서 발생하는 수치가 차이나는 이유는 프로젝트 초기에 클린코드로 개발하기 보다는 좀 더 빠르고 쉬운 방법을 선택하기 때문이다. 대표적인 것이 'Copy & Paste'이..

DFS(Depth First Search, 깊이 우선 탐색) BFS(Breadth First Search, 너비 우선 탐색) DFS(Depth First Search, 깊이 우선 탐색) 란 루트 노드 혹은 다른 임의의 노드에서 다음 분기(Branch)로 넘어가 기전에 해당 분기를 완벽하게 탐색하는 방법이며 스택(Stack) 혹은 재귀함수(Recursion)로 구현된다. 코드(Python) """ 1 / | \ 2 5 9 | /\ | 3 6 8 10 / | 4 7 """ graph = { 1: [2,5,9], 2: [3], 3: [4], 4: [], 5: [6,8], 6: [7], 7: [], 8: [], 9: [10], 10: [] } def recursive_dfs(v, visited = []): vi..
- Total
- Today
- Yesterday
- https
- It
- 이차 리스트
- 이진탐색
- 리스트2
- 리스트
- CS 스터디
- 자료구조
- 파이썬
- 데이터베이스
- 리스트함축
- CS
- 연결리스트활용
- 리스트 복사
- 정렬
- 알고리즘
- 보험
- 스터디
- 자료구조와알고리즘 23강
- 프로그래머스강의
- CS.
- 자바
- 코드업 기초
- 프로세스 주소공간
- Greedy sort
- 네트워크
- 운영체제
- 완전탐색
- 프로그래머스
- SW
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |