저는 지난 6 년 동안 C#에서 프로그래밍을 해왔습니다. 이제는 VB.net에 젖어 들었습니다.Visual Basic 모듈 v 싱글 톤
내가 작업중인 코드 기반은 일부 모듈을 사용합니다. 나에게 모듈은 싱글 톤처럼 보입니다. 하나만 존재합니다. 그것은 네임 스페이스 내부 어디에서나 호출 될 수 있습니다.
여기에 누락 된 것이 있습니까? VB는 싱글 톤이 구조화 된 일반적인 방법 (개인 생성자/공용 인스턴스 필드)을 지원하지 않습니까?
저는 지난 6 년 동안 C#에서 프로그래밍을 해왔습니다. 이제는 VB.net에 젖어 들었습니다.Visual Basic 모듈 v 싱글 톤
내가 작업중인 코드 기반은 일부 모듈을 사용합니다. 나에게 모듈은 싱글 톤처럼 보입니다. 하나만 존재합니다. 그것은 네임 스페이스 내부 어디에서나 호출 될 수 있습니다.
여기에 누락 된 것이 있습니까? VB는 싱글 톤이 구조화 된 일반적인 방법 (개인 생성자/공용 인스턴스 필드)을 지원하지 않습니까?
모듈은 싱글 톤이 아닙니다. C#의 정적 클래스에 훨씬 비슷합니다. 코드를 역 컴파일하면 매우 유사한 구조를가집니다 (모듈에는 추가 속성이 있음).
C#을 정적 클래스와 VB.Net 모듈이다 사이의 주요 차이점 ...
을 (그들은 일반 회원을 가질 수 있지만) C#에서
2 사이에는 미묘한 차이가 있지만 높은 수준에서는 동일합니다. – JaredPar
기본적으로 모듈을 사용하면 정적 (C#에서 필요하게 될) 내부의 모든 것을 선언하는 것과 같습니다. 그 차이점과 싱글 톤의 차이점은 싱글 톤이 상속 (파생 클래스 또는 인터페이스에서)과 다형성을 지원한다는 것입니다. 모듈의 위치는 어디입니까? 나는 그걸 전부 다 정리하려고 애 쓰고있어. –
@Joel, 일종의. 모듈에 대해 기억해야 할 중요한 점은 인스턴스가 없다는 것입니다. 내부적으로 C# 정적 클래스와 같은 정적 메서드 집합으로 컴파일됩니다. 가장 큰 차이점은 포함 모듈을 사용할 수 있으면 전역 이름 범위에 추가된다는 것입니다. – JaredPar