소프트웨어 공학

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

15
논리 연산자로 Try / Catch를 사용하거나 반대하는 주장
Try-Catch 블록을 논리 연산자로 사용하는 회사 앱에서 멋진 코드를 발견했습니다. 즉, "이 오류가 발생하면이 코드를 수행하십시오. 그러나이 오류가 발생하면이 3 번째 작업을 수행하십시오"라는 의미입니다. 표시되는 "else"문으로 "Finally"를 사용합니다. 나는 이것이 본질적으로 잘못되었다는 것을 알고 있지만, 싸움을 선택하기 전에 나는 잘 생각하는 논쟁을 기대하고있었습니다. 이런 식으로 Try-Catch 사용에 대한 주장이 있다면 …

11
8 진은 어디에 유용합니까? [닫은]
PHP에서 완전히 이상한 버그를 보면서 약 20 분 동안 테이블에 머리를 부딪 혔다가 8 진수가 있음을 깨달았습니다. <% (* & #> 8 진. 요컨대, 코드가 정렬 될 수 있도록 리터럴을 0으로 채웠습니다. 8 진수를 잊어 버렸습니다. 문제는 누구나 파일 권한 이외의 다른 용도로 8 진법을 사용합니까? (개인적으로 선호 chmod ugo+rwx하지만 …
36 octal 

7
왜 모든 사람이 컨트롤러를 한 폴더에 넣고 다른 폴더에보기를합니까?
asp에서 mvc 프레임 워크, asp.net mvc 또는 nancy로 구부릴 준비가되었습니다. 어디를 가든 컨트롤러 / 모듈 용 폴더와보기 용 폴더가 표시됩니다. 이것은 유형별로 정리하는 것에 대한 파블로프의 반사 일까, 아니면 더 깊은 지혜가 작용하고 있는가? 함께 열 가능성이 높은 파일을 함께 저장하는 개념 증명 프로젝트가 약간 있습니다. 이 파일들도 서로를 호출 …
36 mvc  asp.net-mvc 

2
JavaScript 약속이 약속 이외의 것을 반환하게하려면 어떻게합니까?
모듈의 메소드 구현에 대한 클라이언트의 사양이 있습니다. // getGenres(): // Returns a promise. When it resolves, it returns an array. 장르의 배열이 주어진다면 ['comedy', 'drama', 'action'] 다음은 약속이있는 스켈레톤 방법입니다. MovieLibrary.getGenres = function() { var promise = new Promise(function(resolve, reject) { /* missing implementation */ }); return promise; }; 장르에서 …
36 javascript 

3
힙과 우선 순위 큐의 차이점
나는 항상 힙 및 우선 순위 큐는 동의어라고 생각 - 추상 데이터 구조가 지원 insert, findMin및 deleteMin작업. 예를 들어 Chris Okasaki의 순전히 기능적인 데이터 구조 (3 장)와 같은 일부 문헌은 저에게 동의하는 것 같습니다. 반면, Wikipedia의 힙 페이지는이를 트리 기반 데이터 구조로 정의하고 힙이 우선 순위 큐의 구체적인 구현임을 나타냅니다. …

4
제네릭 악용이란 무엇입니까?
일부 코드를 검토하는 동안 제네릭을 사용하도록 코드를 변경할 수있는 기회를 발견했습니다. (난독 화 된) 코드는 다음과 같습니다. public void DoAllTheThings(Type typeOfTarget, object[] possibleTargets) { var someProperty = typeOfTarget.GetProperty(possibleTargets[0]); ... } 이 코드는 다음과 같이 제네릭으로 대체 될 수 있습니다. public void DoAllTheThings<T>(object[] possibleTargets[0]) { var someProperty = type(T).getProperty(possibleTargets[0]); ... } …
35 generics 

8
2보다 "비트"당 4 개의 상태가 저장 공간의 두 배를 의미합니까?
순진하지만 근본적인 질문은 간단합니다. 2보다 "비트"당 4 개의 상태를 갖는 것이 저장 공간의 두 배를 의미합니까? 명확하지 않은 경우, 2 개의 값 (기본 2 : 0, 1) 만 나타내는 것이 아니라 모든 "저장소 구조"가 4 개의 값 (기본 4 : 0, 1, 2, 3)을 나타낼 수있는 것처럼 의미합니다. ).
35 data  storage 


8
실제로 객체 지향 프로그래밍을 언제 사용합니까? [닫은]
기본적으로 문자열을 조작하는 Python으로 프로그램을 작성 중이며 OOP 원칙을 사용하여 수행해야하는지 궁금합니다. 그는 코드에 대해 상관하지 않는다 말하지 않았다 클라이언트는, 그는 단지 것은이 원하는 일 . 객체 지향 코드는 정의에 의한 것이 아니며 반대로 비 OO 코드는 정의에 의한 엉터리가 아닙니다. 내가 묻는 질문은 다소 의견을 기반으로 할 수 있지만 …

2
Rust는 C ++의 동시성 기능과 어떻게 다른가요?
질문 Rust를 배우기 위해 시간을 소비해야하는지 결정하기 위해 Rust가 C ++의 동시성 기능을 근본적으로 충분히 향상시키는 지 이해하려고 노력하고 있습니다. 구체적으로, 관용적 녹은 관용적 C ++의 동시성 기능을 어떻게 향상 시키나요? 개선 (또는 발산)은 대부분 구문 상입니까, 아니면 실질적으로 패러다임의 개선 (발산)입니까? 아니면 다른 것입니까? 아니면 실제로 개선 (분화)이 아닙니까? …
35 c++  concurrency  rust  c++14 

5
Java Swing 클래스는 언제 확장해야합니까?
상속 구현에 대한 나의 현재 이해는 IS-A 관계가 존재 하는 경우에만 클래스를 확장해야한다는 것 입니다. 부모 클래스가 다른 기능을 가진 더 구체적인 자식 유형을 가질 수 있지만 부모에서 추상화 된 공통 요소를 공유합니다. Java 교수가 우리에게 권장하는 것이 있기 때문에 이해하는 것에 의문을 제기하고 있습니다. 그는 JSwing우리가 수업 시간에 구축 …

7
오류 억제에 대한 인수
우리 프로젝트 중 하나에서 다음과 같은 코드를 발견했습니다. SomeClass QueryServer(string args) { try { return SomeClass.Parse(_server.Query(args)); } catch (Exception) { return null; } } 내가 아는 한, 이와 같은 오류를 억제하는 것은 원래 서버의 예외에서 유용한 정보를 파괴하고 실제로 종료해야 할 때 코드를 계속하게하므로 나쁜 습관입니다. 이 같은 모든 오류를 …

3
키가 모두 문자열 일 때 ES6 Map을 사용할 때 요점이 있습니까?
일반 객체 키는 문자열이어야하지만, Map어떤 유형의 키도 가질 수 있습니다. 그러나 실제로는 이것을 거의 사용하지 않습니다. 거의 모든 경우에 어쨌든 문자열을 키로 사용합니다. 아마 new Map()보다 느립니다 {}. 그렇다면 Map평범한 물체 대신에 그것을 사용하는 것이 더 좋은 다른 이유가 있습니까?

9
나중에 주석 처리되는 경향이 있거나 통합 테스트가 더 중요하기 때문에 단위 테스트를 작성하지 않는 것이 합리적입니까?
나는 동료와 단위 / 통합 테스트를 논의 선수로 흥미있는 경우에 만들어 에 대한 단위 테스트를 작성합니다. 나는 큰 단위 테스트 (주로 JUnit) 지지자이지만 다른 흥미로운 점을 들으면서 다른 사람들의 의견을 듣고 싶습니다. 그의 요점을 요약하면 다음과 같습니다. 주요 코드 변경 (새로운 POJO, 주요 응용 프로그램 리팩토링 등)이 발생하면 단위 테스트는 …

6
개발자가 Windows에서 자동으로 설치하지 않는 이유는 무엇입니까? [닫은]
이것은 " 개발자가 Linux에서 설치 마법사를 만들지 않는 이유는 무엇입니까? " 에 대한 반대 이지만, "자동 설치는 자연스러운 방법입니다. 왜 마법사를 사용합니까?"라고 생각하게 만들었습니다. 여기에 반대의 질문이 있습니다. 게으름이나 그와 비슷한 것이 아니라고 확신하지만 주로 소비자 용 앱을 주로 사용하는 개발자가 전혀 신경 쓰지 않는 완전 자동 설치를하지 않는 이유를 …
35 windows 

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