묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
SRAM Interface Behavior(Diagram) 질문
1) Interface bahavior에서 BWEn에 대한 역할이 궁금합니다2)CSn=WEn=0 직후 해당 칩에 대해서 write가 진행될텐데, 여기서 addr 부분이 제가 이해한게 맞는 것인지 궁금합니다.제가 이해한 바로는 여러 개의 SRAM 칩이 있을테고, 그러한 SRAM 칩에는 또다시 Width*Depth로 Cell 단위의 SRAM 쭉 나열 되어 있고, 그 중 한 행만을 선택하여 write를 진행하는 것인지 궁금합니다. 예컨대, 이 그림과 같이 수 많은 칩이 존재할 때, 특정 칩을 CSn=0으로 만들고, WEn=0으로 만들어 write 가능하게 만들고, 그리고 그 칩 내부로 들어가서 CELL Array 중 첫번째 행을 선택하고 싶다면 addr=0으로 만들어주는게 맞는건가요?3) 또한 wdata에 대해 inner_mem은 왜 delay되어 나오고, rdata에 대해 inner_mem은 왜 곧바로 나오는지 궁금합니다. wdata를 din으로 보고, rdata를 dout, inner_mem를 Chip 내부 메모리로 보면, 결국 din에서 inner_mem로 들어가는 시간이나 dout에서 inner_mem으로 나가는 시간은 둘 다 delay가 있을 것으로 보이는데, 저의 해석이 잘못된건가요??
-
해결됨Next + React Query로 SNS 서비스 만들기
props 객체의 타입지정은 interface로 안하시는 이유가 궁금합니다
객체의 타입을 주로 interface로 사용한다고 하셨는데props 객체의 타입은 type으로 지정해주시는 이유가 있을까요? 없으시다면 프로젝트에서 interface나 type중에하나만 사용해도 될까요?
-
해결됨[리뉴얼] 타입스크립트 올인원 : Part1. 기본 문법편
interface를 사용할 때 private 사용방법은?
impolements러 interface를 받아 class를 만들때 private이 안되는 오류를 보여주셨는데요interface를 사용하지 않고 그냥 class안에서 type을 지정하는 방법, abstract class를 이용하는 방법 모두 이해됬습니다. 하지만 interface를 사용하면 private, protected 사용이 불가한 것인지 잘 모르겠어서 질문을 올립니다. 구글링해본결과 class내에 속성으로 만들고 getter, setter를 이용하는 것으로 우회하는 방법을 사용하더라구요.(https://stackoverflow.com/questions/37791947/how-to-define-a-private-property-when-implementing-an-interface-in-typescript) 이렇게 했을 때 private의 기능인 class 밖에서는 호출 할 수 없다고 위반되는 결과가 나옵니다. 어떤식으로 해결 해야 할까요? interface Interface { readonly a: string; b: number; } class TSClass implements Interface { private readonly _a: string = "init"; get a() { return this._a; } protected _b: number = 1; get b() { return this._b; } set b(v: number) { this._b = v; } c: string = "기본값이 public"; method() { console.log(this._a); console.log(this._b); console.log(this.c); } } class inheritClass extends TSClass { method() { console.log(this._a); // error console.log(this.a); // 가능.. console.log(this._b); console.log(this.b); console.log(this.c); } } new inheritClass()._a; // error new inheritClass().a; // 가능... new inheritClass()._b; // error new inheritClass().b; // 가능.. new inheritClass().c;
-
해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
추상클래스 (abstract class)와 인터페이스(interface)의 최적의 쓰임?
안녕하세요 나도코딩 선생님...ㅎ몇 주전에 나도코딩 자바편 강의를 완강하고 다시 2회차로 강의를 듣는 중입니다...ㅎ추상 클래스 (abstract class)와 인터페이스(interface) 관련 강의를 들으면서 각각의 특징들 및 차이점들에 대해서 다시 조금씩 알아가고 있는데... (예를 들면, 추상클래스는 abstract 키워드를 가지고, abstract메소드를 가지고 있어서 객체를 생성할 수 없는 반면, 인터페이스(interface)는 보통 -able 키워드, 변수 X, 생성자 X, 오로지 메소드만 있다 등)이 둘, 그러니까 추상 클래스 (abstract class)와 인터페이스(interface)는 '어느 때 (또는 어느 시점)'에 활용하는게 가장 적절한지 디테일하게 알 수 없을까요?항상 좋은 강의와 답변 감사합니다...ㅎ
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
인터페이스 사용 이유
[질문 내용]여기에 질문 내용을 남겨주세요."아직 데이터 저장소가 선정되지 않아서, 우선 인터페이스로 구현 클래스를 변경할 수 있도록 설계"한다고 설명해주셨는데,save findById findByName findAll이 메서드들에 대한 실제 구현 코드를 DB가 변경되면 새로 작성하면서 service단에서는 수정할 필요 없도록 인터페이스를 사용해야한다는 뜻인가요?인터페이스 없이 아래처럼 MemoryMemberRepository2를 새로 작성하고,public class MemoryMemberRepository { save( ... ){ ... } findById( ... ){ ... } findByName( ... ){ ... } findAll( ... ){ ... } } // DB가 변경되어 새로 작성한 클래스 public class MemoryMemberRepository2 { save( ... ){ ... } findById( ... ){ ... } findByName( ... ){ ... } findAll( ... ){ ... } }타입만 MemoryMemberRepository2로 바꿔주면똑같이 service단에서 별도의 수정 없이 처리할 수 있지 않나요?public class MemberService { private final MemoryMemberRepository2 memberRepository = new MemoryMemberRepository2(); memberRepository.save(...); memberRepository.findById(...); ... } 다른 질문에 답변으로 써주신 내용(느슨한 결합 등) 읽어보긴 했는데, 인터페이스의 필요성을 완전히 이해하지 못해서 질문 남깁니다!
-
미해결타입스크립트 입문 - 기초부터 실전까지
interface관련 재 질문
여기서 함수 getUser의 타입을 User로 정해줬는데mike를 매개변수로 입력하면 에러가 나는 이유는 이해했습니다. 근데 june은 왜 에러가 나지 않나요? User에 입력한 타입에서 skill이 하나 더 있는데도 말이죠.
-
미해결[리뉴얼] 타입스크립트 올인원 : Part1. 기본 문법편
interface에 readonly 속성이 있을 때
interface A { readonly a: string; b: string; } class B implements A { a: string = '123'; // OK b: string = 'world'; } const b: B = new B(); b.a = '456'; // OK console.log(b); // { a: '456', b: 'world' } 인터페이스 A에서 변수 a는 readonly 키워드가 붙어있는데 이를 구현한 클래스 B에서 readonly 키워드를 붙여주지 않아도 에러가 발생하지 않는 이유가 궁금합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemberRepository repository = new MemoryMemberRepository(); 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용] MemoryMemberRepositoryTest 클래스에서 MemberRepository repository = new MemoryMemberRepository(); 해당 부분에 질문이 있습니다. 해당 인스턴스 자료형을 MemberRepository 라는 인터페이스로 한 이유가 있는지 궁금합니다. 마지막에 afterEach() 작성할 때 MemoryMemberRepository 로 자료형을 바꾸던데 처음부터 이렇게 썼으면 됐지 않나요?