분류 전체보기 34

💡싱글톤이 뭔데?

❓ 싱글톤이 대체 뭘까? 오직 하나의 객체만 생성하고, 그 객체를 모든 곳에서 공유하여 사용하는 디자인 패턴 쉽게 말하면? 하나의 클래스에서 만들어진 객체는 프로그램 전체에서 공유해서 사용할 수 있음 이 패턴을 사용하면, 여러 개의 객체를 생성하지 않고 하나의 객체를 공유해서 사용함으로써 자원 낭비를 줄이고, 객체 간의 일관성을 유지할 수 있음. 예를 들어, 데이터베이스 연결 객체나 로그 기록 객체 등은 여러 곳에서 동시에 접근하면 문제가 발생할 수 있기 때문에, 이런 경우 싱글톤을 사용! 예를 들면, 스마트폰을 사용하는데 스마트폰이라는 객체는 딱 하나만 있어야 함 왜냐? 스마트폰 객체를 만들어서 사용할 때마다 새로 만들게 되면 메모리 낭비가 심하기 때문! 이때 싱글톤 패턴을 사용하면 스마트폰 객체를 단..

개발공간/Java 2023.04.06

💡오버라이딩(Overriding)과 오버로딩(Overloading)

🔎 오버로딩이 뭔데? 같은 이름의 메소드를 여러 개 정의하는 것 이 때 매개변수의 개수나 타입이 다르면 구분해서 사용할 수 있음 예를 들어, 사람의 이름을 출력하는 메소드를 정의할 때, 이름만 받는 메소드와 이름과 나이를 함께 받는 메소드를 모두 정의할 수 있음 public class Example { public void printName(String name) { System.out.println("이름: " + name); } public void printName(String name, int age) { System.out.println("이름: " + name + ", 나이: " + age); } } 🔎 오버라이딩이 뭔데? 오버라이딩은 상속 관계에서 부모 클래스의 메소드를 자식 클래스에서 재정..

개발공간/Java 2023.04.06

❓Entity & DTO & VO

✨ 오늘의 미션이 꽤나 많고 어려워 보이는건 기분 탓이겠쥬~? 비오는 날 창문 밖 빗소리 들으며 공부하는게 얼마나 좋은 일인데요 ☔ 🧩 Entity(엔티티) - 소프트웨어에서 실제로 사용되는 데이터를 나타내는 개념 - 학생의 이름, 나이, 성별, 학년, 학 등이 Entity의 속성이 될 수 있음 🧩 DTO(데이터 전송 객체) - 데이터를 전송하기 위해 사용되는 개념 - 예를 들면, 클라이언트와 서버 사이에서 데이터를 주고 받을 때 사용되는 데이터 모델이 DTO가 될 수 있음 - DTO는 주로 특정한 목적에 따라 필요한 데이터만을 담고 있음 🧩 VO(값 객체) - 값을 갖는 객체로, 불변하게 설계되어 있는 개념 - VO는 주로 데이터의 일부분이나 조합된 값들을 표현하기 위해 사용됨 - 즉, 학생의 주소나 ..

개발공간/HW 2023.04.05

❓DDD 설계와 SQL 중심 설계

✨ 두둥! 오늘은 DDD 설계와 SQL 중심 설계에 대해 알아보는 시간 사실 잘 모르는 부분이라 낯설긴 했지만 새로운 내용을 배우는건 언제나 짜릿ㅎㅐ~~ ❤️ 그럼 대체 DDD 설계와 SQL 중심 설계가 뭔지 알아보러 가봅시다! 🔎 도메인 주도 설계(Domain-Driven Design) - 소프트웨어를 개발할 때, 소프트웨어가 다루는 '도메인'이라는 개념을 중심으로 설계하는 방법 - 도메인은 소프트웨어가 다루는 특정한 분야나 문제 영역을 의미 - DDD는 해당 도메인에 대한 이해를 높이고, 도메인 모델을 중심으로 소프트웨어를 설계하는 접근 방법 - 즉, DDD는 놀이공원에 놀러갈 때 놀이기구의 원리를 이해하고, 그 원리를 활용해 놀이기구를 조립하는 것과 비슷하다고 볼 수 있음 🎡 🔎 SQL(Struct..

개발공간/HW 2023.04.05

❓Spring에서 DI, IoC란 무엇일까?

DI : Dependency Injection; 의존성 주입 IoC : Inversion of Control; 제어의 역전 이런 사전적인 정의 말고 간단하게 이해해 볼 수 있게 정리해 보기! 🔎 이 미션을 받고 든 생각은 딱 하나! 사실 스프링은 이미 학습했지만, DI, IoC와 같은 용어는 정확히 어떤 뜻인지, 왜 사용하는지 모른 채로 그냥 대충 사용해왔던 것 같아 안타까웠다 😫 앞으로는 이 개념이 어떤 건지, 왜 사용하는지 내 것으로 만드는 학습법을 활용해야지! ⚠️DI 우선 DI, 의존성 주입이라고 불리기도 하고 객체를 생성하고 조립하는 작업을 개발자가 하지 않고 Spring이 대신 처리한다. 그렇게 된다면? 객체 간의 의존성은 줄어들고 유연하게 확장이 가능하다는 뜻?! ⚠️IoC IoC는 객체의 ..

개발공간/HW 2023.04.04

[JAVA] 🚌 버스 도착 정보 출력하기

package chap_01; /* 실행 결과 구로03번 버스 약 3분 후 도착 남은 거리 1.5km */ public class _Quiz_01 { public static void main(String[] args) { // 버스 번호(1234, 구로03번) String busNo ="구로03"; // 남은 시간(3분, 5분) int minute = 3; // 남은 거리(1.5km, 0.9km) double distance = 1.2; // 결과 출력 System.out.println(busNo + "번 버스"); System.out.println("약 "+ minute + "분 후 도착"); System.out.println("남은 거리 " + distance + "km"); } }

개발공간/Java 2023.04.03

🔎 지그재그(ZigZag)가 가진 기능 분석하기

✨ 내가 자주 사용하는 웹사이트는 뭐가 있을까 고민하던 중, 쇼핑, 스포츠, 웹서핑, 강의라는 키워드를 떠올리게 되었다. 그래서 고르게 된 웹 사이트는 지그재그! 사실 지그재그는 어플로만 이용해왔었는데, 웹사이트가 존재한다는 사실을 알게 되어 매우 놀랐다. https://store.zigzag.kr/?utm_source=bs_naver_pc&utm_medium=homelink&utm_campaign=mar_w4_2023&NaPm=ct%3Dlg04qkwg%7Cci%3D0yK0001g9wDyazxPAvjy%7Ctr%3Dbrnd%7Chk%3D60a7988df0415eac723bb6c3ca25141c297b83cf 지그재그 스토어 4,000만이 선택한 쇼핑 플랫폼 store.zigzag.kr 🔎 그렇다면 지그재..

개발공간/HW 2023.04.03

배달의민족 CEO에게 뽑고 싶은 개발자를 물어보았다

https://www.youtube.com/watch?v=3H4umWD5bwI 조직 전체가 일을 잘할 수 있는 방법론 -> 같이 성장 개인이 성장한 것만큼 그게 고스란히 조직의 성과로 나타나는 것 오류가 없는 판단은 있을 수 없다. 사람과 사람 간의 신뢰성 -> 전체 조직의 생산성에 가장 중요한 부분 본인 스스로를 코딩하는 사람으로만 정의 내리지 말 것 -> 주어진 비지니스 문제를 해결하는 사람 코딩 자체, 코드를 만 줄을 짰다는 것 자체가 중요한 것이 아님 어떤 로직으로 풀어내야하는 것이 중요! 커뮤니케이션의 중요성, 풀고자하는 문제가 정확히 무엇인지 파악할 것 만드는 사람이 수고로우면 쓰는 사람이 편하고 만드는 사람이 편하면 쓰는 사람이 수고롭다

개발공간/WIL 2023.03.31