소프트웨어 공학

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

11
레거시 코드를 넘겨주는 모범 사례
몇 달 안에 한 동료가 새로운 프로젝트로 넘어갈 것이며 그의 프로젝트 중 하나를 물려받을 것입니다. 준비하기 위해 이미 Michael Feathers의 효과적인 레거시 코드 작업을 명령했습니다 . 그러나이 책과 지금까지 찾은 레거시 코드에 대한 대부분의 질문은 코드를 그대로 상속하는 경우와 관련이 있습니다. 그러나이 경우 실제로 원래 개발자에게 액세스 할 수 있으며 …

9
응용 프로그램 로깅의 패턴과 패턴은 무엇입니까? [닫은]
최근 대기업 응용 프로그램의 현장 문제를 조사해야했습니다. 나는 문제를 찾기 위해 빗질해야한다는 통나무에 충격을 받았으며 하루가 끝나면 통나무가 버그를 식별 / 격리하는 데 전혀 도움이되지 않았습니다. 참고 : 모든 버그가 로그를 통해 발견되는 것은 아닙니다. 이것은 로그가 끔찍하다는 사실을 바꾸지 않습니다. 로깅에는 이미 수정하려고 시도 할 수있는 몇 가지 명백한 …
66 logging 

12
비 프로그래머가 개발 프로세스를 이해하도록하기
주로 프로그래밍 회사가 아닌 회사를위한 프로젝트를 시작할 때 기대되는 것 중 하나는 모든 버그가없는 완성 된 제품이 있으며 즉시 필요한 모든 것을 수행한다는 것입니다. 그러나 거의 그렇지 않습니다. 소프트웨어 개발이 다른 유형의 제품 개발과 어떻게 다른지 기대치를 관리하고 비 프로그래머에게 설명하는 몇 가지 방법은 무엇입니까?

30
프로젝트에서 조심해야 할 운명의 경고 신호는 무엇입니까? [닫은]
실패한 프로젝트를 수행 한 것은 사용 된 언어, 산업 또는 경험에 관계없이 대부분의 프로그래머가 공통적으로 가지고있는 몇 안되는 것 중 하나입니다. 이 프로젝트는 훌륭한 학습 경험, 영혼을 부수는 재앙 (또는 둘 다) 일 수 있으며 여러 가지 이유로 발생할 수 있습니다. 마음의 경영 상 변화 미숙련 / 자원 부족 팀 …

25
솔직히 카우보이 코딩을 선호합니까? [닫은]
대부분의 프로그래머는 애자일, 워터 폴, RUP 등과 같이 정치적으로 올바른 방법론을 방어합니다. 그들 중 일부는 방법론을 따르지만 전부는 아닙니다. 솔직히, 당신이 방법론을 선택할 수 있다면, 당신은 확실히 주류 "올바른"방법론으로 가거나 카우보이 프로그래밍과 같은 "쉬운"방법론을 선호합니까? 왜? 나는 그것이 의존한다는 것을 안다. 언제 사용하는지 설명하십시오. 카우보이 코딩에 어떤 이점이 있습니까? Wikipedia의 …

3
BIOS 프로그램을 작성하는 데 어떤 프로그래밍 언어가 사용됩니까?
내가 이해하는 것처럼 ROM에 들어있는 BIOS 코드 / 비트 스트림은 일반적이어야합니다 (여러 CPU 유형 또는 ISA와 함께 작동). 또한 웹에서 코드를 덤프하고 "해체"할 수 있다고 언급했습니다. 그렇다면 어떤 언어, 명령어 세트 또는 머신 코드로 작성 되었습니까? 작업을 수행하는 데 어떤 종류의 프로세서가 필요하지 않습니까? 그렇다면 외부 CPU를 사용할 것이라고 생각합니다. …
65 cpu  bios 

7
1 <10 비교가 1 <1000000보다 저렴합니까?
z-indexCSS에서 카운트로 ~ 10 억을 사용했으며 계속 해야하는 비교에 대해 생각하고있었습니다. 매우 큰 수와 매우 작은 수의 비교에서 ALU 수준의 성능에 차이가 있습니까? 예를 들어,이 두 스 니펫 중 하나가 다른 것보다 비쌀까요? snippet 1 for (int i = 0; i &lt; 10000000; i++){ if (i &lt; 10000000000000) { //do …
65 performance  cpu 

6
데이터베이스 구성에서 Latin-1을 UTF-8보다 사용해야합니까?
우리는 내가 일하는 회사에서 MySQL을 사용하고 있으며 Ruby on Rails를 사용하여 클라이언트와 내부 애플리케이션을 모두 구축합니다. 여기서 일을 시작했을 때, 나는 전에는 결코 겪어 보지 못한 문제에 부딪쳤다. 프로덕션 서버의 데이터베이스는 Latin-1로 설정됩니다. 즉, 사용자가 UTF-8 문자를 복사하여 붙여 넣는 사용자 입력이있을 때마다 MySQL gem에서 예외가 발생합니다. 상사는이 "나쁜 캐릭터"라고 …

8
오픈 소스 프로젝트에 참여하는 어려운 프로그래머를 어떻게 처리합니까?
저와 다른 개발자들이 최근 GitHub로 옮긴 특정 사이트 (여기서는 이름으로 전화하지 않으려 고 함)에 대한 오픈 소스 스크립트가 있습니다. 우리는 새로운 시스템으로 옮긴 이래로 매우 활동적인 개발자를 포함하여 여러 명의 새로운 개발자를 얻었습니다. 그러나이 활발한 프로젝트는 많은 프로젝트를 변경하기 시작했습니다. 우선, 그는 우리의 버전 관리 시스템을 삭제했습니다 (Git은 아니지만 버전이라고 …
65 open-source  team 

14
동적으로 유형이 지정된 언어로 단일 함수에서 다른 데이터 유형을 반환하는 것은 나쁜 생각입니까?
기본 언어는 정적으로 입력됩니다 (자바). Java에서는 모든 메소드에서 단일 유형을 리턴해야합니다. 예를 들어 조건부로 a를 반환 String하거나 조건부로 a를 반환하는 메서드를 사용할 수 없습니다 Integer. 그러나 예를 들어 JavaScript에서는 이것이 가능합니다. 정적으로 입력 된 언어로 이것이 왜 나쁜 생각인지 알 수 있습니다. 모든 메소드가 반환되면 Object(모든 클래스가 상속하는 공통 부모) …

8
인턴쉽을 어떻게 구할 수 있습니까? [닫은]
저는 현재 대규모의 비 소프트웨어 개발 회사에서 인턴으로 일하고 있습니다. 내가 신청 한 직책은 특별히 개발 직책이 아니었지만, 저를 고용 한 팀은 CS 전공으로 내부 프로젝트를 개발하는 데 도움을주기를 원했습니다. 나는 4 주 동안 여기에 있었고 초기 당황이 시작되었습니다. 그러나 저는 전체 사무실에서 유일한 CS 전공자입니다. 팀, 건물 또는 주변 …

13
역 참조 된 모든 단일 포인터를 널 보호하는 것이 합리적입니까?
새로운 직업에서, 나는 다음과 같은 코드에 대한 코드 리뷰에 플래그를 붙였습니다. PowerManager::PowerManager(IMsgSender* msgSender) : msgSender_(msgSender) { } void PowerManager::SignalShutdown() { msgSender_-&gt;sendMsg("shutdown()"); } 마지막 방법은 다음과 같아야한다고 들었습니다. void PowerManager::SignalShutdown() { if (msgSender_) { msgSender_-&gt;sendMsg("shutdown()"); } } 즉, 내가 해야한다 풋 NULL주위에 가드 msgSender_가 개인 데이터 멤버 인 경우에도 변수입니다. 내가이 …

1
Dijkstra는 그의 논문“The Humble Programmer”에서 언급 한 자원 봉사자들에게 어떤 임무를 부여 했습니까?
에서 다 익스트라의 논문 "겸손 프로그래머" 그는 일부 자원 봉사자를 해결하기 위해 문제를 준 언급 : “정말 숙련 된 자원 봉사자들과 함께 약간의 프로그래밍 실험을했지만 의도하지 않았고 예상치 못한 결과가 나타났습니다. 저의 자원 봉사자 중 누구도 분명하고 가장 우아한 해결책을 찾지 못했습니다. 면밀한 분석 결과, 이것은 공통의 출처를 갖는 것으로 …

5
Git 및 Debian과 같은 일부 큰 프로젝트가 이슈 트래커가 아닌 메일 링리스트 만 사용하는 이유는 무엇입니까?
괜찮은 규모의 프로젝트에 대한 버그 추적기는 나에게는 쉬운 일이 아닙니다. 충돌이나 혼동되는 문제없이 수백 또는 수천 개의 문제를 쉽게 구성 할 수 있습니다. 따라서 Git과 같은 정말 큰 프로젝트를 보시면 메일 링리스트를 유지 보수 및 개발을 조정하는 주요 방법으로 사용하면 조금 혼란스러워집니다. 예 : 힘내-커뮤니티 페이지 : ... 버그 보고서는이 …

8
나만의 데이터베이스 시스템 만들기
데이터베이스를보다 효율적으로 사용하기 위해 데이터베이스가 작동하는 방식을 배워야하며 학습 방식이 필요합니다. 내 데이터베이스 시스템을 만들고 싶습니다. 쿼리를 사용하여 파일을 구문 분석하는 의사 데이터베이스를 만드는 것은 아닙니다. 이것은 단순히 쿼리 언어가있는 파일 시스템 인터페이스 일 것입니다. 데이터베이스 엔진의 실제 구조에 대해 이야기하고 있습니다. 그리고 내가 생각하는 것은 관계형이거나 문서 지향적이지 않기 …

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