소프트웨어 공학

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

1
파이썬“신 클래스”를 리팩토링하는 방법?
문제 저는 주 클래스가“ God Object ” 인 Python 프로젝트를 진행하고 있습니다. 가 있습니다 너무 많은 속성과 메소드 '빌어 먹을! 수업을 리팩토링하고 싶습니다. 지금까지… 첫 번째 단계에서는 상대적으로 간단한 일을하고 싶습니다. 그러나 가장 간단한 접근 방식을 시도했을 때 일부 테스트와 기존 예제가 중단되었습니다. 기본적으로이 클래스에는 속성 목록이 많이 있습니다. 그러나 …

2
프로그래밍에 50 세의 문맹 컴퓨터를 소개하는 방법 [닫기]
닫은. 이 질문은 주제에 맞지 않습니다 . 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? Software Engineering Stack Exchange에 대한 주제가 되도록 질문을 업데이트하십시오 . 휴일 팔년 전에 . 다른 날 아빠는 내가 그에게 결코 기대하지 않았을 것이라는 질문을했다. "C ++을 어떻게 배울 수 있습니까?" 아빠는 올해 56 세가되었고 컴퓨터는 그에게 …
10 c++ 

3
내가 작성한 응용 프로그램은 맬웨어로 표시됩니다. 고치는 방법?
델파이 에서 작성한 프로그램이 있습니다. 이 프로그램은 다운로드 할 수 있지만 Norton과 같은 일부 바이러스 백신은이 프로그램을 맬웨어로 감지하지만 AVG 와 같은 다른 바이러스 백신 에는 문제가 없습니다. 또한 Chrome은 웹 사이트에서 프로그램을 다운로드하려고 할 때 맬웨어 경고를 표시합니다. EXE 파일을 ZIP 파일에 저장 하는 것을 제외하고는 이것을 막을 방법이 …

1
현재 iOS 버전 / 기기 통계?
이 질문에 대한 답변은 지역 사회 노력 입니다. 이 게시물을 개선하기 위해 기존 답변을 수정하십시오. 현재 새로운 답변이나 상호 작용을받지 않습니다. 이 SO 질문에 대한 대답은 오래되었습니다 : iOS 버전 / 장치 통계-어디서 찾을 수 있습니까? 시간 통화가 해당 질문의 일부가 아니기 때문에이 질문을 한 이후 iOS 버전 업데이트가 릴리스되었습니다. …
10 iphone  ios  appstore 

4
자바 스크립트 멀티 스레딩
요즘 JavaScript는 모든 웹 개발 기술에서 클라이언트 측에서 클라이언트 인터페이스를 개선하고 일부 웹 서버에서 서버 측 논리로 사용하기 위해 모든 웹 개발 기술의 주요 플레이어입니다. 또한 사람들 (적어도 그들 중 일부)은 웹 게임 개발에서 플래시에서 자바 스크립트 및 HTML5로 이동하기 시작했습니다. 멀티 스레딩을 지원할 때가 아닌가! JavaScript를 멀티 스레딩 할 …

2
'Law of Demeter'는 공개 / API 메소드 서명에 적용 가능합니까?
이러한 메소드를 사용하는 클라이언트 코드를 손상시키지 않기 위해 API / 공용 메소드 서명의 변경이 최소화되어야한다는 점을 감안할 때 Demeter of Law 가 적용되지 않는지 궁금했습니다 . 간단한 예 : class Account() { double balance; public void debit(Transaction t) { balance -= t.getAmount(); } } debit 메소드는 단지 두 배의 금액이 …


5
스토리별로 요구 사항 사양을 작성하는 것이 좋습니다?
현재 프로젝트에서 민첩한 방법을 사용하고 있으며 다음과 같은 많은 이야기가 있습니다. 조수로서 고객이 요청할 때 돈을 벌 수 있도록 환불을하고 싶습니다. 고객은 상품을받을 수 있도록 구매 비용을 지불하고 싶습니다. 우리가 지금까지 한 방법은 모든 스프린트에서 가장 중요한 이야기를 골라 여러 공식 요구 사항 사양으로 구체화하는 것입니다 (우리는 같은 사양에서 비슷한 …

2
키 기반 캐싱은 어떻게 작동합니까?
최근에 37Signals 블로그 에서 기사를 읽었 으며 캐시 키를 얻는 방법이 궁금합니다. 객체의 타임 스탬프를 포함하는 캐시 키를 갖는 것이 좋습니다. 이는 객체를 업데이트 할 때 캐시가 무효화됨을 의미합니다. 그러나 캐시에서 가져 오려는 객체에 대한 DB 적중을 유발하지 않고 템플릿에서 캐시 키를 어떻게 사용합니까? 특히, 이는 예를 들어 게시물의 주석을 …

3
Ruby로 C 코드 작성과 언어 프로그래밍 *
당신이가는 요리 코드를해야 그 코드 완전한 상태 로 코드를 반대로 언어 로 그것을. 그 말은 귀하의 언어가 자동으로 지원하는 개념으로 만 프로그래밍 사고를 제한하지 마십시오. 최고의 프로그래머는 자신이하고 싶은 일을 생각한 다음 자신의 처분에 따라 프로그래밍 도구를 사용하여 목표를 달성하는 방법을 평가합니다. (34.4 장) 이것이 언어의 특정 강점과 약점에 관계없이 …

3
이미지의 CSS 크기 조정은 여전히 ​​나쁜 생각입니까?
원본 이미지의 실제 이미지가 아닌 이미지에 너비 / 높이 속성을 사용하는 것은 항상 나쁜 생각입니다. 그것은 불완전한 이미지 또는 다운로드 크기를 필요 이상으로 의미 할 수 있습니다. 그러나 이것이 여전히 문제입니까? 업 사이징 사진을 제안하지는 않지만 다운 사이징은 원본과 크기가 크게 다르지 않으면 문제가되지 않습니다. 예를 들어 600x400의 사진이 있고 …

7
비밀번호 해싱 및 사용자 지원
우리는 최근에 더 나은 암호 저장 전략으로 옮겼습니다. bCrypt를 거친 후 비밀번호가 저장됩니다. 주소를 확인하기 위해 계정 생성시 사용자에게 활성화 링크가 전송됩니다 비밀번호 힌트없이 비밀번호를 잊어 버리면 링크가 이메일로 전송됩니다. 링크는 24 시간 후에 만료되며 새 링크를 요청해야합니다. 직원이 계정을 만들면 임의의 강력한 암호가 포함 된 이메일이 전송됩니다. 로그인하면 사용자가 …

9
개발자가 실제 프로그램 전에 내부 라이브러리를 컴파일해야합니까?
최근에 함께 일하는 선임 개발자는 개발자가 최신 버전을 얻고 프로젝트의 일부로 주요 내부 라이브러리를 컴파일하도록 요구하는 사례를 만들었습니다. 이는 개발자 팀이 개발자 머신에서 소스 코드를 사용할 수 있으면 라이브러리 소스를 읽을 수 있으므로 시간이 절약된다고 주장한 내부 Maven 저장소에서 얻는 안정적인 버전으로 프로젝트 팀이 작업해야한다는 반론을 반대합니다. 필요한 기능을 사용할 …

3
메소드 오버로드는 언제 적절한가요?
기존의 합리적으로 큰 시스템을 작업 중이라고 가정합니다. myObject클래스 의 객체가 있습니다 MyClass(예를 들어 Java로 작업한다고 가정). myObject는 a Collection, List및 (필자가 생각하는) 관련이없는 다른 객체를 포함하는 구성 입니다. 여기에는 노출되지 않았 List는지 확인하기 위해 구성 된 메소드를 호출하는 데 사용되는 대리자 메소드가 포함되어 있습니다 List(내 용어가 잘못되어서 죄송합니다). 이제이 있다고 …

12
QA는 재현 가능한 시나리오를 찾아야합니까?
QA 팀에서 버그를 신고하는 경우도 있지만 버그를 재현하는 방법에 대해서는 전혀 모르고 있습니다. 이로 인해 때때로 결과가 나오지 않는 매우 길고 실망스러운 디버깅 세션이 발생합니다. 내 소프트웨어는 독점 하드웨어와 밀접한 관련이 있으므로 버그는 한 번에 여러 방향에서 나올 수 있습니다. "버튼을 눌렀을 때 소프트웨어가 다운 된 것"보다 더 많은 것을 …
10 testing  bug  qa  reporting 

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