소프트웨어 공학

시스템 개발 수명주기 내에서 작업하는 전문가, 학자 및 학생을위한 Q & A

3
GPL이 파생 작업에 내포 될 수 있습니까?
A, B 및 C의 세 가지 소프트웨어 프로젝트가 있습니다. A는 누구에게나 게시되며 GPL에 따라 라이센스가 부여됩니다. B는 A를 확장하고 게시도되지만 라이센스 정보가 없거나 실수로 LGPL에 따라 라이센스가 부여됩니다. 기본적으로 GPL이 아니므로 A의 라이센스를 위반합니다. B의 소스 코드는 여전히 사용 가능합니다. C가 B를 확장합니다. C를 GPL로 게시 할 수 있습니까? 동기는 …

2
개미 식민지 알고리즘
코스 프로젝트를 위해 개미 식민지 시뮬레이터에서 일하는 학생입니다. 그것에 대한 알고리즘은 개미 식민지 알고리즘입니다. 나는 다양한 형태의 알고리즘이 있지만 모든 것이 우리에게 너무 수학적으로 상세했기 때문에 우리가 가진 접근 방식을 취했습니다. 개미는 식민지에서 태어나 식민지를 유지하기 위해 원천에서 음식을 모아야합니다. 모든 개미는 비슷합니다. 개미가 움직이는 영역은 1000x1000 그리드이므로 모든 그리드 …

3
어떤 종류의 오픈 소스 라이센스가 회사에서 내부적으로 사용하기에 좋지 않습니까? [닫은]
폐쇄되었습니다 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 3 년 전 . 최근에 Microsoft Visual Studio 용 몇 가지 멋진 오픈 소스 애드온 도구 및 라이브러리에 대해 배웠습니다. 이 …

1
왜 더 높은 종류가 필요합니까?
일부 언어는 유형 매개 변수가있는 클래스 및 함수 (예 : 임의 유형일 수있는 List<T>위치 T)를 허용합니다. 예를 들어 다음과 같은 기능을 가질 수 있습니다. List<S> Function<S, T>(List<T> list) 그러나 일부 언어에서는이 개념을 한 단계 위로 확장하여 서명 기능을 가질 수 있습니다. K<S> Function<K<_>, S, T>(K<T> arg) 어디 K<_>그 자체 것은 …

3
mysql을 통해 mongodb와 같은 nosql 데이터베이스를 언제 사용해야합니까?
나는 nosql 데이터베이스 개념에 익숙하지 않으며 결코 사용하지 않았습니다. 내가 읽은 내용과 내가 이해 한 작은 내용을 기반으로 외래 키 개념이없는 경우 데이터간에 참조를 만들 수없는 경우 특히 유용 할 수있는 방법을 아직 알지 못합니다. 예를 들어 '이 사용자가 게시 한 모든 댓글 찾기', '앨범 항목에 속하는 모든 사진 찾기'등과 …
13 mysql  nosql 

5
한 테스트를 다른 테스트 결과에 의존하게 만드는 방법은 무엇입니까?
코드의 모든 곳 에서 다른 많은 클래스가 사용하는 일반적인 정적 메소드를 제공하는 유틸리티 클래스가 있다고 가정 해 봅시다 . 유틸리티 테스트 중 하나라도 통과하지 못하면 테스트가 실패하도록 유틸리티 소비자에 대한 단위 테스트를 어떻게 설계 하시겠습니까? 유틸리티 클래스 테스트가 모두 녹색인지 직접 확인해야합니까? 예를 들어 메시지 파서가 사용하는 메시지 스플리터 유틸리티가 …

3
인수 개수를 어떻게 낮게 유지하면서도 타사의 종속성을 개별적으로 유지합니까?
타사 라이브러리를 사용합니다. 그들은 우리의 의도와 목적을 위해 아마도 다음과 같이 구현 되는 POJO 를 전달 합니다. public class OurData { private String foo; private String bar; private String baz; private String quux; // A lot more than this // IMPORTANT: NOTE THAT THIS IS A PACKAGE PRIVATE CONSTRUCTOR OurData(/* …

3
표준형과 사용자 정의 형을 구문 적으로 구별하는 요점은 무엇입니까?
여기서는 C ++ 및 Bjarne Stroustrup의 명명 규칙을 구체적으로 언급하지만 원칙적으로 사람들이 여기저기서 다른 언어에 대해 다소 유사한 규칙을 사용하는 것을 보았습니다. 따라서 기본 아이디어는 코드를 읽는 동안 표준 유형을 사용자 정의 유형과 구별 할 수 있어야한다는 것 입니다. 예를 들어, Bjarne Stroustrup은 유형의 초기 대문자 (예 : 정사각형 및 …

4
이 코드를 작성하는 방법은 테스트 가능하지만 누락 된 것이 있습니까?
라는 인터페이스가 IContext있습니다. 이를 위해 다음을 제외하고는 실제로 어떤 일을하는지는 중요하지 않습니다. T GetService<T>(); 이 방법은 응용 프로그램의 현재 DI 컨테이너를보고 종속성을 해결하려고 시도합니다. 상당히 표준이라고 생각합니다. 내 ASP.NET MVC 응용 프로그램에서 생성자는 다음과 같습니다. protected MyControllerBase(IContext ctx) { TheContext = ctx; SomeService = ctx.GetService<ISomeService>(); AnotherService = ctx.GetService<IAnotherService>(); } 따라서 …

7
컬렉션에 아이템을 추가하는보다 "자연적인"방법을위한 패턴이 있습니까? [닫은]
폐쇄되었습니다 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 오년 전에 . 컬렉션에 무언가를 추가하는 가장 일반적인 방법은 컬렉션이 Add제공하는 일종의 방법 을 사용하는 것입니다 . class Item {} var …

2
페이로드에 자원 ID를 포함 시키거나 URI에서 파생 시키려면
API를 설계 할 때 PUT 페이로드에 업데이트중인 리소스의 ID가 포함되어야하는지에 대한 문제가 제기되었습니다. 이것이 우리가 현재 가지고있는 것입니다 : PUT /users/123 Payload: {name: "Adrian"} 경로 코드는 URI에서 ID를 추출하고 업데이트를 계속합니다. API의 첫 번째 사용자는 페이로드에서 ID를 허용하지 않는 이유에 대해 의문을 제기합니다. PUT /users/123 Payload: {id: 123, name: "Adrian"} …
13 rest  resources 

2
효율적으로 도형 회전을 계산하는 방법은 무엇입니까?
바이트 행렬 (비트 맵과 같은 행렬)을 통해 표시된 Figure 가 있습니다 . 예제 그림 은에 나와 있습니다 Picture 1. 목표는 주어진 그림 중 가장 좋은 회전 각도를 찾는 것입니다 . Figure가 최상의 각도로 회전하면 X 및 Y 축에 평행하고 Figure 를 나타내는 사각형이 가장 작은 영역을 갖습니다. 그림을 나타내는 사각형은 …

2
람다 미적분과 프로그래밍 언어의 관계는 무엇입니까? [닫은]
폐쇄되었습니다 . 이 질문은 더 집중되어야 합니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 한 가지 문제에만 집중할 수 있도록 질문을 업데이트하십시오 . 휴일 오년 전에 . 나는 내년에 컴퓨터 과학에서 첫 해 (대학에서)를 시작하고 있으며 대부분 C로 씁니다. 나는 검색을 시도했지만 내가 찾은 것의 …

2
트랜잭션이 여러 개체에 걸쳐 있지 않을 경우 개체 당 낙관적 동시성이 직렬화 가능성을 의미합니까?
다음을 제공하는 시스템이 제공됩니다. 개체 당 낙관적 동시성 제어 / 버전 관리 (CAS-Check-and-Set 사용) 단일 개체 이상으로 확장 될 필요가없는 트랜잭션 스냅 샷 격리 이 시스템은 직렬화 가능한 것으로 간주 됩니까? 에서 스냅 샷 격리 쓰기 스큐 이상에서 두 트랜잭션 (T1 및 T2)은 겹치는 데이터 세트 (예 : 값 V1 …

2
“표현 논리”란 무엇이며 견해에서 얼마나 수용 가능한가?
내 웹 응용 프로그램에서 작성 및 편집을위한 양식을 제공해야합니다. 작성 및 편집 양식에는 약간의 차이가 있으므로 다음과 같이 생각합니다. <form> // a lot of htnl goes here @if (editing) { // some more fields shown in edit mode } @if(!editing) { // some stuff shown in create mode } 나는 …

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