소프트웨어 공학

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

12
HTML과 CSS가 프로그래밍 언어가 아닌 것이 왜 중요합니까?
예를 들면 다음과 같습니다. 웹 응용 프로그램 작성에 관심이있는 경우 어떤 언어를 알아야합니까? 예, HTML과 CSS가 Turing-complete가 아님을 이해합니다. 예, 나는 명령형 언어가 아니라 선언적이라는 것을 이해합니다. 그러나 사람들이 왜이 언어들에 대해 질문 할 때 이처럼 놀랍고 명백한 사실로 머리를 숙이고 있습니까?
158 terminology 

8
예외 : 왜 일찍 던지나요? 왜 늦게 잡을까요?
격리 예외 처리에 대한 잘 알려진 모범 사례가 많이 있습니다. 나는 "해야 할 것과하지 말아야 할 것"을 충분히 알고 있지만 더 큰 환경에서 모범 사례 나 패턴에 관해서는 상황이 복잡해집니다. "얼마나 일찍 늦게까지 잡아라"-여러 번 들었지만 여전히 혼란 스럽습니다. 하위 수준 계층에서 null 포인터 예외가 발생하면 왜 일찍 던지고 늦게 …

13
팀의 기술이 부족한 경우 코드 기술을 낮춰야합니까? [닫은]
예를 들어, JS에는 기본값을 얻기위한 공통 스 니펫이 있습니다. function f(x) { x = x || 'default_value'; } 이런 종류의 스 니펫은 팀의 모든 구성원이 쉽게 이해할 수 없으며 JS 수준이 낮습니다. 이 트릭을 사용해서는 안됩니까? JS 개발자에 따르면 피어가 코드를 읽을 수는 없지만 다음보다 더 읽기 쉽습니다. function f(x) …

10
Ken Thompson의 컴파일러 핵은 여전히 ​​위협입니까?
켄 톰슨 해킹 (1984) Ken Thompson은 1984 년에 컴파일러 바이너리 (및 * nix 시스템의 로그인 스크립트와 같은 다른 컴파일 된 소프트웨어)를 손상시키는 방법을 설명했습니다. 최신 컴파일이이 보안 결함을 해결했는지 궁금합니다. 간단한 설명: 두 가지 결함을 포함하도록 컴파일러 코드를 다시 작성하십시오. 자체 바이너리를 컴파일 할 때 컴파일러는 이러한 결함을 컴파일해야합니다 미리 …
156 linux  unix  compiler  hacking 

20
몇 년 동안 크고 복잡한 소프트웨어 제품을 유지 관리하는 방법?
저는 수년 동안 소프트웨어 개발자로 일해 왔습니다. 더 많은 개발자가 제품 개발에 참여함에 따라 프로젝트가 더 복잡하고 유지 관리 할 수없는 경험이 있습니다. 특정 개발 단계의 소프트웨어는 특히 아키텍처를 정의한 팀 구성원이 회사에서 더 이상 작업하지 않는 경우 "해커"및 "해커"를 얻는 경향이있는 것 같습니다. 무언가를 변경해야하는 개발자가 아키텍처의 큰 그림을 …

5
구성표와 공통 리스프 : 프로젝트에서 어떤 특성이 차이를 보입니까? [닫은]
StackOverflow와이 사이트 모두에 모호한 "Scheme vs Common Lisp"질문이 없기 때문에이 질문에 더 집중하고 싶습니다. 문제는 두 언어로 코딩 한 사람들을위한 것입니다. Scheme에서 코딩하는 동안 Common Lisp 코딩 경험의 어떤 특정 요소가 가장 그리웠습니까? 또는 Common Lisp로 코딩하는 동안 Scheme에서 코딩에서 무엇을 놓쳤습니까? 언어 기능 만 의미하는 것은 아닙니다. 다음은 질문과 …
155 lisp  scheme 

30
상사는 코드에 대한 설명을 한 줄씩 설명하기를 원합니다.
나는 상사가 읽고 읽고 싶어하는 설명이나 해설을 한 줄씩 (또는 이미지별로 이미지 등으로 적절하게) 제공해야합니다. 그는 프로그래머가 아니기 때문에 코드를 따라갈 수 없으므로 모두 영어로 번역되기를 원합니다. 전에이 작업을 수행 한 사람이 있습니까? 나는 모든 소스 코드에 주석을 달았고 JSDoc 을 사용 하여 모든 함수, 변수 등에 대한 완전한 문서를 …

9
폐쇄 란 무엇입니까?
때때로 나는 "폐쇄 물"이 언급되는 것을보고, 그것을 찾아 보려고 시도했지만 Wiki는 내가 이해하고있는 설명을하지 않았다. 누군가 나를 도와 줄 수 있습니까?

11
개발자 테스트 작업을 활용하고 있습니까? [닫은]
저는 일자리를 찾고 있으며 여러 직책에 지원하고 있습니다. 한 고용주가 응답했습니다. 나는 꽤 긴 전화 인터뷰 (아마도 1 시간 이상)를 보았고 개발자 테스트로 나를 설정했습니다. 시험에 6 시간에서 8 시간이 걸리는 것으로 추정되었으며, 결과가 승인을 받으면 업무에 대한 대가를 지불 할 것입니다. 그로 인해 잠시 멈췄지만 노력했습니다. 개발자 테스트는 RDP …
154 interview 

15
카레의 장점은 무엇입니까?
나는 단지 카레에 대해 배웠고, 나는 개념을 이해한다고 생각하지만 그것을 사용하는 데 큰 이점을 보지 못했습니다. 간단한 예제로 두 가지 값을 추가하는 함수를 사용합니다 (ML로 작성). 카레없는 버전은 fun add(x, y) = x + y 로 불릴 것입니다 add(3, 5) 카레 버전은 fun add x y = x + y …

13
이게 나인가요, 아니면 당황스러운 기술 인터뷰 질문입니까? [닫은]
배경 방금 기술 인터뷰에서 A가 B와 같고 B가 C와 같고 A가 C와 같은 "객체"를 통과하는 알고리즘을 작성하라는 요청을 받았습니다. 그게 다야. 그것이 제가받은 모든 정보입니다. 나는 면접관에게 목표가 무엇인지 물었지만, 목표는 없었으며, 단지 "개체"를 통과했다. 나는 다른 사람에 대해 모른다. 그러나 이것은 나에게 바보 같은 질문처럼 보인다. "값을 찾고 있습니까?"라고 …

11
참여할 좋은 오픈 소스 프로젝트를 어떻게 찾을 수 있습니까? [닫은]
방금 1 년 전에 일을 시작했는데 다른 사람들과 같은 이유로 오픈 소스 프로젝트에 참여하고 싶습니다. 내 문제는 내가 맞을 프로젝트를 찾는 방법을 모른다는 것입니다. 초보자에게 친숙한 프로젝트를 어떻게 찾을 수 있습니까? 어떤 속성을 검색해야합니까? 프로젝트가 적합 하지 않을 수 있다는 경고 신호는 무엇입니까 ? 오픈 소스 프로젝트와 사람들을 연결하는 데 …

30
소규모 회사 (15 개발자)가 관리되는 소스 / 버전 제어를 사용하지 않는 것이 드문 일입니까? [닫은]
실제로 기술적 인 질문은 아니지만 소스 제어 및 모범 사례에 대한 몇 가지 다른 질문이 있습니다. 내가 일하는 회사 (익명으로 유지됨)는 네트워크 공유를 사용하여 소스 코드와 릴리스 된 코드를 호스팅합니다. 릴리스 여부와 버전 및 버전에 따라 소스 코드를 올바른 폴더로 수동으로 이동하는 것은 개발자 또는 관리자의 책임입니다. 파일 이름과 버전을 …


4
부패 방지 계층이란 무엇이며 어떻게 사용됩니까?
반부패 계층이 실제로 무엇을 의미하는지 알아 내려고 노력 중입니다. 레거시 코드 또는 잘못된 API를 전환 / 해결하는 방법이라는 것을 알고 있습니다. 내가 이해하지 못하는 것은 작동 방식과 원하지 않는 층과 깨끗하게 분리되는 것입니다. 몇 가지 검색을 수행했지만 간단한 예나 설명을 찾을 수 없으므로이를 이해하고 간단한 예를 통해 설명 할 수있는 …

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