소프트웨어 공학

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

3
왜“자기”가 필요한가요? 파이썬에서 인스턴스 변수를 참조합니까?
Java, Ruby, Haskell 및 Python과 같은 여러 언어로 프로그래밍했습니다. 다른 프로젝트로 인해 하루에 여러 언어로 전환해야합니다. 이제 문제는 self파이썬에서 함수 정의의 첫 번째 매개 변수가 동일한 객체에서 메서드를 호출하는 것과 마찬가지로 쓰는 것을 잊어 버리는 경우가 많습니다 . 즉, 나는이 파이썬 접근 방식에 상당히 놀랐습니다. 기본적으로 우리는 Java 및 Ruby와 …

2
최상위 함수에 대한 UML 클래스 다이어그램 기호
UML 클래스 다이어그램 표기법에서 캡슐화 클래스 또는 다른 구조가없는 최상위 함수를 어떻게 표시합니까? 예를 들어 URL에서 데이터를 검색하는 데 사용되는 함수가 있습니다. 매개 변수와 공유 전역 상태의 함수 (수학 의미)이므로 클래스에 배치되지 않고 최상위 메서드로 유지됩니다. 이제는 프로그램을 사용하여 UML 다이어그램을 작성해야하며 최상위 함수를 표시하는 방법에 대한 정보를 찾을 수 …
13 uml 

3
상속보다는 구성
소프트웨어 엔지니어링을 가르치고 혼란스러워하는 상충되는 정보에 대비하려고합니다. 나는 OOP를 배우고 추상 클래스 / 인터페이스가 무엇인지, 그것들을 사용하는 방법을 배우고 있지만, 상속보다 구성을 선호해야한다는 것을 읽고 있습니다. 나는 한 클래스가 다른 클래스의 객체를 작성 / 생성하여 새로운 객체의 기능을 활용 / 상호 작용할 때 구성을 이해합니다. 그래서 내 질문은 ... 추상 …



1
Java 정규식 패턴-시간 상수 또는 인스턴스 멤버를 컴파일 하시겠습니까?
현재 정규 표현식에서 일치 하는 두 개의 싱글 톤 객체가 있으며 내 객체 Pattern는 다음과 같이 정의됩니다. class Foobar { private final Pattern firstPattern = Pattern.compile("some regex"); private final Pattern secondPattern = Pattern.compile("some other regex"); // more Patterns, etc. private Foobar() {} public static Foobar create() { /* singleton stuff …

3
의존성 주입 : 어떤 시점에서 새 객체를 만들 수 있습니까?
PHP 응용 프로그램을 리팩토링하고 있으며 가능한 많은 의존성 주입 (DI) 을 수행하려고 합니다. 나는 그것이 어떻게 작동하는지 잘 이해하고 있다고 느끼며, 수업이 훨씬 더 얇고 강건 해짐을 확실히 알 수 있습니다. 클래스 내에서 새 객체를 만드는 대신 종속성을 주입 할 수 있도록 리팩토링하고 있지만 어느 시점에서 일부 객체를 만들어야합니다. 즉, …

4
MVC와 함께 서비스 계층 사용
컨트롤러가 너무 뚱뚱해지고 모델 인스턴스화가 더해지기 시작하면 서비스 계층을 사용할 수 있습니다. 서비스 클래스 내부의 논리를 래핑하면 한두 가지 방법으로 많은 서비스를 얻을 수 있습니다. 이것은 코드 냄새처럼 느껴집니다. 이것에 관한 모범 사례? 서비스가 모델을 인스턴스화 할 수 있습니까? 서비스가 모델을 인스턴스화하면 서비스를 단위 테스트 할 수 없습니다. 통합 테스트로만 …
13 mvc  services 

5
이미 개발 된 프로젝트를 문서화하는 방법?
이미 개발 한 프로젝트를 문서화하는 데 어떤 옵션을 사용할 수 있는지 알고 싶습니다. 작업 한 개발자는 단일 페이지의 문서조차 작성하지 않았기 때문입니다. 이 프로젝트에는 지난 2 년 동안이 프로젝트에서 일한 개발자가 작성하고 수정 한 기능을 가진 많은 스크립트 페이지 외에 다른 세부 정보가 없습니다. 내가 가진 것은 데이터베이스 스키마와 프로젝트 …

2
JavaScript에서 Activation 객체는 무엇입니까?
주어진 실행 컨텍스트에서 Variable 개체는 해당 실행 컨텍스트의 Activation 개체입니다. 온라인에서 조사한 결과 이전 문장을 다른 방식으로 해석 할 수는 있지만 아무도 그 문장을 알 수 없습니다. 활성화 객체 란 무엇입니까?

2
PHP에서 클래스의 필드를 선언하는 것이 실제로 유해합니까?
과거에 실제로 몇 번이나 만든 평범한 프로그래밍 오류로 인해 세터가 의도적으로 깨진 다음 코드를 고려하십시오. <?php class TestClass { private $testField; function setField($newVal) { $testField = $newVal; // deliberately broken; should be `$this->testField = $newVal` } function getField() { return $this->testField; } } $testInstance = new TestClass(); $testInstance->setField("Hello world!"); // …
13 php 

4
손으로 의존성 주입은 구성과 다형성에 대한 더 나은 대안입니까?
먼저, 저는 엔트리 레벨 프로그래머입니다. 사실 저는 여름 내내 최종 캡 스톤 프로젝트로 AS 학위를 마치고 있습니다. 저의 새로운 직업에서, 제가해야 할 프로젝트가 없을 때 (팀을 더 많은 신입 사원으로 채우기 위해 기다리고 있습니다), 기다리는 동안 읽고 배우는 책을 받았습니다 – 일부 교과서, 기타 코드 완성과 같은 것은 아닙니다. 이 …

6
인쇄 사용법 / 도움말 (--help)에 대한 모범 사례는 무엇입니까?
UNIX CLI 용 도구를 작성할 때 프로그램에서 도움말 및 / 또는 사용법을 인쇄하려면 어떻게해야합니까? 나는 보통을 사용 fprintf(stderr, "help text here");하지만 그것에 몇 가지 문제가 있습니다. 먼저을 사용해야하는지 잘 모르겠습니다 stderr. 괜찮 stdout습니까 , 아니면 사용해야 합니까? 상상할 수 있듯이 도구의 옵션 수에 따라 도움말 텍스트가 매우 깁니다. 이제 보통 …

4
문자열을 더 짧게 만들기 위해 어떤 유형의 인코딩을 사용할 수 있습니까?
나는 가지고있는 문자열을 인코딩하는 데 관심이 있으며 알파와 숫자 만 포함하고 문자열을 나타내는 데 필요한 문자 수를 줄이는 인코딩 유형이 있는지 궁금합니다. 지금 까지이 작업을 수행하기 위해 Base64 인코딩을 사용하는 방법을 살펴 보았지만 문자열을 더 길게 만들고 때로는 ==피하고 싶은 것을 포함 시키는 것으로 보입니다. 예: 테스트 이름 | 120101 …

4
모든 C 프로그래머가 알아야 할 보안 위험 / 취약점은 무엇입니까? [닫은]
폐쇄되었습니다 . 이 질문은 더 집중되어야 합니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 한 가지 문제에만 집중할 수 있도록 질문을 업데이트하십시오 . 휴일 3 년 전 . 높은 수준의 프로그래밍 언어에서 잘 테스트되고 입증 된 API를 사용하는 것과는 달리 하드웨어에 밀접하게 접촉하면 많은 보안 …

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