논리연산자 AND 연산자& : and연산자, 두가지모두만족&& : and연산자, 두가지모두만족❓&& 와 &의 차이➡️결과값은 같지만 JVM에서는 다르게 동작&&연산자 : 앞의 식이 거짓이면, 뒤에 있는 식은 실행하지 않음. 한쪽만 거짓이어도 실행할 필요가 없기때문이다.&연산자 : 앞의 식이 거짓이라도 뒤의 식이 실행OR 연산자| : or연산자, 둘 중 한가지만 만족|| : or연산자, 둘 중 한가지만 만족❓|| 와 | 의 차이➡️결과값은 같지만 JVM에서는 다르게 동작|| 연산자 : 앞의 식이 참일경우 뒤의 식은 실행되지 않는다. (어느한쪽이라도 참이 있으면 참이기때문)| 연산자 : 앞의 식이 참일경우에도 뒤의 식이 실행XOR 연산자^ : Exclusive OR 라고 부름배타적 논리합 연산자둘의 결과 값..
변수와 리터럴ex. int : 정수 타입 “키워드”int i = 1; 이 있을때➡️int : 정수타입 키워드 ➡️ i : 하나의 값을 가질 수 있는 공간➡️변수 1은 "정수 리터럴(literal) 1"을 말한다.리터럴(literal) : 변수에 입력되는 값컴퓨터는 “정수 하나”를 저장하기위해 메모리에 "4byte 크기의 저장공간"을 필요로함➡️이 메모리의 영역을 변수라고 하는 것❓키워드➡️java에서 정한 “예약어”❓예약어 (=키워드) 종류 ➡️class, public, static, while 등등변수 변수의 타입1.기본형 타입 byte = 1byteshort = 2byteint = 4byte (정수형) : 32비트의 수 표현long = 8byte (정수형) : 64비트의 수 표현➡️리터럴(값)뒤에 L..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [21]일차🚀21일차에는 디자인패턴의 Facade 퍼사드 패턴과 Stategy 전략 패턴을 실습해본 후 프론트엔드를 배울 수 있었다.프론트엔드를 개인적으로 강의 듣거나 토이프로젝트를 진행할때 리액트, Expo 등으로 많이 접해봤다고 생각했다.하지만 잘 알지 못했던 자바스크립트를 실행을 위한 Node, Node의 버전관리를 도와주는 nvm 등을 배워보니 기초적인 부분이 부족하다고 느꼈다.회고를 통해 Node, nvm, npm 등을 다시 공부해보고 디자인패턴의 퍼사드, 전략 패턴 또한 정리해야겠다고 느꼈다.🚀EJBEnterprise java Bean : 기업환경 시스템 구현을 위한 서버 측 컴포넌트 모델로 업무로직을 가진 서버 어플리케이션즉 ..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [20]일차🚀20일차에는 객체지향설계원칙 중 DIP를 배우고, 디자인 패턴을 본격적으로 학습할 수 있었다.디자인 패턴을 사용하는 이유와 디자인패턴의 종류를 실습을 통해서 익힐 수 있어서 이해에 도움이되었다.디자인 패턴 개념을 단순히 공부할때는 왜 사용해야하고 어떤 코드로 동작할까를 짐작할 수 없었는데 디자인 패턴에 대해서 더 자세히 알 수 있게 되었다.물론 어댑터 패턴과 옵저버 패턴을 좀 더 공부해야겠다는 생각도 들었다.DIP객체지향 설계원칙 중 DIP (Dependency Inversion Principle) = 의존성 역전 원칙객체에서 어떤 Class를 참조해서 사용해야하는 상황이 생긴다면 직접 참조하지 않고 대상의 상위 요소(추상 클래스..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [19]일차🚀19일차에는 객체지향원칙과 객체지향설계원칙에 대해 배울 수 있었다.객체지향원칙 핵심개념으로 정보처리기사 공부할때 외워놨던 "캡상추다"를 다시 접할 수 있었다.캡슐화, 상속, 추상화, 다형성은 회고 초반에 진행했던 실습들과 연관이 많이 되어있어서 개념의 이해가 더 쉬웠다.객체지향설계원칙으로는 SOLID 가 있는데 이또한 이전에 공부할때는 약어만 외웠었지만 실제로 어떤 일들을 하는지를 예제코드와 함께 공부해보니 왜 사용하는 것인지, 어느때 사용해야하는지를 익힐 수 있었다.객체지향원칙 OOP핵심개념캡상추다 ➡️ 캡슐화 / 상속 / 추상화 / 다형성추상화복잡한 시스템이나 객체를 “단순화 하여 핵심적인 속성이나 기능만 나타냄”구체적인 세부..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [18]일차🚀18일차에는 스레드에 대해 배우면서 단일스레드, 멀티스레드, 스레드의 다양한 메소드 등을 실습해보았다.이번 실습에서는 println() 출력문이 중요한 것 같았다. 스레드의 수행 순서 및 수행 작업들을 눈으로 확인할 수 있어야했는데 직관적으로 구분할 수 있게 도와주었다.가장 큰 깨달음은 채팅프로그램을 만들기 위해서 A사용자가 입력할 때 B사용자는 무작정 기다리고만 있으면 안된다.동시에 채팅을 입력할 수 있어야하는데 이럴때 멀티스레딩을 하는 것이었다.스레드를 통해 멀티버스와 같이 여러 개의 수행흐름을 만들 수 있다는 것또한 배울 수 있었다.Thread 스레드프로세스 내에서 실제로 작업을 수행하는 최소단위를 의미스레드는 직접구현할 필..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [17]일차🚀17일차에는 입력과 출력을 담당하는 Java IO에 대해서 배웠다. BufferedReader와 Scanner는 자주 사용해봤지만 BufferedReader사용 시 왜 예외처리를 해주어야하는지, 사용 이후에는 close()를 통해 닫아주어야하는 이유 등에 대해 생각해보지 못했다. 또 다양한 Stream객체가 있다는 것, 각자 다른 일들을 수행한다는 것 등 이번 회고를 통해 몰랐던 부분들을 정리할 수 있게되었다.Java IO자바에서 입출력 담당텍스트문서 읽기, 인터넷에서 데이터 다운로드, 네트워크를 통한 데이터 전송 등Input과 Output으로 입력과 출력을 담당하는데 이들은 “데이터가 이동할 통로”를 가짐이 통로는 “데이터의 흐..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [16]일차🚀16일차에는 내부클래스와 제네릭 부분에서 잠깐 배울 수 있었던 "컬렉션 프레임워크"에 대해서 자세히 배우게되었다.데이터를 관리하는 자료구조에 대한 내용이었는데 각 자료구조마다 다른 특성과 장단점을 가지고 있어서경우에 맞게 사용해야한다는 것을 깨달았다.컬렉션 프레임워크 Collection Framework자바에서 데이터 집합을 효율적으로 처리할 수 있도록 설계된 표준화된 방법 (Collection이라는 인터페이스를 정의함으로써 표준화된 방법을 제공받음)다양한 데이터 구조가 있는데 각각 서로 다른 데이터 관리와 접근 방식을 제공일관된 인터페이스(→ Collection)와 제네릭을 제공List 리스트 : 순서 유지 - ArrayList..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [15]일차🚀15일차에는 JDBC 사용과 JDBC 문법들, DAO (Data Access Object)와 DTO (Data Transfer Object)를 배울 수 있었다. 사담이지만 DAO와 DTO를 자세히 배우다보니 DDD도 떠오르는데 이전에 대외활동을 진행하면서 MVC패턴, TDD(테스트 주도 개발), DDD (Domain Driven Design)등에 대한 용어를 접했었다. 🥲 👀DDD는 보통 원인 해결에 초점을 맞추어 복잡한 문제 상황에서 해결하기 위한 방법론이다. (도메인, 서브도메인, 바운디드컨텍스트 를 구분하고 정의해야한다) 오늘 데이터베이스와 자바를 연결하는 과정이 신기하기도하고 새로운 개념이 많이 등장하여 회고 시간 전까..