소프트웨어 공학

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

1
객체의 __dict__를 수정하여 속성을 Pythonic으로 간주합니까?
데이터베이스 (또는 MongoDB, CSV 파일 등의 다른 소스)에서 찾은 행의 객체를 팽창시키는 클래스가 있습니다. 객체의 속성을 설정하기 위해 self.__dict__.update(**properties)또는 과 같은 작업을 수행 obj.__dict__.update(**properties)합니다. 이것이 파이썬으로 간주됩니까? 이것이 계속 사용해야하는 좋은 패턴입니까, 아니면 잘못된 형태로 간주됩니까?
12 python 

4
어떤 속성이 값을 변경할 수 있고 어떤 속성이 일정하게 유지되도록 인터페이스를 어떻게 설계합니까?
.NET 속성과 관련된 디자인 문제가 있습니다. interface IX { Guid Id { get; } bool IsInvalidated { get; } void Invalidate(); } 문제: 이 인터페이스에는 두 가지 읽기 전용 속성 Id과가 IsInvalidated있습니다. 그러나 이들이 읽기 전용이라는 사실만으로도 그 값이 일정하게 유지 될 것이라는 보장은 없습니다. 다음과 같은 사실을 매우 명확하게하는 …
12 c#  design  .net  properties 

3
불변 상태로 객체 그래프의 변이를 효과적으로 표현할 수 있습니까?
C ++에서 불변 객체 사용을 연습하고 있습니다. 내 개인적인 목표는 불변의 그래프 시퀀스로 일반 객체 그래프 (힙)를 나타내는 것입니다. 다중 버전 그래프 자체를 만드는 것은 그리 어렵지 않습니다. 문제는 성능입니다. 무차별 버전 관리에는 전체 그래프 사본이 필요하지만 허용되지 않았습니다. 변경되지 않은 노드를 공유하려고했습니다. 그러나이 경우 새로운 문제가 생겼습니다. 참조. 다른 …

5
내 생각을 C ++에서 C #으로 마이그레이션하는 방법
저는 숙련 된 C ++ 개발자이며, 언어를 자세하게 알고 있으며 특정 기능 중 일부를 집중적으로 사용했습니다. 또한 OOD의 원칙과 디자인 패턴을 알고 있습니다. 나는 지금 C #을 배우고 있지만 C ++ 사고 방식을 제거 할 수 없다는 느낌을 멈출 수는 없습니다. 나는 C ++의 강점에 너무 열심히 묶어 일부 기능 …

5
동료에게 Excel에 비해 데이터베이스 + 응용 프로그램 솔루션의 장점을 보여줄 수있는 방법은 무엇입니까?
저는 모든 곳에서 Excel 스프레드 시트가있는 회사에서 일하고 있습니다. 동료는 프로그래머가 아니므로 데이터를 관리하는 것이 더 좋고, 더 쉽고, 생산적인 방법이있을 것이라고는 생각하지 않았습니다. 당연히 관계형 데이터베이스와 대화 형 프런트 엔드에서 찾을 수있는 기능을 현재 분산 된 스프레드 시트에 배포 된 다양한 워크 플로의 요구에 맞게 활용할 수있는 일종의 응용 …

4
C # 최소 SQL 데이터베이스
CSV와 같은 것이 처리하기에 비효율적이며 SQL / MySQL 서버가 너무 많을 정도로 충분한 데이터를 저장해야하는 소규모 프로젝트 (생산 아님)를 작업하고 있습니다. .Net은 단일 파일을로드하고 처리하는 대신 서버를 관리하고 연결하지 않고도 쿼리 할 수있는 기능을 통해 여러 데이터 항목을 효율적으로 저장할 수있는 방법이 있습니다.
12 c#  database  sql 

8
소프트웨어를 처음부터 읽고 이해하는 것보다 소프트웨어를 작성하는 것이 더 쉬운가요? [닫은]
현재로서는이 질문이 Q & A 형식에 적합하지 않습니다. 답변, 사실, 참고 자료 또는 전문 지식을 통해 답변이 뒷받침 될 것으로 예상되지만이 질문은 토론, 논쟁, 여론 조사 또는 광범위한 토론을 요구할 것입니다. 이 질문을 개선하고 다시 열 수 있다고 생각 되면 도움말 센터 를 방문하여 안내를 받으십시오 . 휴일 육년 전 …

1
프로그래밍에서 문맥이라는 의미의 의미
나는 Objective C 문서를보고 있었고 이것을 얻었습니다. UIGraphicsBeginImageContext : 비트 맵 기반 그래픽 컨텍스트를 만들어 현재 컨텍스트로 만듭니다. 또한 동일한 용어가 Robotlegs에서 사용됩니다. ( http://www.adobe.com/devnet/actionscript/articles/intro-robotlegs-pt1.html ) 컨텍스트 : 컨텍스트 의존성 주입 및 Robotlegs를 사용하는 다양한 기본 유틸리티를 초기화하는 부트 스트래핑 메커니즘이다. 내가봤을 때 문맥의 사전 의미는 프로그래밍에서 사용되는 방식과 일치하지 …

4
Linux에서 Intel C / C ++ 컴파일러를 사용하여 Windows에서 링크 될 오브젝트 파일을 작성할 수 있습니까?
왜? 소스에 따라 인텔 컴파일러는 아마도 x86 아키텍처를위한 가장 빠른 실행 파일을 생성하는 컴파일러 일 것입니다 (5 ~ 100 % 실행 시간 개선). 인텔은 Linux 용 컴파일러를 비상업적 라이센스로 무료로 제공합니다 (저는 인텔의 비 상업용 소프트웨어 개발 페이지에서 무료라고 생각합니다 ). 학생을위한 무료 비상업적 라이센스도 있지만이 세 가지 주요 운영 …

5
쓸모없는 예외 처리로 코드 강화
코드의 다른 부분이 올바르게 코딩되지 않은 경우를 대비하여 쓸모없는 예외 처리를 구현하는 것이 좋은 방법입니까? 기본 예 간단한 것이므로 모든 사람들을 느슨하게하지는 않습니다 :). 데이터베이스에서 추출되는 개인 정보 (이름, 주소 등)를 표시하는 앱을 작성한다고 가정 해 보겠습니다. 내가 UI 부분을 코딩하는 사람이고 다른 사람이 DB 쿼리 코드를 작성한다고 가정 해 …

1
기능적 반응성 / 관계형 프로그래밍 – 차이점이 있습니까?
저는 현재 Cocoa 라이브러리와 함께 사용하기위한 Functional Reactive Programming API 인 Reactive Cocoa (GitHub) 를 사용하고 있지만 , 그 개념을 뒷받침하는 논문 인 "Out of the Tar Pit"을 읽었 습니다. 그리고 나는 약간 혼란 스럽다. 이 논문은 (사실 이해하는대로) 기능적 관계 프로그래밍을 제시하는데, 여기서 '사고'논리 량과 필요한 상태를 줄이기 위해 …

4
정적으로 유형이 지정된 웹 스크립팅 언어가 있습니까? [닫은]
닫은. 이 질문은 주제에 맞지 않습니다 . 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? Software Engineering Stack Exchange에 대한 주제가 되도록 질문을 업데이트하십시오 . 휴일 2 년 전 . 웹 서버 백엔드를 설정하는 두 가지 주요 방법이 있습니다. PHP 나 Python (또는 P로 시작하지 않는 Ruby 또는 JavaScript)과 같은 서버 …

1
빌드 스크립트 및 빌드 서버의 책임
빌드 스크립트와 빌드 서버의 책임에 대한 설명이 필요합니다. 지속적인 통합 및 빌드에 대한 Net의 여러 기사를 읽었습니다. 포함 F5 키는 빌드 프로세스가 아닙니다 빌드 서버 : 프로젝트의 심장 모니터 일일 빌드는 당신의 친구입니다 그리고 우리 소프트웨어의 빌드 프로세스에 관해 조언자와 대화를 나누었습니다. 그는 매우 경험이 많기 때문에 그의 진술을 신뢰하지만 …

1
Google Blink (새로운 WebKit 포크) : "DOM을 Javascript로 이동"의 의미?
로부터 깜박임 블로그 : 마지막으로 전체 DOM (Document Object Model)을 JavaScript로 옮기는 것과 같은 더 큰 아이디어를 탐구하고 싶습니다. 이것은 무엇을 의미 하는가? 그것은 평균 WebKit에서 DOM은 현재 않습니다 없습니다 자바 스크립트에 있지만 다른 언어로 코딩? 더 많은 공개 접근자를 DOM에 노출시키고 싶다는 의미입니까? 또는 무엇을?
12 javascript  dom 

5
새로운 회사에서 코딩을 시작하는 데 필요한 시간 [닫기]
현재로서는이 질문이 Q & A 형식에 적합하지 않습니다. 답변, 사실, 참고 자료 또는 전문 지식을 통해 답변이 뒷받침 될 것으로 예상되지만이 질문은 토론, 논쟁, 여론 조사 또는 광범위한 토론을 요구할 것입니다. 이 질문을 개선하고 다시 열 수 있다고 생각 되면 도움말 센터 를 방문하여 안내를 받으십시오 . 휴일 칠년 전에 …

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