«architecture» 태그된 질문

소프트웨어 시스템의 고급 설계 및 설명 건축 설계는 구현, 알고리즘 및 데이터 표현의 세부 사항을 제거하여 "블랙 박스"구성 요소의 상호 작용에 집중합니다.

7
클라이언트 응용 프로그램에서 사용자 인증을 설계하는 방법은 무엇입니까?
많은 사용자를 지원하는 응용 프로그램을 개발하고 있습니다. 문제는 클라이언트 / 사용자를 인증하는 방법을 알 수 없다는 것입니다. http://quickblox.com/ 과 같은 응용 프로그램 을 만들고 있는데 사용자에게 자격 증명을 제공하고 인증을 위해 사용자 이름과 암호를 넣을 수없는 N 응용 프로그램 을 빌드하는 데 사용 합니다. 다음과 같이 진행한다고 가정 해 봅시다. …

6
객체 지향 사례 확산 방법에 대한 팁
닫은. 이 질문은 주제에 맞지 않습니다 . 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? Software Engineering Stack Exchange에 대한 주제가 되도록 질문을 업데이트하십시오 . 휴일 3 년 전 . 저는 약 250 명의 개발자가있는 중소 기업에서 일합니다. 불행히도, 많은 사람들이 절차 적 사고 방식에 빠져 있으며 일부 팀 은 실제로 …

4
자체 참조 메소드 체인에 대한 실제 단점이 있습니까?
최근에 특정 프로젝트의 특정 클래스에 대해 체인 방법을 구현하여 코드의 가독성을 향상시킬 수 있다고 제안했습니다. 나는 "편의를 위해서가 아니라 의미론을 위해 유창한 인터페이스를 구현해야한다"라는 대답을 얻었고 제 제안은 거절되었습니다. 나는 유창한 인터페이스를 제안하는 것이 아니라 가독성과 코딩 편의성을 향상시키기 위해 메서드 체인 자체 ( 서로 혼란 스러울 수 있음) 에 …

3
Poor Man 's Dependency Injection은 레거시 응용 프로그램에 테스트 기능을 도입하는 좋은 방법입니까?
작년에 Dependency Injection과 IOC 컨테이너를 사용하여 새로운 시스템을 만들었습니다. 이것은 나에게 DI에 대해 많은 것을 가르쳤다! 그러나 개념과 적절한 패턴을 학습 한 후에도 코드를 분리하고 IOC 컨테이너를 레거시 응용 프로그램에 도입하는 것은 어려운 일이라고 생각합니다. 응용 프로그램은 실제 구현이 압도적 일 정도로 충분히 큽니다. 가치를 이해하고 시간이 주어진 경우에도 마찬가지입니다. …

4
도메인에서 리포지토리에 액세스
작업 기록 시스템이 있다고 가정하면, 작업이 기록 될 때 사용자는 범주를 지정하고 기본적으로 작업 상태는 'Outstanding'입니다. 이 경우 카테고리 및 상태가 엔티티로 구현되어야한다고 가정하십시오. 일반적으로 나는 이것을 할 것입니다 : 응용 프로그램 계층 : public class TaskService { //... public void Add(Guid categoryId, string description) { var category = _categoryRepository.GetById(categoryId); …

9
설계자 역할에 Java 인증이 중요합니까? [닫은]
닫은. 이 질문은 주제에 맞지 않습니다 . 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? Software Engineering Stack Exchange에 대한 주제가 되도록 질문을 업데이트하십시오 . 휴일 오년 전에 . 건축가 직책에 얼마나 많은 Java 인증 (SCJP, SCWCD 및 기타)이 중요한지 알고 싶습니다. Java 개발에 대한 좋은 경험을 갖고 건축가 수준에서 경력을 …

3
MVVM 및 서비스 패턴
MVVM 패턴을 사용하여 WPF 응용 프로그램을 작성 중입니다. 현재 뷰 모델은 서비스 계층을 호출하여 모델을 검색하고 (뷰 모델과 관련이없는 방법) 모델을 뷰 모델로 변환합니다. 생성자 주입을 사용하여 필요한 서비스를 viewmodel에 전달하고 있습니다. 쉽게 테스트 할 수 있고 의존성이 거의없는 뷰 모델에서 잘 작동하지만 복잡한 모델에 대해 viewModels를 만들려고하면 많은 서비스가 …

5
다면 프로젝트에서 버전 관리를 어떻게 처리합니까?
나는 그것이 광범위한 질문이라는 것을 알고 있으므로 가능한 한 구체적으로 노력할 것입니다. 이 질문은 기술적 인 질문보다 "조직적인"질문입니다. 우리는 다음과 같은 주요 구성 요소로 된다면 프로젝트를 가지고 있습니다. 핵심 비즈니스 로직 (데이터 모델)을 호스팅하는 서버 핵심 비즈니스 로직을 사용하는 고객을위한 백 오피스 핵심 비즈니스 로직도 사용하는 애플리케이션 API (REST) 응용 …

7
연결 제한 제약 된 데이터베이스에 고주파 이벤트 저장
서버에 들어오는 엄청난 양의 이벤트를 초당 약 1000 개의 이벤트로 평균 처리해야하는 상황이 있습니다 (피크는 ~ 2000 일 수 있음). 문제 우리의 시스템은 Heroku에서 호스팅되며 최대 500 개의 DB 연결을 허용하는 비교적 비싼 Heroku Postgres DB 를 사용합니다. 연결 풀링을 사용하여 서버에서 DB로 연결합니다. DB 연결 풀이 처리 할 수있는 …

1
MVP와 클린 아키텍처의 차이점
이 질문은 내 생각을 추가하기위한 자명 한 내용입니다. 제가 읽은 한 Clean arch의 프리젠 테이션 레이어는 MVP의 MV에서와 같은 책임을집니다. 어떻게 다른 패턴 대신에 하나의 패턴을 선택하기로 결정 했습니까?
13 architecture  mvp 

3
특정 조건에서 프로그래머의 관심을 끄는 방법은 무엇입니까?
예를 들어 보자. exportDB 스키마에 크게 의존 하는 메서드가 있다고 가정 해 봅시다 . “무겁다”는 말은 특정 테이블에 새 열을 추가하는 경우가 많고 (매우 자주) 해당 export메소드가 변경됨 을 나타냅니다 (보통 내보내기 데이터에도 새 필드를 추가해야 함). 프로그래머는 종종이 export방법 을 변경 해야한다는 것을 확실하지 않기 때문에 방법 을 변경 …

2
Command 자체에서 메소드를 처리하는 대신 클래스 CommandHandler를 Handle ()로 분리하는 이유
다음 과 같이 S # arp 아키텍처를 사용하여 CQRS 패턴의 일부를 구현 했습니다. public class MyCommand { public CustomerId { get; set; } // some other fields } public class MyCommandHandler<MyCommand> : ICommandHandler<MyCommand, CommandResult> { Handle(MyCommand command) { // some code for saving Customer entity return CommandResult.Success; } } 왜 …

2
임시 사고 방식을 다루는 방법?
두 달 전에 6 명의 개발자 팀에 합류했습니다. 사람들은 좋고 모든 것이 좋습니다. 그러나 점점 더 많은 사고 방식을 관찰하고 있습니다. 미래의 유용성을 희생시키면서 물건은 빨리 고쳐지고, 테스트는 거의없고, 두 사람은 행복하게 인정합니다. 이것을 다루는 방법? 나는 예제로 이끌고 싶지만 시간은 제한되어 있습니다. 나는 물건을 설계 하고 실제로 구현하는 것을 …

2
Memcached 사용 : 데이터베이스를 업데이트 할 때 캐시를 업데이트하는 것이 좋습니다?
이 질문은 아키텍처의 모범 사례에 관한 것입니다. 우리의 현재 아키텍처 사용자 정보를 위해 MySQL에 액세스하는 PHP 클래스가 있습니다. 그것을 호출하자 User. User여러 번 액세스되므로 부하를 줄이기 위해 캐싱 계층을 구현했습니다. 첫 번째 계층은 "요청 당"캐시라고합니다. MySQL에서 데이터를 검색 한 후의 개인 속성에 데이터를 저장합니다 User. 이후의 데이터 요청은 MySQL에서 데이터를 …

4
다중 테넌트 시스템에서 확장 성을 어떻게 관리합니까?
나는 지금 몇 가지 큰 웹 기반 멀티 테넌트 제품을 가지고 있으며, 곧 테넌트별로 많은 사용자 정의가 있음을 알 수 있습니다. 여기 또는 거기에 추가 필드, 워크 플로 중간에 추가 페이지 또는 추가 논리가있을 수 있습니다. 이러한 사용자 정의 중 일부는 핵심 제품에 적용 할 수 있으며 훌륭합니다. 그들 중 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.