«architecture» 태그된 질문

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

11
수명이 40 년 이상인 웹 응용 프로그램 설계에 대한 조언
대본 현재 저는 의료 서비스 제공자가 사용자 생성 양식을 사용하여 알 수없는 속성으로 데이터를 캡처하는 것이 주요 건강 관리 프로젝트입니다. 두 번째 요구 사항은 데이터 무결성이 핵심이며 40 년 이상 응용 프로그램을 사용해야한다는 것입니다. 우리는 현재 지난 40 년간 고객의 데이터를 다양한 소스 (Paper, Excel, Access 등)에서 데이터베이스로 마이그레이션하고 있습니다. …

7
마이크로 서비스 시스템 아키텍처는 어떻게 네트워크 병목 현상을 피합니까?
서버 응용 프로그램의 마이크로 서비스 아키텍처에 대해 많이 읽었으며 내부 네트워크 사용이 단일체 아키텍처와 비교할 때 병목 현상이나 중대한 단점이 아닌지 궁금합니다. 정확성을 위해 두 용어에 대한 나의 해석은 다음과 같습니다. 모놀리스 아키텍처 : 모든 기능, 데이터 등을 처리하는 단일 언어로 된 하나의 응용 프로그램.로드 밸런서는 최종 사용자의 요청을 각각의 …

12
“모든 것이지도입니다”, 제가 올바르게하고 있습니까?
나는 스튜어트 시에라 (Stuart Sierra)의 " 씽킹 인 데이터 (Thinking In Data) " 연설을 보고이 게임의 아이디어 중 하나를 내가 만드는이 게임의 디자인 원칙으로 채택했다. 차이점은 그가 Clojure에서 일하고 있고 JavaScript에서 일하고 있다는 것입니다. 나는 우리 언어들 사이에 몇 가지 큰 차이점이 있음을 알았습니다 Clojure는 관용적으로 기능적인 프로그래밍입니다 대부분의 상태는 …

7
서비스 계층을 만드는 것이 얼마나 중요합니까?
3 개 계층 (DAL, BL, UI)으로 앱을 구축하기 시작했습니다. 주로 CRM, 일부 판매 보고서 및 인벤토리를 처리합니다. 동료가 서비스 계층 패턴으로 전환해야한다고 개발자가 경험을 바탕으로 서비스 패턴을 도입했으며 대부분의 애플리케이션을 설계하는 더 좋은 방법이라고 말했습니다. 그는 미래에 그런 식으로 애플리케이션을 유지하는 것이 훨씬 쉬울 것이라고 말했다. 개인적으로, 나는 그것이 단지 …

13
“낮은”응용 계층이“높은”계층을 인식하지 않는 것이 좋은 생각 인 이유는 무엇입니까?
일반적인 (잘 설계된) MVC 웹 앱에서 데이터베이스는 모델 코드를 인식하지 못하고, 모델 코드는 컨트롤러 코드를 인식하지 않으며, 컨트롤러 코드는 뷰 코드를 인식하지 못합니다. (하드웨어에서 시작하거나 더 나아가서 패턴이 동일 할 수 있다고 생각합니다.) 다른 방향으로 가면 한 레이어 만 내려갈 수 있습니다. 뷰는 컨트롤러를 인식 할 수 있지만 모델은 인식 …

9
리포지토리가 IQueryable을 반환해야합니까?
의 인스턴스를 반환하는 리포지토리가있는 많은 프로젝트를보고 IQueryable있습니다. 이를 통해 IQueryable다른 코드에서 추가 필터 및 정렬을 수행 할 수 있으며 생성되는 다른 SQL로 변환됩니다. 이 패턴의 출처와 좋은 아이디어인지 궁금합니다. 저의 가장 큰 관심사는 IQueryable데이터베이스가 열거 될 때 언젠가 데이터베이스에 도달 할 것이라는 약속입니다. 이는 저장소 외부에서 오류가 발생했음을 의미합니다. 이는 …

5
다른 마이크로 서비스가 "소유"한 데이터베이스에서 데이터를 읽는 것이 왜 그렇게 나쁜가
최근 마이크로 서비스 아키텍처에서이 훌륭한 기사를 읽었습니다. http://www.infoq.com/articles/microservices-intro Amazon에 웹 페이지를로드하면 100 개 이상의 마이크로 서비스가 해당 페이지를 제공하기 위해 협력한다는 내용입니다. 이 기사에서는 마이크로 서비스 간의 모든 통신이 API를 통해서만 이루어질 수 있다고 설명합니다. 내 질문은 모든 데이터베이스 쓰기가 API를 통해서만 이루어질 수 있다고 말하는 것이 좋지 않은 이유입니다. …

19
끔찍한 견적 다루기
내가 작업 한 최근 프로젝트는 건축가에 의해 심각하게 과소 평가 된 것으로 입증되었습니다. 추정치가 500 % 이상 떨어졌습니다. 불행히도 견적이 고객과 계약을 맺은 후 프로젝트에 참여했습니다. 선임 개발자로서 기능 및 기술 사양을 빨리 깨달았습니다. 큰 격차와 불확실성이있었습니다. 그 결과 비즈니스 및 기술 책임자와 긴급 회의를 소집하여 현실을 알려야한다는 느낌이 들었습니다. …

15
클라이언트 측 Javascript에서 데이터베이스로 직접 이동하지 않는 이유가 있습니까?
가능한 중복 : 웹 "서버 이하"응용 프로그램 작성 따라서 Stack Exchange 복제본을 구축하고 백엔드 저장소로 CouchDB와 같은 것을 사용하기로 결정했다고 가정 해 봅시다. 내장 인증 및 데이터베이스 레벨 권한 부여를 사용하는 경우 클라이언트 측 Javascript가 공개적으로 사용 가능한 CouchDB 서버에 직접 쓰지 못하게 할 이유가 있습니까? 이것은 기본적으로 CRUD 응용 …

5
다른 마이크로 서비스 간의 공유 도메인 모델
서로 다른 두 가지 마이크로 서비스 시나리오를 상상해보십시오. 하나는 서비스 내에서 인증을 처리하고 다른 하나는 사용자 관리를 관리합니다. 둘 다 사용자 개념을 가지고 있으며 서로에게 전화를 통해 사용자에 대해 이야기합니다. "사용자"의 도메인 모델은 어디에 속합니까? 둘 다 사용자가 데이터베이스 레벨에있는 것과 다른 표현을 가지고 있습니까? API 호출에 사용되는 UserDTO가있는 경우 …

18
다른 사람의 코드 작업 [폐쇄]
나는 1 년의 코딩 경험이 거의 없다. 작업을 시작한 후에는 대부분 기존 코드 위에 새 기능을 추가하거나 기존 기능을 수정하여 다른 사람의 코드 작업을하고있었습니다. 실제 코드를 작성한 사람은 더 이상 회사에서 작동하지 않습니다. 그의 코드를 이해하고 내 작업을 수행하는 데 어려움을 겪고 있습니다. 코드를 수정하려고 할 때마다 작동 기능이 엉망이되었습니다. …

3
민첩한 환경에서 건축 설계는 어떻게 이루어 집니까?
Agile Architect의 원칙을 읽었으며 다음 원칙을 정의했습니다. 원칙 # 1 시스템을 코딩하는 팀이 시스템을 설계합니다. 원칙 # 2 작동 할 수있는 가장 간단한 아키텍처를 구축하십시오. 원칙 # 3 의심 스러우면 코드를 작성하십시오. 원칙 # 4 그들은 그것을 만들고 시험한다. 원칙 # 5 시스템이 클수록 활주로가 길어집니다. 원칙 # 6 시스템 …

6
의존성에 대한 두려움을 다루는 방법
내가 속한 팀은 회사 파트너가 플랫폼과 통합하는 데 사용할 수있는 구성 요소를 만듭니다. 따라서 (타사) 종속성을 도입 할 때는 각별히주의해야합니다. 현재 타사 의존성이 없으며 프레임 워크의 최저 API 수준을 유지해야합니다. 몇 가지 예 : 우리는 프레임 워크 (.NET 표준)의 최저 API 레벨을 유지해야합니다. 이에 대한 추론은 언젠가는 매우 낮은 API …

13
건축 설계 시간 낭비를 멈추는 방법 [닫기]
나는 최근에 대학을 졸업하고 프로그래머로 일하기 시작했습니다. "기술적 인"문제를 해결하기가 어렵거나 해결책이 하나 있다고 말하는 것을 디버깅하는 것이 어렵습니다. 그러나 소프트웨어 아키텍처와 같은 명백한 해결책 이없는 일련의 문제가 있는 것 같습니다. 이런 것들이 나를 괴롭 히고 큰 고통을 안겨줍니다. 프로그램과 시스템을 "아키텍트"하는 방법을 결정하기 위해 몇 시간과 몇 시간을 보냅니다. …

12
물러서서 신선한 눈으로 코드를 보는 방법? [닫은]
작년에 리치 클라이언트 애플리케이션 (35,000+ LoC, 가치있는 것)을 개발하는 1 인 팀으로 보냈습니다. 현재 안정적이며 생산 중입니다. 그러나 나는 프로젝트가 시작될 때 내 기술이 녹슬 었다는 것을 알고 있으므로 의심 할 여지없이 코드에 큰 문제가 있습니다. 이 시점에서 대부분의 문제는 아키텍처, 구조 및 상호 작용에 있습니다. 쉬운 문제, 심지어 아키텍처 …

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