소프트웨어 공학

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

5
음의 제로가 중요한 이유는 무엇입니까?
왜 우리가 양수와 음수 0에 대한 다른 표현에 관심이 있는지에 대해 혼란 스럽습니다. 나는 복소수를 포함하는 프로그래밍에서 음의 0 표현을 갖는 것이 매우 중요하다는 주장을 읽는 것을 모호하게 기억합니다. 나는 복잡한 숫자를 포함하는 코드를 작성할 기회가 없었기 때문에 이것이 왜 그런지에 대해 약간 당황했습니다. 개념에 관한 Wikipedia의 기사 는 특별히 …

12
오류를 발생시켜야 하는지를 나타내는 플래그가있는 것
나는 최근에 훨씬 더 오래된 개발자들 (약 50 세 이상)과 함께 일하기 시작했습니다. 그들은 시스템이 다운 될 수없는 항공을 다루는 중요한 애플리케이션에서 작업했습니다. 결과적으로 이전 프로그래머는 이런 식으로 코딩하는 경향이 있습니다. 그는 예외가 발생해야하는지 여부를 나타 내기 위해 객체에 부울을 넣는 경향이 있습니다. 예 public class AreaCalculator { AreaCalculator(bool shouldThrowExceptions) …

11
경로 적용 범위가 모든 버그를 찾도록 보장합니까?
프로그램의 모든 경로를 테스트하면 모든 버그를 찾을 수 있습니까? 그렇지 않다면 왜 안됩니까? 가능한 모든 프로그램 흐름 조합을 통해 어떻게 문제를 발견 할 수 있습니까? 나는 "모든 버그"를 찾을 수 있다고 주저하지만, 아마도 경로 범위가 실용적이지 않기 때문에 (조합 적이므로) 경험이 없기 때문일 수 있습니까? 참고 : 이 기사 는 …

2
왜 그렇게 많은 해시 및 암호화 된 문자열이 등호로 끝나는가?
나는 C # 및 MSSQL에서 일하고 있으며 소금에 절인 해시 된 암호를 저장할 것으로 예상합니다. nvarchar 열에 저장된 해시를 볼 때 (예 : outp 상자 aspnet 멤버 자격 공급자). 생성 된 Salt 및 Hash 값이 항상 하나 또는 두 개의 등호로 끝나는 이유가 항상 궁금합니다. 암호화 알고리즘을 사용하는 동안 비슷한 …

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

1
녹 특성은 Go 인터페이스와 어떻게 다릅니 까?
나는 Go에 비교적 익숙하며 많은 작은 프로그램을 작성했습니다. 물론 녹에 대해서는 잘 모르지만 계속 지켜봐야합니다. 최근에 http://yager.io/programming/go.html을 읽은 후 기사가 실제로 인터페이스가 많지 않을 때 Go가 부당하게 비판하는 것처럼 보이므로 제네릭이 처리되는 두 가지 방법을 개인적으로 조사 할 것이라고 생각했습니다. 우아하게 성취 할 수 없었습니다. 나는 Rust 's Traits가 얼마나 …
64 go  rust 

6
서비스 계층 대 DAO — 왜 둘 다?
Java 웹 애플리케이션 예제에서 SpringMVC, Hibernate 및 일부 데이터베이스를 사용하고 있습니다. 이 작업을 수행하는 몇 가지 다른 방법이 있지만이 Spring 3 및 최대 절전 모드 통합 자습서 에는 모델 클래스, 뷰 (jsp) 및 컨트롤러의 서비스 및 dao 클래스가 있습니다. 내 질문은 서비스와 DAO 클래스가 똑같은 일을하지 않습니까? 왜 둘 다 …

1
Gerrit 코드 검토 또는 Github의 포크 앤 풀 모델?
팀과 커뮤니티가 개발할 소프트웨어 프로젝트를 시작하고 있습니다. 이전에 gerrit에서 판매되었지만 Github의 포크 앤 풀 요청 모델은 더 많은 도구, 커밋을 시각화하는 방법 및 사용 편의성을 거의 제공하는 것으로 보입니다. 둘 다에 대해 약간의 경험이있는 사람에게는 각각의 장단점이 무엇이며 커뮤니티 개발의 가능성을 열어두고 싶은 팀 기반 프로젝트에 더 좋을까요?
64 git  github  forking  gerrit 

3
Java 8 java.time 클래스에 getMillis () 메소드가없는 이유는 무엇입니까?
Java 8에는 java.time 패키지에 날짜 및 시간에 대한 완전히 새로운 라이브러리가 있으며, 이전에 JodaTime을 사용하거나 자체 날짜 처리 도우미 메소드를 작성 해야하는 번거 로움이있는 사람에게는 매우 환영합니다. 이 패키지의 많은 클래스는 타임 스탬프를 나타내며 타임 스탬프 getHour()에서 시간 을 가져 오거나 getMinute()타임 스탬프에서 분 getNano()을 가져 오거나 타임 스탬프 등에서 …
64 java  java8 

7
구성 데이터 : 단일 행 테이블 대 이름-값 쌍 테이블
사용자가 구성 할 수있는 응용 프로그램을 작성한다고 가정 해 봅시다. 이 "구성 데이터"를 데이터베이스에 저장하기 위해 두 가지 패턴이 일반적으로 사용됩니다. 단일 행 테이블 CompanyName | StartFullScreen | RefreshSeconds | ... ---------------+-------------------+------------------+-------- ACME Inc. | true | 20 | ... 이름 - 값 쌍의 테이블 ConfigOption | Value -----------------+------------- CompanyName …

4
JSF를 사용하지 않는 이유 [닫기]
나는 StackExchange를 처음 사용하지만 도움이 될 것이라고 생각했다. 레거시 JSP 솔루션을 대체하여 새로운 Java Enterprise 애플리케이션을 작성하고 있습니다. 많은 변경으로 인해 UI와 비즈니스 로직의 일부가 완전히 다시 생각되고 구현 될 것입니다. 우리의 첫 생각은 Java EE의 표준이기 때문에 JSF였습니다. 처음에는 좋은 인상을 받았습니다. 그러나 지금은 기능적 프로토 타입을 구현하려고하는데 사용에 …

11
ANSI C가 새로운 프로젝트에 적합하지 않다는 것을 상사에게 어떻게 확신시킬 수 있습니까? [닫은]
몇 달 전, 자체 개발 한 테스트 장비를 제어하고 일련의 측정 값을 기록하는 앱을 개발하기 시작했습니다. UI가 단순해야하며 연속 레코딩으로 인해 스레드가 필요할 수 있습니다. 이 응용 프로그램은 몇 년 동안 사용되며이 기간 동안 많은 컴퓨터 과학 학생들이 관리해야합니다. 우리의 상사는 약 30 년 전에 졸업했으며 (범죄로 간주되지 않음; 저도 …

11
저수준 프로그래밍에서 암호 형 짧은 식별자가 왜 그렇게 일반적입니까?
명령 / 레지스터 이름을 짧게 유지해야하는 매우 좋은 이유 가있었습니다 . 이러한 이유는 더 이상 적용되지 않지만 낮은 수준의 프로그래밍에서는 짧은 암호 이름이 여전히 일반적입니다. 왜 이런거야? 오래된 습관이 깨지기 어렵거나 더 좋은 이유가 있습니까? 예를 들면 다음과 같습니다. Atmel ATMEGA32U2 (2010?) : TIFR1(대신 TimerCounter1InterruptFlag), ICR1H(대신 InputCapture1High), DDRB(대신 DataDirectionPortB) 등 …

5
인터페이스를 명시 적 또는 암시 적으로 구현하는 것의 차이점은 무엇입니까?
Visual Studio에서 인터페이스를 마우스 오른쪽 단추로 클릭하고 인터페이스 구현 또는 명시 적으로 인터페이스 구현을 선택할 수 있습니다. public class Test : ITest { public string Id // Generated by Implement Interface { get { throw new NotImplementedException(); } } string ITest.Id // Generated by Implement Interface Explicitly { get { …
64 c#  syntax 

18
긴 방법은 항상 나쁜가요? [닫은]
그래서 이전에 둘러 보았을 때 긴 방법이 나쁜 습관이라는 의견을 발견했습니다. 나는 긴 방법이 나쁘다는 것을 항상 동의하지 않습니다 (그리고 다른 사람들의 의견을 원합니다). 예를 들어 객체를 뷰로 보내기 전에 약간의 처리를 수행하는 장고 뷰가 있습니다. 긴 메서드는 350 줄의 코드입니다. 매개 변수를 처리하도록 쿼리를 정렬 / 필터링 한 다음 …

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