전체 글
-
[JavaScript] 버블, 선택 정렬 정리알고리즘 2024. 3. 12. 23:00
알고리즘 정리 코딩테스트 문제를 풀어보기 전에 기본적인 알고리즘이 무엇이 있고 개념은 무엇인지 알고 넘어가야 할 것 같아서 정리를 해보려고 합니다. 알고리즘이란 ? 어떤 문제를 해결하기 위해 사용되는 풀이과정이다. 즉 , 문제해결방법. 수학문제 처럼 여러가지 풀이 과정이 있고, 이 중 가장 효율이 좋은 방법 또는 과정으로 정답에 도달 하는 과정을 알고리즘 이라고 합니다. 💡 처음 알고리즘에 대해 공부 하는 것이다 보니 틀린 부분이 있다면 알려주시면 감사합니다.😀 알고리즘의 종류 버블정렬(Bubble Sort) 인접한 두 데이터의 크기를 비교하여 정렬하는 알고리즘 입니다. 정렬 알고리즘에서 가장 기본적인 알고리즘으로 오름차순 또는 내림차순 정렬 하는데 쓰이고 있습니다. function bubbleSort(..
-
[ESLint, Prettier] Typescript 프로젝트에 적용 방법TypeScript 2023. 10. 31. 19:53
오늘은 ESLint, Prettier를 typescript에 적용한는 방법을 포스팅 할려고 합니다. 여러 블로그, 정보들을 찾아 보면서 해봤는데 자꾸 막히다가 공부를 하면서 정리 하다보니 방법을 알게되어서 포스팅하게 되었습니다. ESLint ESLint란 동적 언어인 javascript 에서는 코드 error가 자주 발생 합니다. ESLint는 Ecma Script + Lint 로써 여기서 Ecma Script는 표준 javascript를 의미합니다. Lint는 에러가 발생한 부분에 표시를 달아놓는 것을 의미합니다. 따라서 ESLint는 우리가 javascript 코드를 작성하면서 발생하는 오류들을 알려주는 도구 입니다. 그리고 코드 작성의 전반적인 스타일을 지정할 수 있습니다. ESLint를 사용하면 ..
-
PreProject 회고회고 2023. 6. 27. 14:51
프리 프로젝트 시작 전 정말 자신이 없고 팀원들에게 민폐만 끼칠까봐 두려움이 너무 컸다. 솔직히 코드를 다른 분들 처럼 잘 짜는 것도 아니고 부트캠프 과정에서도 매일 하루하루 공부하는게 벅차기도 했다. 그리고 누군가와 같이 협업으로 코드를 짜본 경험이 없어서 더욱 자신이 없었다. 프로젝트를 시작하고 처음에 팀장과 부팀장을 정했는데 BE 파트에서 팀장이 결정되어 FE 파트에서 부팀장이 결정되어야 했다. 얼떨결에 맡게 된 부팀장의 자리는 매우 부담스러웠고 처음에 어떻게 해야 할지 몰라서 정말 힘들었다. 밤마다 찾아보고 공부를 해도 막상 팀원들 앞에서는 백지상태가 되어버린다 ㅠㅠ 그래도 정말로 다행인게 팀장님이 정말 우리를 잘 이끌어주셨다. 처음 세팅을 할때 규칙을 정해주시고, slack에 github 연동 ..
-
CORS와 proxyCS 공부 2023. 6. 7. 15:48
CORS 교차 출처 리소스 공유(Cross-Origin Resource Sharing, CORS) 한 출처에서 사용하고 있는 웹 애플리케이션이 다른 출처의 자원에 접근 할 수 있도록 권한을 부여받을 수 있도록 브라우저에 알려주는 체제 여기서 출처는 웹 콘텐츠에 접근할 때 사용하는 URL의 스킴(프로토콜), 호스트(도메인), 포트 CORS가 필요한 이유 라이브 데이터는 실제 서비스 되고 있는 앱의 데이터베이스에 적재되고 있는 데이터이다. 이러한 데이터들은 민감성이 높은 데이터가 많기 때문에 보안이 중요하다. 그러나 개발자들이 프로젝트의 모둔 출처의 권한을 허락한다면 이러한 보안성이 매우 낮아지고, 해킹을 당할 위험이 높아진다. CORS 에러 해결하기 Proxy 자신을 통해서 다른 네트워크 서비스에 간접적으..
-
DevOps프론트 공부 2023. 6. 5. 16:42
전통적인 IT 조직 구조 개발팀(Dev) : 소프트웨어의 개발. 운영팀(Ops)이과 관리 및 유지보수. Dev(개발팀)Ops(운영팀) 특징 - 잦은 배포 및 업데이트 - 애플리케이션을 통해 새로운 기능(리소스) 제공 - 프로덕션 앱의 안정성 확보 - 인프라 관리 - 모니터링 및 제어 개발팀이 잦은 업데이트를 통해 제품에 변화를 만들어야 한다면, 운영팀은 이런 서비스의 구성의 변경을 최소화해 안정성을 확보하는데, 이 부분은 꽤 상충이 되는 부분이기 때문에 갈등을 야기하기도 합니다. 이런 갈등이 빚어지는 구조는 현대 IT 시장에는 맞지 않을뿐더러, 제품의 릴리스 주기를 길어지게 만들기도 합니다. DevOps(소프트웨어 개발(Development)) + IT 운영(Operations) 소프트웨어를 자주, 빨리..
-
개발 프로세스의 발전프론트 공부 2023. 6. 5. 16:33
개발 프로세스 개발 프로세스, 즉 소프트웨어 개발 프로세스 모델은 소프트웨어 개발 생명주기(SDLC, Software Develpment Life Cycle)를 기반으로 만들어졌다. 요구분석 및 시스템 명세 작성 : 문제분석 단계라고도 하며, 개발할 소프트웨어의 기능과 제약조건, 목표 등을 사용자와 함께 정확히 정의하는 단계입니다. 개발하고자 하는 소프트웨어의 성격을 정확히 이해하여 이를 토대로 개발 방법과 필요한 자원 및 예산 예측 후 요구명세를 작성합니다. 설계 : 설계단계에서는 앞서 정의한 기능을 실제로 수행하기 위한 방법을 논리적으로 결정합니다. 크게 시스템, 프로그램, UI(User Interface) 설계로 나뉘며, 시스템 구조설계는 시스템을 구성하는 내부 프로그램이나 모듈 간의 관계와 구조를..
-
자바스크립트 딥다이브 AjaxJavaScript 2023. 5. 31. 16:23
Ajax 자바스크립트를 사용하여 브라우저가 서버에게 비동기 방식으로 데이터를 요청하고, 서버가 응답한 데이터를 수신하여 웹페이지를 동적으로 갱신하는 프로그래밍 방식. 브라우저에서 제공하는 Web API인 XMLHttpRequest 객체(HTTP 비동기 통신을 위한 메서드와 프로퍼티를 제공)를 기반으로 동작. 전통적인 웹페이지 방식 이전 웹페이지와 차이가 없어서 변경할 필요가 없는 부분까지 포함된 완전한 HTML을 서버로부터 매번 다시 전송받기 때문에 불필요한 데이터 통신 발생 변경할 필요가 없는 부분까지 처음부터 다시 렌더링 -> 깜빡임 현상 클라이언트와 서버와의 통신이 동기 방식으로 동작하기 때문에 서버로부터 응답이 있을 때까지 다음 처리는 블로킹 그에 비한 Ajax의 장점 변경할 부분을 갱신하는 데 ..
-
TypeScript 기초프론트 공부 2023. 5. 30. 18:30
TypeScript(타입스크립트)란 TypeScript는 마이크로소프트에서 개발한 JavaScript의 상위 집합(Superset) 언어입니다. JavaScript에 정적타입 검사와 클래스 기반 객체 지향 프로그래밍 등의 기능을 추가하여 개발된 언어로, JavaScript가 발전하면서 생긴 단점을 보완하기 위해 등장하게 되었습니다. TypeScript의 등장 배경 JavaScript는 처음에는 브라우저에서만 동작하는 스크립팅 언어로 만들어졌었습니다. 시간이 점점 흐르고, JavaScript로 웹 애플리케이션의 상호작용이 증가하면서, 웹 애플리케이션이 필요로 하는 JavaScript 코드의 양이 폭발적으로 늘어나게 되었습니다. 이로 인해 JavaScript의 한계가 부각되기 시작했습니다. JavaScrip..