소프트웨어 공학

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

7
대규모 코드 기반과 많은 개발자를 통해 리팩토링을 어떻게 관리합니까?
두 개발자가 먼저 이야기하지 않고 동일한 코드를 동시에 리팩터링하는 상황을 방지하고 싶습니다. 어쩌면 어떤 종류의 도구, 아마도 Eclipse 플러그인을 사용합니다. 도울 수 있니? 우리는 450 만 라인의 코드와 4 개 대륙의 20 개 이상의 개발자 팀을 보유하고 있습니다. 이상적으로는 앞서 언급 한 두 번째 개발자가 다른 사람이 동일한 코드 조각을 …

6
대규모 PHP 프로젝트의 재 작성 계획에 대한 팁?
나는 몇 년 동안 내가 일해 왔던 PHP 프레임 워크 (MVC 사용)를 완전히 다시 작성하기로 결정했습니다. 지금까지 내 문제는 프레임 워크 자체의 디자인에 대해 걱정하지 않고 아이디어를 생각해 내고 Trac에 티켓으로 던져서 나중에 추가한다는 것입니다. 시간이 지남에 따라 몇 가지 문제가 발생하여 재 작성이 도움이 될 것이라고 생각하지만 계획의 시작 …

7
십대 때 어떻게 프로그래밍을위한“친구”를 찾을 수 있습니까?
폐쇄되었습니다 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 오년 전에 . 나는 약 3 년 동안 프로그래밍을해온 십대이고, 기본적인 소프트웨어를 할 수는 있지만 혼자서 할 수는 없다고 생각합니다. 프로그래밍에 …
13 learning 

3
XML 문서 주석에 무엇이 포함되어야합니까?
특히 클래스 멤버에 대한 XML 주석과 관련하여 코드를 더 잘 설명하려고 노력하고 있지만 종종 바보 같은 느낌을줍니다. 이벤트 처리기의 경우 명명 규칙과 매개 변수가 표준이며 명확합니다. /// <summary> /// Handler for myCollection's CollectionChanged Event. /// </summary> /// <param name="sender">Event Sender</param> /// <param name="e">Event Arguments</param> private void myCollection_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e) …
13 c#  coding-style 

8
앞으로 한 사람 프로젝트에서 팀 프로젝트로 이동. 지금 무엇을 준비하고 있으며 무엇을 기다릴 수 있습니까?
좀 더 정교하게 설명하기 위해 사람들이 여전히 한 사람 프로젝트 (팀 소스 제어, 문서, 빌드 등)를 통해 배치해야한다고 생각하는 것과 두 번째 사람이 올 때까지 수행 할 필요가없는 것을 알고 싶습니다. 프로젝트에. 이 시나리오를 경험 한 사람이라면 누구나 통찰력을 얻을 수 있습니다.

2
NHibernate에서 리포지토리 패턴이 필요한 이유는 무엇입니까?
공식 NHibernate 기반 응용 프로그램을 읽고 있습니다. 튜토리얼이 훌륭하고 따르기 쉽지만 리포지토리 패턴이 사용되는 이유가 궁금합니다. 다양한에서 Add, Update, Remove의 메소드 ProductRepository구현 코드는 거의 동일합니다 - 그들은 모든 트랜잭션을 사용하고, 그 차이는 "고기"에 즉, 콜입니다 session.SaveINT Add, 방법 session.Delete에 remove방법. ( 페이지에 HTML 앵커가 없지만 페이지와 같은 관련 코드를 검색 …
13 c#  .net  nhibernate 

2
intellij 자동 형식 코드를 어떻게 변경합니까? [닫은]
닫은. 이 질문은 주제에 맞지 않습니다 . 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? Software Engineering Stack Exchange에 대한 주제가 되도록 질문을 업데이트하십시오 . 휴일 3 년 전 . IntelliJ는 Javascript 코드로 이상한 서식을 지정 하며이 방법으로 서식을 중지하는 방법을 알아 내려고 노력 중입니다. jQuery 함수를 함께 연결할 때마다 다음과 …

7
설계 문서에 주어진 설계에 대한 장단점에 대한 논의가 포함되어야합니까, 아니면 사실과 근거에 초점을 두어야합니까?
현재 설계 문서를 업데이트하여 향후 개발자에게 정확하고 최신 상태입니다. 현재이 문서는 사실에 중점을 두어 설계 방식을 제시합니다. 제시된 결정에 대한 근거는 없습니다. 필자는 이론적 근거를 파악하여 개발자가 무언가가 왜 그런지에 대한 이유를 알도록함으로써 미래의 결정에 영향을 미칠 수 있다고 생각합니다. 모든 설계 결정, 특히 프로젝트 작업을 시작하기 전에 이루어진 결정에 …

2
기술적 인 "Dogmatism"을 다루는 방법
Javascript와 Haskell (일부 파이썬)으로 프로그래밍 한 작업을 다른 나라로 옮겼습니다. 나는 사람들이 객관적이고 긍정적이며 수학적이지만 많은 일을했기 때문에 정말 마음에 들었습니다. 이것은 진정한 전문 상점이었습니다. 이제 Agile / XP 상점에서 일합니다. 이것이 좋으면서도 기술과 라이브러리를 선택할 때 우리가 비전문가라고 생각합니다. 소프트웨어 작성에 대한 우리의 접근 방식은 다소 미숙하고 구조화되지 않은 …
13 ruby  haskell  agile 

3
SOLID 원리 적용
저는 SOLID 설계 원칙에 익숙하지 않습니다 . 나는 그들의 원인과 이점을 이해하지만 SOLID 원칙을 사용하기위한 실제 연습으로 리팩토링하려는 더 작은 프로젝트에는 적용하지 않습니다. 완벽하게 작동하는 응용 프로그램을 변경할 필요는 없지만 어쨌든 리팩터링하여 향후 프로젝트의 디자인 경험을 얻고 싶습니다. 응용 프로그램에는 다음과 같은 작업이 있습니다 (실제로는 그 이상이지만 간단하게 유지하십시오). 데이터베이스 …

3
잘못된 코드의 비용 계산
경영진이 리팩토링에 노력을 기울 이도록 설득하기위한 논쟁을 찾고 있습니다. Jira를 사용하여 작업을 기록하고 모든 svn-commit을 jira 호출과 관련시킵니다. 내 생각은 다음을 수행하는 것입니다. User-POV 및 Developer-POV (버그 수정) 모두에서 매우 잘못 구현되었지만 자주 사용되는 코드 영역을 수동으로 발견 JIRA- 문제가 포함 된 svn-commits 가져 오기 일부 기준 (문제 유형, 버전, …

8
웹 개발을 위해 CL과 Python 중에서 선택
Java 배경에서 왔으며 Paul Graham의이 작은 에세이를 읽은 후 작업 속도를 높이기 위해 Common Lisp라는 새로운 언어를 선택하는 방법에 대해 궁금해하기 시작했습니다 (웹 개발자입니다). 나는 현재 애완 동물 프로젝트를 작성하고 있지만 미래에 대한 사업 계획이 있습니다. Paul은 자신의 에세이에서 "비밀 무기"로 LISP에 대해 이야기합니다. 이 진술이 10 년 후에 사실인지는 …

5
학습 경험을위한 새로운 스크립팅 언어 만들기? [닫은]
폐쇄되었습니다 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 3 년 전 . 내 개인 학습 경험을위한 스크립팅 언어를 만드는 것이 가치가 있습니까? 내가 묻는 이유는 이미 사용할 수있는 프로그래밍 …

4
예외 처리가 교차 절단 문제입니까?
예외 처리 문제와 로그인 문제 사이의 차이는 교차 절단 문제라는 점을 많이 알지 못합니다. 어떻게 생각해? 메소드가 구현하는 핵심 로직에 인터리브되는 대신 자체적으로 별도로 처리해서는 안됩니까? 편집 : 내가 말하려는 것은 내 의견으로는 메소드 구현에 성공적인 실행 경로에 대한 논리 만 포함해야하며 예외는 다른 곳에서 처리해야한다는 것입니다. 이것은 확인되거나 확인되지 …

3
ROT13은 어디에서 사용합니까?
vim 용 문서를 읽고 있었고 바로 가기가 있음을 알았습니다. 예를 들어 g?wROT13을 사용하여 다음 단어를 변환 할 것입니다. 또한 파이썬 파일의 인코딩을 ROT13으로 변경할 수 있다는 것을 알고 있습니다. 여기 내 질문이 있습니다 : 왜? Django FUNserver 와 같은 장난 프로그램 외에는 유용하지 않은 것 같습니다 .
13 encryption 

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