소프트웨어 공학

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

1
Go는 "암시 적"인터페이스를 사용하여 생산성을 어떻게 향상 시키며 C #의 확장 방법 개념과 비교하면 어떻습니까?
Go Language Tutorial에서 인터페이스 작동 방식 을 설명 합니다. 바둑에는 수업이 없습니다. 그러나 구조체 유형에 대한 메서드를 정의 할 수 있습니다. 방법 수신기는 FUNC 키워드와 메소드 이름과 자신의 인수 목록에 나타납니다. type Vertex struct { X, Y float64 } func (v *Vertex) Abs() float64 { return math.Sqrt(v.X*v.X + v.Y*v.Y) } …
21 c#  language-design  go 

3
asm.js를 사용하여 브라우저에서 C ++ 코드를 실행하는 방법은 무엇입니까?
asm.js 애플리케이션은 매우 빠릅니다 (기본 C ++ 속도 근처). http://kripken.github.io/mloc_emscripten_talk/micro4b.png 그러나 C ++로 작성하고 LLVM 코드로 변환 한 다음 emscripten / asm.js로 트릭을 수행하는 방법은 무엇입니까? 그것에 대한 자습서를 찾지 못했습니다. 그리고 C ++로 코드를 작성하면 js API를 사용하는 방법 (예 : XMLHttpRequest, WebSockets, Canvas 또는 WebGL)?
21 c++  javascript  llvm 

4
“너무 객체 지향”
나는 강력한 OO 배경에서 왔으며 최근에 코드가 Java로 작성되었지만 익숙한 것보다 좋은 OO 디자인에 중점을 둔 조직에서 일하기 시작했습니다. 나는 "너무 많은 추상화"를 도입한다고 말했고, 대신 항상 수행되었던 방식을 코딩해야한다고하는데, 이는 Java의 절차 적 스타일이다. TDD도 여기서 많이 연습하지는 않지만 테스트 가능한 코드를 원합니다. 대규모 "하나님 클래스"(이 팀의 표준 인 …

4
더 이상 관련이없는 버그를 닫는 방법
저는 현재 중간 규모의 웹 개발자 팀에 있습니다. 우리는 버그 추적을 위해 jira 를 사용하고 있습니다. 레이아웃이 자주 변경되는 제품을 개발 중입니다. 많은 브라우저에서 일부 레이아웃의 버그에 대해 버그가 제기되었습니다. 때로는 우선 순위가 낮은 버그를 처리 할 때까지 레이아웃이 이미 변경되어 더 이상 관련이 없습니다. 우리는 그것을 무엇으로 닫아야합니까? 내가 …

4
PUT 또는 DELETE로 컬렉션을 부분적으로 변경해도 괜찮습니까?
제품 그룹에 제품 모음이 있습니다. 예 : product-groups/123/products 컬렉션 에 추가 해야하는 경우 PUT이있는 일부 제품 만 전달해도 괜찮 습니까? 컬렉션에서 일부 제품 을 삭제해야하는 경우 DELETE를 사용하여 필터 데이터 (ID 배열)를 전달해도 괜찮 습니까? ReST의 정신으로 기능을 구현하는 가장 좋은 방법은 무엇입니까? 편집 : 항목은 기본적으로 제품의 ID 인 …
21 rest  collections 

6
함수 맵 대 스위치 명령문
요청을 처리하는 프로젝트를 진행 중이며 요청에는 명령과 매개 변수라는 두 가지 구성 요소가 있습니다. 각 명령의 처리기는 매우 간단합니다 (<10 줄, 종종 <5). 최소 20 개의 명령이 있으며 50 개가 넘는 명령이있을 수 있습니다. 나는 몇 가지 해결책을 생각해 냈습니다. 하나의 큰 스위치 / if-else 명령 명령을 함수에 매핑 정적 …

3
과도한 조롱 필요성으로 인한 취성 단위 테스트
팀에서 구현하고있는 단위 테스트와 관련하여 점점 성가신 문제로 어려움을 겪고 있습니다. 우리는 잘 설계되지 않은 레거시 코드에 단위 테스트를 추가하려고 시도하고 실제로 테스트를 추가하는 데 어려움이 없었지만 테스트가 어떻게 진행되는지에 어려움을 겪고 있습니다. 문제의 예로, 실행의 일부로 5 개의 다른 메서드를 호출하는 메서드가 있다고 가정 해 봅시다. 이 방법에 대한 …

5
함수형 프로그래밍 : 동시성 및 상태에 대한 올바른 아이디어?
FP 지지자들은 패러다임이 변경 가능한 상태를 피하기 때문에 동시성이 쉽다고 주장했다. 나는 그것을 얻지 못한다. 순수한 기능과 불변의 데이터 구조를 강조하는 FP를 사용하여 멀티 플레이어 던전 크롤링 (로그 로그)을 생성한다고 상상해보십시오. 방, 복도, 영웅, 몬스터 및 전리품으로 구성된 던전을 생성합니다. 우리의 세계는 효과적으로 구조와 그 관계의 대상 그래프입니다. 상황이 변화함에 …

1
객체 변환을위한 디자인 패턴 (Java)
가끔 공장과 MVC 외에 디자인 패턴을 자주 사용하지 않고 더 많이 사용하고 싶습니다. 이 경우 디자인 패턴 사용에 대한 귀하의 의견을 부탁드립니다. 내 응용 프로그램에서는 다른 상황에서 객체를 자주 변환해야합니다. GWT를 사용하고 Hibernate POJO는 직렬화 할 수 없으며 회선을 통해 보낼 수 없기 때문에 Hibernate POJO를 DTO로 변환해야 할 수도 …

5
거대한 접착제 방법을 피하는 방법?
현재 직장에서는 몇 번이나 오래된 코드를 정리해야했습니다. 종종 코드는 미로이며 그 뒤에있는 데이터는 훨씬 더 얽혀 있습니다. 나는 멋지고 깔끔한 모듈 방식으로 것들을 빗나가고 있습니다. 각 방법은 한 가지 일을 잘 수행합니다. 그때가 남쪽으로 가기 시작합니다 ... 필자는 항상 깨끗한 API로 끝내고 실제로 묶을 방법이 없습니다. 해결책은 결국 모든 "깨끗한"방법을 …

2
REST API에 대한 인증을 구현하는 가장 좋은 방법
모바일 용 소셜 기반 응용 프로그램을 개발합니다. 모든 애플리케이션은 RESTful API 웹 서비스를 사용합니다. 로그인을 구현할 때 보통 사용자 이름과 비밀번호를 기기 어딘가에 저장합니다. 그런 다음 보내면 응답으로 내 프로필에 액세스 할 수 있습니다. 하지만 다른 방법이 있다는 것도 알고 있습니다. 어떻게 든 특정 알고리즘으로 토큰을 생성 한 다음 사용자 …
21 mobile  rest  login 

8
선임 프로그래머의 신뢰 회복
현재로서는이 질문이 Q & A 형식에 적합하지 않습니다. 답변, 사실, 참고 자료 또는 전문 지식을 통해 답변이 뒷받침 될 것으로 예상되지만이 질문은 토론, 논쟁, 여론 조사 또는 광범위한 토론을 요구할 것입니다. 이 질문을 개선하고 다시 열 수 있다고 생각 되면 도움말 센터 를 방문하여 안내를 받으십시오 . 휴일 육년 전 …

1
업스트림 리포지토리에 동시에 기여하고 전환하기위한 적절한 에티켓과 권장 GitHub 워크 플로는 무엇입니까?
나는 일반적으로 GitHub와 VCS를 처음 사용합니다. 나는 여러 해 동안 여러 언어로 프로그래밍을 해왔지만 항상 커스텀 프로젝트 (공개 릴리스는 아님)에 솔로로 일했습니다. 나는 최근에 작업중 인 프로젝트에서 GitHub에서 다운로드 한 jQuery UI 위젯을 사용하기 시작했습니다. 리포지는 더 이상 원저자가 유지 관리하지 않습니다. 다른 포크는 원래 풀 요청 중 일부를 통합했습니다. …

5
상사 (및 다른 개발자)에게 눈에 잘 띄지 않는 JavaScript를 사용 / 고려하도록 설득하는 방법
나는 우리 develepors 팀에서 아주 새롭습니다. 몇 가지 강력한 논증 및 / 또는 "함정"예제가 필요하므로, 상사는 눈에 거슬리지 않는 JavaScript의 장점을 마침내 이해하여 그와 팀의 다른 사람들이 다음과 같은 일을 중단하도록합니다. <input type="button" class="bow-chicka-wow-wow" onclick="send_some_ajax(); return false;" value="click me..." /> 과 <script type="text/javascript"> function send_some_ajax() { // bunch of code …

9
민첩한 개발에서 데이터베이스 전에 플랫 파일로 지속성을 시도해야합니까?
누군가는 민첩한 개발에서 지속성 방법과 같은 세부 사항보다 정책 및 응용 프로그램 논리가 더 중요하므로 지속성 결정은 마지막에 내려야한다고 나에게 설명했습니다. 따라서이 방법의 약점이 분명해질 때까지 플랫 파일과 같은 단순한 지속성으로 시작하고 관계형 데이터베이스를 사용하여 지속성을 변경하는 것이 좋습니다. 이것이 사실입니까, 아니면 개념을 잘못 이해 했습니까? 이것이 민첩한 팀이 일반적으로 …

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