소프트웨어 공학

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

11
계단식 리팩토링을 피하려면 어떻게해야합니까?
프로젝트가 있습니다. 이 프로젝트에서는 기능을 추가하기 위해 기능을 리팩터링하고 기능을 추가하기 위해 프로젝트를 리팩터링했습니다. 문제는 내가 끝났을 때 그것을 수용하기 위해 약간의 인터페이스 변경이 필요하다는 것이 밝혀졌습니다. 그래서 변경했습니다. 그런 다음 소비하는 클래스는 새로운 인터페이스 측면에서 현재 인터페이스로 구현할 수 없으므로 새로운 인터페이스도 필요합니다. 이제 3 개월 후 거의 무관 …

5
참조 계산 스마트 포인터가 왜 그렇게 인기가 있습니까?
보다시피, 스마트 포인터는 많은 실제 C ++ 프로젝트에서 광범위하게 사용됩니다. 어떤 종류의 스마트 포인터가 RAII 및 소유권 이전을 지원하는 데 분명히 유리하지만, "가비지 콜렉션" 의 방법 으로 공유 포인터 를 기본적 으로 사용하는 경향이 있으므로 프로그래머가 할당에 대해 많이 생각할 필요가 없습니다. . Boehm GC 와 같은 적절한 가비지 수집기를 …

6
무료 평가판 소프트웨어에 "자체 파괴"기능을 어떻게 구현합니까?
잠재적 인 고객과 사용자가 제품 테스트를 테스트 할 수 있도록하기 위해 무료 평가판과 프리미엄 모델 (즉, 제한 및 / 또는 제거 된 기능이있는 소프트웨어의 무료 버전)에 대한 평가가 계속되고 있습니다. 내 연구에 따르면, 무료 평가판은 소프트웨어를 사용하는 개인의 사용자 경험의 이점과 판매 측면 및 사용 극대화의 측면에서 공급 업체의 이익을 …

7
솔로 개발자 대 팀 개발자 : 계속해야합니까? [닫은]
저는 소규모 회사에서 솔로 개발자 로 일하고 있습니다. 충분한 일이 있지만 돈도 마찬가지입니다. 따라서 가까운 시일 내에 새로운 동료를 만나지 않을 것입니다. 저는 IT 운영과 관련된 모든 것을 책임집니다. 여기에는 사내에서 사용되는 소프트웨어의 개발 및 유지 관리, 고객이 사용하는 다양한 웹 사이트의 개발 및 유지 관리, 웹 사이트 인프라, 여러 …

14
프로그래밍 언어를 배우면서 자연 언어를 배우고 싶습니까? [닫은]
영어가 이전의 P.SE 질문 에 기초한 프로그래밍을위한 지배적 인 국제 언어 인 것은 분명합니다 (높은 의견을 제시 한 의견은 대부분 영어 사이트에서 그런 질문을하면 결과가 왜곡 될 수 있음을 정확하게 지적합니다). 그러나 소프트웨어 개발을 위해 외국어를 배우면 이점이 있습니까? 예를 들어, 중국어에는 완전히 다른 소프트웨어 도구, 언어, 기술 등이 있습니까? …

5
단일 페이지 웹 애플리케이션 구축의 장단점 [닫기]
현재 진행중인 측면 프로젝트의 프로토 타입 / 개념 개념 단계가 거의 끝 나가고 있으며 대규모 응용 프로그램 디자인 결정을 내리려고합니다. 이 앱은 민첩한 개발 프로세스에보다 적합한 프로젝트 관리 시스템입니다. 내가 결정해야 할 결정 중 하나는 전통적인 다중 페이지 응용 프로그램 또는 단일 페이지 응용 프로그램과 함께 갈 것인지 여부입니다. 현재 …

16
발생 가능성이 거의없는 경쟁 조건을 처리해야합니까?
메인 스레드가 거의 즉각적으로 UI를 업데이트하고 다른 스레드가 네트워크를 통해 데이터를 폴링하거나 작업을 완료하는 데 5-10 초가 걸리는 GUI 응용 프로그램과 같은 것을 고려해 봅시다. 나는 이것에 대해 많은 다른 대답을 받았지만 어떤 사람들은 그것이 통계 불가능의 경쟁 조건이라면 전혀 걱정하지 말고 다른 사람들은 10-53 % 조차도 있다고 말합니다. 경쟁 …

18
의사 소통 능력이 떨어지는 개발자를 관리하는 방법
나는 큰 회사 내에서 수명주기의 중간에있는 응용 프로그램에서 소규모 개발자 팀을 관리합니다. 불행히도 이것은 "다른 기술 작업"으로 30/70의 프로그래밍 작업이 일반적으로 존재한다는 것을 의미합니다. 이 작업에는 다음이 포함됩니다. 다양한 작업에서 DBA / Unix / Network / Loadbalancer 팀과 협력 다른 지역의 하드웨어 또는 인프라 주문 접수 및 관리 아직 CI로 …

15
코드를 작성하지 않고 며칠 동안 디자인 문제를 생각하는 것이 정상입니까? [닫은]
때때로 나는 공허하게 공간을 응시하거나 아이디어를 스케치하고 종이에 의사 코드를 씁니다. 그런 다음 문제를 해결하고 다시 시작한 다음 문제에 대한 올바른 해결책이 있다고 생각되면 코드 작성을 시작합니다. 코드를 작성하지 않고 며칠 동안 생각하는 것이 정상입니까? 이것이 내가 문제에 완전히 접근하고 있다는 신호입니까? IDE에서 작성된 코드를 얻지 못하는 것이 긴장됩니다.
52 design 

20
객체 지향 프로그래밍이 실제 세계를 실제로 모델링합니까? [닫은]
나는 객체 지향 프로그래밍이 실제 세계를 모델링하는 것을 기반으로 반복되는 것을 보았습니다. 비즈니스 계층 외부의 것은 사실이 아닌 것 같습니다. 내 GUI 클래스 / 데이터 액세스 클래스는 실제로는 아무 것도 모델링하지 않습니다. 비즈니스 계층에서도 실세계 대상이 아닌 관찰자, 관리자, 공장 등의 수업이 있습니다. 캡슐화와 같은 것들을 활용하기 위해 클래스를 디자인하려고하지만 …

20
고등학교 프로그래머가 자신의 작업을 주목할 수있는 가장 좋은 장소는 무엇입니까? [닫은]
저는 컴퓨터 프로그래밍에 대한 열정이있는 16 세의 고등학생입니다. 저는 11 학년이며 약 8 개월 동안 학교 강의 계획서의 일부로 배우고 있습니다. 나는 학교에서 가르치는 것을 넘어서서 몇 가지 (합리적으로 좋은) 응용 프로그램을 얻었습니다. 내가 프로그래밍하는 언어는 Windows 플랫폼에서 C ++입니다. 결국 저는 좋은 대학에서 CS를 전공하고 프로그래머로 일하고 싶습니다. 내가 …

9
왜 코볼에 대한 경멸? [닫은]
사람들이 COBOL을 언급 할 때 보통 코골이 또는 신음 소리를냅니다. COBOL에 대해 잘 모르지만 일부 프로그램이 작성된 것을 보았습니다. 나는 그것이 장황하고 내 눈과 같은 시작되지 않은 눈에 이해할 수 없다는 것을 알 수 있습니다. 그러나 실제로 모든 프로그래밍 언어가 평신도에게 완전한 횡설수설이 아닙니까? 나는 그것이 작동하고 잘 작동하며 설계된 …
52 cobol 

14
함수에서 파라미터를 주문하는 가장 좋은 방법은 무엇입니까?
때때로 (드물게), 적절한 양의 매개 변수를 취하는 함수를 만드는 것이 가장 좋은 경로 인 것 같습니다. 그러나 내가 할 때 종종 매개 변수의 순서를 임의로 선택하는 것처럼 느낍니다. 나는 가장 중요한 매개 변수를 먼저 사용하여 "중요도 순서"로 이동합니다. 더 좋은 방법이 있습니까? 선명도를 높이는 매개 변수를 정렬하는 "모범 사례"방법이 있습니까?

10
schrödinbug 란 무엇입니까?
이 위키 페이지 는 다음을 알려줍니다. schrödinbug는 누군가가 소스 코드를 읽거나 비정상적인 방식으로 프로그램을 사용한 후에 만 ​​처음부터 작동해서는 안된다는 것을 알리는 버그입니다.이 시점에서 프로그램은 수정 될 때까지 모든 사람의 작업이 즉시 중지됩니다. Jargon File은 다음과 같이 덧붙입니다. "하지만 ... 불가능한 것 같지만 일부 프로그램은 잠재적 인 schrödinbugs를 몇 년 …
52 bug 

11
프로그래머를위한 수학에 대한 표준 책이 있습니까? [닫은]
나는 독학 프로그래머입니다. 나는 정직하게 수학을 잘하지 못한다. 동료 프로그래머들에 대해 불안하지 않도록 수학 기술을 향상시키기 위해 어떤 조언을 할 수 있습니까? 수학 기술을 향상시키기 위해 권장 할 수있는 단계 또는 지침은 무엇입니까? 모범 사례, 설계 방법론 및 프로그래머를위한 수학에 대한 기타 유용한 정보를 설명하기위한 사실상의 표준이있는 책이 있습니까? 그 …
52 math 

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