소프트웨어 공학

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

2
보이저 미션의 코드 개발 프로세스?
보이저 1 호는 2012 년 8 월에 항성 간 공간에 도달했으며 현재까지 가장 먼 인간이 만든 물체입니다. Voyager 1은 1977 년 쌍둥이 우주선 Voyager 2 직후에 발사되어 조 비안 및 토성 시스템을 탐색하여 초승달, 활화산 및 외부 태양계에 대한 풍부한 데이터를 발견했습니다. 보이저 1 호와 2 호는 176 년에 한 …

3
TDD에서 재 설계 한 후 해당 메소드가 비공개가되면 메소드 테스트는 어떻게됩니까?
다른 캐릭터와 그 종류의 물건을 공격하는 캐릭터로 롤 게임을 시작한다고 가정 해 봅시다. TDD를 적용하여 Character.receiveAttack(Int)메서드 내부의 논리를 테스트하기 위해 테스트 사례를 만듭니다 . 이 같은: @Test fun healthIsReducedWhenCharacterIsAttacked() { val c = Character(100) //arg is the health c.receiveAttack(50) //arg is the suffered attack damage assertThat(c.health, is(50)); } 10 가지 …

7
C ++ 프로그램이 모든 예외를 잡아 내고 예외가 main ()을지나 가지 못하게해야합니까?
나는 C ++ 프로그램이 궁극적으로 모든 예외를 잡아야한다는 조언을 받았다. 당시의 추론은 본질적으로 예외가 main()이상한 좀비 상태 로 들어가 도록 허용하는 프로그램이었습니다 . 나는 몇 년 전에 이것을 들었고, 되돌아 보면 관찰 된 현상은 문제의 프로젝트에서 매우 큰 코어 덤프의 긴 생성으로 인한 것이라고 생각합니다. 당시 이것은 기괴하지만 설득력이있는 것처럼 …
29 c++  exceptions 

11
얼마나 많은 디자인 패턴과 추상화 수준이 필요합니까? [닫은]
소프트웨어에 추상화가 너무 많고 디자인 패턴이 너무 많거나 더 많은 패턴이 있는지 어떻게 알 수 있습니까? 내가 일하는 개발자는 이러한 점에 대해 다르게 프로그래밍하고 있습니다. 일부는 모든 작은 기능을 추상화하고 가능하면 디자인 패턴을 사용하며 어떠한 비용으로도 중복성을 피합니다. 저를 포함한 다른 사람들은 더 실용적으로 노력하고 모든 디자인 패턴에 완벽하게 맞지 …

3
UML이 대부분의 무료 소프트웨어 (예 : Linux)에서 사용되지 않는 이유는 무엇입니까?
UML 이 대부분의 무료 소프트웨어 프로젝트 에서 사용되지 않는 이유 를 이해하려고합니다 . 예를 들어, 데비안 / 리눅스 시스템에는 10 만 개가 넘는 무료 소프트웨어 패키지가있을 수 있으며, 명시적인 UML 프레임 워크와 방법론을 사용하여 개발 된 것조차 말할 수 없습니다 . 예를 들어 Qt , GCC , Linux 커널 , …

2
C 문자열 리터럴이 읽기 전용 인 이유는 무엇입니까?
읽기 전용 문자열 리터럴의 장점은 무엇입니까? (-ies / -ied) 발에 몸을 쏠 수있는 또 다른 방법 char *foo = "bar"; foo[0] = 'd'; /* SEGFAULT */ 한 줄에 단어의 읽기-쓰기 배열을 우아하게 초기화 할 수 없음 : char *foo[] = { "bar", "baz", "running out of traditional placeholder names" }; …
29 c  memory  strings 

1
즉시 호출되는 익명 JavaScript 함수의 용어는 무엇입니까?
팀을위한 JavaScript 스타일 가이드를 작성하여 문서를보다 쉽게 ​​구성하고 제공 할 수 있습니다. 그러나 나는 내 질문이 적용되는 작은 충돌에 부딪쳤다. 즉시 호출되는 익명의 JavaScript 함수를 호출해야합니다. 나는 그것을 단순히 "익명 함수"라고 부를 수 있다는 것을 알고 있지만, 그것이 즉시 호출된다는 사실을 강조하고 싶습니다. 예를 들면 다음과 같습니다. var MyVariable = …

4
C # 6.0의 새로운 Null 조건부 연산자는 Demeter of Laws에 적용됩니까?
데메테르 의 법칙은 다음과 같이 말합니다. 각 장치에는 다른 장치에 대한 정보가 제한적이어야합니다. 현재 장치와 "가까운"장치 만 있습니다. 각 부대는 친구들과 만 대화해야합니다. 낯선 사람과 이야기하지 마십시오. 가까운 친구와 만 대화하십시오. C # 6.0은 null 조건부 연산자 라는 새로운 연산자를 도입했습니다 . IMHO, 코딩이 쉬워지고 가독성이 향상됩니다. 그러나 클래스 필드를 …

3
재 작성을위한 버전 관리 실습
우리는 언어 X에서 제품 (시제품) P_OLD를 개발했으며 이제 언어 Y에서 P_NEW로 처음부터 다시 작성하고 있습니다. P_NEW와 P_OLD는 동일한 제품이므로 P_NEW는 P_OLD old의 자랑이거나 자체 저장소 여야합니까? 버전 관리 관점에서 이러한 큰 변화를 처리하는 일반적인 방법은 무엇입니까?

8
길지만 간단한 코드를 클래스 나 함수로 래핑하는 대신 복사하여 붙여 넣을 수 있습니까?
인터넷에 연결하고 다음과 같은 연결 결과를 표시하는 코드 세그먼트가 있다고 가정하십시오. HttpRequest* httpRequest=new HttpRequest(); httpRequest->setUrl("(some domain .com)"); httpRequest->setRequestType(HttpRequest::Type::POST); httpRequest->setRequestData("(something like name=?&age=30&...)"); httpRequest->setResponseCallback([=](HttpClient* client, HttpResponse* response){ string responseString=response->getResponseDataString(); if(response->getErrorCode()!=200){ if(response->getErrorCode()==404){ Alert* alert=new Alert(); alert->setFontSize(30); alert->setFontColor(255,255,255); alert->setPosition(Screen.MIDDLE); alert->show("Connection Error","Not Found"); }else if((some other different cases)){ (some other alert) }else Alert* alert=new Alert(); …

8
예를 들어, 대규모 웹앱에 "강력한"유형의 시스템을 사용합니까?
나는 이것이 매우 광범위하고 모호하며 아마도 철학적 인 질문이라는 것을 알고 있습니다. 어느 정도까지는 "강력한"유형 시스템 자체라는 질문에서 가장 중요한 키워드는 잘못 정의되어 있습니다. 그래서 내가 의미하는 바를 설명하려고 노력하겠습니다. 질문에 대한 전반적인 맥락 우리는 Ruby on Rails에서 매우 큰 규모의 웹 앱을 구축해 왔으며 일반적으로 스택에 만족합니다. 우리가 원할 …


2
64 비트 버전의 프로그램을 만드는 것이 왜 어려울 수 있습니까?
짧은 시간의 프로그래밍에서는 프로그램의 전체 소스가있는 한 32 비트 또는 64 비트 컴퓨터에서 C ++, Java 등을 컴파일하는 것이 쉽지 않습니다. 그러나 많은 소프트웨어가 64 비트로 출시되지 않았습니다. 가장 귀찮게도 아직 Unity 엔진의 64 비트 릴리스가 없습니다. 64 비트 시스템 용으로 일부 프로그램을 컴파일하기 어려운 이유는 무엇입니까?

6
class 키워드없이 "객체 지향"프로그래밍을 구현할 수 있습니까?
은행에서 "계정"을 추상화하고 싶다고 가정 해 봅시다. 다음 function은 파이썬 에서 객체를 사용하는 한 가지 방법입니다 . def account(): """Return a dispatch dictionary representing a bank account. >>> a = account() >>> a['deposit'](100) 100 >>> a['withdraw'](90) 10 >>> a['withdraw'](90) 'Insufficient funds' >>> a['balance'] 10 """ def withdraw(amount): if amount > …

6
새 객체를 만들거나 모든 속성을 재설정 하시겠습니까?
public class MyClass { public object Prop1 { get; set; } public object Prop2 { get; set; } public object Prop3 { get; set; } } 객체 myObject가 MyClass있고 속성을 재설정해야 한다고 가정 합니다. 새 객체를 만들거나 각 속성을 다시 할당하는 것이 더 낫습니까? 이전 인스턴스에서 추가로 사용하지 않는다고 가정하십시오. …

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