마토의 세상

MATO WORLD

Daily 일상 기록/인강 기록 12

스파르타코딩클럽 2022 덕담 공유 코딩 후기

Intro 인트로 2022년 검은 호랑이의 해를 맞이해서 덕담 공유 코딩 인강을 수강해보았습니다 ~ F12를 통해 개발자모드로 크롬창을 보게 되면 페이지의 구조를 확인 및 변경할 수 있고, 브라우저란, 서버에 HTML파일(HTML, CSS, JS)를 요청하고, 그 HTML파일을 받아서 보여주는 것이다. 그렇기 때문에 한 번 받아온 HTML파일을 내가 수정한다고 해서, 다른 사람에게 반영이 되지 않는 것이다. 또한, 새로고침의 경우, 새로 데이터를 받아오는 것이기 때문에 새로운 데이터로 변경되는 것이다. HTML, CSS, JS 란 HTML : 뼈대 CSS : 꾸미기 JS : 움직이기 프론트엔드 맛보기 강의 프론트엔드 = 바꿔가면서 코딩하는 것! HTML VSCODE = open in browser 플러그..

[인프런Inflean]실전! 스프링 부트와 JPA활용1 - 웹애플리케이션 개발 : 프로젝트 환경설정

- 사용환경 : IntelliJ, MacOS 1. 인텔리제이 새 프로젝트 생성 1) Spring Initializr로 프로젝트 생성 Type은 Gradle, Language는 Java Project MetaData에서 Group, Artifact 설정 - Spring Boot 스프링부트 : 안정화된 버전을 쓰는 것을 추천 의존성 주입은 다음과 같습니다 ! 웹 애플리케이션 개발이기 때문에 Spring Web Starter가 꼭 필요하다. -> Spring Web JSP or Thymeleaf 중 하나를 사용하는데, 최근에 모던 서버사이드 자바 템플릿엔진인 Thymeleaf를 많이 쓴다. -> Thymeleaf JPA를 사용하기 위해 -> Spring Data JPA Database는 H2로 선택, 왜냐하면..

[인프런Inflean]실전! 스프링 부트와 JPA활용1 - 웹애플리케이션 개발 : 강좌 선택 이유

강좌소개 스프링 부트 : 복잡하고 어려운 스프링 기술을 간결하고 쉽게 사용할 수 있도록 도와주는 기술 JPA : 강력한 자바 ORM 표준 기술 => 스프링 부트 + JPA = 높은 개발 생산성을 유지하면서 빠르게 웹애플리케이션 개발 가능 강의목표 실무에서 웹 애플리케이션을 제대로 개발할 수 있도록 실무에 가까운 복잡한 예제를 경험해본다. 문제 해결 연습을 이끌어주는 강의이며, 하나의 예제를 코딩으로 쭉 완성하는 방식이다. 1편 구성 - 프로젝트 환경설정 - 요구사항 분석 - 도메인과 테이블 설계 - 아키텍처 구성 - 핵심 비즈니스 로직 개발(회원, 상품, 주문) - 테스트 - 웹 계층 개발 강좌를 선택하게 된 이유 Spring Boot를 주 기술로 활용하면서 효율적인 웹애플리케이션 개발을 배우고 싶어서..

컴퓨터 개론 04. 소프트웨어 이해하기

컴파일러와 인터프리터 01. 다양한 어플리케이션 프로그램의 종류 1. 애플리케이션의 종류 : 실제 사용자, 즉 소비자가 직접 사용하는 프로그램 - 보통 앱이나 어플이라고 부름. - 스마트폰에만 있는 것이 아니라 프로그램들도 모두 애플리케이션에 포함됨. - 가장 마지막 단계의 실 사용자를 엔드유저(End User)라고 하기도 함. 예 ) 컴퓨터에서 실행하는 애플리케이션 = 프로그램 * Tip : 시대에 따라서 사용되는 애플리케이션은 계속 변화한다. 예 ) 휴대폰에서 실행하는 애플리케이션 = 앱(어플) 예 ) 휴대폰이나 컴퓨터 둘 다에 있는 애플리케이션 : 게임, 영상, 브라우저, 메신저 등 예 ) 실생활 속 애플리케이션 = 에어컨, 선풍기, TV, 블루투스 스피커, 세탁기 등 (리모컨이나 버튼으로 동작) ..

컴퓨터 개론 03. 프로그래머의 세계 이해하기 (3)

트렌드를 읽는 능력 01. 프로그래밍은 선택의 연속 보통 같은 용도의 프레임워크, 라이브러리가 존재하는데 배우는 데 걸리는 시간을 고려하여 하나를 선택한다. 이후 변경하기 어렵기 때문에 신중히 선택할 필요가 있다. 프로그래밍 언어 자체에 대한 선택은 더더욱 돌이키기 어렵다. 어떤 디자인 패턴, 스타일 가이드를 사용할 지 선택하기도 한다. * Tip : 유행은 쉽게 변하기도 한다. 주의할 것 !! 02. 트렌드를 읽는 방법 1 - 활발한 기술 프로그래밍에서 트렌드를 판단하는 기준 1 : 얼마나 활발한지 ( 많은 사용자가 있는지 ) 선순환 구조 파악 ! 좋은 언어/프레임워크/기술 -> 사람들이 많이 사용 -> 커뮤니티 혹은 좋은 자료 및 문서 많이 생성 -> 더 많은 사람이 기술 사용 활발한 기술은 stac..

컴퓨터 개론 03. 프로그래머의 세계 이해하기 (2)

프로그래밍의 다양한 분야 05. 테스트 프로세스 - 버그 : 프로그램에서 잘못 실행되는 동작, 의도하지 않은 에러 -> 버그를 방지하기 위해 테스트 필요 기본적인 테스트는 개발자가 직접 개발하면서 함께 진행함. 테스트는 대부분 똑같은 작업을 반복하는 것이기 때문에 자동화 테스트 도구를 활용하거나 테스트 코드를 개발하여 직접 자동화하기도 한다. 하지만 개발 단계에서 발견하지 못하거나 특정 상황에서만 발생하는 문제가 있기 때문에 추가 테스트를 하거나 테스트 부서가 따로 있기도 하다. * Tip : 신뢰성이 중요한 제품일 경우 추가 테스트를 여러 차례 거치기도 한다. 테스트 과정에서 버그를 발견하면 담당 개발자에게 알려 고쳐야 한다. - 버그를 처리할 때 고려해야 할 점 1. 얼마나 시급한지 2. 담당자가 누..

컴퓨터 개론 03. 프로그래머의 세계 이해하기

프로그래밍의 다양한 분야 01. 컴퓨터 사이언스의 기본기 프로그래밍의 여러 영역은 서로 꽤 밀접하게 연결되어 있다. 비슷한 접근방식과 문제해결방식을 공유하고 있기 때문에 하나의 언어를 마스터한 사람은 다른 언어나 새로운 기술에도 빠르게 적응할 수 있다. 따라서 기본기가 제일 중요하다. - 컴퓨터 사이언스의 기본 1. 객체 지향 프로그래밍 2. 알고리즘 3. 자료구조 * Tip : 이 세 과목은 필수 ! - 추가적으로 알아야 할 기본 과목들 1. 컴퓨터 구조 2. 운영체제 3. 컴파일러 4. 웹개발 5. 데이터베이스 6. 네트워크 * Tip : 이 과목들도 기본적인 이해를 갖출 것 ! 깊이 있는 공부는 필요에 따라 선택적으로 하면 된다. 02. 소프트웨어 공학 개발자가 프로그램을 만들 때 하는 일 = 협업..

컴퓨터 개론 02. 프로그래밍 언어 이해하기 (3)

프로그래밍 언어 제대로 사용하기 03. 스타일 가이드 활용하기 가독성 높은 코드 1. 상황에 맞는 적절한 코멘트 작성하기 -> Comment 코멘트 : 사람에게만 전하는 메시지 2. 변수명 잘 짓기 -> 전체적인 코드의 흐름 안에서 충분히 구체적이고 간결한 이름 => 사람마다 주관적이다. 따라서 일정한 규칙이 있어야 더 깔끔하게 작성할 수 있다. 예 ) 코멘트 : 코드 옆 or 코드 위 예 ) 변수명 : math score(X) math_score (snake 표기법) mathScore (pascal 표기법) MathScore (camel 표기법) 이를 위해 각 언어마다 스타일 가이드가 존재한다. - 스타일 가이드 검색하는 방법 : 언어이름 + 스타일가이드 예 ) 파이썬 스타일가이드 - https://w..

컴퓨터 개론 02. 프로그래밍 언어 이해하기 (2)

프로그래밍 언어 Overview 01. 프로그래밍 언어의 스펙트럼 - 프로그래밍 언어 분류 기준 1. 객체 지향 지원 여부 2. 변수의 자료형 지정 여부 3. 컴퓨터와 인간 중 어디에 더 가까운지 (상대적 개념 - 스펙트럼-> 추상화의 정도) - 프로그래밍 언어를 추상화가 얼마나 되었는지를 기준으로 분류하는 방법 기준 : 변수의 자료형 컴퓨터에 가까운 언어 = 저수준 언어 (Low-Level Programming Language) -> 사람이 이해하기 어렵다. -> 1, "1"을 다르게 인식 (자료형을 필요로 한다) -> 추상화가 적게 되어있는 언어 사람에 가까운 언어 = 고수준 언어 (High-Level Programming Language) -> 컴퓨터가 이해하기 어렵다. -> 1, "1"을 동일하게..

컴퓨터 개론 02. 프로그래밍 언어 이해하기

프로그래밍 언어 살펴보기 : 프로그래밍 언어의 공통적인 원리 01. 프로그래밍을 배우기 힘든 이유 - 제대로 공부하기 쉽지 않은 프로그래밍 언어가 다양하여 방향성을 정하지 못하고 비전공자가 판단하기 매우 어려움. 어떤 분야에 관심이 있는지, 성향은 어떤지에 따라 언어를 다르게 선택하게 됨. 03. 프로그래밍 언어란? (+ 컴퓨터, 프로그램, 프로그래밍 언어에 대한 이해 필요) - 컴퓨터 : 일을 대신 해주는 기계 - 프로그램 : 컴퓨터가 어떤 일을 해야 할 지 알려주는 설명서 -> 컴퓨터가 할 일이 프로그래밍 언어로 적혀 있는 것 - 프로그래밍 언어 : 설명서를 쓰기 위해 사용하는 언어 05. 프로그래밍 언어의 발전 컴퓨터가 발전하면서 프로그래밍 언어도 함께 발전하였음. 예 ) 컴퓨터 -> 파스칼 계산기..