소프트웨어 공학

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

3
소스 코드 액세스로 사내 NuGet 패키지 관리
회사 내부의 프로젝트간에 공유하려는 사내 라이브러리가 많이 있습니다. 다음은 몇 가지 요구 사항입니다. 라이브러리 소스는 최종 프로젝트와 분리 된 저장소에 저장됩니다. 최종 프로젝트에는 NuGet을 통한 라이브러리가 포함됩니다. 최종 프로젝트에서 작업하는 동안 주어진 라이브러리에 대한 소스 코드를 쉽게 검사 할 수 있어야합니다. 비공개 NuGet 리포지토리 설정은 문제가되지 않지만 소스 관리는 문제가됩니다. …

3
Pyqt / Qt 앱의 UI와 UI를 올바르게 분리하는 방법은 무엇입니까?
나는 과거 에이 주제에 대해 꽤 많이 읽었으며 밥 삼촌의 이와 같은 흥미로운 이야기를 보았습니다 . 그럼에도 불구하고 항상 데스크톱 응용 프로그램을 올바르게 설계하고 UI 쪽 의 책임 과 논리 쪽 의 책임을 구분하기가 매우 어렵습니다 . 모범 사례에 대한 매우 간단한 요약은 다음과 같습니다. 어떤 종류의 백엔드 / UI …
20 design  python  mvc  gui  coupling 

3
git stash를 사용하여 진행중인 프로젝트 변경 사항을 저장하고 다른 컴퓨터에서 액세스하려면 github으로 푸시해야합니까?
나는 종종 커밋하기에 충분하기 전에 휴식을 취해야하는 프로젝트의 일부 기능을 작업합니다. 그러나 매일 두 개의 다른 컴퓨터를 사용하여 코딩합니다 (노트북과 연구실 데스크톱). 예 : 집에서 기능을 작업하고있는 중입니다. 그리고 나서 실험실로갑니다. 클라우드 동기화 (예 : Dropbox)를 GitHub 원격 추적과 혼합하고 싶지 않습니다. 작업을 계속하기 위해 다른 컴퓨터에서 코드를 가져 오기 …
20 git  github  gitflow 

5
소프트웨어 시스템 모델링과 코드에서 모두 수행하는 것의 이점은 무엇입니까?
대부분의 IT 직원은 아니지만 코딩하기 전에 UML 또는 다른 유형의 다이어그램으로 소프트웨어를 모델링하는 것이 유리하다고 생각합니다. (제 질문은 UML에 관한 것이 아니며 소프트웨어 디자인에 대한 그래픽 또는 텍스트 설명 일 수 있습니다.) 확실하지 않습니다. 주된 이유는 다음과 같습니다. 코드가 거짓말을하지 않습니다. 컴파일러 또는 인터프리터에서 확인합니다. 자동화 된 테스트가 있기를 바라며 …

3
테스트와 생산 코드 사이에 상수가 중복됩니까?
테스트와 실제 코드간에 데이터를 복제하는 것이 좋거나 나쁘습니까? 예를 들어 FooSaver특정 이름의 파일을 주어진 디렉토리에 저장 하는 Python 클래스가 있다고 가정 합니다. class FooSaver(object): def __init__(self, out_dir): self.out_dir = out_dir def _save_foo_named(self, type_, name): to_save = None if type_ == FOOTYPE_A: to_save = make_footype_a() elif type == FOOTYPE_B: to_save = …

4
함수형 프로그래밍에서 "기억"값
함수형 프로그래밍을 배우는 작업을 스스로 결정했습니다. 지금까지 폭발이었고, 나는 '빛을 보았습니다'. 불행히도, 나는 실제로 질문을 반송 할 수있는 기능 프로그래머를 모른다. 스택 교환을 소개합니다. 웹 / 소프트웨어 개발 과정을 수강하지만 강사는 기능적 프로그래밍에 익숙하지 않습니다. 그는 그것을 사용하는 것이 좋으며, 방금 코드를 더 잘 읽을 수 있도록 작동 방식을 이해하도록 …

6
TDD를 사용할 때 기능을 제거하는 방법
TDD에 관한 텍스트에서 리팩토링 단계에서 종종 "중복 제거"또는 "가독성 향상"에 대해 읽습니다. 그러나 사용하지 않는 기능을 제거하는 이유는 무엇입니까? 예를 들어, C메소드 a()와 클래스가 있다고 가정 해 봅시다 b(). 이제에 도입 된 방법을 사용 f()하는 것이 좋을 것이라고 생각합니다 C. 실제로 정의 / 설명 된 단위 테스트를 제외한 f()모든 호출을 …

3
Java / Linux 스택이 "실시간"이 아닌 이유는 무엇입니까?
필자는 개발자들이 자바가 " 실시간으로 할 수 없다" 는 말을 자주 들었다 . 리눅스에서 실행되는 자바 앱이 RIOT-OS에서 실행되는 것과 같은 결정적인 실시간 시스템의 요구 사항을 충족 할 수 없다는 의미이다. 이유 를 이해하려고 노력하고 있습니다. 내 SWAG에 따르면 이는 아마도 언제든지 실행되고 시스템을 완전히 일시 중지 할 수있는 Java …
20 java  linux  real-time 

4
플랫 파일과 데이터베이스 / API를 프론트 엔드와 백엔드 간 전송으로 사용
두 개발자 사이에 다소 화제가 된 응용 프로그램이 있습니다. 기본적으로 웹 레이어와 백엔드 레이어로 나뉩니다. 웹 계층은 간단한 웹 양식으로 정보를 수집하고이 데이터를 JSON 문서 (문자 그대로 .json 파일)로 백엔드에서 사용하는 감시 폴더에 저장합니다. 백엔드는 몇 초마다이 폴더를 폴링하고 파일을 가져 와서 기능을 수행합니다. 파일 자체는 매우 간단합니다 (예 : …

5
유형이 빌더와 결합 된 이유는 무엇입니까?
최근 에 Code Review 에서 내 자바 답변을 삭제했습니다 . private Person(PersonBuilder builder) { 중지. 빨간 깃발. PersonBuilder는 Person을 빌드합니다. 그것은 사람에 대해 알고 있습니다. Person 클래스는 PersonBuilder에 대해 아무 것도 알 수 없습니다. 불변 유형입니다. 여기에 원형 커플 링을 만들었습니다. 여기서 A는 A에 의존하고 B는 A에 의존합니다. 사람은 그 …

5
폴 백이있는 특수 사례가 Liskov 대체 원칙을 위반합니까?
FooInterface다음과 같은 서명을 가진 인터페이스 가 있다고 가정 해 봅시다 . interface FooInterface { public function doSomething(SomethingInterface something); } 그리고 ConcreteFoo그 인터페이스를 구현 하는 구체적인 클래스 : class ConcreteFoo implements FooInterface { public function doSomething(SomethingInterface something) { } } ConcreteFoo::doSomething()특별한 유형의 SomethingInterface객체 가 전달되면 고유 한 작업을 수행 하고 싶습니다 …


11
코딩 모범 사례를 항상 사용해야합니까?
휴무 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 삼년 전에 . 소프트웨어를 코딩 할 때 아키텍처는 항상 구축중인 애플리케이션과 관련하여 모범 사례 또는 실제 사례 여야합니까? 5 년 동안 …

1
<의 차이점은 무엇입니까? Foo> 및 <Foo> 확장
나는 사이의 차이에 대한 오해 것 같다 &lt;Foo&gt;와 &lt;? extends Foo&gt;. 우리가 이해했다면 ArrayList&lt;Foo&gt; foos = new ArrayList&lt;&gt;(); 이는 유형의 객체 Foo가이 배열 목록에 추가 될 수 있음을 나타냅니다 . 의 서브 클래스 Foo도 유형 Foo이므로 다음과 같이 오류없이 추가 할 수 있습니다. ArrayList&lt;Foo&gt; foos = new ArrayList&lt;&gt;(); foos.add(new Foo()); …
20 java  generics 

1
코드에서 pluralia tantum을 다루는 표준은 무엇입니까? [닫은]
휴무 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 3 년 전 . 복수형과 단수형이 동일한 변수를 사용할 때 어떻게 이름을 지정합니까? 거기에 어떤 표준이 있습니까? 예를 들면 다음과 같습니다. …

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