소프트웨어 공학

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

17
프로젝트의 어떤 부분이 소스 코드 제어에 있어야합니까?
한 동료 개발자가 새로운 Drupal 프로젝트를 시작했으며 sysadmin은 "업데이트를 쉽게 스크립팅 할 수 있도록"사이트 / 기본 하위 디렉토리 만 소스 제어에 두도록 제안했습니다. 다소 모호한 주장을 제외하고는 또 다른 질문을 제기합니다. 어떤 파일이 소스 제어하에 있어야합니까? 그리고 큰 파일 덩어리를 제외해야하는 상황이 있습니까? 내 의견은 프로젝트의 전체 트리가 통제되어야하며 Drupal …

3
이력서에 프로그래밍 언어를 사용하십니까? [닫은]
이력서를 작성하기 전에 어느 정도의 언어 경험이 필요합니까? (Java)에 능숙한 언어가 하나 있는데, 이력서에 확실히 넣을 것이지만 C에서 광범위하게 프로그래밍하거나 C- 자체 교육을 받았지만 의미있는 프로젝트는 작성하지 않은 대학에서 몇 학기 과정을 수강했다고합니다. 그것에 고용주가 웃거나 이력서 인플레이션으로 인식하지 않고이 언어를 이력서에 넣을 수 있습니까?

11
소프트웨어 컨퍼런스에서 하나의 네트워크는 어떻게 작동합니까? [닫은]
저는 여전히 Microsoft TechEd 에 있으며 소프트웨어 컨퍼런스에서 내 시간을 효과적으로 사용하는 방법에 대한 질문에 대한 답변은 "네트워킹은 소프트웨어 컨퍼런스에서 가장 유용한 부분"입니다. 문제점 : 나는 그 일에 어떻게 접근해야하는지 전혀 모른다. 나는 항상 내성적 인 사람이었습니다. 학교와 직장에서 나는 몇 년 동안 멋진 친구들을 사귀었던 나에 대한 외향적 인 …


22
실제로 '깨끗한 코드'를 작성합니까? [닫은]
나는 일부 프로그래머들이 코드를 '작동하게'만들뿐만 아니라 '보기 좋게'만들기 위해 반복해서 수정하는 것을 보았습니다. IMO 'clean code'는 실제로 코드가 우아하고 완벽하게 이해 가능하고 유지 관리 가능하다는 것을 나타내는 칭찬입니다. 심미적으로 매력적인 코드와 스트레스가 많은 코드 중에서 선택해야 할 때 차이가 발생합니다. 그렇다면 실제로 얼마나 많은 사람들이 '깨끗한 코드'를 작성합니까? 좋은 습관입니까? …

12
어떤 프로그래밍 언어가 찾기 어려운 버그를 가장 적게 생성합니까? [닫은]
일반 프로그래머가 찾기 어려운 버그를 최소화하여 기능을 출력 할 수있는 언어는 무엇입니까? 이것은 물론 매우 광범위한 질문이며, 매우 광범위하고 일반적인 답변과 지혜에 관심이 있습니다. 개인적으로 Java 및 C # 프로그램에서 이상한 버그를 찾는 데 거의 시간이 걸리지 않는 반면 C ++ 코드에는 고유 한 반복 버그 세트가 있으며 Python / …

16
왜 파이썬에서 그런 인기가 있습니까? [닫은]
공백으로 구문에 짜증을내는 것 외에는 나는 증오가 아니며 파이썬에 매료되지 않습니다. 나는 Perl의시를 높이 평가하고 bash & korn 및 shebang에서 아름다운 웹 서비스를 프로그래밍했습니다 gnuplot. 나는 문서를 작성 troff하고 REXX를 신경 쓰지 않습니다. 몇 년 전에 더 유용한 tcl을 찾지 못했지만 파이썬에 대한 큰 악취는 무엇입니까? 나는 이력서에 상과 트로피로 …
54 python  perl  bash 

1
믹스 인 또는 특성이 일반 다중 상속보다 어떻게 더 낫습니까?
C ++에는 일반 다중 상속이 있으며 많은 언어 디자인이 위험하다고 금지합니다. 그러나 Ruby 나 PHP와 같은 일부 언어는 이상한 구문을 사용하여 동일한 작업을 수행하고이를 믹스 인 또는 특성이라고합니다. 믹스 인 / 특성은 일반 다중 상속보다 남용하기가 어렵다는 것을 여러 번 들었습니다. 구체적으로 덜 위험하게 만드는 것은 무엇입니까? 믹스 인 / …

16
TDD를 수행 할 때 한 번에 모든 테스트를 작성하지 않는 이유는 무엇입니까?
TDD에 대한 빨강-녹색-리 팩터 사이클이 잘 설정되어 승인되었습니다. 우리는 하나의 실패한 단위 테스트를 작성하여 가능한 한 간단하게 통과시킵니다. 클래스에 대해 많은 실패한 단위 테스트를 작성 하고 한 번에 모두 통과하게 만드는 것보다이 방법의 이점은 무엇입니까? 테스트 스위트는 리팩토링 단계에서 잘못된 코드를 작성하거나 실수하는 것을 방지합니다. 때로는 클래스 (또는 모듈)에 대한 …

11
민첩한 사례 : 코드 검토-검토 실패 또는 문제 제기?
2 주 스프린트가 끝나면 작업에 코드 검토가 있습니다. 검토에서 우리는 작동하고 읽을 수있는 기능을 발견하지만 읽을 수는 있지만 꽤 길고 코드 냄새가 약간 있습니다. 쉬운 리팩터링 작업. 그렇지 않으면 작업이 완료의 정의에 적합합니다. 우리는 두 가지 선택이 있습니다. 이 스프린트에서 티켓이 닫히지 않도록 코드 검토에 실패하고 티켓을 전달할 수 없기 …

4
다른 언어와 비교하여 Java를 사용할 때 Docker를 사용하면 Unix 바이너리에 더 가까운 개발 이점이 무시됩니까?
나는 친구에게 말했다 : 도커 는 훌륭합니다. 이를 사용 하여 로컬 시스템에서 프로덕션 및 모든 문제를 복제 할 수 있습니다 . 그럼 당신은 모든 준비 작업 흐름은 슈퍼 스트레이트를 통해 해당 인스턴스 배포 할 수 있습니다 빠른을 . 개발자가 Ruby, PHP 또는 Go를 작성 하는 경우 운영 체제에 방향 바이너리 …
53 java  deployment  jvm  docker 

7
VCS에서 즉시 중복 파일을 삭제하지 않고 먼저 주석이있는 "삭제"로 표시하는 것은 나쁜 습관입니까?
버전 제어에서 삭제해야하는 소스 파일을 처리하는 방식이 나쁜 습관으로 간주 될 수 있는지 알고 싶었습니다. 그 예를 기반으로 설명하고 싶습니다. 나는 기본적으로 데드 코드 인 프로그램에서 Java 클래스를 신중하게 정렬해야했기 때문에 최근에 매우 화가 나었지만 아무 것도 문서화되지 않았으며 Java 클래스에서도 주석 처리되지 않았습니다. 물론 그것들을 삭제해야했지만 중복 항목을 삭제하기 …


13
건축 설계 시간 낭비를 멈추는 방법 [닫기]
나는 최근에 대학을 졸업하고 프로그래머로 일하기 시작했습니다. "기술적 인"문제를 해결하기가 어렵거나 해결책이 하나 있다고 말하는 것을 디버깅하는 것이 어렵습니다. 그러나 소프트웨어 아키텍처와 같은 명백한 해결책 이없는 일련의 문제가 있는 것 같습니다. 이런 것들이 나를 괴롭 히고 큰 고통을 안겨줍니다. 프로그램과 시스템을 "아키텍트"하는 방법을 결정하기 위해 몇 시간과 몇 시간을 보냅니다. …

9
동시성이 없을 때 불변성이 매우 가치가 있습니까?
스레드 안전성은 항상 불변 유형 및 특히 컬렉션을 사용하는 주요 이점으로 항상 언급되는 것처럼 보입니다. 메서드가 문자열 사전 (C #에서는 변경할 수 없음)을 수정하지 않도록하려는 상황이 있습니다. 가능한 한 많이 제한하고 싶습니다. 그러나 새 패키지 (Microsoft Immutable Collections)에 종속성을 추가하는 것이 가치가 있는지 확실하지 않습니다. 성능도 큰 문제가 아닙니다. 따라서 …

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