소프트웨어 공학

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

6
값을 다른 표현으로 변환 한 다음 시작된 위치로 다시 변환하는 코드는 어떻습니까? [닫은]
나는 나쁜 프로그래밍 관행에 관한 기사를 읽고 있었다 . 그것은 언급했다- 값을 다른 표현으로 변환 한 다음 다시 시작 위치로 변환하는 "요요 코드"(예 : 10 진수를 문자열로 변환 한 다음 다시 10 진수로 변환하거나 문자열을 채운 후 자르기) 그가 제공하는 특정 예가 왜 프로그램을 작성하는 나쁜 방법인지 이해할 수 없습니다. …


2
build.number가 시맨틱 버전 관리의“남용”인 이유는 무엇입니까?
나는 우리의 수석 건축가 중 하나에 제안 된 빌드 시스템 (Gradle을 / Artifactory / 젠킨스 / 요리사)를 설명했다, 그는 나에게 코멘트를 만들어 내가 그 종류의 체중에에 정말 동의하지만, 경험이 충분가 아닙니다. 이 프로젝트는 다른 팀이 재사용 할 수 있도록 Java 라이브러리 (JAR)를 아티팩트로 빌드합니다. 버전 관리를 위해 다음의 의미 론적 …


4
스프레드 시트의 데이터 구조는 무엇입니까?
스프레드 시트 (다른 ​​셀을 참조하는 값 또는 수식이 포함 된 명명 된 또는 식별 된 셀 그룹)가 어떻게 해결되는지 이해하고 싶습니다. 기존 프로젝트를 보려고 시도했지만 GUI, 직렬화, 이벤트 등으로 인해 스프레드 시트를 찾을 수 없었습니다. 가장 간단한 방법은 무엇입니까?

4
각각의 새로운 버그에 대한 단위 테스트 추가
내 직업에서 버그를 해결하는 모든 개발자는 이러한 유형의 버그에 대해 경고하는 새로운 단위 테스트를 추가해야합니다 (다시 문제가 발생하는 경우). 단위 테스트가 불가능한 경우 (예 : 웹 페이지 디자인 문제) QA 부서는 테스트 케이스를 작성하여 수동으로 확인해야합니다. 그 뒤에 아이디어는 제품 출시 전에 결함이 감지되지 않은 경우 결함을 감지하기위한 적절한 단위 …

7
Scrum / Kanban 보드를 사용할 때 기존 이슈 트래커의 역할은 무엇입니까?
매우 높은 수준의 관점에서 볼 때 일반적으로 프로젝트 관리 도구에는 두 가지 유형이 있습니다. Fogbugz, JIRA, BugZilla, Trac, Redmine 등과 같은 전통적인 이슈 트래커 가상 카드 보드 / Pivotal Tracker, GreenHopper, AgileZen, Trello 등과 같은 민첩한 프로젝트 관리 도구 물론 Pivotal Tracker 작업은 JIRA로 가져올 수 있으며 GreenHopper 자체는 JIRA …

6
기존 코드베이스를 문서화하는 방법론
인라인 문서가 없거나 기술 문서가없는 기존 응용 프로그램에서 팀의 일원으로 일하고 있습니다. 응용 프로그램에 대한 다양한 버그 보고서를 작성하면서 다음 장소에서 버그 번호를 작성하여 다음 개발자가 해당 버그 번호를 참조하여 진행 상황을 확인할 수 있습니다. 내 질문은 따라서 : 이 코드를 문서화하는 가장 효율적인 방법은 무엇입니까? 해당 영역을 터치 할 …

2
Node.js는 프레임 워크입니까? [닫은]
채용 담당자, 개발자 등이 Node.js를 프레임 워크라고합니다. 내 생각에 이것은 Node.js가 실제로 무엇인지에 대해 무지하지 않습니다. 종종 작업 설명에서 Node.js는 AngularJS , React 등 의 라이브러리로 그룹화됩니다 . 일반적으로 차이를 모르는 사람 (HR, 모집 자 등)이 입력 한 것으로 간주합니다. 제 생각에는 Node.js는 플랫폼 또는 런타임 환경입니다. 파일 시스템 (브라우저가 …

5
동일한 클래스 내에서 다른 메소드를 호출하는 단위 테스트 메소드를 작성하는 가장 좋은 방법
나는 최근에 어떤 친구들과 다음 두 가지 방법 중 어느 것이 같은 클래스 내부의 메소드에서 같은 클래스 내의 메소드에 대한 반환 결과 또는 호출을 스텁하는 것이 가장 좋은지에 대해 이야기했습니다. 이것은 매우 간단한 예입니다. 실제로 기능은 훨씬 더 복잡합니다. 예: public class MyClass { public bool FunctionA() { return FunctionB() …

8
다른 개발자가 작업을 완료 한 후 메소드를 호출하도록 강제
Java 7의 라이브러리에는 다른 클래스에 서비스를 제공하는 클래스가 있습니다. 이 서비스 클래스의 인스턴스를 생성 한 후 그 중 하나의 메소드를 여러 번 호출 할 수 있습니다 (메소드라고 부릅니다 doWork()). 그래서 서비스 클래스의 작업이 언제 완료되는지 모르겠습니다. 문제는 서비스 클래스가 무거운 객체를 사용하고 해제해야한다는 것입니다. 이 부분을 메소드로 설정 release()했지만 ( …
34 java 

3
이것이 상징적 인 상수 오버 킬을 사용합니까?
저는 소프트웨어 공학에 익숙하지 않아서 학습 연습으로 체스 게임을 썼습니다. 내 친구가 그것을 보았고 내 코드가 다음과 같이 지적되었습니다. for (int i = 0; i < 8; i++){ for (int j = 0; j < 8; j++){ 그가 대신해야한다고 주장하면서 for (int i = 0; i < CHESS_CONST; i++){ for …

6
복잡한 정규식에 대한 단위 테스트가 있어야합니까?
응용 프로그램에서 복잡한 정규식에 대한 단위 테스트를 작성해야합니까? 한편으로는 입력 및 출력 형식이 종종 간단하고 잘 정의되어 있기 때문에 테스트하기가 쉽고, 종종 너무 복잡 해져서 테스트가 특히 중요합니다. 다른 한편으로 : 그들 자체는 일부 단위의 인터페이스의 일부가 아니다. 인터페이스 만 테스트하고 정규식을 암시 적으로 테스트하는 방식으로 인터페이스를 테스트하는 것이 좋습니다. …

6
객체를 조롱하기 어려운 시스템을 어떻게 테스트합니까?
다음 시스템으로 작업하고 있습니다. Network Data Feed -> Third Party Nio Library -> My Objects via adapter pattern 우리는 최근에 내가 사용하고있는 라이브러리의 버전을 업데이트 한 문제가 있었는데, 그중에서도 타임 스탬프 (제 3 자 라이브러리가로 반환 long)가 에포크 후 밀리 초에서 에포크 후 나노 초로 변경되었습니다. 문제 : 타사 라이브러리 …

7
대부분의 주류 언어가 3-way 부울 비교를 위해“x <y <z”구문을 지원하지 않는 이유는 무엇입니까?
두 숫자 (또는 다른 잘 정렬 된 엔티티)를 비교하려면을 사용하십시오 x &lt; y. 세 가지를 비교하고 싶다면 고등학교 대 수생이 시도해볼 것을 제안 x &lt; y &lt; z합니다. 그러면 프로그래머가 "아니요, 유효하지 않습니다 x &lt; y &amp;&amp; y &lt; z. 해야합니다 "라고 응답합니다 . 내가 접한 대부분의 언어는이 구문을 지원하지 …

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