전체 글 (594) 썸네일형 리스트형 [2024-2 SpringBoot 스터디] 탁태현 #4주차출처 스프링 컨테이너스프링은 DI에 유용한 많은 기능을 위한 컨테이너를 제공하고 있다. IOC / DI 컨테이너의 필요성이 경우에는 DiscountPolicy interface를 통해서 추상화를 진행했지만 OCP를 위한 하고 있다. OrderSerivceImpl이 DiscountPolicy와 RateDiscountPolicy를 모두 의존하고 있기 때문이다. 이것을 해결하기 위해서는 위와 같은 방식으로 의존성을 외부에서 주입해주는 DI를 해야한다. 이것을 매우 편하고 매우 중요한 특성을 지내게 해주는 것이 바로 DI/IOC 컨테이너다. IOC / DI 컨테이너IOC 컨테이너란 메모리에 떠있는 저장소라고 생각하면 이해가 쉽다.메모리에 스프링 컨테이너 라는 저장소가 떠있고 그 저장소에 RateDiscountPol.. [2024-2 Java 스터디] 이가인 #6주차 목차7-1 패키지7-2 접근 제어자7-3 스태틱 패키지비슷한 성격의 클래스들을 모아 놓은 자바의 디렉터리 (폴더와 비슷한 개념) 서브 패키지기본 패키지 안에 존재하는 하위 패키지-> 기본 패키지 내의 클래스들을 분류, 체계적으로 관리, 가독성 향상 패키지를 사용하는 이유비슷한 성격의 클래스들끼리 묶을 수 있어 클래스의 분류가 용이함클래스명이 동일한 경우도 패키지명이 다르다면 충돌 없이 사용할 수 있다.만약 배포용 프로그램을 만든다면 자바 클래스를 반드시 패키지 구조로 작성하는 것이 가장 좋다. 접근 제어자변수나 메서드의 사용 권한을 설정할 수 있다. privatedefaultprotectedpublicprivate 해당 클래스 안에서만 접근 가능default동일한 패키지 안에서만 접근 가능protect.. [2024-2 웹기초 스터디] 김재승 #4주차 Js 문제풀이1번function solution(bin1, bin2) { // 이진수를 십진수로 변환 const decimal1 = parseInt(bin1, 2); const decimal2 = parseInt(bin2, 2); // 두 값을 더하기 const sum = decimal1 + decimal2; // 결과를 다시 이진수로 변환 return sum.toString(2);}solution 함수에 문자열 매개변수 binary 1,2 각각 받음constant 로 decimal1 ,2 를 설정각각의 설정값은 문자열 bin1,2를 2(이진수)로 인지하여 10진수(숫자)로 변환 >> 이때 parseInt가 사용됨sum 변수로 두 값을 더하기마지막으로 sum에 toS.. [2024-2 SprintBoot 스터디] 조상혁 #4주차 이 글은 스프링 핵심 원리 - 기본편을 기반으로 작성되었습니다. 객체 지향 원리 적용애자일애자일(Agile)은 소프트웨어 개발을 비롯한 다양한 프로젝트 관리 방식에서 사용되는 유연하고 반복적인 접근 방식 프로젝트를 진행할 경우에 생각보다 많이 쓸 일이 있으니 잘 알아두는 편이 좋다. 내가 이해한 대로 간단히 요약하면 애자일은 "소통" 이라는 단어 하나로 말할 수 있을 것 같다.고객과 소통, 팀원과 소통, 프로젝트와의 소통을 통하여 피드백을 적극적으로 수용하고 유연하게 대처하는 것이다. 회의.. 회의... 많은 회의와 준비.. GPT가 알려주는 애자일더보기전통적인 개발 방법론인 워터폴(Waterfall) 방식이 각 단계를 순차적으로 진행하는 것과 달리, 애자일은 **짧은 주기(스프린트)**로 작업을 나누.. [2024-2 Java 스터디] 김민서 #6주차 패키지 패키지 : 비슷한 성격의 클래스들을 모아 놓은 자바의 디렉터리서브 패키지 : 기본 패키지 안에 존재하는 하위 패키지 (도트(.)를 이용하여 표시) 패키지 사용하기import house.HouseKim; //import 사용public class Sample { public static void main(String[] args) { HouseKim kim = new HouseKim(); }}import house.*; //house 패키지 내의 모든 클래스 사용public class Sample { public static void main(String[] args) { HouseKim kim = new HouseKim(); HousePark .. [2024-2 SprintBoot 스터디] 김아리 #4주차 상황 설명기획자가 정액 할인제에서 정률 할인제로 정책을 바꿈따라서 개발자는 주문 서비스 클라이언트(OrderServiceImpl)에서 DiscountPolicy를 FixDiscountPolicy에서 RateDiscountPolicy로 바꿈public class OrderServiceImpl implements OrderService { private final MemberRepository memberRepository = new MemoryMemberRepository(); // 직접 클라이언트 코드를 수정하여 사용하고자 하는 구현체와 연결 private final DiscountPolicy discountPolicy = new FixDiscountPolicy(); private .. [2024-2 Java 스터디] 강보경 #6주차 패키지- 파일이 어떤 패키지의 파일인지 알려주는 역할- 패키지 안에 클래스를 생성할 수 있음- 서브 패키지 : 패키지 안에 존재하는 패키지, 도트(.)로 표시- import해서 패키지 사용 OR * 기호를 통해 패키지 내 모든 클래스 사용- 같은 패키지 내에서는 import 없이도 사용할 수 있음- 비슷한 성격의 클래스들끼리 묶을 수 있어 용이- 패키지명이 다르면 클래스명이 동일해도 충돌 없이 사용 가능접근 제어자private- private이 붙은 변수나 메서드는 해당 클래스 안에서만 접근 가능 default- 접근 제어자를 별도로 설정하지 않았을 때 자동 설정 -> 동일한 패키지 내에서만 접근 가능package house; // 패키지가 동일하다.public class HouseKim { St.. [2024-2 Java 스터디] 김지나 #6주차 07장. 자바 날개 달기 07-01. 패키지- 패키지: 비슷한 성격의 클래스들을 모아 놓은 자바의 디렉터리 ✅ 서브 패키지란?- 서브 패키지: 기본 패키지 안에 존재하는 하위 패키지- 기본 패키지 내의 클래스들을 분류하여 체계적으로 관리, 가독성 향상package house.person; // 도트를 이용해 서브 패키지 표시(house 패키지의 서브 패키지 person)public class EungYongPark {} ✅ 패키지 사용하기import house.HouseKim; // 클래스 사용 시 import문 추가public class Sample { public static void main(String[] args) { HouseKim kim = new HouseKim(); .. [2024-2 React.js 스터디 ] 김지수 #5주차 API 연동의 기본axios를 사용해서 GET, PUT, POST, DELETE 등의 메서드로 API 요청할 수 있습니다. 간단하게 설명을 드리자면, REST API 를 사용 할 때에는 하고 싶은 작업에 따라 다른 메서드로 요청을 할 수 있는데 메서드들은 다음 의미를 가지고 있습니다.GET: 데이터 조회POST: 데이터 등록PUT: 데이터 수정DELETE: 데이터 제거axios 의 사용법은 다음과 같습니다.import axios from 'axios';axios.get('/users/1');get 이 위치한 자리에는 메서드 이름을 소문자로 넣습니다. 예를 들어서 새로운 데이터를 등록하고 싶다면 axios.post() 를 사용하면 됩니다.그리고, 파라미터에는 API 의 주소를 넣습니다.axios.post(.. [2024-2 Node.js 스터디] 김민재 #5주차 프로젝트 구조 갖추기npm initnpm i sequelize mysql2 sequelize-clinpx sequelize init템플릿을 넣을 views라우터를 넣을 routes정적파일을 넣은 public 위 코드와 파일들을 생성하며 폴더 구조를 형성한다routes/page.jsconst express = require('express');const { renderProfile, renderJoin, renderMain } = require('../controllers/page');const router = express.Router();router.use((req, res, next) => { res.locals.user = null; res.locals.followerCount = 0; .. [2024-2 Node.js 스터디] 류상우 #5주차 익스프레스로 SNS 서비스 만들기 프로젝트 구조 갖추기기능회원 정보: 아이디/나이/성별 정보를 조회할 수 있고, 작성한 글과 댓글을 볼 수 있다.게시글: 제목과 본문 그리고 작성자를 확인할 수 있다. 또한 multer를 사용해 본문에 이미지를 추가할 수 있다.댓글: 각 게시글 별로 댓글을 남긴다. 댓글 작성자를 확인할 수 있다.기술 스택프론트엔드: React백엔드: express데이터베이스: MySQLAPI 명세서기능HTTP 메서드API PathRequestResponse회원 가입POST/register회원 정보 회원 탈퇴DELETE/users/{userId}UID 회원 정보 수정PATCH/users/{userId}UID, 수정할 정보 회원 정보 조회GET/users/{userId}UID회원 정보전체 회.. [2024-2 SpringBoot 스터디] 정호용 #3주차 섹션 1~3 섹션 2. 객체 지향 설계와 스프링- 스프링이란?스프링 --> 여러 기술의 모음스프링 프레임워크 --> 스프링의 핵심스프링부트 --> 스프링을 더 쉽게스프링 데이터 --> RDB 의 CRUD는 비슷함. 이를 편리하게 쓰게 하기 위한 것. 스프링 데이터 JPA가 제일 많이 쓰임 스프링 프레임워크가 제일 중요!이 안에는 핵심 기술, 웹 기술, 데이터 접근 기술 등이 들어있음스프링부트 --> 스프링을 편리하게 사용할수 있도록 지원- Tomcat 웹 서버 내장- starter 종속성 : jpa, aop 등의 라이브러리를 쓸 때 하나만 가져오면 나머지를 가져오게 됨- 스프링과 3rd party 라이브러리 자동 구성- 관례에 의한 간결한 설정 스프링이라는 단어는 문맥에 따라 다르게 사용됨- 스프링 DI 컨테이너 기.. [2024-2 웹기초 스터디] 이민형 #3주차 변수 그리고 상수 let hi = "이민형";console.log(hi); 상수let hi = '이민형';hi = '안녕하세요';const hel10 = '안녕하세요!! ';hello = 123123;|console. log(hello); 변수의 규칙변수나 상수 이름의 첫 번째 글자는 영어, $, _ 가능소문자와 대문자 구별js 예약어는 사용 불가이름에 공백X원시 데이터 타입객체가 아니면서 메서드도 가지지 않는 데이터 숫자const number = 123;console.log(typeof number);const number = "이민형";console.log(typeof name);const isTrue = 10 참조 데이터 const arr = [1, 2, 31;console. 1og(a.. Java[2024-2 Java 스터디] 이민형 #5주차 6장 자바를 "자바라" (Java "java") 6. 자바의 입력과 출력 콘솔 입출력 자바에서 사용자가 입력한 문자열, 즉 콘솔 입력한 문자열을 얻기 위해서는 System.in을 사용한다.import java.io.IOException;import java.io.InputStream;public class Sample { public static void main(String[] args) throws IOException { InputStream in = System.in; int a; a = in.read(); System.out.println(a); }}여기서 InputStream을 사용하기 위해선 그 도구를 import해준다. .. [2024-2 SpringBoot 스터디] 윤성욱 #3주차 다형성(Polymorphism)객체 지향 프로그래밍에서 다형성은 역할과 구현을 분리하여 코드의 유연성과 확장성을 높이는 강력한 도구이다. 다형성은 단순히 기술적 개념이 아니라, 실세계의 역할과 구현을 객체로 옮겨온 것이라 볼 수 있다. 예를 들어 운전자-자동차처럼, 역할만을 알고 있으면 다양한 구현을 선택할 수 있는 구조로, 이 구조가 바로 다형성의 핵심이라고 볼 수 있다. 운전자는 자신이 운전할 자동차의 내부 구조나 작동 방식에 대해 몰라도 되며, 운전자는 차를 운전하는 역할만 수행할 뿐이다. 여기서 자동차 역할은 운전자의 조작을 받아 차량을 움직이는 것이다.자동차 구현으로는 K3, 아반떼, 테슬라 모델3와 같이 다양하게 존재할 수 있다. 운전자가 ‘자동차’라는 역할만 알고 있다면, 어떤 자동차를 몰더.. [2024-2 웹기초 스터디] 김민재 #3주차 Part 1.변수와 상수js는 변수를 선언할 때 앞에 let을 붙인다또한 =를 통해 대입 가능let hi = 'hi'hi = 'bye'console.log(hi)const를 사용해 상수 선언, 나중에 값을 변경 불가const hello = "안녕하세요"var라는 변수는 중복을 허용하기 때문에 쓰면 안됨원시 데이터 타입원시 데이터: 객체가 아니면서 메서드도 가지지 않는 데이터string, number, bigint, boolean, undefined, null, (symbol)//stringconst nam = "kk"console.log(typeof nam)//numberconst number = 123;console.log(typeof number)//bigintconst num = 123n;conso.. [2024-2 웹기초 스터디] 김재승 #3주차 JavaScript에 대한 기초적인 내용을 정리해보자.1. JavaScript 변수JavaScript에서 변수를 선언할 때는 var, let, const 키워드를 사용한다.var: 전역 또는 함수 스코프를 가지며, 중복 선언이 가능하다.let: 중복 선언은 할 수 없지만 재할당이 가능하며 블록 스코프를 따른다.const: 변하지 않는 변수를 선언할 때 사용하며 한 번 값을 할당하면 재할당이 불가능하다.var x = 10;let y = 20;const z = 30;console.log(x, y, z); // 10 20 302. 데이터 타입JavaScript의 데이터 타입에는 기본형(primitive)과 참조형(reference)이 있다.기본형: Number, String, Boolean, Null, Und.. [2024-2 웹기초 스터디] 김지수 #3주차 변수와 상수변수 상수변수 이름 규칙변수나 상수 이름의 첫 번째 글자는 영어, $, _ 만 가능(숫자로 시작하는 변수명은 허용되지 않음)첫 글자 이외에는 숫자도 사용 가능영어 소문자와 대문자는 구별됨let, const와 같은 자바스크립트 예약어는 사용 불가이름에 공백은 허용되지 않음원시 데이터 타입객체가 아니면서 메서드도 가지지 않는 데이터string, number, bight, boolean, undefined, null, symbol 숫자 (number) 문자열 (String) Boolean 참조 데이터 배열 (Array) 객체 (Object) 연산자산술 연산자console.log(10 / 5);console.log(10 % 5); 증감 연산자let number = 10;number++;console.. [2024-2 Java 스터디] 김지수 #5주차 콘솔 입출력콘솔이란? 콘솔(console) 은 환경에 따라 변경될 수 있다. 인텔리제이에서 실행했다면 인텔리제이의 콘솔 창이 콘솔이 될 것이고 윈도우 명령 창에서 프로그램을 실행했다면 명령 창이 콘솔이 된다. 즉, 콘솔은 사용자의 입력을 받거나 사용자에게 문자열을 출력해 주는 역할을 하는 것을 통칭하는 말이다.인텔리제이 콘솔 창 콘솔 입력생년월일을 입력하라는 질문2002/01/01 자바에서 사용자가 입력한 문자열을 얻기 위해서는 다음과 같이 System.in을 사용한다.import java.io.IOException;import java.io.InputStream;public class Sample { public static void main(String[] args) throws IOExcept.. [2024-2 Java 스터디] 김태일 #5주차 "자바의 입출력" 06. 자바의 입출력06-1 콘솔 입출력- 콘솔 출력 : 사용자에게 문자열을 보여 주는 것- 콘솔 입력 : 출력된 질문에 사용자가 답변을 입력하는 것 1. 콘솔 입력- System.in 을 사용import java.io.IOException;import java.io.InputStream; //InputStream 임포트public class Sample { public static void main(String[] args) throws IOException { InputStream in = System.in; int a; a = in.read(); //read 메서드를 통해 int 자료형으로 저장 System.out.prin.. [2024-2 Java 스터디] 강보경 #5주차 콘솔 입출력콘솔 입력: 출력된 질문에 사용자가 답변을 입력하는 것System.in 을 사용한다!import java.io.IOException;import java.io.InputStream;public class Sample { public static void main(String[] args) throws IOException { InputStream in = System.in; int a; a = in.read(); System.out.println(a); }} - InputStream 자바의 내장 클래스으로 import해서 사용InputStream의 read 메서드는 1byte만 읽는다(int 자료형으로 저장, 아스키코드값). 그래서 .. [2024-2 Java 스터디] 김지나 #5주차 "6장" 06장. 자바의 입출력 06-01. 콘솔 입출력- 콘솔 출력: 자바 프로그램 실행 후 출력, 사용자에게 문자열을 보여 주는 것- 콘솔 입력: 출력된 질문에 사용자가 답변을 입력하는 것- 콘솔: 사용자의 입력을 받거나 사용자에게 문자열을 출력해 주는 역할 통칭 ✅ 콘솔 입력- System.in 사용import java.io.IOException;import java.io.InputStream;public class Sample { public static void main(String[] args) throws IOException { InputStream in = System.in; // InputStream의 객체 System.in int a; a = in... [2024-2 React.js 스터디] 이서영 #4주차 실습투두리스트 만들기 1. 컴포넌트 만들기컴포넌트의 UI를 미리 만들어봅시다아 프로젝트 생성$ npx create-react-app mashup-todolist react-icons , styled-components 설치$ cd mashup-todolist$ yarn add react-icons styled-components 만들어야 할 컴포넌트TodoTemplate → 투두리스트의 레이아웃 설정, 페이지 중앙의 흰색박스 (그림자를 곁들인..)TodoHead → 날짜 요일 해야 할 일 개수TodoList → 할 일 정보TodoItem → 정보 렌더링, 완료 여부, 항목 삭제TodoCreate → 할 일 등록회색 배경색상 적용 (#e9ecef)페이지의 배경 색상 설정→ body태그에 CSS 적용inde.. [2024-2 SpringBoot 스터디] 조상혁 #3주차 이 글은 스프링 핵심 원리 - 기본편을 기반으로 작성되었습니다. 이번 강의의 목적스프링 기본 기능 학습스프링 본질의 이해객체 지향 설계를 고민하는 개발자로 성장위 목적을 되새기면서 강의를 들을 수 있도록 해야겠다. 객체 지향 설계와 스프링 작은 이야기..스프링이 없던 시절 자바 개발은 EBJ 라는 툴이 가장 많이 사용 되었다.다만 단점이 좀 있었는데 사용하기 어렵고 의존적이며 또한 비싸다는 것이다.이 단점이 별거 아닌것 같지만 당시 개발자들은 EBJ를 버리고 순수 자바 개발로 돌아가자고 할 정도로 여론이 좋지 않았다. 이 자바의 추운 겨울에 한줄기 빛 스프링과 하이버네이트가 오픈소스로 등장하고스프링은 지금의 사실상 표준기술이 되었다.또한 하이버네이트는 JPA 를 이루는 근간으로 새롭게 재탄생 하였다.이렇.. [2024-2 Java 스터디] 김민서 #5주차 콘솔 입출력 콘솔 : 사용자의 입력을 받거나 사용자에게 문자열을 출력해 주는 역할을 하는 것을 통칭하는 말 콘솔 출력 : 사용자에게 문자열을 보여 주는 것 (System.out을 사용)* PrintStream : 콘솔에 값을 출력할 때 사용되는 클래스* System.err : System.out과 동일한 역할, 오류 메시지를 출력할 때 사용 콘솔 입력 : 출력된 질문에 사용자가 답변을 입력하는 것 (System.in을 사용)* InputStream : 자바의 내장 클래스 (필요할 때마다 임포트해서 사용하기), read 메서드는 1byte 크기의 사용자의 입력을 받아들이며 int자료형으로 저장된다.* 입력 스트림 : 사용자가 전달한 1byte의 데이터 또는 3byte의 데이터 * InputStreamRea.. 이전 1 2 3 4 ··· 24 다음