소프트웨어 공학

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

9
사람들이 왜 메소드의 #region 태그에 강력하게 반대합니까?
나는 메소드를 짧게 유지하는 것에 대해 많은 것을 듣고 많은 프로그래머들이 메소드 내에서 #region 태그를 사용하는 것이 너무 길어서 여러 메소드로 리팩토링되어야한다는 확실한 신호라고 들었다. 그러나 메소드 내에서 #region 태그로 코드를 분리하는 것이 여러 메소드로 리팩토링하는 우수한 솔루션 인 경우가 많이 있습니다. 계산을 세 개의 별개의 단계로 분리 할 수있는 …
27 c#  coding-style 

8
프로그래머의 급여를 결정하기 위해 어떤 기준을 사용해야합니까? [닫은]
최근에 저는 프로그래머의 급여를 결정할 때 어떤 기준을 사용해야하는지에 대한 토론의 일환이었습니다. "고용주가 선택한 문제"에서 자신의 교육, 경험, 기술에 대한 이해를 고려한 다른 주장에 이르기까지 다양한 주장 얼마 전까지 만해도 Stack Exchange 블로그 에서 해당 주제 에 대한 훌륭한 게시물을 읽었 으며 이에 동의하지 않았지만 많은 고용주가 설명 된 논리를 …

9
응용 프로그램을 상속 할 때 이미 작동하는 코드에 대한 단위 테스트를 작성하는 데 가치가 있습니까?
분명히 일부 오래된 응용 프로그램은 처음 작성된 방식으로 인해 단위 테스트가 불가능하거나 매우 어렵습니다. 그러나 단위 테스트가 가능한 일부 도우미 메서드와 같은 장소에서 단위 테스트를 작성해야합니까? 내 말은, 개처럼 쓸 수는 있지만 논리를 복잡하게 깨뜨릴 수 있지만 시간의 시험은 그것이 제대로 작동한다는 것을 증명했습니다. 단위 팩터를 리팩토링한다고 할 때 단위 …

5
코드 소유권이 코드 냄새입니까?
논쟁의 여지가있는 프로그래밍 의견 스레드 에서이 답변을 읽은 이후로 내가 생각한 것입니다 . 당신의 직업은 자신을 일에서 벗어나게하는 것입니다. 고용주를위한 소프트웨어를 작성할 때 사용자가 작성하는 소프트웨어는 모든 개발자가 선택할 수 있고 최소한의 노력으로 이해할 수있는 방식으로 작성되어야합니다. 잘 디자인되고, 명확하고 일관되게 작성되고, 깔끔하게 형식화되고, 필요한 곳에 문서화되고, 예상대로 매일 빌드되고, …

13
외부 동작을 변경하지 않고 리팩토링을 얼마나 멀리 푸시 할 수 있습니까?
Martin Fowler에 따르면 코드 리팩토링은 (강조 광산)입니다. 리팩토링은 기존 코드를 재구성하여 외부 동작을 변경하지 않고 내부 구조 를 변경 하는 훈련 된 기술입니다 . 그 핵심은 변화를 보존하는 일련의 작은 행동입니다. 각 변환 ( '리팩토링'이라고 함)은 거의 수행하지 않지만 일련의 변환은 상당한 구조 조정을 생성 할 수 있습니다. 각 리팩토링은 …

8
더 이상 사용되지 않는 것으로 간주됩니까? [닫은]
방금 -std=c++0x청년들이하는 일을 모호하게 처리하고 싶었 기 때문에 (GCC 에서 플래그로 내 코드 일부를 컴파일했습니다. ) 에 대해는 auto_ptr사용되지. 물론 auto_ptrC ++ 0x에서 더 이상 사용되지 않는다는 것을 알고 있었지만 ... 지원 중단이 시간과 노력을 낭비하지 않습니까? 더 이상 사용되지 않는 이유 (예 : auto_ptr 사용) : 수백만 개의 경고가 …

8
기술 블로그는 어떻게 작성합니까? [닫은]
나는 보통 프로그래밍 관련 것들에 대해 많이 읽습니다. 내가 읽은 주제가 내 작업과 직접 관련이없는 경우 (예 : 일상적인 작업에 사용하지 않는 일부 알고리즘에 대해 읽는 경우) 잊어 버립니다. 배운 내용을 강화하는 한 가지 방법은 블로그를 작성하는 것입니다. 저는 블로그를 쓰는 초보자입니다. 내가 글을 쓰기 시작했을 때 나는 그것이 매우 …
27 writing 


5
C, C ++ 또는 Java보다 Python 프로그래밍이 더 빠릅니까? [닫은]
프로그래머 들 사이에 언어 가 더 역동적이고 느슨하게 타이핑 될수록 프로그래머가 더 생산적 일 것이라는 믿음이 널리 퍼져 있습니다. 귀도 반 로섬 (Guido van Rossum)은 1998 년에 파이썬을 사용하여 프로그래밍 생산성에 대해 썼고 웹을 검색 하면서이 정확한 주장을 언급하는 사람들을 여전히 봅니다. 문법적으로 파이썬 코드는 실행 가능한 의사 코드처럼 보입니다. …

5
PHP 로그인 스크립트에 어떤 모범 사례를 적용해야합니까?
클라이언트 웹 사이트의 로그인 스크립트를 다시 작성하여 더 안전하게 만들고 싶습니다. 이 모범 사례를 구현할 수있는 모범 사례를 알고 싶습니다. 암호로 보호 된 제어판은 풍부하지만 코드 작성, 속도 및 보안 측면에서 모범 사례를 암시하는 것으로 거의 보이지 않습니다. PHP와 MYSQL 데이터베이스를 사용할 것입니다. 나는 md5를 사용했지만 sha256 또는 sha512가 더 …

15
팀이 소규모 수업 / 방법을 사용하도록 설득하려면 어떻게해야하나요?
면책 조항 : 저는 신규 이민자 (제 3 일)이며 대부분의 팀원은 저보다 경험이 풍부합니다. 코드를 살펴보면 다음과 같은 코드 냄새와 나쁜 엔지니어링 관행이 있습니다. 다소 일치하지 않는 이름 지정 지침 가능한 경우 읽기 전용으로 표시되지 않은 속성 큰 클래스-수백 가지의 확장 메소드 (다양한 유형)로 구성된 유틸리티 클래스를 발견했습니다. 2500 줄 …

5
C ++ 템플릿은 일종의 영광스러운 매크로입니까?
C ++ 템플릿과 이와 같은 C # / Java 제네릭 간의 다른 비교에서 https : //.com/questions/31693/what-are-the-differences-between-generics-in-c-and-java-and-templates-in-c/31929#31929 C ++ 템플릿은 컴파일하지 않고 일종의 전처리 (구문 분석하기 전에 일반 텍스트 교체)에 의해 구현된다는 인식을 얻었습니다. C ++ 템플릿의 유형 검사는 C 매크로와 유사하기 때문입니다. 내 말은, 오류가있는 경우 템플릿 자체가 아닌 템플릿 …
27 c++  c  compiler  templates  macros 

9
사용자 인터페이스에서 클래스 분리
사용자 인터페이스에 대해 알아야 할 클래스를 작성할 때 가장 좋은 방법은 무엇입니까? 사용자 인터페이스가 무엇인지 (콘솔, GUI 등) 의존하기 때문에 모범 사례를 어기는 방법을 아는 클래스가 아닌가? 많은 프로그래밍 서적에서 상속을 보여주는 "Shape"예제를 보았습니다. 기본 클래스 모양에는 원 및 사각형과 같은 각 모양이 재정의하는 draw () 메서드가 있습니다. 이것은 다형성을 …
27 design 

17
프로그래머가 아닌 사람에게 복사-붙여 넣기 프로그래밍의 위험성을 설명하는 좋은 간결한 방법은 무엇입니까? [닫은]
프로그래머가 아닌 사람에게 복사-붙여 넣기 프로그래밍의 문제를 설명 할 수있는 좋은 비유 나 은유를 찾고 있습니다. 잠재적 인 고객을 위해 코드 / 시스템 검토를 수행하는 경우가 종종 있으며, 일반적인 문제 중 하나는 코드 기반 전체에 엄청난 양의 복사-붙여 넣기 코드입니다. 리뷰에서 일상적으로 부르는 것입니다. 왜 이것이 문제인지 설명해야 할 때마다 …

12
SOLID vs. 조기 추상화 방지
나는 모듈성이 중요하고 목표가 명확하게 유용한 상황에서 SOLID 가 무엇 을 달성하고 정기적으로 사용 하는지 이해 합니다. 그러나 두 가지로 인해 코드베이스에서 일관되게 적용 할 수 없습니다. 조기 추상화를 피하고 싶습니다. 내 경험상 구체적인 유스 케이스 (현재 또는 가까운 미래 에 존재하지 않는)없이 추상화 라인을 그리는 것은 잘못된 위치에 그려집니다. …

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